Analyze JD¶
After searching, use the Analyze step to have Claude AI parse each job description and compute a match score against your profile.
Usage¶
What Gets Extracted¶
| Field | Description |
|---|---|
| Required Skills | Must-have technical skills |
| Preferred Skills | Nice-to-have skills |
| Years Experience | Minimum years required |
| Key Responsibilities | Main duties of the role |
| ATS Keywords | Keywords to include in your resume |
| PR Required | Whether permanent residency is required |
| Citizenship Required | Whether citizenship is required |
| Visa Sponsorship | Whether the employer offers visa sponsorship |
| Match Score | 0.0 - 1.0 match against your profile |
| Match Reasoning | Why this score was given |
Match Scoring¶
flowchart LR
JD[Job Description] --> LLM[Claude AI]
SP[Skill Profile] --> LLM
Profile[User Profile] --> LLM
LLM --> Analysis[JdAnalysis]
Analysis --> Score[Match Score]
Analysis --> Keywords[ATS Keywords]
Analysis --> Gaps[Skill Gaps]
The match score considers: - Skill proficiency match — your proficiency level per skill vs. what the JD requires (not just "have it or not") - Experience level — your years vs. what they ask for - Work rights compatibility — PR/citizenship requirements vs. your status, visa sponsorship availability - Role alignment — how well responsibilities match your background
Proficiency-Based Matching¶
Instead of binary "has skill / doesn't have skill", matching uses your Skill Profile:
JD requires: Rust (strong), Python (any), React (strong)
Your profile: Rust 8/10, Python 6/10, React 3/10
Rust ████████░░ 8/10 vs. required strong → ✓ strong match
Python ██████░░░░ 6/10 vs. preferred any → ✓ exceeds
React ███░░░░░░░ 3/10 vs. required strong → ✗ gap (need ~7+)
This produces a more accurate match score and clearly shows which skills are gaps vs. strengths.
Cost¶
Each analysis calls Claude API (~500-1500 tokens per JD): - ~$0.003-0.01 per job analyzed - Batch of 50 jobs ~ $0.15-0.50
The CLI shows estimated cost before batch analysis.