resume

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Resume: Universal ATS Resume Optimization Skill

简历:通用ATS简历优化技能

Invocation:
  • /resume
    — Interview the user, then build a new resume from scratch.
  • /resume <file>
    — Parse an existing resume, interview the user to confirm/fill gaps, then diagnose and rewrite to fix every ATS flag.
  • /resume-score <file>
    — Brief interview for context (target role + JD), then estimate the ATS score with per-category breakdown.
  • /resume-jd-tune <file> <jd>
    — Brief interview to confirm skill claims, then keyword-tune the resume to the JD.
Interview is mandatory on every command — see Behavior below.
Scripts: Located at the plugin root
scripts/
directory —
build_ats_resume.js
(DOCX builder),
score_resume.py
(heuristic scorer).
Orchestrates a 5-phase workflow (interview → diagnose → rewrite → build → score) across any field. Detects career stage (entry / mid / senior / executive) and industry from user input, then applies the matching ruleset. Produces a single ATS-safe DOCX that scores in the low-to-mid 90s on any major ATS scanner.
调用方式:
  • /resume
    — 与用户进行访谈,然后从头创建一份新简历。
  • /resume <file>
    — 解析现有简历,与用户访谈以确认/补充信息缺口,然后诊断并重写以修复所有ATS识别问题。
  • /resume-score <file>
    — 进行简短访谈获取背景信息(目标岗位+JD),然后估算ATS评分并提供分类明细。
  • /resume-jd-tune <file> <jd>
    — 进行简短访谈确认技能资质,然后针对JD对简历进行关键词适配。
所有命令均需强制进行访谈 — 详见下方「行为规范」。
脚本文件: 位于插件根目录
scripts/
下 —
build_ats_resume.js
(DOCX生成器)、
score_resume.py
(启发式评分工具)。
该技能可跨领域协调5阶段工作流(访谈→诊断→重写→生成→评分)。能从用户输入中识别职业阶段(入门/中级/高级/高管)及行业,然后应用匹配规则集。生成符合ATS标准的单一DOCX文件,在主流ATS扫描工具中评分可达90分左右。

Behavior

行为规范

ALWAYS interview the user — every invocation, no exceptions.
  • No arguments (
    /resume
    ):
    Run the full interview, then build resume from scratch.
  • File argument (
    /resume path/to/resume.docx
    ):
    Parse the file, then still run the interview to confirm extracted facts and fill any gaps before diagnosing or rewriting.
  • Score (
    /resume score <file>
    ):
    Run a brief interview (target role + JD if available) so the score is contextualized to what the user is targeting, then score.
  • Tune (
    /resume tune <file> <jd>
    ):
    Run a brief interview (gaps in JD, skills user actually has) before tuning.
  • Diagnose (
    /resume diagnose <file>
    ):
    Same as score — brief interview for context, then diagnose.
The interview always uses
mcp__conductor__AskUserQuestion
one question per tool call, never batched. Numbered options where known; the tool auto-adds an "Other" free-text input on every prompt.
必须与用户进行访谈 — 所有调用均需执行,无例外。
  • 无参数(
    /resume
    ):
    执行完整访谈流程,然后从头创建简历。
  • 带文件参数(
    /resume path/to/resume.docx
    ):
    解析文件后,仍需执行访谈,确认提取的信息并补充缺口,再进行诊断或重写。
  • 评分命令(
    /resume score <file>
    ):
    执行简短访谈(目标岗位+可用JD),使评分与用户目标岗位匹配,然后进行评分。
  • 适配命令(
    /resume tune <file> <jd>
    ):
    执行简短访谈(JD信息缺口、用户实际掌握的技能)后再进行适配。
  • 诊断命令(
    /resume diagnose <file>
    ):
    与评分命令相同 — 先进行简短访谈获取背景信息,再进行诊断。
访谈需始终使用
mcp__conductor__AskUserQuestion
工具 — 每次工具调用仅提问一个问题,不得批量提问。已知选项需编号;工具会自动在每个提示中添加「其他」自由输入项。

Orchestration Logic

编排逻辑

