Paitho
Start here · 04

Glossary.

The few terms you need before reading the rest of the docs.

Pain signal
A specific, dated, cited observation that a company is right now suffering a problem your product solves. A 10-K phrase. A hiring post. A pricing-page diff. The atomic unit of Paitho. extract_signals() finds them.
Angle
A pitch hypothesis tied to one or more pain signals. Each angle has a name, a version, a prompt, a tone profile, and a reply-rate history. Angles are read and forked from the vertical pack.
Pack
A vertical bundle: pain taxonomy, ICP scoring rules, angle library, tone profile. Six are live, two are in beta. Pack reference.
BYOK
Bring your own keys. You connect Anthropic, OpenAI, Google, Perplexity, Groq, or OpenRouter, and we route stages to your accounts. We do not profit from your tokens. BYOK.
ICP component
One of five scoring axes used at qualify(). Industry fit, size fit, stack fit, motion fit, intent fit. Weights live in the pack's icp.yml.
Eval set
The labelled examples a prompt is tested against before it ships. Every reject in the app feeds the eval set for the prompt that produced the bad output. Eval format.
Brief
The working document the email is written from. Facts only. Cited. The brief is the contract between the research stages and the writing stage. draft_brief().
Human gate
A stage that does not advance until a person clears it. Three of them: enrich_contact(), human_review(), send().
Versioned prompt
Every LLM call has a name, a semver, and a stored prompt body. You can read it, fork it, and pin a run to a specific version. Forking prompts.
Reply rate
Replies divided by sends, measured per angle, per pack, per week. We publish ours in Field Notes. Yours show up in the run report.