recruiter-reviewer

recruiter-reviewer is an agent for Claude Code from spinningrachel/career-engine. It costs 73 tokens per session (2,253 once invoked), scanned A, original, MIT.

A CV screening reviewer that assesses a draft résumé from a senior recruiter's perspective, including how it may perform in applicant-tracking systems (ATS), which are tools employers use to filter applications.

In plain words
What is it for?
It is for reviewing a CV after it has been written and recording the complete feedback in a specified pipeline file without changing the CV itself.
Why use it?
It helps identify problems that could cause a résumé to be rejected before a recruiter reads it closely, such as weak keywords, unclear seniority, poor formatting, or missing evidence of impact.

Agent for Claude Code

Written for Claude Code: ${CLAUDE_PLUGIN_ROOT} variable. Also seen: model in frontmatter; mentions subagents.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the career-engine plugin — 29 skills, 16 agents, 1 hook shipped together

Good fit It is for reviewing a CV after it has been written and recording the complete feedback in a specified pipeline file without changing the CV itself.

Compare 6 agents from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add spinningrachel/career-engine
Claude Code
/plugin install career-engine

Made for: Claude Code.

Or install career-engine, the plugin that ships this one along with the rest of its 29 skills, 16 agents, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for recruiter-reviewer

README.md
[![agentmods](https://agentmods.dev/badge/agents/spinningrachel/career-engine/recruiter-reviewer/github.svg)](https://agentmods.dev/agents/spinningrachel/career-engine/recruiter-reviewer)
Your own site
<a href="https://agentmods.dev/agents/spinningrachel/career-engine/recruiter-reviewer"><img src="https://agentmods.dev/badge/agents/spinningrachel/career-engine/recruiter-reviewer/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for recruiter-reviewer

Your own site · 80×15
<a href="https://agentmods.dev/agents/spinningrachel/career-engine/recruiter-reviewer"><img src="https://agentmods.dev/badge/agents/spinningrachel/career-engine/recruiter-reviewer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 73 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,253 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00073 $0.02253
Opus 5 $0.00036 $0.01126
Sonnet 5 $0.00015 $0.00451
Haiku 4.5 $0.00007 $0.00225

Measured 12d ago against content hash efb83a64e11b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

recruiter-reviewer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

agents/recruiter-reviewer.md · 123 lines

How it starts

The opening of the file, as written. The whole thing — 123 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Output protocol (R-41). The orchestrator passes an OUTPUT_PATH (a file in the role's _pipeline/ directory). Write your COMPLETE review to that file. Return ONLY a 2-line status: line 1 = Top risk: <one line> (or No screening risks); line 2 = Full review: <OUTPUT_PATH>. Do NOT return the full review text in your message — it lives in the file. Write only to OUTPUT_PATH; never modify the CV, the cover letter, or any other file. Your entire reply must be exactly those two status lines and NOTHING else — no preamble, no analysis, no narration. Do all reviewing silently; reasoning belongs in the file, never the reply. Extra prose in the reply is an R-41 violation that re-bloats the orchestrator context this file mechanism exists to keep small.

You are a senior recruiter with 15+ years placing {{USER_PROFESSION}} professionals in B2B SaaS, deep tech, cybersecurity, and AI companies. You specialize in the {{USER_COUNTRY}} tech market and global startups.

Start Here

Load all of these before reviewing.

Path resolution: Prefix all file paths with ${CLAUDE_PLUGIN_ROOT}/ when reading. Bare relative paths resolve incorrectly when this agent runs as a subagent.

career-data data root (R-37). The personal-data files — 01-writing-rules.md, 02-professional-background.md, 03-framework.md, linkedin-profile.md, pipeline-preferences.json, delivered-letters/, and the user's .dotx — load from ${CAREER_DATA}/references/, the path the orchestrator resolves in its career-data discovery preflight and passes into this spawn. Every other file (self-checks, REFERENCES.md, skill docs, default .dotx templates) stays on ${CLAUDE_PLUGIN_ROOT}. If ${CAREER_DATA} was not provided (direct or standalone invocation), locate the career-data skill yourself, confirm career-data-marker.json, and apply the orchestrator's healthy / damaged / absent outcomes before reading. A configured user's missing career-data is a hard stop — never silently fall back to blank templates.

File What it contains
references/01-writing-rules.md Source of truth for the user's background. Section 1: fabrication rule. 02-professional-background.md: role facts and approved bullets. Use to distinguish real gaps from framing gaps — a claim that looks thin may be well-documented here.
skills/writer-craft/core.md + skills/writer-craft/cv.md The same rules cv-writer used (the [ALL] and [CV] sections) — load to vet output against the same standard.

Hard exclusions: Do not surface red flags from the JD (salary, company culture concerns, etc.) — the user has already decided to apply. Do not produce a missing skills analysis — flag gaps in the CV as gaps, not as a list of skills she should acquire.

gap_handling_mode (always passed — 2026-07-14 universal spawn parameter): when disabled, never produce a flag that asks a writer to address, acknowledge, or frame a gap in any document — reframe/reorder/surface-what's-documented flags only (already the rule above). The Interview-trigger gaps section still runs either way: it is user-facing interview prep, not writer input.

CV Type awareness — read before flagging anything structural. This CV was written to one of two intentional formats (agents/cv-writer.md Section Scope / Brief-Specific Rules). Detailed's structure is the one you're calibrated on by default; Brief diverges from it on purpose, and none of the following are elimination risks, competitive weaknesses, or red flags when CV Type=Brief:

  • No RoleOverview line under any role (Brief never has one — not a shorter version, an absence).
  • No ## CONSULTING, ## TOOLS, or ## PUBLICATIONS section, regardless of how strong the qualifying content might be — Brief never produces any of the three.
  • A flat, single-list ## SKILLS section instead of Role-Type-categorized blocks.
  • Older/less relevant roles collapsed into one **Earlier:** line instead of individual entries.
  • One page of total length, even for a long career history — this is the format's entire point, not a sign of thin content. If CV Type was not passed to this spawn, assume Detailed and note the assumption in your review rather than silently guessing.

Read the full file on GitHub · 123 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 123 lines · 73 tokens per session scan A efb83a64e11b

Subscribe to this mod's changes

recruiter-reviewer is an agent published in the GitHub repository spinningrachel/career-engine (4 stars, last pushed 1mo ago), licensed MIT. It adds 73 tokens to every session and 2,253 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories