Skip to content

← back

Career Manager

Five Claude Code skills for running a whole job search

▶ Full demo with audio. Click play to start.

What it does

  • onboarding: reads your resume, derives your career paths, and writes every config file the pipeline needs.
  • job-search: runs the full discovery pipeline. Phase 1 scrapes job boards (JobSpy), monitors known target companies, and exports prospecting context. Then parallel sub-agents do two waves: wave 1 scores known companies and new job-board hits against a 10-dimension rubric, wave 2 expands into competitors, investor portfolios, and curated lists for any career path that hit a threshold. Phase 2 merges into one ranked target list.
  • company-research: produces a single deep dossier on one company (overview, signals, fit, risks) when the surface scoring is not enough.
  • cv-tailor: picks the closest base .docx resume, proposes grounded text-only edits matched to exact paragraphs, and writes a tailored resume and cover letter per role with a change summary.
  • job-tracker: keeps every application, follow-up, and status update in a local pipeline the rest of the skills read as the source of truth.

Why I built it

Job searching shouldn't feel like a full-time job. This project started as a way to keep building while putting myself back on the job market. I wanted everything in one place, on demand, and personalized. The goal was never to cast a wide net. It was to cast a precise one.

How it works

Claude Code(router)natural languagejob-searchdiscover + score companies3-phase pipelineparallel sub-agentscompany-researchdeep dossier per companysignals. fit. risks.cv-tailorper-role resume + coverpython prep. claude analysis.python applyjob-trackerapplications.csvstatus. follow-ups.pipeline reportsonboardingguided setup. first run.
Five skills, one router. Claude Code itself is the router. Describe what you need in plain English.
Phase 1. Python exportsJobSpy scrapeboards, filters, dedupeMonitor exportknown companies due for recheckProspecting exportper-career-path context filesWave 1. Parallel sub-agents (claude)Monitor agentchecks careers pagesscores by 10-dim rubricEval agentscores JobSpy resultsreads pending-eval.jsonProspecting agents (1 per path)4-step research protocolmarket map, competitors, funding, careersWave 2. Expansion agents (paths with 3+ hits)Competitor miningalternatives to seed companiesInvestor portfolio miningportfolio cos of seed investorsCommunity / list miningYC batches, curated lists, awesome-listsPhase 2. Python mergewrites target-companies.csv (source of truth)Phase 3. Ranked dashboardpriority tiers high / med / low, coverage check, run diff
Inside the job-search skill. Wave 1 dispatches parallel sub-agents to score known companies and new job-board hits. Wave 2 runs expansion agents that find companies wave 1 missed. Every company ends up scored against a 10-dimension rubric.

What was hard

  • Claude's native web search is rate-limited and shallow for careers pages. The workaround is to route discovery through third-party integrations (JobSpy for the boards, Tavily for company-page mapping) and use Claude for judgment on top, not for scraping.
  • Claude tries to rebuild .docx resumes wholesale and blows up the formatting. The workaround lives in cv-tailor: docx_safe_patch.py does phrase-level in-place edits that preserve run-level formatting, Claude proposes only text changes matched to exact strings from the base resume, and the pipeline enforces a 2-page cap before writing anything.
  • Deciding what to make deterministic Python and what to leave to Claude. Scraping, merging, selecting base CVs, writing files: deterministic. Deciding which companies fit, writing the cover letter, classifying whether a role is the right shape: judgment. Mixing the two kills reproducibility and grading.

Outcome

  • A live status dashboard the orchestrator surfaces in plain English at the start of every run: total companies tracked, how many are stale, active applications in flight, follow-ups due.
  • A per-role tailored resume and cover letter, grounded in your real experience, with a change summary you can sanity-check before sending.

Tech

Claude Code skills · Python · JobSpy · Tavily · Gmail API · parallel sub-agents