// cv tailoring
Rewrite your CV for one job. Invent nothing.
A generic CV loses to a specific one, and a fabricated one loses the interview. freehire reframes what you have actually done toward the vacancy in front of you — pulling the relevant work forward, saying it in the job's own terms, and asking you about anything it cannot find in your history.
Your Acme role already covers the event-bus requirement — want me to lead with it?
Yes, and drop the CMS line.
Preview
72
worth applying
// reframe, don't fabricate
It knows the difference between burying something and not having it.
Before the agent writes a word, it reads the fit analysis for this vacancy and sorts the job's requirements into two piles. That split is the whole feature: one pile is editing, the other is a question.
Already yours, buried
Requirements your history covers but the CV states in passing, or three roles down. These get pulled forward and said plainly.
Not yours yet
Requirements nothing in your history supports. The agent asks you before anything is written — it cannot fill these in on its own.
The rule holds below the interface too: an achievement a model inferred is stored marked as the model's, and cannot be written into a CV until you confirm it. That check lives in the code, not in the agent's instructions — which is the difference between a safeguard and a request.
// how it works
Analyse the fit
Run the AI fit analysis on the vacancy. It scores the match dimension by dimension and names what is missing — the reasoning the tailored CV will work from.
Tailor from the result
One click copies your base CV into a new one bound to that vacancy. Your original is untouched; each job gets its own copy, so nothing you tailor bleeds into the next application.
Edit with the agent, or by hand
The agent reads the analysis and your CV before it says anything, then proposes edits one at a time. The editor is right there — you can overrule any of it and type your own.
Export
Pick a template and download the PDF. Switching templates never touches the content, so you can see the same CV three ways before you send it.
// every edit, one at a time
No wholesale rewrite to proofread.
The agent cannot replace your CV in one move. It edits through a deliberately narrow vocabulary — one field, one bullet, one ordering at a time — so every change is visible in the live preview as it lands, and reversible if you disagree. Type over any of it: the editor and the agent write to the same document.
// export
A PDF a parser can read.
The CV is typeset into a clean single-column PDF with real text — no tables, no side columns, no words baked into an image — so the ATS on the other end reads what you see. Templates change the typography, never the content, so you can look at the same CV three ways before sending it.
// from the terminal
Or hand the loop to your own agent.
The same flow runs on the freehire CLI with one API key, so a harness you wrote can tailor the CV instead: read the analysis, read the document, apply patches, render. Same rules — the split is in the context it reads, so your agent inherits the honesty constraint rather than being trusted with it.
# what to reframe toward, and what to ask about freehire cv context <cv-id> # the document as JSON freehire cv get <cv-id> # one field-level edit freehire cv edit <cv-id> --patch '{"op":"replace_bullet",…}' # the PDF freehire cv render <cv-id> --out cv.pdf
// faq
Frequently asked questions.
- Does it invent experience I do not have?
- No, and the design is what stops it rather than a promise. The tailoring context splits the job's requirements in two: the ones your history already covers but your CV buries, which the agent reframes, and the ones it does not, which the agent has to ask you about. Anything a model merely inferred is marked as such and cannot be written into a CV until you confirm it — the check lives in the service, not in a prompt.
- How do I start tailoring?
- From a job. Run the AI fit analysis on a vacancy, then tailor from its result — the analysis is what the tailored CV reframes toward, so the flow needs one first. freehire copies your base CV into a new one bound to that vacancy; your original is never edited.
- What does it actually change?
- One field at a time: the summary, a header field, a bullet, the order of bullets within a role, a skill group, or a role's technology line. Each edit is a single operation you can see and undo, not a wholesale rewrite you have to proofread against the original.
- Is the PDF ATS-friendly?
- Yes. The CV renders through a typesetting engine into a clean, single-column PDF with real text — no tables, no columns, no images behind the words — so a parser reads the same content you see. Pick from the template gallery; switching templates never touches the content.
- Can I do this from the terminal?
- Yes. The freehire CLI drives the same flow: `cv context` prints the analysis to reframe toward, `cv get` dumps the document, `cv edit` applies one patch, and `cv render` downloads the PDF. Your own agent can run the whole loop with an API key.
- What does it cost?
- AI credits, the same currency the fit analysis uses. Every account gets a monthly grant, and contributing a company board we do not track yet earns more. Your balance and what each action spent are on your credits page.
Stop sending the same CV everywhere.
Find a job worth the effort, run the fit analysis, and tailor from it. Ten minutes per application, and nothing on the page that you did not do.