Skill 详情
resume-tailor
Produces job-specific tailored resumes with JD analysis and ATS pass.
使用前先检查
自动化审核只检查相关性,不代表安全审查或推荐。使用前请阅读来源中的说明。
SKILL.md
这段内容是审核时保存的快照。外部来源才是完整且最新的版本。
---
name: resume-tailor
description: Tailor a resume to a specific job description using the user's career_profile.md as the source of truth. Use this skill whenever the user wants to apply for a job, customize their resume, "make my resume fit this JD", "tailor for this role", "ATS-optimize", or asks for a resume targeting a specific company / requisition / posting. Also use when the user shares a job description (pasted, file, or URL) and asks what to do with it. Produces a markdown draft, runs an ATS keyword pass, renders to .docx and .pdf where possible, and offers to commit the result to git. Requires career_profile.md to exist — if it doesn't, hand off to career-profile-builder first.
---
# Resume Tailor
Take a job description and a career profile, produce a tailored resume in markdown, .docx, and .pdf. The whole workflow is roughly 15 minutes for a user who already has a profile. The skill orchestrates: JD analysis → gap scorecard → minimal targeted discovery → draft → ATS pass → render → optional git commit.
## Why this skill exists separately from career-profile-builder
The profile interview is exhausting and only happens occasionally. The tailoring workflow is fast and happens dozens of times. Different cadences, different mental models. Mashing them together means recurring users get re-asked profile questions every time, which is the worst-of-both-worlds.
This skill assumes the profile already exists. If it doesn't, the skill stops and points the user at `career-profile-builder` — it does not try to do a profile interview from inside a tailoring session.
## Output contract
For each tailoring session, the skill produces (in the user's chosen working directory):
1. `resume_<JD-ID>.md` — the canonical source-of-truth for this tailored version
2. `resume_<JD-ID>.docx` — pandoc-rendered, ATS-friendly (the recruiter / ATS upload format)
3. `resume_<JD-ID>.pdf` — for emailing to humans (the "looks good in preview" format)
4. `resume_<JD-ID>.html` — the intermediate (kept around because it's free and useful)
All four files share a stem so they're easy to diff, version, and find. `<JD-ID>` is the user-supplied or auto-detected requisition ID (e.g., `R13927`). If no ID is available, fall back to `<role-slug>_<YYYY-MM-DD>` — e.g., `senior-platform-eng_2026-04-28`.
If pandoc is missing, the skill emits `.md` and `.html` only and tells the user what they're missing. See "Rendering" below.
## Required inputs
- A **career profile** file — typically `career_profile.md` in the current directory. The skill reads this first and refuses to proceed without it (see "Profile preflight" below).
- A **job description** — pasted into chat, supplied as a file path, or a URL the user wants fetched.
- (Optional) An **output directory** — defaults to the current working directory.
- (Optional) A **page-count target** — defaults to 2.
## Profile preflight (do this first, every session)
Before doing anything else:
1. Look for `career_profile.md` in the user's working directory (or the path they specified).
2. If found, read it fully into context. The Sections 17-19 (Achievements Bank, Known Gaps, Pre-built Framings) are non-optional reading — they govern what the tailor can and cannot claim.
3. If not found, stop. Tell the user:
> I need a career profile to tailor against. The `career-profile-builder` skill walks you through building one — it takes 30-45 minutes the first time, and after that resumes are 15 minutes each. Want to start that now?
4. If found but very thin (no Section 5 deep-dives, empty Achievements Bank), tell the user:
> I found `career_profile.md` but it looks light — there's not much in the Achievements Bank or experience deep-dive. I can still tailor, but the result will be generic. Want to expand the profile first, or push through with what we have?
## The tailoring workflow
### Phase 1 — JD ingestion (~1 min)
Read the JD. Extract:
- **Requisition ID** (look for `R\d+`, `JR\d+`, `\d{6,}`, or "Job ID" 在 GitHub 阅读完整来源 (打开外部页面)