The skill runs 5 phases. Don't skip phases. Phase 1 (Interview) is mandatory on every invocation.
  1. Interview (always) — Ask the questions in
    references/interview-prompts.md
    one at a time using the
    mcp__conductor__AskUserQuestion
    tool. Hard limit: ≤4 options per question (tool constraint). For wider question spaces (e.g., target role across all fields), split into a branching pair: ask field/category first, then specific role. For questions with known options (industry type, seniority, page count, tone, etc.), provide numbered choices. For open-ended questions (achievements, metrics, skills), pass
    "options": []
    and let the user type freely via the auto-provided "Other" input. Never include "Other" yourself — it's added automatically. Ask one question per tool call, wait for answer, then ask next. Adapt follow-ups based on previous answers — skip questions already answered or already extracted from an uploaded file (but still confirm). Minimum required before drafting: target role, industry, years of experience, current title, JD (if available), top achievements with metrics, core skills, prior ATS flags, page-count preference. For each role the user wants listed, loop through title / employer / dates / team / shipped / improved / led / metrics. Never draft, score, diagnose, or tune before completing the required-block interview.
  2. Diagnose — If rewriting, map every issue to specific lines (vague bullet, passive voice, verb repetition, non-standard heading, missing metric). Share with the user before touching anything.
  3. Rewrite — Apply the rules in
    references/resume-best-practices.md
    . Quantify every bullet, vary verbs (no verb >2x), active voice only, canonical job titles, standard section headings, target-role signal in two places.
  4. Build — Populate
    scripts/build_ats_resume.js
    DATA object with the rewritten content, run with
    node
    . Validate page count; tighten margins / font / old roles if over target. Never cut metrics.
  5. Score — Run
    scripts/score_resume.py
    on the output. Report per-category scores and the weighted overall. Honest caveat: ~94 is a realistic generic ceiling; per-JD tuning pushes to 96–98.
该技能执行5个阶段,不得跳过任何阶段。第1阶段(访谈)为所有调用的强制环节。
  1. 访谈(必选) — 使用
    mcp__conductor__AskUserQuestion
    工具,逐个提问
    references/interview-prompts.md
    中的问题。严格限制:每个问题选项≤4个(工具约束)。对于范围较广的问题(如全领域目标岗位),拆分为分支提问:先询问领域/类别,再询问具体岗位。对于有已知选项的问题(行业类型、职级、页数、语气等),提供编号选项。对于开放式问题(成就、数据、技能),传入
    "options": []
    ,让用户通过自动提供的「其他」输入项自由填写。请勿自行添加「其他」选项 — 工具会自动添加。每次工具调用提问一个问题,等待回答后再提问下一个。根据之前的回答调整后续问题 — 跳过已回答或已从上传文件中提取的问题(但仍需确认)。开始撰写前的必填信息:目标岗位、行业、工作年限、当前职位、JD(如有)、带数据的核心成就、核心技能、过往ATS识别问题、简历页数偏好。对于用户希望列出的每个岗位,循环询问职位名称/雇主/任职时间/团队/交付成果/改进成果/领导项目/数据指标。未完成必填访谈环节前,不得进行撰写、评分、诊断或适配操作。
  2. 诊断 — 若进行重写,需将每个问题映射到具体内容行(模糊描述、被动语态、动词重复、非标准标题、缺失数据)。在修改前告知用户。
  3. 重写 — 应用
    references/resume-best-practices.md
    中的规则。所有项目描述均需量化,动词多样化(同一动词使用不超过2次),仅使用主动语态,采用标准职位名称、标准章节标题,在两处体现目标岗位信号。
  4. 生成 — 将重写后的内容填入
    scripts/build_ats_resume.js
    的DATA对象,使用
    node
    运行脚本。验证页数;若超出目标页数,调整边距/字体/早期岗位内容,但不得删除数据指标。
  5. 评分 — 对输出文件运行
    scripts/score_resume.py
    。提供分类评分及加权总分。需如实说明:通用简历的合理最高分为约94分;针对JD优化后可提升至96–98分。

Field Detection

领域识别

Detect the user's field from their target role and current title, then pick the skills-section structure:
FieldSkills categories
Software EngineeringLanguages, Backend, Frontend, Data, Cloud & DevOps, Architecture & Leadership
Product ManagementMethodologies, Tools, Domains, Analytics, Leadership
MarketingChannels, Tools, Analytics, Content, Strategy
Design (UX/UI/Product)Tools, Methods, Disciplines, Research, Leadership
SalesMethodologies, Tools, Industries, Skills, Languages
Finance / AnalyticsTools, Modeling, Reporting, Compliance, Domain
Data / MLLanguages, ML/DL, Data Platforms, Cloud, Tools
HealthcareClinical Skills, EMR Systems, Certifications, Specialties
LegalPractice Areas, Software, Languages, Bar Admissions
Operations / HRFrameworks, Software, Domains, Compliance, Languages
根据用户的目标岗位和当前职位识别领域,然后选择技能板块结构:
领域技能分类
软件工程编程语言、后端、前端、数据、云与DevOps、架构与领导力
产品管理方法论、工具、领域、分析、领导力
营销渠道、工具、分析、内容、策略
设计(UX/UI/产品)工具、方法、学科、研究、领导力
销售方法论、工具、行业、技能、语言
金融/分析工具、建模、报告、合规、领域
数据/机器学习编程语言、机器学习/深度学习、数据平台、云、工具
医疗临床技能、EMR系统、认证、专业方向
法律执业领域、软件、语言、律师资格
运营/HR框架、软件、领域、合规、语言

