Skip to content
Content
Skill

/make-resume

Generate a tailored resume/CV from a JD

From plugin
claude-resume-kit
2126 skills
Install
$ npx -y skills add ARPeeketi/claude-resume-kit --skill make-resume --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/make-resume

Context preview

The summary Claude sees to decide when to auto-load this skill.

Generate a tailored resume/CV from a JD

SKILL.md

make-resume.SKILL.md
description: Generate a tailored resume/CV from a JD
user-invocable: true

/make-resume

**User input:** `$ARGUMENTS`

Parse `$ARGUMENTS`:

  • File path (e.g., `JDs/*.txt`) → read that file for the JD
  • Text after the path starting with "Focus:"/"Emphasize:"/"Downplay:" → focus directive
  • "Quick:" prefix → Quick Mode (see below)
  • Empty → ask the user for the JD
  • Inline JD text (no file path) → save to `JDs/temp_<company>.txt`, proceed normally

---

Safety Rules (ALWAYS ENFORCED)

**Accuracy > Relevance > Impact > ATS > Brevity**

Read `config.md` Provenance Flags before generating any content. Verify every claim against that table.

  • Use the email from `config.md` Personal Info in all outputs
  • Resume bullets: ALL variable bullets are 2L (CV: 2L/3L mix OK, check `config.md` Document Preferences)
  • Source ALL bullet content from `resume_builder/experience/` files. Never fabricate.
  • Run `python3 resume_builder/helpers/char_count.py` after each section — the tool is authoritative

---

User Input During Execution

If the user provides feedback, corrections, or suggestions at any point: 1. Acknowledge the input immediately 2. If it affects an already-written section: go back, fix it, re-run char count gate 3. If it changes the bullet plan: update session file Bullet Plan 4. If it's a question: answer it, then continue from current step 5. Never restart a phase — resume from current position

---

Startup

Read `resume_builder/reference/shared_ops.md` for session startup, file derivation, and organization protocols.

Then: 1. Read `CLAUDE.md` — check Active Sessions and KB Corrections 2. Read `config.md` — load Provenance Flags, email, document preferences, role types 3. If session file exists for this JD:

  • Read session file, check Status
  • Phase 0: DONE, Phase 1: PENDING → resume at Phase 1
  • Phase 1: DONE → resume at Budget Gate
  • Phase 2: IN_PROGRESS → read .tex, check what sections exist, resume from checkpoint
  • Phase 2: DONE → "Resume already done. Run /make-cl next." Show next command. Stop.

4. If no session file: proceed to Phase 0

---

Quick Mode

Trigger: `$ARGUMENTS` starts with "Quick:"

Defaults:

  • Select all HIGH priority achievements from bundle's Priority Matrix as 2L
  • Fill remaining budget with MEDIUM priority in Priority Matrix order
  • Default format: 2-page resume (unless JD clearly requires CV)
  • Skip Phase 0 STOP and Phase 1 STOP
  • Keep Budget Gate (auto-pass if within target) and end-of-resume STOP
  • Run all phases with progress commentary instead of interactive stops

---

Phase 0: Research & Session Setup

**Read these files:** 1. The JD (from `$ARGUMENTS`) 2. `resume_builder/reference/resume_reference.md` — Budget Card, Section Specs, Char Limits, Page Budgets 3. `config.md` — Role-Type Decision Tree to identify the matching bundle

**Web Search (MANDATORY — 2-3 searches).** Load WebSearch via ToolSearch first. 1. `[Company] research & development [key JD domain]` — products, recent projects 2. `[Company] [specific technology from JD]` — concrete hooks for cover letter 3. `[Company] careers [role type] culture` OR recent news — hiring context

If web search returns no results: use JD text + training knowledge. Flag: "Web search returned limited results — CL hooks may be generic."

**Produce all of these (reference `resume_builder/reference/session_file_template.md` for format):**

  • **JD Analysis** — classify every requirement as Direct / Bridge (with confidence) / Gap. Extract ATS keywords by category.
  • **Company Context** — mission, role purpose, culture signals, "why them" angle (from web research)
  • **Framing Strategy** — lead narrative, reframing map, emphasize/downplay, CL hooks, user focus directives
  • **Critique Context** — reviewer persona, competitive landscape, domain vocabulary
  • **Cover Letter Plan** — institution type, paragraph structure, hooks, jargon level

**Create output folder:** Derive folder name from JD filename: `JDs/JD_Acme.txt` → `output/Acme/`

mkdir -p output/<FolderName>/

Write session file to `output/<FolderName>/session_<name>.md` (NOT flat `output/`). All subsequent output files go in this folder.

**Verify completeness:** Re-read the session file. Confirm these 8 sections are non-empty: JD Info, Requirements table, ATS Keywords, Gap Assessment, Company Context, Framing Strategy, Critique Context, Cover Letter Plan. Fill any missing section before presenting.

**Write memory pointer** to `CLAUDE.md` Active Sessions.

**Update session file Status:** `Phase 0: DONE`

Progress: "Searching for [company] + [domain]..." / "JD analysis: X/Y requirements direct match, Z bridges, W gaps"

>>>>>> MANDATORY STOP — DO NOT PROCEED <<<<<<

Present: research summary, role type + bundle, format, framing strategy. Ask user to confirm: (1) role type + bundle, (2) format, (3) framing strategy. **You MUST wait for the user's explicit text response before continuing.** Proceeding without confirmation misaligns the entire resume and requires full regeneration.

---

Phase 1: Plan Bullets

**Re-read `output/<FolderName>/session_<name>.md`** — specifically Framing Strategy and ATS Keywords.

**Read:** 1. The matching bundle from `config.md` Role Types → `resume_builder/bundles/bundle_[role_type].md` — Section 1 (Priority Matrix)

  • For hybrid JDs: read both bundles. Use primary for Priority Matrix, secondary for Reframing Map on 1-2 bridging bullets.

2. All experience files from `resume_builder/experience/` 3. `resume_builder/support/achievement_reframing_guide.md` 4. `resume_builder/support/skills_taxonomy.md` 5. `resume_builder/support/pub_metadata.md`

**Present one table per position:**

**[Position Name] (Budget: N-M bullets, ~X-Y rendered lines)**

| | ID | Achievement | Variant | Lines | JD Match | |---|---|-------------|---------|-------|----------| | * | P1-1 | [short description] | 2L | 2 | Direct | | * | P1-5 | [short description] | 2L | 2 | Direct | | o | P1-3 | [short description] |

Read more
Ships withclaude-resume-kit

Most AI resume tools work the same way: paste resume + paste JD, get a rewrite. They don't know which of your papers is published vs. under review. They don't know you only ran the simulations, not the experiments.

Get the whole plugin
Stats
212
Stars
50
Forks
Maintained
Maintenance
TeX
Language
MIT
License
5mo ago
Last commit
5mo ago
Created

Repo: ARPeeketi/claude-resume-kit