Files
Claude-Code-Monitor/plugins/ccam-quality/skills/slo-check/SKILL.md
T
nntrivi2001 57dc91585d feat: Claude Code Monitor — lanes, pipelines and a merged workspace
Internal SmartGift build of a Claude Code monitoring dashboard.

Lanes: a durable unit of parallel agent work, one per working directory,
tracked across session restarts. Managed lanes are git worktrees the
dashboard provisions and can reset or remove behind a three-check destroy
guard and a counted preflight; adopted lanes are directories you already
own and are never destroyable.

Pipelines: a lane moves through pipeline stages. A stage the agent declares
with evidence renders green; a stage inferred from the tool-event stream
renders dashed amber and never counts as done. Detection is forward-only
within a 30-minute window, and never writes the declared stage.

Workspace: one page at /run with a lane grid, the selected lane's pipeline,
and a full Claude console behind a disclosure.
2026-07-30 14:39:03 +07:00

3.0 KiB
Raw Blame History

description
description
Define and check simple service-level objectives for Claude Code from Agent Monitor data — session completion rate, tool success rate (PostToolUse/PreToolUse), and error rate (APIError/total) — then compare each to its target and report the error budget remaining. Use when reporting reliability or when someone asks "are we meeting our SLOs?".

SLO Check

Turn raw event counts into a clear SLO scorecard with error-budget accounting.

Input

The user provides: $ARGUMENTS

This may be:

  • empty — use the default SLO targets below over all available data
  • targets like "completion=95 success=99 error=1" — override the defaults (percentages)
  • a window like "last 7d" or "today" — restrict the measurement period

Default SLO targets: completion rate ≥ 95%, tool success rate ≥ 99%, error rate ≤ 1%.

Data Sources

Endpoint Returns
GET /api/analytics event_types (PreToolUse, PostToolUse, APIError counts), sessions_by_status, daily_events (365d), daily_sessions (365d) — the raw numerators/denominators for every SLI
GET /api/stats total_sessions, total_events, events_today, sessions_by_status — fleet totals and recency
GET /api/events?session_id=X Per-session stream — drill into the sessions that breach an SLO

Report Sections

1. Service Level Indicators (SLIs)

Compute each SLI from GET /api/analytics / GET /api/stats:

  • Completion rate = completed sessions / total sessions (from sessions_by_status; count active/running as in-flight, exclude them from the denominator if still open).
  • Tool success rate = PostToolUse / PreToolUse (capped at 100%).
  • Error rate = APIError / total_events. Within a window, derive the numerators/denominators from daily_events / daily_sessions.

2. SLO Scorecard

For each SLI, compare to its target and mark MET or BREACHED .

3. Error Budget

For each objective, report the error budget and how much remains:

  • Budget = 1 target (e.g., 1% for a 99% target).
  • For "higher-is-better" SLOs (completion, success): remaining = (observed target) / (1 target).
  • For "lower-is-better" SLOs (error rate): remaining = (target observed) / target.
  • A negative result means the budget is exhausted — report how far over (e.g., "2.7× over budget").

4. Breach Drill-Down

For any breached SLO, list the sessions contributing most to the breach (most failed tools or most APIErrors) via GET /api/events?session_id=X.

Output

  • A Markdown scorecard table: SLI | observed | target | status | error budget remaining.
  • Rates as percentages to 2 decimals; any currency in USD to 4 decimals.
  • Cite exact counts and session_id values — never fabricate numerators or denominators.
  • End with the SLO most at risk and the single action that would recover the most budget.
  • 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.