How aillian/cvsagent works
CVsAgent is a CLI résumé-extraction tool: a user supplies PDF/DOCX CVs and optional job-matching or custom-field settings, then receives a tabular report. The CLI orchestrator loads documents, checks cached results, estimates cost and runs extraction when needed, then flattens and exports results. OpenAI and local Ollama are documented provider options. The main source excerpts show the loader, cache, pipeline, mapper, and exporter responsibilities; some orchestration calls and prompt wiring are only partially sampled, so those connections are limited to the evidence shown.
Main entry points: app.py Run orchestration · pipeline.py LLM extraction · main.py CLI entry · cache.py Extraction cache
Components 18
CLI workflow
- CLI entry
main.py - Run orchestration
cvs_agent/app.py - CV files
- Document loader
cvs_agent/loader.py - Run configuration
cvs_agent/config.py - Extraction cache
cvs_agent/cache.py - Cache files
- CLI feedback
cvs_agent/console.py
Extraction
- LLM extraction
cvs_agent/pipeline.py - CV data schema
cvs_agent/schema.py - Extraction prompts
cvs_agent/prompts.py - LLM provider
- Job description
Results
- Row mapping
cvs_agent/mapper.py - List formatting
cvs_agent/utils.py - Report exporter
cvs_agent/exporter.py - Report files
Other components
- CLI user
Connections 18
- CLI user → CLI entry: runs
README.md - CLI entry → Run orchestration: starts
main.py - CLI user → CV files: supplies
README.md - Run orchestration → Document loader: loads CVs
cvs_agent/app.py - CV files → Document loader: parsed from
cvs_agent/loader.py - Run orchestration → Extraction cache: checks results
cvs_agent/app.py - Extraction cache → Cache files: reads and writes
cvs_agent/cache.py - Run orchestration → LLM extraction: runs extraction
cvs_agent/app.py - LLM extraction → CV data schema: builds schema
cvs_agent/pipeline.py - LLM extraction → LLM provider: invokes
cvs_agent/pipeline.py - LLM extraction → Extraction prompts: uses prompt
cvs_agent/pipeline.py - Job description → Run orchestration: configures match
README.md - Run orchestration → Row mapping: flattens results
cvs_agent/app.py - Row mapping → List formatting: formats lists
cvs_agent/mapper.py - Run orchestration → Report exporter: saves results
cvs_agent/app.py - Report exporter → Report files: writes report
cvs_agent/exporter.py - Run orchestration → Run configuration: uses settings
cvs_agent/app.py - Run orchestration → CLI feedback: reports progress
cvs_agent/app.py