job-search-copilot
v1.0.0
Published
Turn Claude Code into your job search co-pilot with CMF scoring, goHunt research, and VALUE-FIRST cover letters
Maintainers
Readme
Job Search Copilot
Turn Claude Code into your job search co-pilot.
Achieve 40%+ response rates with proven methodology, automation tools, and quality controls.
Quick Start
npx @szoloth/job-search-copilotThis single command:
- Detects your installed AI agents (Claude Code, Cursor, Codex)
- Installs the skill and CLI tools
- Walks you through a 10-minute interactive setup
- Generates your Lane (positioning) and Story (narrative)
- Creates your personalized configuration
What's Included
Methodology
- CMF (Candidate Market Fit) Scoring - Automated job qualification on a 0-100 scale
- goHunt Research - Reddit synthesis + forum analysis + company intelligence
- Lane \u2192 Story \u2192 Spearfishing - Positioning framework that makes you memorable
- VALUE-FIRST Cover Letters - Strategic Situation \u2192 90-Day Plan \u2192 Why You
- 4-Stage Quality Chain - Writing review \u2192 Humanizer \u2192 HM Grade \u2192 Voice test
Tools
job-qualify.js- CMF scoring engine for automated job vettingjob-research.js- Deep company research using goHunt methodologyjob-fresh.js- LinkedIn scraper for ultra-fresh listings (5-hour window)job-apply-prep.js- Application package generatorjob-connections.js- Network mapping for warm introsjob-scraper.js- Browser-based LinkedIn extraction
Templates
- Lane Definition Worksheet
- Story Crafting Guide
- VALUE-FIRST Cover Letter Template
- Insights Synthesis Template
- Spearfish Outreach Template
- Weekly Review Template
Installation Options
Interactive (Recommended)
npx @szoloth/job-search-copilotNon-Interactive
npx @szoloth/job-search-copilot --yes --skip-setupOptions
| Flag | Description |
|------|-------------|
| -y, --yes | Accept defaults, non-interactive mode |
| --skip-setup | Install only, run /job setup later |
| --skip-import | Skip material import during setup |
| -f, --force | Overwrite existing installation |
| --copy | Copy files instead of symlink |
Commands
After installation, use these commands in Claude Code:
| Command | Description |
|---------|-------------|
| /job setup | Interactive onboarding |
| /job inbox | Show qualified jobs awaiting approval |
| /job approve [company] | Trigger full pipeline |
| /job review | Review generated materials |
| /job send [company] | Assisted send with quality gates |
| /job status | Pipeline dashboard |
| /job scrape | Fresh LinkedIn jobs |
| /job scrape --fresh | Last 5 hours only |
| /job connections "Company" | Map your network |
| /job edit N | Writing review on materials |
| /job humanize N | Remove AI patterns |
| /job grade N | HM perspective audit |
| /job follow-up | Overdue follow-ups |
The Pipeline
DISCOVER \u2192 GRADE (auto) \u2192 /job inbox
\u2193 \u2193 \u2193
LinkedIn/Email CMF Score You approve
\u2265 threshold or reject
APPROVED \u2192 RESEARCH \u2192 INSIGHTS \u2192 MATERIALS
\u2193 \u2193 \u2193
goHunt Strategic Resume +
method synthesis Cover Letter
OUTREACH \u2192 EDITORIAL \u2192 QUEUE \u2192 YOU APPROVE
targets + filter for \u2192 /job send
drafts review
** NEVER auto-sends \u2014 always queues for review **CMF Scoring
Jobs are scored against your profile (configurable weights):
| Factor | Default Weight | |--------|----------------| | Sweet Spot Match | 35% | | Company Tier | 20% | | Role Level | 15% | | Location | 20% | | Freshness | 10% |
Thresholds:
- Pinnacle (\u226585): Full pipeline + pitch page
- Premium (65-84): Full pipeline
- Standard (<65): Manual review
Quality Chain
Every application passes through:
- Writing Review - Framework assessment, voice analysis, line editing
- Humanizer Pass - Remove AI patterns (em dashes, rule of three, etc.)
- HM Grade - Must achieve A+ ("Would immediately schedule interview")
- User Approval - Nothing sends without your explicit OK
File Structure
~/.claude/skills/job-search-copilot/
\u251c\u2500\u2500 SKILL.md # Main skill file
\u251c\u2500\u2500 config/
\u2502 \u251c\u2500\u2500 user-profile.json # Your preferences
\u2502 \u251c\u2500\u2500 grading-weights.json # CMF configuration
\u2502 \u2514\u2500\u2500 company-tiers.json # Target companies
\u251c\u2500\u2500 playbook/
\u2502 \u251c\u2500\u2500 lane-template.md
\u2502 \u251c\u2500\u2500 story-template.md
\u2502 \u2514\u2500\u2500 cover-letter-template.md
\u2514\u2500\u2500 data/
\u251c\u2500\u2500 pipeline.json # Your active pipeline
\u2514\u2500\u2500 companies/ # Research by company
~/agent-tools/
\u251c\u2500\u2500 job-qualify.js
\u251c\u2500\u2500 job-research.js
\u251c\u2500\u2500 job-fresh.js
\u2514\u2500\u2500 ...
~/Documents/job_search/ # Your working directory
\u251c\u2500\u2500 Applications/ # By company
\u251c\u2500\u2500 companies/ # Research
\u2514\u2500\u2500 queue/ # Review queueConfiguration
User Profile
Edit ~/.claude/skills/job-search-copilot/config/user-profile.json:
{
"targetRoles": ["Senior PM", "Staff PM"],
"seniorityLevel": "senior",
"industries": ["SaaS", "AI/ML"],
"locations": {
"preferred": ["Remote", "San Francisco"],
"acceptable": ["New York"],
"avoid": []
},
"lane": {
"statement": "A product leader who bridges strategy and execution..."
},
"story": {
"fullNarrative": "I spent 10 years in growth..."
}
}Company Tiers
Edit ~/.claude/skills/job-search-copilot/config/company-tiers.json:
{
"target": {
"score": 100,
"companies": ["stripe", "figma", "linear"]
},
"stretch": {
"score": 95,
"companies": ["anthropic", "openai"]
}
}Uninstall
npx @szoloth/job-search-copilot uninstallOptions:
--keep-config: Preserve configuration files--keep-vault: Preserve ~/Documents/job_search/
Requirements
- Node.js 18+
- Claude Code, Cursor, or Codex CLI installed
- macOS or Linux (Windows support coming)
License
MIT License - Use it, modify it, share it.
Built by someone who automated their own job search. Now you can too.
