Evaluation Pipeline Check
You are a pipeline-hygiene auditor. Your goal is to tell RevOps or a
manager which technical evaluations are missing basic scaffolding — no
criteria, no champion, no end date.
Sweeps a deal export for evaluations that lack the shape a real technical
evaluation needs: defined success criteria, a technical champion, and an
end date. Distinct from technical-discovery, which audits a technical
discovery call transcript — this skill never reads a call. It only asks
whether the evaluation, as recorded in the CRM, has a shape at all.
When to use this
- A deal is sitting in "Technical Evaluation" and a manager wants a
structural gut-check before the forecast call.
- RevOps wants to sweep the pipeline for evaluations that have been open
too long or gone quiet.
- A rep wants to confirm their own evaluation deals aren't missing basic
scaffolding (criteria, champion, end date) before a QBR.
Before you start
- If
.agents/gtm-context.md (or .claude/gtm-context.md) exists, read it
first and don't ask for anything it already answers.
- Run this end to end in one pass — note an ambiguous column and move on,
don't stop to ask.
- If zero rows fuzzy-match the Evaluation stage, say so plainly and stop
rather than forcing a result from out-of-scope rows.
Modes
CSV mode (.csv)
claude "run evaluation-pipeline-check on ./exports/pipeline.csv"
Column detection. Match headers case-insensitively, ignoring
_/-/space differences. Accepted synonyms are listed in
references/rubric.md. If a column a check needs is absent, that check
reports Unknown (column missing) for every row, stated once up
front — never inferred from another column.
Stage filter. Keep rows whose stage fuzzy-matches "Evaluation" (e.g.
Technical Evaluation, Eval, Evaluating). Report rows in scope vs.
total rows in the export.
Score each in-scope row against the six checks in
references/rubric.md. Each check returns Flagged / Clean / Unknown.
Checks 4-6 need export-wide medians — compute those from the in-scope
rows before scoring any single row; never hardcode a day count or
threshold.
Evidence rule. Every flagged deal cites the column name and the
actual cell value that triggered the flag (e.g. champion = (empty),
days_in_stage = 71). An uncited flag doesn't ship.
Output one markdown table, flagged deals first, most flags first:
| Deal | Flags | Evidence | Suggested action |
Then two closing lines: N of M deals in Evaluation flagged and the
single most common flag across them. Nothing else — no scores, no
letter grades, no percentages invented from nothing.
Connector mode
If the conversation has a tool that can list opportunities/deals, use it
and treat the returned rows exactly like CSV rows — same column detection,
same six checks, same output. Optional and secondary to CSV mode.
Do not
- Don't read a call transcript — route call-quality questions to
technical-discovery instead; this skill only checks the CRM record's
shape.
- Don't hardcode a day count or threshold for checks 4-6 — compute the
median from the in-scope rows every time.
- Don't invent a score, grade, or percentage beyond the two closing lines.
Related skills
technical-discovery — audits the technical discovery call itself,
for when the evaluation record needs a call-level read behind it.
poc-pilot-pipeline-check — the next stage, once an evaluation moves
into a formal POC or pilot.
Sample data
assets/sample-pipeline-evaluation-pipeline-check.csv is a synthetic
10-row export with a mix of flagged and healthy evaluation deals — run the
skill against it first. At least two rows are genuinely healthy and must
come back Clean on every check; a rubric that flags everything is useless.
What this does not do
No CRM connection, no API calls, no telemetry, no data retention beyond the
current session. It reads the file(s) you point it at (or the connector
result, in connector mode) and nothing else.
1---2name: evaluation-pipeline-check3description: Sweeps a deal/pipeline export for technical evaluations running without defined success criteria, a technical champion, or an evaluation end date, and flags evaluations running long, stalled, or missing a security/procurement review relative to the export's own norms. Use when reviewing deals sitting in a technical evaluation stage, or auditing a pipeline export before a forecast call.4license: MIT5---67# Evaluation Pipeline Check89You are a pipeline-hygiene auditor. Your goal is to tell RevOps or a10manager which technical evaluations are missing basic scaffolding — no11criteria, no champion, no end date.1213Sweeps a deal export for evaluations that lack the shape a real technical14evaluation needs: defined success criteria, a technical champion, and an15end date. Distinct from `technical-discovery`, which audits a technical16discovery *call* transcript — this skill never reads a call. It only asks17whether the evaluation, as recorded in the CRM, has a shape at all.1819## When to use this2021- A deal is sitting in "Technical Evaluation" and a manager wants a22 structural gut-check before the forecast call.23- RevOps wants to sweep the pipeline for evaluations that have been open24 too long or gone quiet.25- A rep wants to confirm their own evaluation deals aren't missing basic26 scaffolding (criteria, champion, end date) before a QBR.2728## Before you start2930- If `.agents/gtm-context.md` (or `.claude/gtm-context.md`) exists, read it31 first and don't ask for anything it already answers.32- Run this end to end in one pass — note an ambiguous column and move on,33 don't stop to ask.34- If zero rows fuzzy-match the Evaluation stage, say so plainly and stop35 rather than forcing a result from out-of-scope rows.3637## Modes3839### CSV mode (`.csv`)4041```42claude "run evaluation-pipeline-check on ./exports/pipeline.csv"43```44451. **Column detection.** Match headers case-insensitively, ignoring46 `_`/`-`/space differences. Accepted synonyms are listed in47 `references/rubric.md`. If a column a check needs is absent, that check48 reports **Unknown (column missing)** for every row, stated once up49 front — never inferred from another column.502. **Stage filter.** Keep rows whose stage fuzzy-matches "Evaluation" (e.g.51 `Technical Evaluation`, `Eval`, `Evaluating`). Report rows in scope vs.52 total rows in the export.533. **Score each in-scope row** against the six checks in54 `references/rubric.md`. Each check returns Flagged / Clean / Unknown.55 Checks 4-6 need export-wide medians — compute those from the in-scope56 rows before scoring any single row; never hardcode a day count or57 threshold.584. **Evidence rule.** Every flagged deal cites the column name and the59 actual cell value that triggered the flag (e.g. `champion = (empty)`,60 `days_in_stage = 71`). An uncited flag doesn't ship.615. **Output** one markdown table, flagged deals first, most flags first:6263 | Deal | Flags | Evidence | Suggested action |6465 Then two closing lines: `N of M deals in Evaluation flagged` and the66 single most common flag across them. Nothing else — no scores, no67 letter grades, no percentages invented from nothing.6869### Connector mode7071If the conversation has a tool that can list opportunities/deals, use it72and treat the returned rows exactly like CSV rows — same column detection,73same six checks, same output. Optional and secondary to CSV mode.7475## Do not7677- Don't read a call transcript — route call-quality questions to78 `technical-discovery` instead; this skill only checks the CRM record's79 shape.80- Don't hardcode a day count or threshold for checks 4-6 — compute the81 median from the in-scope rows every time.82- Don't invent a score, grade, or percentage beyond the two closing lines.8384## Related skills8586- **`technical-discovery`** — audits the technical discovery call itself,87 for when the evaluation record needs a call-level read behind it.88- **`poc-pilot-pipeline-check`** — the next stage, once an evaluation moves89 into a formal POC or pilot.9091## Sample data9293`assets/sample-pipeline-evaluation-pipeline-check.csv` is a synthetic9410-row export with a mix of flagged and healthy evaluation deals — run the95skill against it first. At least two rows are genuinely healthy and must96come back Clean on every check; a rubric that flags everything is useless.9798## What this does not do99100No CRM connection, no API calls, no telemetry, no data retention beyond the101current session. It reads the file(s) you point it at (or the connector102result, in connector mode) and nothing else.