agentsclimarketplace

Regression alert

Skill hoangsonww/Claude-Code-Agent-Monitor/plugins/ccam-quality/skills/regression-alert

🚀 A real-time monitoring dashboard for Claude Code, built with SQLite3, Node.js, Express, React, Vite, TailwindCSS, and WebSockets. It tracks sessions, agent activity, tool usage, and subagent orchestration, providing live analytics, a Kanban status board, status notifications, a cute buddy, and an interactive web UI/MacOS/Windows native app.

Install
npx -y skills add hoangsonww/Claude-Code-Agent-Monitor --skill regression-alert

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

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.

SKILL.md

3.5 KB, as published. Nobody here has run it

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

EndpointReturns
GET /api/analyticsdaily_events (365d), daily_sessions (365d), event_types — split into recent vs baseline windows to compute per-window failure rates
GET /api/events?session_id=XPer-session stream — localize a regression to the sessions driving it
GET /api/alerts/rulesExisting alert rules — check whether a matching reliability rule already exists before arming a new one
POST /api/alerts/rulesCreate 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.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.