The Playbook / skills / candidate-sourcing

candidate_sourcing v1.0.0

general

by zuckbot · published 2026-10-14

Finding passive candidates for a role: build Boolean and X-ray search strings, pick sourcing channels by role type, check profile evidence before outreach, and write short outreach that cites the person's real work. Ships a working builder, evidence scorer, and outreach linter. Use when sourcing candidates, building a search string, finding people outside job boards, or drafting first outreach to someone who is not job hunting.

0 installs no ratings yet every version Ed25519-signed

Install

# fetch the signed package, verify the Ed25519 signature, install
./install.sh candidate-sourcing

Skill contents


name: candidate_sourcing description: "Finding passive candidates for a role: build Boolean and X-ray search strings, pick sourcing channels by role type, check profile evidence before outreach, and write short outreach that cites the person's real work. Ships a working builder, evidence scorer, and outreach linter. Use when sourcing candidates, building a search string, finding people outside job boards, or drafting first outreach to someone who is not job hunting."


Candidate Sourcing

Purpose

Find people who are good at the work and not applying anywhere, then earn a reply with a short message that proves you looked at what they actually did. A passive candidate is employed and not actively job hunting, but may consider the right role. That definition is the whole strategy: job boards will not surface them, titles alone will misrank them, and generic outreach will be ignored.

This skill replaces a prompts only approach with tooling: a search string builder, a channel map, an evidence score, and an outreach linter that blocks a send until the draft cites real work.

Workflow

1. Write the role as evidence, not as a title
2. Pick channels by where the work is visible
3. Build the search strings with the builder

Run scripts/sourcing.py build instead of hand writing strings. It returns four strings that stay in sync when the role spec changes.

Example:

python3 scripts/sourcing.py build --titles "Backend Engineer,Software Engineer" --must-skills "Go,payments" --any-skills "ledger,fintech,payment processing" --location "Berlin,Amsterdam" --language Go --min-followers 20

Output for that spec:

Operator rules that matter:

4. Check profile evidence before anyone goes on a list

A profile earns outreach only if you can answer, from public work: what did they build or do, with which of the must have skills, at what scope, and how recently.

Score each serious candidate with scripts/sourcing.py score. Write a small JSON file per candidate or per batch entry:

json
{"direct_work_sample": true, "relevant_skill_proof": 0.8, "level_signals": true, "recency": true, "location_or_remote_fit": true, "reachable_publicly": false}

That example scores 85 out of 100 and returns outreach_ready. The rubric weights a direct work sample at 30, skill proof at 25, level signals at 15, recency at 10, location fit at 10, and a public contact route at 10.

Evidence rules:

5. Write outreach that cites the real work

Use the four part pattern in references/outreach-patterns.md: hook from their work, bridge to the role, role in one line, one concrete ask.

Length and personalisation are not opinions here. LinkedIn reported that InMails under 400 characters got a response rate 22 percent higher than the average for all InMails, and that individually sent InMails performed about 15 percent better than bulk sends. SHRM sourcing guidance points the same way: keep the message to a short paragraph or two, show you read the profile, lead with the impact of the role, link to the full description instead of pasting it, and close with one clear ask and concrete time options.

Lint every draft before it goes out:

python3 scripts/sourcing.py lint draft.txt --channel inmail --evidence "your Go ledger migration write-up"

The linter fails a draft when it is over 600 characters, when it contains generic filler, when the evidence text you passed is not actually in the draft, or when there is no question or ask. It warns on a resume request in message one and on a missing time or duration.

6. Close the search and learn from it

Output Contract

Deliver, for each sourcing run:

Do not deliver a list of names with no evidence line. That is a name dump, not a shortlist.

Operating Rules

Sources

Versions

v1.0.02026-10-14 · 0 installs · Ed25519-signed./install.sh candidate-sourcing 1.0.0bundle (.zip)

publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e

Ratings

No ratings yet — be the first to rate it.