agentsclimarketplace

Tailor resume

Skill clickblipclick/resume-tailor/.claude/skills/tailor-resume

A Claude skill for tailoring a resume for a job description

Install
npx -y skills add clickblipclick/resume-tailor --skill tailor-resume

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Use when tailoring a resume to a specific pasted job description. Reads content/master.yaml and jobs/<slug>/job.md, proposes a selections.yaml with per-change reasoning, runs the render/measure/export loop, and enforces one-page output via human-approved cuts.

SKILL.md

4.5 KB, as published. Nobody here has run it

Tailor Resume Skill

When to use

User wants to generate a tailored, page-limited PDF for a job description.

Scaffolding

If no jobs/*-<slug>/ directory exists yet, always scaffold via the script: save the JD to a temp file and run bun run tailor <temp-file> --slug <slug>. Never create the job directory manually — the script adds a date prefix (YYYY-MM-DD-<slug>) that the rest of the workflow depends on.

Hard rules

  1. Never apply a cut, override, or reordering without showing the user the specific change and the reason, and getting explicit approval. Batch approval is fine ("looks good, proceed"); rejections can be specific ("all except 2 and 5").
  2. Never skip the measure step. Every selections change must be followed by bun run measure <path-to-selections.yaml>.
  3. Iteration cap: 5 fit-loop passes. After the 5th, stop and ask the user for direction rather than thrashing.
  4. Page limit. Default is 1 page. If the user sets max_pages in selections.yaml, respect that limit. If measure reports overflow (overflow_px > 0), do not export.

Workflow

1. Gather context

  • Identify the job directory (e.g. jobs/2025-04-18-acme-sre/). Use ls jobs/ if needed.
  • Read content/master.yaml in full.
  • Read the job.md from the job directory.
  • Consider the job.md and content/master.yaml as if you were a hiring manager for the given role. Consider what master bullets would be most attractive for that role. Listen to the user but push back if you think they are making a mistake or an incorrect judgment. Ultimately, they are in control.
  • For skills, err toward including more even if it's not explicitly applicable for the role.
  • List jobs/archive/ and read any prior job.md + selections.yaml for roles/companies that look similar to the current JD. Use these only as framing reference, not as authoritative.

2. Propose initial selections

Produce a proposed selections.yaml and present it as a diff-with-reasoning list. Format:

Including:
  - acme-led-migration — JD emphasizes data platform work; this matches directly.
  - acme-hired — JD mentions team growth.

Excluding:
  - globex-frontend-* — JD is backend-only; these would dilute focus.

Rewording:
  - acme-reduced-latency: "Cut API p95 latency 60%"
    (original: "Improved API latency by 60%") — JD uses "p95" explicitly.

Template:
  - template: default — using the standard template unless the user requests otherwise.

The proposed selections.yaml must include a template field (default: "default").

Always propose profile_overrides with a tailored headline and summary for the JD. The headline should match the JD's role title (or a close generalization). The summary should be rewritten to emphasize the skills, technologies, and themes the JD prioritizes, while staying truthful to the candidate's experience. Ensure the headline and summary's opening are consistent (e.g. both say "Senior Software Engineer", not one "Frontend" and one "Software").

Wait for user approval. Apply approved changes to jobs/<slug>/selections.yaml.

3. Render + measure

Run:

bun run measure <path-to-selections.yaml>

Report the measure JSON back to the user.

4. If overflowing, propose cuts

If pages > max_pages:

  • Identify candidate cuts sized to the reported overflow_lines.
  • Present each as diff-with-reasoning (what you'd drop or shorten, and why this bullet is least critical given the JD).
  • Wait for approval.
  • Apply approved changes; return to step 3.

After 5 iterations with no fit, stop and ask the user whether to: (a) relax a constraint, (b) manually edit, or (c) adjust the template.

5. Export

When pages <= max_pages:

bun run export <path-to-selections.yaml> --out jobs/<slug>/resume.pdf

Editing discipline

  • Never edit content/master.yaml from this skill. Master is owner-curated. If the JD requires content that doesn't exist in master, raise it to the user explicitly — they decide whether to add to master or use a one-off override.
  • Bullet IDs are stable. Don't rename them.
  • Vary leading verbs across bullets. Avoid repeating the same initial verb within a role section. When writing overrides, check what verbs adjacent bullets already use.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.