Overview
Ask an LLM to "tailor my CV for this job posting" and you get two failure modes at once: generic templates that ignore the job description, and confident fabrication — invented metrics, claimed-but-unused technologies, inflated titles. CV Tailor is an agentic skill for Claude Code (a SKILL.md pipeline any AI agent can execute) designed against both: it produces a genuinely tailored, ATS-friendly LaTeX CV where every bullet traces back to a source file you control.
The Pipeline
job description (URL or text)
│
▼
1–3 fetch JD · read your resource library · extract seniority/stack/culture signals
▼
4 FIT ASSESSMENT — 3–5 strongest matches, 1–3 honest gaps,
verdict (Qualified / Stretch / Overqualified) — shown BEFORE any drafting
▼
5–8 select bullets (ownership-first, compressed for older roles) · rewrite
impact-first (XYZ: Outcome → Metric → Mechanism, ≤2 lines) · tailor
summary to your voice · mirror JD keywords verbatim for ATS
▼
9–10 write Markdown + LaTeX · compile (tectonic → pdflatex → xelatex → latexmk)
· debrief + archive to iCloud (per-company folders, aux files never sync)
The structural piece is the resource library: experiences live as brag files with structured sections — What I Did / Impact / Context / Framing Notes — where framing notes say which angle to emphasize per role type (the same CI/CD project reads as reliability for SRE, cost savings for FinOps). Selection is a real retrieval problem, not generation: the skill picks and re-frames what exists.
Honesty Rules (the actual feature)
- No fabricated metrics — every number traces to
resources/experiences/; unquantified impact stays descriptive - No claimed technologies you haven't used — missing skills surface as gaps in the fit assessment, not as skills
- No title inflation — official titles stay; scope shows through ownership verbs
- Pushes back — requests to add unverified tools or numbers are refused by design
Privacy & Tooling
- Privacy by gitignore: the repo ships only
*.template.mdskeletons; real contact details, experience files, and brag notes never leave your machine via git - Templates: single-column ATS-friendly LaTeX with
glyphtounicode(machine-readable PDF), 1–2 page discipline — cut bullets, never shrink fonts; dual-engine (pdfTeX/XeTeX compile identically) - Tectonic bootstrap:
setup.shinstalls a single static LaTeX binary (~30 MB, no sudo) — no TeX Live marathon
Tech stack
Architecture
cv-tailor/
├── SKILL.md # the skill: 10-step pipeline, modes, honesty rules
├── resources/
│ ├── meta/ # contact · about (voice) · location (templates only in git)
│ ├── educations/ # degrees, honors
│ └── experiences/ # brag files: What I Did / Impact / Context /
│ # Framing Notes + YAML meta (featured, overlap_risk)
├── templates/
│ └── ats-friendly-technical-resume/ # LaTeX + Markdown, dual-engine
├── scripts/ # setup.sh (tectonic) · compile.sh · publish-icloud.sh
└── output/ # generated CVs (gitignored → archived to iCloud)
…