Tailor Your Resume to a Job Description with AI — Without Inventing Numbers
Skills used in this guide (2)
软件开发工程师、产品经理等求职者,在针对特定职位描述投递或跨行转岗时,可一键深度分析岗位需求,自动提取ATS关键词并重组个人经验,快速生成高命中率的定制简历,大幅提升面试邀约率。
Download pack → https://github.com/anbeime/skill/tree/main/skills/tailored-resume-generator/tailored-resume-generator当用户想创建、读取、编辑或处理 Word 文档(.docx 文件)或 Word 模板(.dotx 文件)时使用。触发词包括:Word 文档、.docx、.dotx,或要求生成带目录、标题、页码、信头等排版的专业文档。也用于从 .docx/.dotx 提取或重组内容、插入或替换图片、查找替换、批注修订,或转换为精排版 Word 文档。若用户要的是报告、备忘录、信函、模板等 .docx 交付物时使用。不要用于 PDF、表格、Google Docs 或与文档生成无关的通用编程任务。
npx skills add anthropics/skills -g
AI resume tailoring works — until it starts inventing numbers. The fix is a two-step prompt: make the model build a requirement-match table first, then write the resume with a hard rule that any metric you did not supply becomes a [TO FILL] placeholder.
Who this is for / not for
For you if: you have real work experience, you apply to roles with detailed JDs, and you are willing to spend ten minutes supplying actual numbers.
Not for you if: you are a new grad (the model will inflate one internship into three "led" projects), or you want one master resume to blast everywhere — the whole point of tailoring is one version per role.
What to prepare
- The full JD, pasted verbatim — not your summary of it.
- A fact sheet, in this shape. The critical part is that you supply the numbers:
Experience: company / title / dates / 3-5 responsibilities
Metrics: the real number behind each bullet (scale, delta, hours saved, revenue) — or "none"
Skills: what you can do, and at what level (independent / used it / aware of it)
Education & links: degrees, certifications, portfolio
Target: company + roleSteps
1. Install the skill
git clone --depth 1 --filter=blob:none --sparse https://github.com/anbeime/skill
cd skill && git sparse-checkout set skills/tailored-resume-generatorDrop the skills/tailored-resume-generator/ directory into your skills folder
(~/.claude/skills/, ~/.codebuddy/skills/, or your client's equivalent). No dependencies, no API key.
2. Make it analyze the JD before writing anything
Here is a job description. Do two things only — do NOT start writing the resume yet:
1. Build a table of hard requirements with three columns:
Requirement | Do I match | Evidence (which experience proves it)
Write "no evidence" where there is none. Do not infer.
2. List keywords that appear 2+ times in the JD (these are what ATS parses for).
JD:
[paste JD]
My background:
[paste fact sheet]Read the "no evidence" rows first. They tell you whether to gather more material or skip this role.
3. Generate with an explicit no-invention rule
Using the match table above, write the resume in Markdown:
1. Use only what I supplied. Any number I did not provide becomes [TO FILL: what is needed].
No estimates, no "significantly improved" as a substitute for a metric.
2. Map JD keywords only to things I actually match. Put unmatched items in a
separate "Gaps" section instead of padding my skills list.
3. Structure each bullet as action + object + result, with my real numbers on the result.
4. Finish with a "Gaps" list of this resume's 3-5 genuine weaknesses versus this JD.4. Human pass (mandatory)
- Search for
[TO FILLand fill every one; if you cannot, rewrite the bullet instead of guessing - For every skill listed, you can name where you used it — otherwise cut it
- Dates are continuous and correct (models mis-arithmetic ranges surprisingly often)
- Your job titles match your actual titles, not the model's upgraded versions
- One page for <10 years of experience in the US market; two pages only for research-heavy or academic CVs
What we actually observed
We ran the workflow against a data-analyst JD (retail/e-commerce, required SQL, Python, A/B testing, Tableau or Power BI). With the no-invention rule in place, the output kept three honest placeholders (coverage scope, campaign count, hours saved) and flagged three real gaps: no rigorous A/B experience, no Tableau/Power BI, no metrics supplied.
Without the rule, the same material produced confident fiction. The skill's own bundled example does exactly this: the input says only "Built Python scripts for data automation" and "Worked with marketing team on campaign analysis" — no figures anywhere — and the output claims
reducing manual data processing time by 60% improving campaign ROI by 35%
That is the failure mode to design against, not a bug you can prompt away politely once.
Traps
Invented metrics. See above. Placeholders beat plausible numbers that collapse under interview follow-up.
Inflated scope. In the same bundled example, a one-year internship becomes "Healthcare industry experience" in the summary line. Watch the verbs: "assisted" quietly becomes "led".
Keyword stuffing. Models pad the skills section to raise JD match. ATS may pass you; the interview will not. List matched skills only, and keep unmatched ones in the Gaps section — it reads as self-aware.
Length creep. Models default to comprehensive. Cap the page count explicitly and cut the "Additional" section before cutting quantified results.
Alternatives
| Option | Best for | Upside | Downside |
|---|---|---|---|
tailored-resume-generator (this walkthrough) | Fast tailoring, any language | Pure prompt, no account, installs locally, does JD analysis | Invents metrics unless constrained |
docx skill (Anthropic official) | Final formatting to .docx | Real layout control | No JD matching at all |
| resume-builder-skill | English resumes, Harvard-style structure | Format rules and ATS conventions built in | 28 stars, English-centric; needs heavy rewriting for non-English roles |
| resume-tailoring-skill | Researching the company and surfacing forgotten experience | Surfaces experiences you forgot to list | Heavier process, slower per application |
| Manual | Career changes, roles you really want | Total control | 1-2 hours per version |
Notes for English-language applications
A few conventions differ from Chinese-language resumes and are worth knowing before you send:
- No photo, age, gender, or marital status. Including them is a red flag at US/UK employers.
- One page is the default, including for senior engineers; two pages is acceptable for academic CVs or research-heavy profiles. This is different from the two-page norm in China.
- Standard section headings (
Experience,Skills,Education) parse better through ATS than creative ones (What I've done,My toolkit). - The XYZ formula works well as a bullet pattern: "Accomplished [X] as measured by [Y] by doing [Z]". It forces a metric into every line — which is exactly the thing the model will fake, so supply the numbers.
- Mirror the JD's job title in your summary if it matches your actual level; recruiters search by title.
FAQ
Is using AI on my resume cheating?
Rewriting expression is fine; inventing content is not. Test: can you talk for five minutes about every line on the page? If not, cut it or rewrite it honestly. The placeholder rule enforces exactly this.
Will ATS flag my resume as AI-generated?
ATS parses and ranks keywords; it does not detect authorship. The real risk is keyword stuffing — padding skills you do not have — which passes the machine and fails the interview.
Do I need a separate version for every role?
Layer it: full workflow for the 3-5 roles you want most; for the rest, adjust only the summary and the ordering of skills. One generic resume across twenty directions performs worse than five targeted versions.
One page or two?
For US/UK applications: one page, even at senior level, unless you are in academia or research. State the limit in the prompt; otherwise the model defaults to "comprehensive".