Files
nntrivi2001 17d56d0e01 refactor!: rebrand CCAM to AgentHub
Clean break, no compatibility alias. Renames the product name, the CLI
binary (`ccam` -> `agenthub`), the env var prefix (`CCAM_` ->
`AGENTHUB_`), the Prometheus metric namespace (`ccam_*` ->
`agenthub_*`), the tmux session prefix (`ccam-lane-<id>` ->
`agenthub-lane-<id>`), the per-repo runtime profile directory
(`.ccam/profile` -> `.agenthub/profile`), the lanes state root
(`~/.claude/ccam-lanes` -> `~/.claude/agenthub-lanes`), the bundled
plugins (`plugins/ccam*` -> `plugins/agenthub*`) and their slash
commands (`/ccam-doctor` -> `/agenthub-doctor`, `/ccam:*` ->
`/agenthub:*`).

Because there is no alias, an existing install has to be updated by
hand: rename its `.ccam/profile` directory and any `CCAM_*` variables,
and reinstall the plugin under its new name.

Two other name families are deliberately left alone here, since they are
not just strings: the `Claude-Code-Monitor` repository/marketplace name,
and the `agent-dashboard` npm package plus its `~/.claude/agent-dashboard`
runtime directory, which holds the live database and needs a migration
rather than a rename.

Verified: server 1406/1406, client 459/459, `grep -i ccam` clean across
tracked files, `openapi.yaml` regenerated (95 paths, unchanged count).
2026-09-07 12:09:15 +07:00

1.3 KiB

description
description
Print a quick SLO snapshot — completion rate, tool success rate, and error rate

Print a compact SLO snapshot for Claude Code usage from the Agent Monitor dashboard at http://localhost:4820. No arguments.

  1. Fetch the raw counts:

    curl -s http://localhost:4820/api/analytics
    curl -s http://localhost:4820/api/stats
    

    From analytics: event_types (PreToolUse, PostToolUse, APIError) and sessions_by_status. From stats: total_events, total_sessions.

  2. Compute three SLIs:

    • Completion rate = completed sessions / total sessions (from sessions_by_status; exclude still-active/running sessions from the denominator).
    • Tool success rate = PostToolUse / PreToolUse (cap at 100%).
    • Error rate = APIError / total_events.
  3. Compare each to its default target (completion ≥ 95%, tool success ≥ 99%, error ≤ 1%) and print one line per SLI: SLI .......... observed% (target X%) ✅ MET | ❌ BREACHED

Output rules: rates as percentages to 2 decimals; cite only fields the API returned — never fabricate. End with one verdict line (e.g., SLOs: 3/3 met or SLOs: error rate BREACHED). Keep it to the snapshot only; no extra prose. If curl cannot reach http://localhost:4820, tell the user to start the dashboard with npm start from the repo root.