Skip to main content
skill CX Codex

cv-scorer — Claude Code skill: score CVs against a job ad

Scores candidate CVs against a job description and returns a number out of 100. Handy when a stack of applications needs sorting.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add tronghieu/agent-skills --skill cv-scorer -a claude-code
Open on GitHub

What cv-scorer does

The skill takes two things: the job description and one or more CVs, in markdown, plain text or PDF. It reads the posting first and splits the requirements into must-have and nice-to-have, pulling out experience, education and extras such as languages or certifications. Each CV then gets scored against the rubric in references/scoring-rubric.md.

Five criteria carry different weight. Fit with the job is worth up to 30 points, work experience up to 25, and projects, education and CV quality 15 each. Together they add up to 100. The total drives the call: 70 and above means invite the candidate, 50–69 means keep them around if the pool is thin, under 50 is a pass. Output is JSON, following the format in references/output-format.md.

Batch mode scores every CV on its own, with no comparison between candidates while scoring, so the runs can go in parallel. The ranking comes afterwards. PDFs are read through the /pdf skill. The rubric also looks for red flags: repeated text, inflated numbers, unexplained gaps, contradictions. Age, gender and ethnicity stay out of the score.

What it helps with

  • score a CV against a specific job posting
  • rank a batch of candidates from best to worst
  • separate must-have requirements from nice-to-have ones
  • spot contradictions and inflated metrics in a CV
  • get machine-readable JSON per candidate

Example prompts for the agent

  • Score this CV against the job description I attached
  • Break down the job ad and tell me which requirements are must-have
  • Score every CV in cvs/ and give me a ranking

How to install cv-scorer

1Skills CLI (Vercel)

npx skills add tronghieu/agent-skills --skill cv-scorer -a claude-code

2Manually: put the files in place

~/.claude/skills/cv-scorer/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/cv-scorer/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about cv-scorer

How do I install cv-scorer in Claude Code?

Run npx skills add tronghieu/agent-skills --skill cv-scorer -a claude-code. The skill lands in ~/.claude/skills/cv-scorer/SKILL.md.

What does cv-scorer do?

It compares a CV with a job description and gives a score out of 100 across five criteria. You get JSON with the score and a recommendation.

What do I need before using it?

A job description and at least one CV. Without a posting the skill will ask you for one. PDF CVs go through /pdf.

Source text

SKILL.md · MIT
---
name: cv-scorer
description: "Score candidate CVs on a 100-point scale against a Job Description. Use this skill when the user wants to evaluate, score, rank, or screen candidate CVs/resumes against a JD. Also trigger when the user mentions 'review CV', 'screen resume', 'rate candidates', 'shortlist', or any context involving matching resumes to job requirements."
---

# CV Scorer — Candidate CV Evaluation

This skill evaluates how well a candidate's CV matches a specific Job Description (JD), producing a structured score out of 100.

## Workflow

### Step 1: Identify Inputs

Two inputs are required:
- **Job Description (JD)**: The job posting with requirements, qualifications, and responsibilities
- **CV(s)**: One or more candidate CVs (markdown, text, or PDF)

If the user hasn't provided a JD, ask for it. If the JD is already available in context (e.g., a file on Drive or in the project directory), read it directly.

**Reading PDF files:** Use the `/pdf` skill to extract text from PDF CVs — it handles multi-page documents and formatted layouts reliably.

### Step 2: Analyze the JD

Before scoring, extract from the JD:
- Must-have skills vs nice-to-have skills
- Experience requirements (years, seniority level, domain)
- Education requirements
- Special requirements (languages, certifications, travel, etc.)

### Step 3: Score Against Rubric

Score each CV across 5 criteria using `references/scoring-rubric.md`:

| Criterion | Weight | Max Points |
|-----------|--------|------------|
| JD Matching | ×3 | 30 |
| Work Experience | ×2.5 | 25 |
| Project & Impact | ×1.5 | 15 |
| Education | ×1.5 | 15 |
| CV Quality | ×1.5 | 15 |
| **Total** | | **100** |

### Step 4: Output

Output JSON for each CV using the format in `references/output-format.md`.

**Recommendation thresholds:**
- **Recommend** (≥ 70): Invite for interview
- **Maybe** (50–69): Consider if candidate pool is thin
- **Pass** (< 50): Not a fit

### Step 5: Batch Processing

When scoring multiple CVs:
1. Score each CV independently — no cross-comparison during scoring (safe to parallelize)
2. After all CVs are scored, produce a summary ranking (highest to lowest)
3. Use the batch summary format in `references/output-format.md`

## Scoring Principles

- **Objective**: Score based on facts in the CV, avoid over-inference
- **Fair**: Apply the same standard consistently across all candidates
- **Red flag detection**: Repetitive content, inflated metrics, unexplained career gaps, contradictory information
- **Output language**: Match the user's language (respond in the same language the user is using)
- **No bias**: Do not evaluate based on age, gender, ethnicity, or personal factors unrelated to the job

© tronghieu · MIT · tronghieu/agent-skills

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set6

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor