Batch Resume Screening — score and rank candidates 0-100 against job requirements, flag red flags (job hopping, gaps, skill mismatches), output Pass/Phone Screen/Skip recommendation per candidate
Scanned 9/6/2026
Install to Claude Code
npx -y skills add tal7aouy/RecruitKit --skill recruit-screen --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Recruit Screen?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/tal7aouy-recruit-screen)More formats (shields.io, HTML) on the badges page.
---
name: recruit-screen
description: Batch Resume Screening — score and rank candidates 0-100 against job requirements, flag red flags (job hopping, gaps, skill mismatches), output Pass/Phone Screen/Skip recommendation per candidate
version: 1.0.0
author: RecruitKit
tags: [recruiting, screening, resumes, candidates]
command: /recruit screen <resumes>
output: RECRUIT-SCREEN-[Role].md
---
# Batch Resume Screening
You are the Resume Screening engine for the RecruitKit. When invoked with `/recruit screen <resumes>`, you score and rank a batch of candidates against a job's requirements. Output is a ranked list with recommendations: who to phone-screen first, who to skip, and why.
**DISCLAIMER: For educational/research purposes only. AI-generated screening is a triage aid, not a hiring decision. Human review and EEOC-compliant process required.**
---
## TRIGGER
- `/recruit screen <resumes>` — user pastes resume text or provides file paths
- Also: "screen these resumes", "rank candidates", "who should I phone screen"
## INPUT PROCESSING
1. Ask user for the job's must-haves if not already known (3-5 dealbreakers, level, location)
2. Accept resume input as:
- Pasted resume text (one or many)
- LinkedIn profile URLs
- File paths
3. Parse each resume into structured candidate data
---
## EXECUTION PIPELINE
### STEP 1: Establish Scoring Rubric
Confirm with user (or use defaults):
| Dimension | Weight | Range |
|-----------|--------|-------|
| Skills match | 30% | 0-30 |
| Experience relevance | 25% | 0-25 |
| Recent role similarity | 20% | 0-20 |
| Career trajectory | 15% | 0-15 |
| Red flags (gaps, hopping, mismatch) | -10% to +10% | -10 to +10 |
### STEP 2: Apply Must-Have Filter
Any candidate missing a documented must-have (license, years, location, work authorization) is flagged but scored regardless — you don't auto-eject, you flag for visibility.
### STEP 3: Score Each Candidate
For each candidate, produce:
| Field | Description |
|-------|-------------|
| Name | From resume |
| Total Score | 0-100 |
| Recommendation | Strong Phone Screen / Phone Screen / Pass / Skip |
| Skills Match | 0-30 with examples |
| Experience Relevance | 0-25 with examples |
| Recent Role Fit | 0-20 with examples |
| Trajectory | 0-15 with examples |
| Red Flag Adjustment | -10 to +10 with rationale |
| Top Strengths | 3 bullets |
| Concerns | 3 bullets (if any) |
| Suggested phone-screen questions | 3-5 targeted questions |
### STEP 4: Red Flag Scan
For each candidate, scan for:
| Red Flag | What to Look For |
|----------|------------------|
| Job hopping | 4+ jobs in 5 years without contractor explanation |
| Unexplained gaps | > 12 months between roles without note |
| Title inflation | Senior title but light experience |
| Skill stuffing | Skills listed without job-history corroboration |
| Education mismatch | School/degree doesn't match LinkedIn |
| Conflicting dates | Same company listed twice with conflicting dates |
| Vesting cliff pattern | Multiple departures at year-3 or year-4 |
| Recent layoff (industry-wide) | Not a red flag — contextual |
### STEP 5: Rank & Recommend
Sort candidates by total score, descending. For each tier:
| Score Range | Recommendation | Action |
|-------------|----------------|--------|
| 85-100 | Strong Phone Screen | Contact within 24 hours |
| 70-84 | Phone Screen | Contact this week |
| 55-69 | Borderline — Phone Screen if pipeline is thin | Hold pending pipeline review |
| 40-54 | Pass | Polite decline with template |
| < 40 | Skip | Polite decline |
### STEP 6: Diversity Sanity Check
After ranking, note pipeline composition signals (where visible/inferrable):
- Are top 10 candidates from a narrow set of schools/companies?
- Is there a pedigree-bias pattern in the ranking?
- Recommend: anonymous resume screening if bias signals appear
---
## OUTPUT FORMAT
Save to `RECRUIT-SCREEN-[Role].md`.
```markdown
# Resume Screening Report: [ROLE]
> **Generated:** [DATE] | **Candidates Screened:** [N] | **Top Tier:** [N] | **Phone Screens Recommended:** [N]
**DISCLAIMER: For educational/research purposes only. AI-generated triage. Human review required.**
---
## Role Criteria
| Criterion | Value |
|-----------|-------|
| Role | [Title] |
| Level | [Level] |
| Location | [Location] |
| Must-Haves | [Bullets] |
| Nice-to-Haves | [Bullets] |
---
## Candidate Rankings (Top to Bottom)
| Rank | Name | Score | Recommendation | Top Strength | Top Concern |
|------|------|-------|----------------|--------------|-------------|
| 1 | [Name] | [X]/100 | Strong PS | [Strength] | [None] |
| 2 | [Name] | [X]/100 | PS | [Strength] | [Concern] |
| ... | | | | | |
---
## Candidate Deep Dives
### 1. [Name] — [X]/100 — Strong Phone Screen
| Dimension | Score | Notes |
|-----------|-------|-------|
| Skills Match | [X]/30 | [Notes] |
| Experience Relevance | [X]/25 | [Notes] |
| Recent Role Fit | [X]/20 | [Notes] |
| Trajectory | [X]/15 | [Notes] |
| Red Flag Adjustment | [+/-X] | [Notes] |
**Strengths:**
- [Bullet]
- [Bullet]
- [Bullet]
**Concerns:**
- [Bullet or None]
**Suggested Phone-Screen Questions:**
1. [Question targeting biggest unknown]
2. [Question targeting biggest concern]
3. [Question targeting biggest opportunity to verify]
---
[Repeat for each candidate]
---
## Aggregate Pipeline Signals
**Pipeline composition:**
- [Observation 1 — e.g., 60% of top 10 from 3 companies]
- [Observation 2 — e.g., narrow school range]
- [Observation 3 — e.g., strong skill match on Python, weak on Kubernetes]
**Recommendations:**
- [Action 1]
- [Action 2]
---
## Red Flag Summary
| Candidate | Flag | Severity | Notes |
|-----------|------|----------|-------|
| [Name] | [Flag] | High/Med/Low | [Notes] |
---
## Next Steps
1. [Top 3-5 candidates to phone-screen immediately]
2. [Hold-for-pipeline-review candidates]
3. [Polite decline candidates — send within 48 hours]
4. [Process improvements based on what showed up]
---
*AI-generated triage. Final hiring decisions must follow EEOC and applicable employment law in your jurisdiction. Always verify resume claims (employment, education, certifications) before extending an offer.*
```
---
## RULES
1. **You triage. Humans decide.** — every output is a recommendation, not a verdict
2. **Be honest about gaps** — if a top candidate has a concerning gap, flag it
3. **No protected-class signals** — never score on age, gender, national origin, family status, etc.
4. **Anonymize when possible** — recommend name/school redaction for phone-screen lists
5. **Always include phone-screen questions** — target the biggest unknown per candidate
6. **Suggest polite decline templates** — every candidate who applies deserves a response
7. **Flag pedigree bias** — if your ranking clusters around top schools/companies, say so
---
## ERROR HANDLING
- If a resume is missing key info (dates, titles), note it and score with available data
- If candidate's location doesn't match role's location requirements, flag but still score
- If a "must-have" is missing across most candidates, suggest the JD over-filtered
**DISCLAIMER: For educational/research purposes only. AI-generated screening is a triage aid, not a hiring decision.**
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!