andrew-shwetzer/recruiter-plugin/rp-resume-screen

Claude Code and agent skill by andrew-shwetzer/recruiter-plugin

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Install

npx vskill@latest install andrew-shwetzer/recruiter-plugin/rp-resume-screen

SKILL.md

/rp-resume-screen — Resume vs Job Screen

Analyze a candidate's resume against a specific job description. Simulates a hiring manager's 6-second scan, then runs a full evidence-quality audit, surfaces likely objections, and delivers the top 5 positioning fixes a recruiter can act on.

Zero API cost. Uses only Claude's reasoning.


Input

The user provides two things (in any order, any format):

  • Resume: file path (absolute), pasted text, or "uploaded as context"
  • Job description: file path, pasted text, or a URL

Parse the user's argument to identify which is which. If a URL is provided for the JD, use WebFetch to retrieve the page and extract the posting text. If either input is ambiguous, ask one clarifying question before proceeding.


Step 1: Load Config and Resume/JD

  1. Check if ~/.recruiter-skills/config.yaml exists. If it does, read it. Extract recruiter.specialties and icp fields if present — use them as context for the analysis.
  2. If the resume is a file path, read it. If it's pasted text, use it directly.
  3. If the JD is a file path, read it. If it's a URL, fetch it and extract the job posting content (strip nav, footer, boilerplate). If it's pasted text, use it directly.
  4. Extract the candidate's name from the resume. Generate a slug: lowercase, spaces to hyphens, no special characters (e.g., "Jane Smith" → jane-smith).

Step 2: The 6-Second Scan

Simulate what a hiring manager sees in the first 6 seconds. This is the visual/headline layer before deep reading.

Output this section as:

THE 6-SECOND SCAN
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
First impression: [one sentence — what the resume signals instantly]
Role match visible? YES / PARTIALLY / NO
Title alignment: [current title vs target title — obvious match or not]
Company caliber: [does the company list signal the right tier]
Tenure concern: YES (flag) / NO (clean)
Format/clarity: CLEAR / CLUTTERED / SPARSE

Step 3: Evidence Quality Audit

Extract every major claim in the resume (skills, accomplishments, scope, leadership, tools). For each meaningful claim, rate the evidence quality:

  • STRONG — specific, quantified, verifiable (e.g., "Reduced deploy time from 4h to 12min by rewriting CI pipeline")
  • MODERATE — contextual but not quantified (e.g., "Led migration to Kubernetes cluster")
  • WEAK — vague and could apply to anyone (e.g., "Strong communication skills")
  • ABSENT — the JD requires it, but the resume doesn't address it at all

Format as a table:

EVIDENCE AUDIT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Claim Rating Notes
──────────────────────────────────────── ─────────── ────────────────────────────
[claim] STRONG [brief rationale]
[claim] MODERATE [brief rationale]
[claim] WEAK [brief rationale]
[JD requirement not in resume] ABSENT Required: [what JD says]

Include at minimum: all technical skills the JD mentions, all leadership/scope claims, and all quantified impact statements (or absence thereof).


Step 4: Narrative Strength Assessment

Evaluate the resume's overall story as a recruiter would when presenting to a hiring manager.

Answer these questions in a brief paragraph for each:

  1. Career arc clarity — Does the progression make obvious sense for this role? Or does the recruiter need to explain a non-obvious path?
  2. Scope alignment — Does the scale of past work (team size, company size, budget, system complexity) match what the JD implies?
  3. Recency — Are the most relevant experiences recent, or are they buried in older roles?
  4. Differentiation — What makes this candidate specifically memorable vs. 20 other resumes for the same role?

Step 5: Likely Hiring Manager Objections

List 3-5 objections a hiring manager is likely to raise when reviewing this resume for this specific role. Be honest, not polished. These are the friction points a recruiter must preemptively address.

Format:

LIKELY OBJECTIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. [Objection] — [Why it arises from the resume/JD gap]
2. [Objection] — [Why it arises]
...

Step 6: Top 5 Positioning Fixes

Concrete, actionable edits or talking points — things the recruiter can bring back to the candidate or use when presenting the candidate to the client.

Format:

TOP 5 POSITIONING FIXES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. [Fix title] — [What to change/add/reframe, and why it addresses the gap]
2. ...

Fixes should be specific. "Add metrics to bullet 3 in the Acme Corp role" is better than "Add more quantification."


Step 7: Overall Fit Rating

OVERALL FIT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Fit: STRONG / MODERATE / WEAK / NO FIT
Screen: ADVANCE / ADVANCE WITH COACHING / HOLD / PASS
Confidence: HIGH / MEDIUM / LOW (based on resume completeness)
Summary: [2-3 sentences the recruiter can use verbally with the hiring manager]

Step 8: Save to Candidate File

Build the candidate YAML using data extracted from the resume and this analysis.

Target path: ~/.recruiter-skills/data/candidates/{name-slug}.yaml

If the file already exists, read it first, then update only fit_score and fit_reasoning. Do not overwrite fields that are already populated unless you have better data from the resume.

If the file does not exist, create it with this schema:

yaml
name: "" # full name from resume
linkedin_url: "" # extract if present in resume, else ""
current_title: "" # most recent title
current_company: "" # most recent company
location: "" # location from resume header
years_experience: 0 # calculated from work history
skills: [] # technical skills extracted from resume
email: "" # extract from resume header if present, else ""
fit_score: 0 # 0-10, derived from overall fit rating (STRONG=8-10, MODERATE=5-7, WEAK=2-4, NO FIT=0-1)
fit_reasoning: "" # one-sentence summary of fit
source: "screened"
status: "screened"
found_at: "2026-03-24" # today's date

Use Bash to ensure the directory exists:

bash
mkdir -p ~/.recruiter-skills/data/candidates

Write the file. Confirm the path in your output.


Step 9: Suggest Next Step

After the analysis, suggest ONE logical next action based on the fit rating:

  • STRONG fit → "Run /rp-score {name-slug} to get the full 9-dimension weighted score before submitting."
  • MODERATE fit → "Run /rp-score {name-slug} to identify which dimensions are dragging the score, then decide if coaching closes the gap."
  • WEAK fit → "Consider running /rp-market-map {role} in {location} to find better-matched candidates in this market."
  • NO FIT → "This candidate doesn't fit this role. Run /rp-market-map to map who does fit, or check other open roles."

Output Format Rules

  • Use plain text with the separator lines shown above. No markdown headers (no ##).
  • Tables use plain ASCII alignment (not markdown pipes for visual display).
  • Lead with the 6-second scan. Do not bury the headline.
  • Be direct. This analysis is for a recruiter, not the candidate. No softening language.
  • Total output should be readable in under 3 minutes.

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
14
Repository forks
5
7-day trend score
14

Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/andrew-shwetzer/recruiter-plugin/rp-resume-screen/badge)](https://verified-skill.com/skills/andrew-shwetzer/recruiter-plugin/rp-resume-screen)

Something wrong with this skill or its page? Tell us.