regression-alert — Claude Code skill: catch reliability regressions
Compares agent reliability this period against the last one and flags where it got worse. Handy when you need to know if things degraded.
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a claude-codeWhat regression-alert does
The skill pulls Agent Monitor data and splits history into a recent window and an equal baseline window before it. Defaults are the last 7 days against the prior 7. Two metrics come out of that: the APIError share of all events, and the tool-failure share measured as the PreToolUse to PostToolUse gap.
You get a table with baseline and recent values, the change in percentage points and percent, a direction arrow and a verdict. Each metric is tagged as a clear regression, noise, or an improvement. Sessions that contributed the most errors are listed by ID, along with the tools whose gap grew. Everything is read-only unless you explicitly ask to arm a rule.
Scope stops at reliability and failures. Cache, cost and compaction drift belong to regression-watch from ccam-insights. The dashboard has to answer on http://localhost:4820 for any of this to work — if curl cannot reach it, start it with npm start from the repo root.
What it helps with
- compare this week's error share with last week's
- find the sessions behind the most APIError events
- measure tool-failure share from the PreToolUse to PostToolUse gap
- rank which metric worsened the most
- arm an alert rule so the dashboard catches the next regression
Example prompts for the agent
- Check reliability regressions for the last 7 days against the prior 7
- Compare error rate only:
errors - Check tool failures and arm the alert:
toolsarm
How to install regression-alert
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a claude-code2Manually: put the files in place
~/.claude/skills/regression-alert/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/regression-alert/
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a codex2Manually: put the files in place
.agents/skills/regression-alert/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a cursor2Manually: put the files in place
.cursor/skills/regression-alert/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install hoangsonww/Claude-Code-Agent-Monitor regression-alert2Manually: put the files in place
.github/skills/regression-alert/SKILL.md1Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a gemini-cli2Platform CLI
gemini skills install https://github.com/hoangsonww/Claude-Code-Agent-Monitor --path plugins/ccam-quality/skills/regression-alertManually: put the files in place
.devin/skills/regression-alert/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about regression-alert
How do I install regression-alert in Claude Code?
Run npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert -a claude-code. The skill file lands at ~/.claude/skills/regression-alert/SKILL.md.
What does regression-alert do?
It compares reliability across a recent window and a baseline window using two metrics: error share and tool-failure share. A rise in either is flagged as a regression, with the contributing sessions named.
What does the skill need to fetch data?
The Agent Monitor dashboard must be running and reachable at http://localhost:4820. If curl cannot reach it, start it with npm start from the repo root.
Source text
SKILL.md · MIT
--- name: regression-alert description: > Compare this period's reliability against the prior period using Agent Monitor data — error rate (APIError/total) and tool-failure rate (PreToolUse→PostToolUse gap) — flag any regression where reliability got worse, and optionally wire a persistent alert rule so the dashboard catches the next regression automatically. Use when checking whether reliability degraded. --- # Regression Alert Detect whether Claude Code reliability is getting worse period-over-period, and optionally arm an alert so it never has to be checked by hand again. Scope is reliability/failures only — for cache/cost/compaction drift, use ccam-insights' `regression-watch` instead. ## Input The user provides: **$ARGUMENTS** This may be: - empty or "all" — check error rate and tool-failure rate (default) - "errors" — APIError-rate regression only - "tools" — tool-failure-rate regression only - a window like "7 vs 7" or "30 vs 30" — recent vs baseline window sizes (default: last 7 days vs the prior 7) - "arm" — after reporting, also create an alert rule via `POST /api/alerts/rules` (only on explicit request) ## Data Sources | Endpoint | Returns | |----------|---------| | `GET /api/analytics` | `daily_events` (365d), `daily_sessions` (365d), `event_types` — split into recent vs baseline windows to compute per-window failure rates | | `GET /api/events?session_id=X` | Per-session stream — localize a regression to the sessions driving it | | `GET /api/alerts/rules` | Existing alert rules — check whether a matching reliability rule already exists before arming a new one | | `POST /api/alerts/rules` | Create a new alert rule (only when the user says "arm") | ## Report Sections ### 1. Windowing Split history into a **recent window** (newer) and a **baseline window** (the equal-length period just before it). Default: recent = last 7 days, baseline = the prior 7. Use `daily_events`/`daily_sessions` to bucket counts by day. ### 2. Error-Rate Regression - Per window: `error rate = APIError count / total events`. - Compare recent vs baseline. Flag if recent is higher. Report absolute change (pp) and relative change (%), plus the recent sessions contributing the most `APIError` events. ### 3. Tool-Failure-Rate Regression - Per window: `tool-failure rate = (PreToolUse − PostToolUse) / PreToolUse`. - Compare recent vs baseline. Flag a rising rate as a reliability regression. Name the tools whose gap grew most. ### 4. Verdict Roll up which rates regressed, rank by relative worsening, and name the most likely driver. ### 5. Optional — Arm an Alert **Only if the user passed "arm".** First `GET /api/alerts/rules` to avoid duplicates. Then `POST /api/alerts/rules` with a rule that fires when the regressed metric crosses a threshold near the recent value (e.g., error rate > recent rate). Echo the created rule back; do not create webhooks or fire alerts. ## Output - A Markdown table: metric | baseline | recent | Δ (pp) | Δ (%) | direction (▲ worse / ▼ better) | verdict. - Tag each metric 🔴 (clear regression), 🟡 (within noise), or 🟢 (improved). - Rates as percentages to 2 decimals; any currency in USD to 4 decimals. - List the specific session IDs that contributed most to any regression. - End with the single highest-priority regression and a concrete next step (and, if armed, the new rule's id/threshold). - Read-only **except** the explicit "arm" path, which is the only write. Never mutate alert rules otherwise. If `curl` cannot reach `http://localhost:4820`, tell the user to start the dashboard with `npm start` from the repo root.
© hoangsonww · MIT · hoangsonww/Claude-Code-Agent-Monitor