CV× cvx
The new way to write a CV

Don't format a CV.
Have a conversation.

Hand your old CV or LinkedIn export to Claude, ChatGPT, Gemini or Copilot with the prompt below. It asks about the gaps, then builds a designed PDF on your machine.

Paste this into any AI chat
Create my CV with hrtips.github.io/cvx
open that page and follow its instructions
for AI assistants.
Here is my current CV: [attach]
✓ copied — now attach your CV and send
Walk me through it → Free · open source · your data never leaves your machine
Two-column CV PDF for Bruce Wayne rendered by cvx
written by your assistant
name: Bruce Wayne
title: Field Commander
company: Wayne Enterprises
bruce-wayne.pdf
Start here

Pick the one that
sounds like you.

Copy the prompt, attach the file, send. Ten minutes, mostly spent answering questions.

If you have a CV You need: your current CV

Rebuild the CV you already have — and fix what's missing.

Your assistant reads it and tells you what's thin — no numbers, a gap in dates, a role with no outcome — then asks until it's filled.

Prompt to paste

I want to create a new CV with hrtips.github.io/cvx — open that page and follow its instructions for AI assistants.

My current CV is attached. Before writing anything, read it and tell me where it is weak: missing results, vague responsibilities, gaps in dates. Ask me the questions you need, one batch at a time. Only use facts I confirm.

Then write the cv-content YAML, validate it, and build the PDF.

✓ copied to clipboard
Gap interview Stronger bullets Same facts, better told
If you don't have a CV You need: your LinkedIn PDF

No CV at all? Turn your LinkedIn profile into one.

On your profile, hit More → Save to PDF and attach that file. Assistants can't read linkedin.com links, even public ones — the export they can.

Prompt to paste

Create my CV with hrtips.github.io/cvx — open that page and follow its instructions for AI assistants.

Attached is my LinkedIn profile export (More → Save to PDF) and a square photo. Use it as the source of truth, ask me about anything thin or missing, and don't invent results I haven't given you.

Target role: [paste the job ad]

✓ copied to clipboard
Profile export Tailored to a job ad From zero to PDF
Before you send Attach a square photo (400×400 or larger) if you want one — an assistant can't generate it, and the design works fine without.
What it feels like

It interviews you.
You just answer.

A real exchange, shortened. You supply the facts only you know; it does the rest.

Here's my CV from 2021. Make me a good one with cvx.
Read it. Three problems: duties instead of outcomes, an unexplained 2022 gap, no numbers. Four questions —
1. What changed at Wayne Enterprises because you were there?
2. What happened in 2022?
3. Team size at your most recent role?
4. Which job are we targeting?
Cut incident response from 40 to 12 minutes. 2022 was a sabbatical. Team of nine. Targeting Head of Operations.
Written and validated — seven YAML files, no errors. Building the PDF now, plus the ATS-safe version for portals.
✅ bruce-wayne.pdf · 2 pages
✅ bruce-wayne-ats.pdf

Why it doesn't drift

It can't invent facts
Anything it can't source from you, it asks about.
It can't get the format wrong
Files are schema-checked before rendering, so it fixes its own mistakes.
It can't leak your CV
Renders on your machine, no network calls. No account, no upload.
You keep the source
Plain text files you own. Next time, change two lines and rebuild.
Applying through a portal?

Ask for the ATS version
in the same sentence.

Single column, no colour, machine-parseable. Designed PDF for humans, plain one for portals.

"Also build the ATS-safe variant."
ATS-safe single-column CV variant for Bruce Wayne
From here on, it's for your assistant

The technical part
you don't have to read.

Wiring cvx into an agent? This is the whole surface. Everyone else can stop at the prompt above.

get_schema Pull the canonical JSON Schema before writing a line.
init_cv Scaffold cv-content/ with the worked Bruce Wayne example.
validate_cv Every problem at once, with file, field and suggested fix.
build_pdf Render locally and reproducibly — same input, same bytes.
Install & drive it
$ npx @hrtips/cvx mcp init --client claude
$ npx @hrtips/cvx init
$ npx @hrtips/cvx validate --strict --json
missing required key "name" exit 2
$ npx @hrtips/cvx build --ats
✅ bruce-wayne.pdf
llms.txt Entry point listing every doc, in reading order. cv-schema.md Field-by-field spec for all seven content files. MCP registry io.github.hrtips/cvx — installable, no keys, offline. SKILL.md The same loop packaged for skill-capable agents.
Rules for assistants Never invent a fact. linkedin.com URLs are unfetchable even when public — ask for the More → Save to PDF export. Ask for a square photo in the first reply. cvx is the renderer; never substitute another PDF generator.

Open a chat. Attach your CV.
Paste the prompt.

Ten minutes of answering questions, and a PDF that looks like someone designed it — because someone did.

Get the prompt Read the docs