Career Stage Detection

职业阶段识别

Detect stage from stated years of experience and seniority, then pick length and structure:
StageLengthOrder
Entry (0–2 yrs)1 pageContact → Summary (optional) → Education → Projects → Experience → Skills
Mid (3–9 yrs)1 page preferred, 2 if denseContact → Summary → Experience → Skills → Education → Certifications
Senior / Staff / Principal (10+ yrs)2 pagesContact → Summary → Experience → Skills → Education
Executive (Director+)2–3 pagesContact → Executive Brief → Selected Achievements → Experience → Skills → Education → Board / Advisory
根据用户陈述的工作年限和职级识别职业阶段,然后选择简历长度和结构:
职业阶段简历长度内容顺序
入门级(0–2年)1页联系方式 → 个人简介(可选)→ 教育背景 → 项目经历 → 工作经验 → 技能
中级(3–9年)优先1页,内容密集时可2页联系方式 → 个人简介 → 工作经验 → 技能 → 教育背景 → 认证
高级/资深/首席(10年以上)2页联系方式 → 个人简介 → 工作经验 → 技能 → 教育背景
高管(总监及以上)2–3页联系方式 → 高管摘要 → 精选成就 → 工作经验 → 技能 → 教育背景 → 董事会/顾问经历

Quality Gates

质量校验标准

Before handing off the DOCX, verify:
  • Quantification ratio ≥ 60% of bullets carry a number. Target 90%+.
  • Verb variety — no verb appears more than 2x across the whole resume.
  • Active voice — 0 passive constructions ("was responsible for," "tasks included," etc.).
  • Section headings — exactly 4 standard: PROFESSIONAL SUMMARY, SKILLS (or TECHNICAL SKILLS), PROFESSIONAL EXPERIENCE, EDUCATION.
  • Page count matches user's target (1 or 2).
  • Job titles — every title is canonical; compound titles split.
  • No vague filler — "hard worker," "passionate," "team player," "results-driven" are banned.
  • No fabricated metrics — every number traces back to user input.
  • Contact info in body, not header / footer.
If any gate fails, re-run the rewrite phase on the failing section before building.
交付DOCX文件前,需验证以下内容:
  • 量化比例 ≥60%的项目描述包含数据指标,目标为90%以上。
  • 动词多样性 — 整个简历中同一动词使用不超过2次。
  • 主动语态 — 无被动结构(如“负责”“包含任务”等表述)。
  • 章节标题 — 严格使用4个标准标题:PROFESSIONAL SUMMARY、SKILLS(或TECHNICAL SKILLS)、PROFESSIONAL EXPERIENCE、EDUCATION。
  • 页数 符合用户目标(1页或2页)。
  • 职位名称 — 所有职位名称均为标准名称;复合职位需拆分。
  • 无模糊套话 — 禁止使用“勤奋”“热情”“团队合作者”“结果导向”等表述。
  • 无虚构数据 — 所有数据均来自用户输入。
  • 联系方式 位于正文,而非页眉/页脚。
若任何校验项未通过,需对不合格部分重新执行重写阶段,再生成文件。

Community Footer

社区信息页脚

When to show

展示时机

  • After producing a final DOCX if this is the user's first interaction with the skill.
  • After
    /resume score
    when the score is in the 90s.
  • When the user asks "who built this" or "how do I contribute."
  • 首次使用该技能并生成最终DOCX文件后。
  • 使用
    /resume score
    命令且评分达到90分以上时。
  • 用户询问“谁开发了这个工具”或“如何贡献”时。

When to skip

跳过时机

  • During the interview phase.
  • During iteration (user asking for changes).
  • When the user explicitly asks for brief / no-frills output.
Footer text: "Built with the
resume
skill for Claude Code. MIT-licensed, contributions welcome at https://github.com/kunalrawat425/claude-resume."
  • 访谈阶段。
  • 迭代过程中(用户要求修改时)。
  • 用户明确要求简洁输出时。
页脚文本:"Built with the
resume
skill for Claude Code. MIT-licensed, contributions welcome at https://github.com/kunalrawat425/claude-resume."

Reference Files

