generate-cv

star 0

Generates print-ready HTML CVs from career context. Detects stale data and interviews for updates. Use when user says "cv", "resume", "generate cv", or needs their CV.

pedro-f20 By pedro-f20 schedule Updated 2/26/2026

name: generate-cv description: Generates print-ready HTML CVs from career context. Detects stale data and interviews for updates. Use when user says "cv", "resume", "generate cv", or needs their CV. argument-hint: [--ats] [--output=path]

Generate a professional, print-ready HTML CV from career/context.md. Detect stale career data and interview user for updates before generating. Output self-contained HTML that can be printed directly to PDF. `/cv` — Generate modern HTML CV to ~/Desktop/cv-YYYY-MM-DD.html `/cv --ats` — Generate ATS-friendly plain CV `/cv --output=~/Documents/my-cv.html` — Custom output path ## 1. Parse Arguments

Check for flags in skill arguments:

  • --ats → Use ATS template (simple, parseable layout)
  • --output=<path> → Custom output path
  • Default: ~/Desktop/cv-YYYY-MM-DD.html

2. Read Career Data

Read career/context.md from repo root. Extract:

Field Source Location
Name Hardcoded: Pedro Alonso Pinto
Title Current Situation → Role
Company Current Situation → Company
Location Current Situation → Location
Impact Current Situation → Impact delivered
Key Activities Current Situation → Key activities
Experience Experience Summary table + detailed sections
Technical Skills Skills Inventory → Technical table
Leadership Skills Skills Inventory → Leadership list
Languages Skills Inventory → Languages
Education Education section

3. Check Staleness

Parse "Session History" section for most recent date entry.

  • Extract year-month from headers like ### 2026-02-01
  • Compare to current date
  • If >6 months since last update → trigger interview

4. Interview (if stale)

If career data is stale (>6 months), ask targeted questions before generating:

  1. Role changes: "Any role changes or promotions since [last update]?"
  2. Achievements: "New quantifiable achievements to highlight? (revenue, cost savings, team growth)"
  3. Team/scope: "Has your team size or scope of responsibility changed?"
  4. Projects: "Any notable projects worth adding?"
  5. Skills: "New technical skills or certifications?"

Update career/context.md with answers before generating CV.

5. Generate HTML

Using the appropriate template:

  • Modern template: .claude/skills/cv/templates/modern.html
  • ATS template: .claude/skills/cv/templates/ats.html

Populate template placeholders with extracted career data. Write to output path.

6. Open and Instruct

open <output_path>

Tell user:

"CV generated at <path>. Print to PDF: Cmd+P → Save as PDF. For best results, use 'Scale: 100%' and 'No margins' or 'Default margins'."

## Template Variables

The templates use these placeholders:

{{NAME}}           → Pedro Alonso Pinto
{{TITLE}}          → Senior Data Science Manager (M2)
{{COMPANY}}        → Meta (Facebook)
{{LOCATION}}       → London, UK
{{EMAIL}}          → [blank — user should add manually]
{{PHONE}}          → [blank — user should add manually]
{{LINKEDIN}}       → [blank — user should add manually]

{{SUMMARY}}        → Generated from Current Situation impact + key activities

{{EXPERIENCE}}     → Built from Experience Summary, each entry:
                     - Company, Role, Dates, Location
                     - Bullet points from detailed sections

{{SKILLS_TECHNICAL}} → From Technical skills table
{{SKILLS_LEADERSHIP}} → From Leadership skills list
{{LANGUAGES}}        → From Languages section
{{EDUCATION}}        → From Education section

Experience Entry Format

For each role, extract:

  • Company name
  • Job title
  • Date range
  • Location
  • 3-5 bullet points of achievements (prioritize quantified impact)

Bullet points should start with action verbs: Led, Built, Developed, Delivered, Drove, etc.

Writing Style

All CV text (summary, bullet points, descriptions) must follow the Ghostwriting Rules in root CLAUDE.md. Use natural, human-sounding language. No em dashes, no filler phrases like "leveraging expertise" or "passionate about". Action verbs are good; corporate fluff is not.

## Modern Template

Located at: .claude/skills/cv/templates/modern.html

Design principles:

  • Print-first: A4 layout (210mm × 297mm) with proper margins
  • System fonts: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif
  • Single accent: #2563eb (professional blue)
  • Self-contained: All CSS embedded, no external dependencies
  • Semantic HTML: Proper heading hierarchy, accessible structure

Layout:

  • Header: Name (large), Title, Location, Contact (right-aligned)
  • Two-column for skills/languages (space efficient)
  • Single-column for experience (clarity)
  • Education at bottom

ATS Template

Located at: .claude/skills/cv/templates/ats.html

Design principles:

  • No columns: Single-column layout only
  • Plain text appearance: Black text, simple formatting
  • Larger font: 11pt minimum for readability
  • Skills as comma-separated list: Not tables or grids
  • Minimal styling: Bold for headings, bullets for lists
  • No graphics, icons, or complex layouts

Optimized for automated applicant tracking system parsing.

1. HTML file created at output path 2. File opens in default browser 3. Print preview shows clean A4 layout 4. All career data correctly populated 5. No broken layouts or missing sections 6. For ATS: simple enough to parse as plain text ## Missing Data

If a section is missing from context.md:

  • Skip that section in the CV
  • Warn user: "Note: [section] not found in career context"

Very Long Experience

If experience section would exceed 2 pages:

  • Prioritize recent roles (last 10 years)
  • Condense older roles to single line: "Company — Role (Dates)"
  • Note: "Earlier experience available upon request"

Contact Information

Contact details are intentionally blank in templates. Remind user to add before sending:

"Remember to add your email/phone/LinkedIn before sharing."

Install via CLI
npx skills add https://github.com/pedro-f20/personal-assistant --skill generate-cv
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator