Claude Recruiting Engine
Six agents that run from 11pm to 7am on one role. They draft everything and send nothing. At 7am you get one list to approve.
musthaves.mdpool.mdscored.mddrafts.mdfollowups.mdnotes.mdmorning.mdWhat you give it
3 FILES, ONCE PER ROLErole.md
Role: [title] Place: [city] · [remote / hybrid N days / onsite] Pay: [range] Job ad: [paste it] Manager no-gos: [always a No] Skip: [current clients, people already in your ATS]
hires.md
The last 5 people hired for this role (or the closest role). For each: paste their profile or CV, then one line: Hire 1: [profile] · 6 months later: [top / fine / left] Hire 2: Hire 3: Hire 4: Hire 5:
replies.md
Before you log off, paste anything people wrote back today and mark who you messaged. The Follow-up and Review agents read it.
Sent today: [name] · [which first line you used] · [date] Reply from [name] · [date]: [paste the reply]
The 6 agents
COPY EACH SKILL.md01Brief AgentThe real must-haves, from people you actually hiredhires.md → musthaves.md
What it does
- Finds what all 5 hires did before they joined.
- Finds what the top hires had that the others didn't.
- Drops job-ad lines none of them had.
Reads
role.md hires.md notes.md
Writes
musthaves.md
--- name: engine-brief description: Writes 5 must-haves for a role from the people who were actually hired into it. Use first, every night. --- # Brief Agent Read role.md, hires.md and notes.md (last night's review, if there is one). ## Steps 1. For each hire, list the work they did in the 2 jobs before they joined: verb + thing + size. "Closed $60K deals with CFOs", not "sales experience". 2. Mark what at least 4 of the 5 hires did. These are must-have candidates. 3. Mark what the "top" hires did that the "fine" and "left" hires didn't. That goes to the top of the list. 4. Check every line of the job ad. If none of the 5 hires had it, move it to nice-to-have and say so. 5. Keep exactly 5 must-haves, each written as work done, most important first. 6. Write the search: up to 8 titles this work hides under, the city plus towns within a 45-minute drive. 7. Apply notes.md: if the review said a must-have cut too many good people, loosen it and say what changed. ## Rules - Fewer than 3 hires in hires.md: use the job ad, and mark every must-have UNPROVEN. - A degree, a company name or years of experience is never a must-have unless the manager's no-gos say so. ## Output: musthaves.md 5 must-haves (with which hires had each) · nice-to-haves · job-ad lines dropped and why · titles · places
02Signals AgentStarts with people who are ready to movemusthaves.md → pool.md
What it does
- Lists companies with news that makes people look.
- Searches there first, then everywhere else.
- Checks 6 ready-to-move signals per person.
Reads
musthaves.md
Writes
pool.md
--- name: engine-signals description: Builds tonight's pool of people for the role, starting with people most likely to move, and checks 6 signals on each. Use after the brief agent. --- # Signals Agent Read musthaves.md. ## Step 1: companies first Use web search to list up to 15 companies, in the same places, that employ people doing this work and had in the last 6 months: - layoffs, a hiring freeze, a merger or a new CEO - or their last funding round was 18+ months ago Write one line each with the date and the source link. ## Step 2: people Search those companies first, then the wider market, with the titles and places in musthaves.md. Skip anyone in role.md's skip list and anyone already in pool.md from earlier nights. ## Step 3: 6 signals per person (YES / NO / UNKNOWN) 1. Same title for 3+ years 2. 12+ months in the current job (not just moved) 3. The person they report to left in the last 6 months 4. Their company is on the step 1 list 5. Private company, 3.5 to 4.25 years in (equity mostly vested) 6. Profile changed: "open to" line, new headline, a post about what's next UNKNOWN counts as NO. Never guess. ## Rules - Signals decide WHEN you write, never WHAT you write. They never go in a message. - Promoted in the last 18 months: keep them, but signals 1 and 2 are NO. ## With The Cognitive connected Run step 2 as a search. Each person shown costs 1 credit, once. Asking for more on the same search shows only new people. ## Output: pool.md name | title | company | city | profile link | signals (1-6) | company news line
03Scoring AgentProof quoted, score 0 to 10pool.md → scored.md
What it does
- Reads every job, not just the current one.
- Quotes the line that proves each must-have.
- 7 points for the work, 3 for ready to move.
Reads
pool.md musthaves.md
Writes
scored.md
--- name: engine-score description: Scores each person 0-10 with a quote for every must-have. Use after the signals agent. --- # Scoring Agent Read pool.md and musthaves.md. Read each person's full work history. ## Work: 7 points For each of the 5 must-haves: - PROVEN, a job line names the work: 1.4 - PARTLY, close but smaller, or only part of it: 0.7 - NONE: 0 Quote the job line for every PROVEN and PARTLY. ## Ready to move: 3 points 0.5 for each YES in the 6 signals from pool.md. ## Score = work + ready, one decimal. Example: 4 PROVEN + 1 PARTLY = 6.3. 6 signals YES = 3.0. Score 9.3. ## What doesn't count as proof A skills list, "exposure to", "supported", "familiar with", a course, a famous logo. ## Rules - Any manager no-go: score 0, write which one. - 8.0+ goes to outreach. 6.0-7.9 goes on the hold list with a date 30 days out. - Below 6.0: drop. ## Output: scored.md name | score | work | ready | quote per must-have | one-line reason a manager reads in 10 seconds
04Outreach Agent3 first lines for every 8+scored.md → drafts.md
What it does
- 3 first lines, each from a different place on their profile.
- Ranks them and says why.
- Lines 2 and 3 are always the role, pay and a 15-minute ask.
Reads
scored.md role.md notes.md
Writes
drafts.md
--- name: engine-outreach description: Writes 3 first-line options and a full short message for every person scored 8+. Drafts only, never sends. Use after the scoring agent. --- # Outreach Agent Read scored.md (8.0+ only), role.md and notes.md. ## 3 first lines, each from a different source A. A job line with a number: "You took renewals from 82% to 94% at a payroll company." B. A recommendation they received: "A former manager credits you with building the mid-market team's playbook." C. Something they published or presented, or news about their team's product. If a source is missing, use another job line. Never invent. Rank the 3. Use notes.md: put the source that got the most replies last week first. ## Lines 2 and 3, always 2. The role, the place and the pay range, in one sentence. 3. "Open to a 15-minute call this week?" ## Never write "Saw you", "noticed", "exactly", "impressive", "perfect fit", "I came across your profile", their layoffs, their manager leaving, or anything they didn't put on their own profile. ## Subject line (email) 3-5 words, lowercase, about the role: "account exec, chicago, $90-110k base". ## Output: drafts.md name | score | 3 first lines ranked | full message with line 1 = option 1 | subject
05Follow-Up AgentDay 3, day 7, and answers to every replyreplies.md → followups.md
What it does
- Finds who is due a nudge tomorrow.
- Each nudge adds one new fact about the role.
- Drafts an answer to every reply, sorted by type.
Reads
replies.md drafts.md role.md
Writes
followups.md
--- name: engine-followup description: Drafts day 3 and day 7 follow-ups for people who haven't replied, and an answer for every reply. Drafts only. Use after the outreach agent. --- # Follow-Up Agent Read replies.md, drafts.md and role.md. ## Who is due - Sent 3 days ago, no reply: day 3 nudge. - Sent 7 days ago, no reply: day 7, the last one. - Replied: no nudge. Draft an answer instead. ## Day 3 (2 lines) One new fact the first message didn't have: who they'd report to, why the role is open, the team size, or the interview steps. Then: "Worth 15 minutes?" ## Day 7 (2 lines) "I'll stop here. Should I check back in 3 months?" Put them on the hold list with a date 90 days out. ## Answers by reply type - "Not now": thank them, ask when to check back, set that date. - "What's the pay?": the range from role.md, base and total. - "Remote?": the exact setup from role.md, days in office. - "Which company?": name it if role.md allows, otherwise the industry and size. - "Send the job description": send the 5 must-haves in plain words, not the job ad. - "Not interested": thank them, ask who they'd suggest, stop. - Anything else: draft an answer and mark it CHECK. ## Rules - Never a third nudge. Never "just bumping this", "circling back" or "following up". - Someone asks not to be contacted: write STOP next to their name. Never message them again. ## Output: followups.md name | due | draft · then replies: name | type | draft answer
06Review AgentWhat got replies, and what changes tomorrow nightreplies.md → notes.md
What it does
- Reply rate by first-line source, signal and search.
- No call on fewer than 20 sends.
- Writes 3 changes the other agents read next night.
Reads
replies.md pool.md scored.md
Writes
notes.md morning.md
--- name: engine-review description: Measures which first lines, signals and searches got replies, writes changes for the next night, and builds the morning approval list. Use last. --- # Review Agent Read replies.md, pool.md, scored.md, drafts.md and followups.md. ## Reply rate = people who replied / people messaged Work it out for: 1. Each first-line source (A job line, B recommendation, C published or team news) 2. Each signal (1-6) that was YES 3. Companies on the news list vs everywhere else 4. Score bands: 8.0-8.9 vs 9.0+ ## Rules - Fewer than 20 messages in a group: write "too few to call" and change nothing. - A group 2x better than the rest, with 20+ in it: write it as a change. - Never more than 3 changes a night. ## notes.md (read by Brief and Outreach tomorrow) 3 changes, each with the numbers. Example: "First lines from a job line with a number: 9 replies from 31 (29%). Recommendation lines: 3 from 24 (13%). Put job lines first." ## morning.md (for you) 1. New people to message: name, score, reason line, 3 first lines ranked. Approve / edit / skip. 2. Follow-ups due today, drafted. 3. Replies, with drafted answers. CHECK ones on top. 4. Tonight's 3 changes. 5. Hold list: names whose date is today.
Night run
ONE PROMPTEvery night
Run my recruiting engine for this role. Order: brief, signals, score, outreach, follow-up, review. Each agent reads the files before it and writes its own. Draft only. Send nothing. If fewer than 10 people score 8+, rerun signals with the weakest must-have moved to nice-to-have, once. End with morning.md.
In the morning
Open morning.md. Approved: [names]. Skip: [names]. For [name], use first line 2. Give me the approved messages ready to paste, one by one. Add everyone I approved to replies.md as sent today.
Morning list
MOCK EXAMPLE · PEOPLE ARE MADE UPAccount Executive · Chicago · new people
| Person | Score | Reason | First line, option 1 | You |
|---|---|---|---|---|
| D. H. Mid-market AE · payroll software | 9.5 | 5 of 5 must-haves proven. Closed $50K to $140K deals with CFOs for 4 years. | You closed $50K to $140K payroll deals with CFOs for four years. | APPROVE · EDIT · SKIP |
| K. B. Account Executive · expense software | 9.3 | Same title 3 years, all 6 signals yes. Deals smaller than ours ($30K to $60K). | You built your own pipeline selling expense software to finance teams. | APPROVE · EDIT · SKIP |
| L. W. Senior AE · HR software | 8.8 | Sold to HR leaders, ran own pipeline. Manager left in May. | You took a new HR software territory from zero to $1.2M in two years. | APPROVE · EDIT · SKIP |
Replies, answers drafted
| Person | Type | They wrote | Draft answer |
|---|---|---|---|
| M. R. | PAY | What's the base? | $90K to $110K base, $180K to $220K on target. Open to 15 minutes Thursday? |
| S. T. | NOT NOW | Just started a new quarter, not a good time. | Understood. When would be better to check back, January? |
Tonight's changes (notes.md)
| Change | Numbers |
|---|---|
| Job lines with a number go first | 9 of 31 replied (29%) vs 3 of 24 (13%) |
| Signal 3 (manager left): too few to call | 2 of 7 |
Setup
Save each one as SKILL.md in its own folder, zip the folder, then Claude → Settings → Capabilities → Skills → Upload.
Start a free trial, then Settings → Connectors → Add custom connector: https://app.thecognitive.io/mcp
Add role.md, hires.md and replies.md. Paste the night run before you log off, or set it as a scheduled task for 11pm.