auto-research-public
Autonomous cold email campaign launcher. Takes one target company domain, scrapes their…
Finds a prospect company's own case-study or customer-stories page and pulls one named customer off it, so email 1 can open with "saw your work with Intercom". Triggers on "case study", "customer stories", "who are their clients", "saw your work with X", "name-drop one of their
$ npx -y skills add growthenginenowoslawski/coldoutboundskills --skill playbook-case-study-page --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/playbook-case-study-pageContext preview
The summary Claude sees to decide when to auto-load this skill.
Finds a prospect company's own case-study or customer-stories page and pulls one named customer off it, so email 1 can open with "saw your work with Intercom". Triggers on "case study", "customer stories", "who are their clients", "saw your work with X", "name-drop one of their
name: playbook-case-study-page description: Finds a prospect company's own case-study or customer-stories page and pulls one named customer off it, so email 1 can open with "saw your work with Intercom". Triggers on "case study", "customer stories", "who are their clients", "saw your work with X", "name-drop one of their customers", "logos on their site". Outputs case_study_line, a short clause that finishes the sentence "Saw ...".
> All rules here are best practice, not law. Override any of them when the campaign calls for it; note the best practice once and move on.
**Use when:** the campaign wants a first line that proves you looked at the prospect's site, and the prospect publishes customer stories — B2B software, agencies, consultancies, MSPs, staffing, manufacturers with named clients.
**Do not use when:** you want a tech detail (`playbook-tech-on-website`), their pricing model (`playbook-pricing-page`), or an ad they are running (`playbook-ad-library`).
**One-line output:** `case_study_line = "your work with Intercom on outbound pipeline"`, rendering as `Saw your work with Intercom on outbound pipeline.`
Does this company publicly brag about a named customer, and if so which one, in words you can put in an email today?
**The path list is ten, not four.** `/customers`, `/case-studies`, `/customer-stories`, `/success-stories`, `/case-study`, `/clients`, `/our-work`, `/portfolio`, `/testimonials`, `/stories`.
This matters: in the live test one hit came from **`/testimonials`, the ninth path.** Any implementation that probes only the first four loses that row to a paid fallback.
It does not judge whether the customer is impressive, does not read individual case-study PDFs, and does not look for customers not published on the prospect's own site. If the client list is private, the correct output is an abstain.
**Two things make this signal safe:**
1. **The model never writes the sentence.** It only picks the customer and quotes the page. A script assembles the clause. 2. **Every claim must appear verbatim in the page text you fetched**, so a hallucinated logo cannot reach an inbox.
| Field | Type | Required? | |---|---|---| | `domain` (bare, lowercase, no `www`, no scheme, no path) | string | yes | | `company_name` | string | no, used for logging and page-owner context |
| Field | Type | Example | Null? | |---|---|---|---| | `case_study_line` | string, ≤16 words | `your work with Notion on global spend management` | no, use `""` | | `client_name` | string | `Notion` | no, use `""` | | `case_study_url` | string | `https://ramp.com/customers` | no, use `""` | | `evidence_quote` | string | `Notion unified global spend management across 10+ countries` | no, use `""` | | `confidence` | `high` / `low` | `high` | no | | `ship_ready` | boolean | `true` | no, defaults `false` | | `verified` | boolean | `true` | no, defaults `false` | | `reject_reason` | string | `non-customer-context` | `""` when accepted |
**Only `ship_ready = true` rows get pushed.** `verified = true` with `ship_ready = false` means the line is real but held for review.
6/7 rows usable (86%). Broken down: 5 produced a real line (4 ship-ready, 1 held at low confidence), 1 correctly abstained, 1 **wrongly** abstained on a carousel-layout page.
⚠️ **Plan on the ship-ready number, not the usable number: 4/7 (57%) shipped without an operator touching them.**
Expect lower coverage on SMB and trade segments, where most companies publish testimonials with no company named. **Treat 50 to 60% as the planning number for a mixed B2B list, and 80%+ only for software and agency segments.**
**the customer's own capitalization**, then optionally ` on ` plus a 2 to 5 word topic.
construction rather than by asking a model nicely.
If empty: drop the clause with spintax and keep the row. **Never render `Saw .`** — put the clause in its own optional sentence so the paragraph still reads when blank.
Low-confidence rows are **held**, and strict-quote mode is the default. **The coverage cost is accepted on purpose.**
A `low` row is **a bare logo with no story attached** — which is exactly the shape an investor logo, a press logo, a partner logo, and a CMS placeholder logo all take. The verbatim gates in §6 **cannot tell those apart from a customer logo.**
So every `low` row ships `ship_ready = false` and waits for an operator eyeball. To ship them, read a 20-row sample, confirm they are customers, then enable it deliberately. **A `low` row never carries a topic clause even when it does ship.**
| # | Source | Cost | Call | Result | |---|---|---|---|---| | 1 | **Direct path guess on the prospect's own origin** | FREE | `HEAD` over all **ten** paths, browser UA, follow redirects, `GET` with `Range: bytes=0-4095` when HEAD is refused | **6/7 found the page here** | | 2 | Homepage anchor scan | FREE | parse `<a href>` and anchor text for `case stud`, `customer stor`, `success stor`, `our work`, `clients`, probe the first same-origin match | ⚠️ **untested, 0 hits.** It ran on exactly one domain and returned nothing. It is design intent, not a measured result | | 3 | Page fetch and text flatten | FREE | strip script and style, **keep `<img alt>` as `[logo: X]`**, collapse whitespace, cap at 18,000 chars | mechanical | | 4 | Model customer picker | CHEAP ($0.18/1
Open-source Claude Code skills for cold email infrastructure, lead sourcing, copywriting, and operations. Built by GrowthEngineX from patterns across 1,000+ real B2B campaigns. 31 skills that work together.
Repo: growthenginenowoslawski/coldoutboundskills
Autonomous cold email campaign launcher. Takes one target company domain, scrapes their…
Use the Blitz API to find decision-makers at specific companies when you already have a list…
Creates cold email copy through a stepwise confirmation process. Use when writing email…
Generates 15-25+ cold outbound campaign ideas with targeting strategies, AI personalization…
Single "start here" orchestrator for new cold email operators. Asks infrastructure-status…
Complete beginner-friendly cold email toolkit. Walks from zero to launched campaign — domain…