qualify()
Score each lead against five ICP components. Most leads die here. That is the point.
Inputs and outputs
In. Outputs of stages 01-03.
Out. ICP score (0-100) with a per-component breakdown and pass/fail against the pack's threshold.
Current version
v3.0.1 Forkable through the prompt library.
Model defaults
Anthropic Sonnet against the pack's icp.yml. The prompt is a structured judge that returns a JSON breakdown and a one-sentence rationale per component. You can override per stage in your routing config.
How it fails
The honest answer: when the rationale is right and the score is wrong. We surface that as a calibration warning so you can adjust component weights. Calibrating ICP weights walks through the process.
Evals
Agreement with three human raters on a 600-lead set: 84% strict agreement, 96% within ±10 points. The full eval set ships with the prompt and is editable. Eval format.