Prospect from buying signals instead of static lists: read hiring posts, funding and leadership changes, tech stack shifts, and first party behavior, say what each signal actually means and when its window closes, score and stack signals against fit, and reference a signal in outreach without sounding like a stalker. Use when someone asks who to reach out to now, wants signal based or trigger based prospecting, needs to time outreach to a company event, or wants to turn intent data into a worked account list. For researching one named account in depth use account_planning, for scoring inbound leads use lead_scoring, for the message itself use cold_email_drafting.
./install.sh buying-signal-prospectingname: "buying_signal_prospecting" description: "Prospect from buying signals instead of static lists: read hiring posts, funding and leadership changes, tech stack shifts, and first party behavior, say what each signal actually means and when its window closes, score and stack signals against fit, and reference a signal in outreach without sounding like a stalker. Use when someone asks who to reach out to now, wants signal based or trigger based prospecting, needs to time outreach to a company event, or wants to turn intent data into a worked account list. For researching one named account in depth use account_planning, for scoring inbound leads use lead_scoring, for the message itself use cold_email_drafting."
A static list answers who could ever buy. A signal answers who has a reason to care this month. This skill turns public company changes and your own first party behavior data into a short, timed work list: what happened, what it plausibly means, how long the window stays open, who owns the problem, and how to open a conversation that names the event without making the reader feel watched.
It covers nine signal families in one place: funding, leadership changes, expansion, earnings priorities, first hires, hiring surges, tech stack changes, champion moves, and first party research behavior. The full catalog with meaning, false readings, and verification steps per signal is in references/signal-catalog.md. Six worked outreach examples, each with a version that fails and why, are in references/outreach-examples.md.
Two limits shape everything below. A signal is a timing layer, not a targeting strategy: fit decides which companies you would ever sell to, signals only decide the order and the moment. And a signal is evidence of a change, not evidence of intent to buy your product. Every reading below is a hypothesis you verify before you act on it.
Write down the accounts in scope: segment, size band, region, and any hard disqualifier. Signals collected outside that boundary are noise you paid attention to. When a hot signal lands on a company that fails fit, the answer is no, not a bigger score. The scorer enforces this: fit is a gate, never points.
For each signal record six fields: company, signal type, date it happened, source URL, the exact public fact, and the contact role it points to. Acceptable sources are things the company published itself (press releases, its own careers page, filed reports, executive announcements), public records behind an announcement (for a US Regulation D raise, the Form D notice on EDGAR, filed within 15 days after the first sale), a public post by an identifiable person at the company, and your own first party logs.
Reject at intake: aggregator job posts you have not checked against the company's own careers page, technographic detections with a single trace, intent topics with no named event behind them, and anything sourced from a person's private life. No source URL means no signal. The scorer flags a row with a missing source or a bad date as missing evidence and caps it below the act band.
For each signal answer three questions from references/signal-catalog.md:
Independent matters. A press release and three articles repeating it are one signal. A press release plus open roles in the function the money is meant to build are two.
Put the signals in a CSV and run the scorer:
bash
python3 ~/workspace/skills/buying-signal-prospecting/bin/signal_score.py \
--signals signals.csv --today 2026-10-13 --out scored.csv
A worked input file ships at references/signals-example.csv. It covers an ACT stack, a no fit rejection, a half weight signal past its window, and an expired one.
The scorer adds points for distinct signal types at one company, pays full points inside a signal's working window, half points up to twice the window, and zero after it. Bands: ACT at 50 or more with fit and evidence, INVESTIGATE at 30 to 49, NURTURE at 10 to 29, EXPIRED below 10 because the windows closed, REJECT_NO_FIT when fit fails.
Work the output in band order. ACT accounts get outreach this week while the window is open. INVESTIGATE accounts get the verification step from the catalog, not a message. NURTURE accounts go on a watch list and get re-scored when a new signal lands. EXPIRED accounts go back to the plain list with no special timing claim.
The point values and windows in the scorer are starting heuristics, not findings. After each cycle, compare reply and meeting rates per signal type inside and outside its window, and adjust the catalog. A window your own data contradicts is wrong no matter where you read it.
Each signal names its own buyer. A funding round at seed stage points to a founder, at later stages to the head of the function the money builds. A first hire in a function points to the hiring manager who owns that hire, not to the future hire. A leadership change points to the new leader, after their first weeks, not during welcome week. A hiring surge points to the head of the surging function. Write the role next to the signal before anyone drafts a message.
An outreach opener may use a signal only if all four checks pass:
references/outreach-examples.md shows both versions side by side.Shape of a good opener: public fact, plausible problem, one short proof or a genuine question, low pressure close with a clean exit. Shape of a stalker opener: how you found them, what else you know about them, a deadline you invented.
One first message and one follow up that adds something new, then stop and return the account to nurture. Signals decay and so does goodwill. A reply of any kind moves the account out of this workflow and into normal reply handling. An opt out ends all contact, full stop, and gets recorded in suppression before any other list is touched.
Deliver, for each run:
publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
No ratings yet — be the first to rate it.