Skip to main content
skill CX Codex

api-error-report — Claude Code skill: API error breakdown

Turns Agent Monitor data into a report on APIError events: how many, in which sessions and models, and what likely caused them.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill api-error-report -a claude-code
Open on GitHub

What api-error-report does

The skill pulls Agent Monitor data over its local API and writes up APIError events. It reports the share of total events they make up, charts them per day, and flags days that run above the window average.

Then it groups errors by session and by model, so you can see where they pile up. Each event gets bucketed by cause: rate limit, overload (529), or context-window pressure. When the summary and data don't support a cause, the event lands in “Other”. Output is Markdown tables per section, percentages to 2 decimals and USD amounts to 4.

Read-only by design. If curl can't reach http://localhost:4820, the dashboard isn't running — start it with npm start from the repo root. The skill won't name a cause the payload doesn't back up.

What it helps with

  • figure out why API requests started failing
  • find the session with the most errors
  • tell a rate limit apart from overload or context pressure
  • chart error volume over a chosen window
  • report errors for one specific model

Example prompts for the agent

  • Report every API error from the last 7 days
  • Break down API errors in session abc123 and tell me what fails most
  • Give me an API error report filtered to the “context” cause

How to install api-error-report

1Skills CLI (Vercel)

npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill api-error-report -a claude-code

2Manually: put the files in place

~/.claude/skills/api-error-report/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/api-error-report/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about api-error-report

How do I install api-error-report in Claude Code?

Run npx skills add hoangsonww/Claude-Code-Agent-Monitor --skill api-error-report -a claude-code; the skill then sits at ~/.claude/skills/api-error-report/SKILL.md.

What does api-error-report do?

It builds a report on APIError events: volume and trend, affected sessions and models, a likely cause per event, and a timeline of the most recent failures.

What does the skill need to run?

A running Agent Monitor dashboard, which serves data at http://localhost:4820. If curl can't get there, start it with npm start from the repo root.

Source text

SKILL.md · MIT
---
name: api-error-report
description: >
  Produce a detailed report on APIError events from Agent Monitor data — counts
  over time, which sessions and models are affected, and the likely root cause
  (rate limits, overload/529, or context-window pressure) inferred from each
  event's summary and data payload. Use when API errors spike or when you need to
  explain why requests are failing.
---

# API Error Report

Drill into `APIError` events: how many, when, where, and most likely why.

## Input

The user provides: **$ARGUMENTS**

This may be:
- empty or "all" — report on every APIError in the recent window (default)
- a session ID — report APIErrors for that one session only
- a window like "today" or "last 7d" — restrict the time range
- a cause filter: "rate-limit", "overload", or "context"

## Data Sources

| Endpoint | Returns |
|----------|---------|
| `GET /api/analytics` | `event_types` (total `APIError` count), `daily_events` (365d) — APIError volume and trend over time |
| `GET /api/events?session_id=X` | Per-session event stream — each `APIError` carries `summary`, `data`, and `timestamp` used to classify the cause |
| `GET /api/sessions?limit=N` | Sessions with `id`, `model`, `started_at` — attribute each error to a model and place it on the timeline |

## Report Sections

### 1. Volume & Trend
From `GET /api/analytics`: total `APIError` count and its share of `total_events`. Use `daily_events` to chart APIErrors over the requested window and flag any day that spikes above the window mean.

### 2. Affected Sessions & Models
For each session in scope, pull `GET /api/events?session_id=X` and collect `APIError` events. Group by `session_id` and, via `GET /api/sessions`, by `model`. Report the top affected sessions and which model accounts for the most errors.

### 3. Likely Cause Classification
Inspect each error's `summary`/`data` and bucket it:
- **Rate limit** — mentions 429, "rate limit", "quota", or retry-after.
- **Overload** — mentions 529, "overloaded", or capacity.
- **Context** — mentions context length, token limit, or "too long" (correlate with nearby `Compaction` events).
- **Other** — anything else; quote the `summary`.
Report the count and percentage in each bucket.

### 4. Timeline
List the most recent APIErrors with `timestamp`, `session_id`, `model`, classified cause, and a one-line `summary` excerpt.

## Output

- A Markdown table per section (volume, by model, by cause).
- Rates as percentages to 2 decimals; any currency in USD to 4 decimals.
- Cite exact `session_id`, `model`, `timestamp`, and `summary` values — never invent a cause not supported by the payload; bucket as "Other" when unclear.
- End with the dominant cause and a concrete mitigation (e.g., back off and retry on 529, reduce context to cut context errors, slow request rate on 429).
- Read-only: only report what the API returns. 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

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set20

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor