Watch your analysts, and turn every miss into a lesson.
The check on your other analysts: it surfaces scoring blind spots, CRM hygiene gaps, and workflow drift, then hands back a weekly QA digest.
Inside: The six-part audit, the quality gates, and a weekly QA digest example.
Install it in one line, or paste it in.
~/.claude/skills/ and runs automatically when it is relevant.Connect your context. Set it to your motion.
it reads field-population rates and staleness across the whole book automatically.
it posts the weekly digest and critical alerts where the team already works.
it verifies published reports still render and that shared manifests have not drifted.
This was built for a GTM team running several reports on a shared pipeline. Set these to your stack:
Point it at your logs and your fields, not anyone else's. The skill checks "is the system doing what we think it is," whatever your system is.
| Set this | What it is | Default / Example |
|---|---|---|
| AUDIT sources | where your reports log what they did | override logsworkflow run logsCRM-gap exports |
| STALE_DAYS | notes age that means the account is neglected | 180 (re-tune to your cadence) |
| HYGIENE fields | fields that must be filled to trust a record | decision makerlast activity dateyour custom fields |
| SCORE sources | the scores you want to check for drift | your account fit scoreproduct-engagement scoreany model |
| DELIVERY | where the weekly digest lands | a messaging DMa channelemail |
| CADENCE | how often the QA pass runs | weekly (a Sunday-evening digest before the Monday review) |
Everything the skill does, in full.
Most reporting is one-shot: produce the work, ship it, move on, and nothing learns from the misses. This skill is the feedback layer that sits on top of everything else you run. It reads the audit trail your other reports and workflows leave behind, then tells you where the system is getting things wrong and what to fix first. Every override, every empty CRM field, every workflow that quietly failed becomes a signal that compounds into a sharper system next week.
- 1Scoring accuracy
For every model you run, check whether its calls held up. When you overrode a score and marked an account as under-rated, did it become a real deal? Report the precision as a plain hit rate. Track score drift over a trailing window so you catch a model quietly getting looser or tighter. Where two of your reports disagree on the same account, one says healthy and another says the champion went dark, surface it to a calibration queue instead of picking a winner silently.
- 2CRM hygiene
Per owner, count the records that fail your trust bar: notes older than STALE_DAYS, a null decision maker, an opportunity with no last-activity date, a late-stage deal missing the fields that stage demands. Report the field-by-field fill rate, and the trend versus last week, so hygiene is a direction, not a one-time scold.
- 3Enrichment and data gaps
Where you fill data from providers, track the not-found rate per provider over time and the cost per verified field. Flag the records that came back empty three or more runs in a row, they need manual sourcing. Watch for patterns in what fails, a segment or region where one provider is consistently weak.
- 4Workflow performance
Per workflow, track success and failure rate over time, which connector was unavailable on a given run, and the failure-mode breakdown (connector missing, data not found, models disagreed, a validation check failed). Surface the top workflows by usage and by failure rate.
- 5Engagement decline
If your team gets a recurring drop of leads or actions to work, watch whether they act on it. Claim rate, first-touch rate, and follow-through rate, per person and per day. Watch streaks and catch a week-over-week decline before it becomes a habit.
- 6System health
Broken links to published reports must be zero, surface any immediately. Watch shared manifests for entry-count drift. Flag anyone writing to a single-owner file who should not be. Track deploy lag so a report is not stale by the time someone opens it.
- No accuracy claim without the underlying calls that prove it. "82% precision" means naming the calls, not asserting a number.
- Hygiene gaps surface owner by owner and field by field, named, never "incomplete."
- Accuracy is measured over a trailing window, never a single week. Small samples lie.
- Recommendations are surgical: a named owner, a named issue, and one next move, never "improve hygiene."
WEEKLY QA DIGEST · Week of May 25 SCORING ACCURACY Override precision: 82% (19 of 23 flagged accounts became real deals) Fit-score drift: +4 pts over trailing 30d (scoring tighter, expect recalibration) Deal-risk classifier: 8 of 11 flagged slip-risk deals actually slipped (73%) CRM HYGIENE (top 3) 1. 17 of 24 cross-rep deals incomplete for current stage (71%). No change vs last week. 2. Rep C: 14% field-completeness (1 of 7 opps). Lowest on the team. Top coaching priority. 3. 12 accounts with notes older than 180 days. Refresh in the next 1:1s. DATA GAPS Provider A not-found rate jumped to 31% (baseline 12%). Investigate freshness. ENGAGEMENT Average claim rate 67% (above 60% target). Longest streak: Rep A, 4 days at 100%. Concern: Rep D claim rate 23%. Onboarding check needed. SYSTEM HEALTH Zero broken report links. Zero manifest violations. All green. TOP RECOMMENDATIONS 1. Rep C: 1:1 on field completion, the biggest team-level coaching priority. 2. Send the under-scored-segment list back to your scoring owner to recalibrate. 3. Investigate Provider A data freshness.
STALE_DAYS (180), the trailing window for drift, and the engagement targets are defaults, not laws. They suited a mid-market GTM cadence. If your cycle runs longer, raise them. The logic does not change. The thresholds are yours.
Where an operator takes this next.
The weekly pass proves where the system is lying to itself. Here is the scaled version.
The system starts grading itself instead of waiting for you to notice the drift.
Schedule this as a Claude task so the digest lands in Slack before the Monday pipeline review, not after.
Wire it to Salesforce and Amplitude so it flags every account where two reports disagree the moment the data updates, not once a week.
Log each week's digest to a Snowflake table or a sheet so drift and hygiene become a chart, not a memory.
One skill is the on-ramp.
A single skill does one job. Chained into a playbook, or run as a full build, it becomes a system. Here is where this one plugs in.