参考文件

  • references/resume-best-practices.md
    — full 2026 do's/don'ts across 10 sections.
  • references/interview-prompts.md
    — exact questions the skill asks the user.
  • references/scoring-rubric.md
    — per-category weighting for the score estimator.
Load these only when needed — don't preload into context during the interview phase.
  • references/resume-best-practices.md
    — 涵盖10个板块的2026年完整规范。
  • references/interview-prompts.md
    — 技能向用户提问的具体问题。
  • references/scoring-rubric.md
    — 评分估算的分类权重标准。
仅在需要时加载这些文件 — 访谈阶段请勿预加载到上下文。

Scoring Methodology

评分方法

ATS Score (0–100)

ATS评分(0–100分)

Weighted across 8 categories. See
references/scoring-rubric.md
for full per-band criteria.
CategoryWeight
Parsability / format15%
Section headings10%
Quantified impact18%
Verb variety12%
Active voice10%
Vague-filler absence10%
Length appropriateness10%
Visual simplicity (no images / tables / columns)15%
基于8个分类进行加权计算。完整分级标准详见
references/scoring-rubric.md
分类权重
可解析性/格式15%
章节标题10%
量化成果18%
动词多样性12%
主动语态10%
无模糊套话10%
长度合理性10%
视觉简洁性(无图片/表格/分栏)15%

Priority Levels

优先级等级

When diagnosing, rank issues for the user:
  • Critical — prevents the resume from parsing at all (photo, table-based layout, missing sections).
  • High — drops the score 5+ points (vague bullets, passive voice, verb repetition 3+, non-standard job titles).
  • Medium — drops the score 2–5 points (redundant phrasing, long bullets, irrelevant skills).
  • Low — polish (en-dash vs hyphen, skill ordering, tense consistency within a single role).
诊断时需为用户划分问题优先级:
  • 严重 — 导致简历完全无法被解析(照片、表格布局、缺失章节)。
  • — 导致评分下降5分以上(模糊描述、被动语态、动词重复3次以上、非标准职位名称)。
  • — 导致评分下降2–5分(冗余表述、过长描述、无关技能)。
  • — 优化项(短横线与连字符区别、技能排序、单一岗位内时态一致性)。

Sub-Skills

子技能

  • resume-score — Standalone heuristic scorer. Invoke with
    /resume-score <file>
    . Has its own slash command.
  • resume-jd-tune — Standalone JD keyword tuner. Invoke with
    /resume-jd-tune <file> <jd>
    . Has its own slash command.
  • resume-score — 独立启发式评分工具。调用命令为
    /resume-score <file>
    ,拥有独立斜杠命令。
  • resume-jd-tune — 独立JD关键词适配工具。调用命令为
    /resume-jd-tune <file> <jd>
    ,拥有独立斜杠命令。

Subagents

子代理

None currently. The skill runs inline.
目前无任何子代理,该技能为内联运行。

Error Handling

错误处理

  • Can't parse the uploaded file — fall back to asking the user to paste the content as text. Don't guess.
  • Missing metric — ask the user for the number; never invent.
  • Verb repetition unfixable — if the user has 8 bullets all about "launching," diversify the verbs to Released / Shipped / Rolled out / Built / Deployed / Developed / Delivered / Created. Don't reuse a verb more than 2x.
  • Content overflows 2 pages — tighten in this order: margins (0.5–0.6"), font (body to 10pt), oldest roles to 1–2 bullets. Never cut metrics.
  • User requests designer variant (sidebar, photo, pills) — this skill deliberately doesn't produce those because they score lower on ATS. Recommend a separate tool for recruiter-facing pretty versions.
  • User provides fake or unverifiable metrics — include them but flag in the response; final responsibility is the user's.
  • 无法解析上传文件 — 转而请求用户粘贴文本内容,请勿猜测。
  • 缺失数据指标 — 向用户询问具体数据,不得虚构。
  • 动词重复无法避免 — 若用户有8条关于“launching”的描述,替换为Released / Shipped / Rolled out / Built / Deployed / Developed / Delivered / Created等动词,确保同一动词使用不超过2次。
  • 内容超出2页 — 按以下顺序调整:边距(0.5–0.6英寸)、字体(正文字号改为10pt)、最早的岗位保留1–2条描述。不得删除数据指标。
  • 用户要求设计师版本(侧边栏、照片、胶囊样式) — 该技能刻意不生成此类版本,因为它们在ATS中的评分较低。建议用户使用其他工具生成面向招聘者的美观版本。
  • 用户提供虚假或无法验证的数据 — 可包含这些数据,但需在回复中注明;最终责任由用户承担。