hoangsonww/error-scan
> Scan recent Claude Code activity for errors and failure signals across all sessions using Agent Monitor data — APIError events and PreToolUse→PostToolUse gaps (tools that started but never completed) — then group failures by tool and model and rank them by frequency. Use when checking for errors or asking "what's failing right now".
npx skills add https://github.com/hoangsonww/Claude-Code-Agent-Monitor --skill error-scan
Sweep recent events across sessions for error and failure signals, then rank them
by how often they occur and which tool or model produced them.
The user provides: $ARGUMENTS
This may be:
| Endpoint | Returns |
|----------|---------|
| GET /api/analytics | event_types (counts per type incl. PreToolUse, PostToolUse, APIError), tool_usage (top 20), daily_events (365d) — fleet-wide failure baseline |
| GET /api/events?session_id=X | Per-session event stream: event_type, tool_name, summary, data, timestamp — locate APIError and unmatched PreToolUse |
| GET /api/sessions?limit=N | Sessions with id, status, model, started_at — pick the recent window and attribute failures to a model |
Resolve $ARGUMENTS to a session set: pull GET /api/sessions?limit=N (default 50, ordered by started_at). Report how many sessions and what time span are covered.
From GET /api/analytics event_types, report total APIError count and the PreToolUse→PostToolUse gap: gap = PreToolUse − PostToolUse (unmatched tool starts = likely failures). State both as raw counts and as a share of total_events.
For each session in scope, pull GET /api/events?session_id=X. Match each PreToolUse to its following PostToolUse by tool_name; unmatched starts are failures. Aggregate failures and APIError events per tool_name. Rank tools by failure frequency (descending).
Join failures to the owning session's model (from GET /api/sessions). Rank models by APIError count and tool-failure count.
List the single most failure-prone tool, the most error-prone model, and the session with the most failures, each with its exact count and one-line summary excerpt from a representative event.
event_type, tool_name, and session_id values — never fabricate counts.curl cannot reach http://localhost:4820, tell the user to start the dashboard with npm start from the repo root.Take hoangsonww/error-scan from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.