targeted-search
Skill1 starsChanged 57 days agoMITView on GitHub
Use when stage 7 of the prospecting system needs qualified target accounts found at scale — Prospeo company search, lookalike expansion, AI judging, live-website verification, and snowballing — driven from the ICP and seed customers. Also use when the ask is \"build me an account list for this ICP\".
- Reads credentials
In this repository21 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- account-notesSkill
- audience-discoverySkill
- audience-filterSkill
- buying-signalsSkill
- cold-emailSkill
- contact-enrichmentSkill
- customer-patternsSkill
- follower-scrapeSkill
- follow-upsSkill
- icp-definitionSkill
- lead-prioritizationSkill
- lead-qualificationSkill
- lead-scoringSkill
- linkedin-outreachSkill
- lookalike-researchSkill
- personalizationSkill
- pipeline-reviewSkill
- prospecting-systemSkill
- reply-classificationSkill
- segmentationSkill
The file
Files
Targeted Search
A thin stage wrapper around the list-builder engine in engine/list-builder/. The engine owns the process; this skill owns getting the run's ICP into it and its result back out.
Read engine/list-builder/RUNBOOK.md before running anything. Run the commands there; do not improvise. engine/list-builder/SKILL.md documents every phase and env var.
Pipeline contract
Stage 7 of 20. Reads 01-seeds.csv, 02-client-profile.yaml, 03-lookalikes.csv, and the company domains in 06-audience-qualified.csv. Writes 07-judge-spec.json, 07-lane.json, 07-accounts.csv.
Files live in runs/<run>/. Column definitions: /prospecting-system.
Steps
- Build
07-lane.jsonfrom the profile (shape documented at the top ofengine/list-builder/scripts/run-lane.ts):seeds←01-seeds.csvemp_min/emp_max,states,industries←icp_hard_filters. Industry names must be valid Prospeo names (skills/icp-definition/references/prospeo-industries.md).keywords← the discriminating phrases from01-customer-patterns.mdseniorities← the profile's titlesextra_candidates← absolute paths to03-lookalikes.csvand adomain-column CSV of the companies behind06-audience-qualified.csv. This is how both lanes land in one judged list.
- Judge prompt — reuse the ICP and disqualifiers the human approved in stage 6. Write
07-judge-spec.jsonand generate the prompt withmake-judge.ts. Never hand-write it; the template's mandatory blocks prevent known false-negative classes. - Test, then run. A 50–100 row test first. Then:
npx tsx engine/list-builder/scripts/make-judge.ts --spec=<run>/07-judge-spec.json --out=<run>/07-judge-prompt.txt npx tsx engine/list-builder/scripts/run-lane.ts --config=<run>/07-lane.json --run-dir=<abs path to run>/07-lane--run-dirkeeps the lane's artifacts inside the run folder (default is~/output/list-builder/lanes/).promptin07-lane.jsonmust be the absolute path to07-judge-prompt.txt. Re-running the same command resumes after any failure. - Read
summary.mdin the lane dir. Line 1 is# READYor# NOT READYwith the next command. Only READY moves on. The failure playbook is in the RUNBOOK. - Copy the final qualified companies to
07-accounts.csv(domainrequired, keep every other column) and record rows pulled → rows qualified instate.json.
Scope for this system
The engine is built to find the largest list possible (snowball.ts sweeps until a round adds under 3% net-new). For a 500-lead run that is usually more than needed:
- Skip
snowball.tsunless the lane finishes READY with too few accounts for the target. - The engine's own cost gate asks before sweeps above ~500k companies. This system's spend cap is stricter and wins: estimate the pull (free Prospeo counts), add it to
spent_usd, stop if it passes the cap. - Judging is cheap (roughly $1–3 per 10k companies on the nano judge) — do not sample or skip scoring to save money. Save money by narrowing the pull with the hard band and geography.
Do not
- Rename or move anything under
engine/— the scripts import each other by relative path. - Hand-edit stream CSVs or files inside a lane run dir.
- Pull contacts here. That is stage 8, after the human approves
07-accounts.csv.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

