playbook-case-study-page

Extracts a named customer from a prospect's case-study page to build a personalized cold email opener.

678|243|Updated Mar 10, 2026
One-click install
npx skills add https://github.com/growthenginenowoslawski/coldoutboundskills --skill playbook-case-study-page
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: playbook-case-study-page
Source: https://github.com/growthenginenowoslawski/coldoutboundskills/tree/main/skills/playbooks/playbook-case-study-page
Command: npx skills add https://github.com/growthenginenowoslawski/coldoutboundskills --skill playbook-case-study-page

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Cold email openers that claim "I looked at your site" need a verifiable, specific detail, but manually reading every prospect's customer-stories page does not scale, and letting a language model write the line freely produces hallucinated names and copied numbers.

Core Features & Use Cases

  • Ten-path page discovery: Probes ten candidate paths (/customers, /case-studies, /testimonials, etc.) with free HEAD requests and a browser User-Agent, including a soft-404 guard that rejects redirects to the homepage.
  • Model picker with verbatim gates: A locked prompt (gpt-4o-mini in Clay, nano-class reasoning model outside) returns client_name, evidence_quote, detail_phrase, and confidence as JSON; five code checks then verify the name and quote appear verbatim on the fetched page and reject CMS placeholders and investor/press/partner contexts.
  • Deterministic line assembly: A script, never the model, builds the final clause ("your work with Notion on global spend management") with grounding, dangling-word, and verb checks, plus a ship_ready gate that holds low-confidence rows for human review.
  • Use Case: Given a list of B2B prospect domains, produce a case_study_line per row that slots into "Saw {{case_study_line}}." in email 1, with roughly 50-60% ship-ready coverage on mixed B2B lists.

Quick Start

Give the skill a prospect domain like ramp.com and ask it to find a named customer from that company's case-study page and return the case_study_line for my cold email opener.

Frequently Asked Questions about playbook-case-study-page

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I personalize cold email first lines at scale?

Fetch each prospect's case-study page, have a model pick one named customer with a verbatim evidence quote, then assemble the line in code rather than letting the model write it. This playbook outputs a case_study_line that slots into "Saw {{case_study_line}}." with verified names only.

How do I find a company's customer stories page automatically?

Send HEAD requests with a browser User-Agent to ten candidate paths such as /customers, /case-studies, and /testimonials, accepting the first that resolves. Reject candidates whose final path is the homepage, since many origins soft-404 unknown paths by redirecting to / with a 200.

Why does my scraper return no page found for sites that work in a browser?

A default runtime User-Agent gets 403'd or challenged by CDN-fronted sites, so the page reads as missing rather than blocked. Send a browser User-Agent on every request, and fall back to a GET with a Range header when HEAD is refused.

Can an LLM write the personalized sentence directly?

It should not. Testing showed the model lowercased proper nouns, produced ungrammatical clauses, and copied a percentage from a few-shot example onto an unrelated company. The model only picks the customer and quotes the page; a script assembles the final clause.

What are the limitations of case-study name-drop personalization?

Verbatim substring checks prove a name is on the page but not that it is a customer, so investor, press, and partner logos can slip through; low-confidence rows are held for human review. Carousel layouts cause wrong abstains, and SMB segments yield lower coverage, around 50-60% ship-ready.