hoangsonww/endpoint-probe
> Probes each major Agent Monitor API route — /api/stats, /api/analytics, /api/sessions, /api/pricing/cost, /api/workflows/runs, /api/cc-config/overview — and reports each one's HTTP status, latency, and response shape, flagging which are reachable. Use to verify a dashboard install is wired up correctly.
npx skills add https://github.com/hoangsonww/Claude-Code-Agent-Monitor --skill endpoint-probe
Smoke-test the dashboard's main API surface by hitting each major route once and
reporting whether it responds and what shape it returns.
The user provides: $ARGUMENTS
Options: empty (default: probe all routes below), or a substring to filter which
routes are probed (e.g. pricing probes only matching routes).
| Endpoint | Returns |
|----------|---------|
| GET /api/stats | { total_sessions, active_sessions, active_agents, total_agents, total_events, events_today, ws_connections, agents_by_status, sessions_by_status } |
| GET /api/analytics | { overview, tokens, tool_usage, daily_events, daily_sessions, agent_types, event_types, avg_events_per_session, total_subagents, sessions_by_status, agents_by_status } |
| GET /api/sessions | Session list; each: id, status, model, cwd, started_at, ended_at, cost, metadata |
| GET /api/pricing/cost | { total_cost, breakdown:[{ model, input_tokens, output_tokens, cache_read_tokens, cache_write_tokens, cost, matched_rule }] } |
| GET /api/workflows/runs | Workflow-tool run journals (fleets) |
| GET /api/cc-config/overview | Claude Code config explorer overview (skills, agents, commands, plugins, mcp, hooks, etc.) |
For each route, issue a single GET against http://localhost:4820<path> with a
short timeout, capturing the HTTP status code, round-trip latency, and the
top-level shape of the JSON body (object keys, or array length). A route counts
as reachable when it returns a 2xx with parseable JSON.
If /api/stats itself fails to connect, the dashboard is not running — stop and
tell the user to start it with npm start (or npm run dev) from the repo root.
A Markdown table — one row per route — with columns:
endpoint, status (HTTP code), latency, reachable (✅/❌), shape
(e.g. object: {total_cost, breakdown[…]} or array[N]).
Count of reachable vs total. Name any unreachable or non-2xx routes explicitly.
One line: install looks healthy (all reachable) or partially wired (list the
gaps and the most likely cause — server not running, route disabled, or empty data).
object, say so rather than inferring fields.
total_cost: $0.0000).Take hoangsonww/endpoint-probe 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.