git clone --depth 1 https://github.com/hoangsonww/Claude-Code-Agent-Monitor /tmp/event-trace && cp -r /tmp/event-trace/plugins/ccam-devtools/skills/event-trace ~/.claude/skills/event-traceSKILL.md
# Event Trace Build a chronological, annotated event timeline for a single session. ## Input The user provides: **$ARGUMENTS** This is a session ID. It may also be: - `latest` / `last` — trace the most recently updated session - `errors` — trace the most recent session whose status is `error` ## Data Sources | Endpoint | Returns | |----------|---------| | `GET /api/sessions?limit=N` | session list (used to resolve `latest`/`errors` and the target id) | | `GET /api/sessions/:id` | full session detail (status, model, cwd, started_at, ended_at, cost, nested agents + events) | | `GET /api/events?session_id=X` | the ordered event stream: event_type, tool_name, summary, data, timestamp | ## Report Sections ### 1. Resolve the session If `$ARGUMENTS` is a raw id, use it. If `latest`/`last`, call `GET /api/sessions?limit=1`. If `errors`, call `GET /api/sessions?limit=10&status=error` and pick the newest. Confirm the id resolves via `GET /api/sessions/:id`; if not, report it as missing and stop. ### 2. Session header From `GET /api/sessions/:id`: id, status, model, cwd, started_at → ended_at, total duration, cost (USD to 4 decimals), and counts (events, agents). ### 3. Ordered timeline From `GET /api/events?session_id=X`, list every event in timestamp order. One row per event: `| # | time | Δ since prev | event_type | tool_name | summary |` Cover all event types present: SessionStart, PreToolUse, PostToolUse, Stop, SubagentStop, Compaction, APIError, TurnDuration, Notification, SessionEnd. ### 4. Gap & failure highlights Annotate the timeline: - **Gaps**: any Δ > 30s between consecutive events — mark ⏳ and note the wait. - **Unpaired tool calls**: a PreToolUse with no matching PostToolUse (same tool_name, next in stream) — mark ⚠️ "no completion recorded". - **Failures**: APIError events and PostToolUse whose `summary`/`data` indicates an error — mark ❌ with the error text. - **Compaction**: mark ♻️ and note it resets the visible token baseline. - **Missing bookends**: no SessionStart at the head or no Stop/SessionEnd at the tail of an ended session — mark 🚩. ### 5. Verdict One line: CLEAN, GAPS DETECTED, or FAILURES PRESENT — with the count of each flag type and the single most likely thing to investigate next. ## Output - Markdown timeline table, events in strict timestamp order. - Status glyphs inline: ✅ ok, ❌ error, ⚠️ warning/unpaired, ⏳ gap, ♻️ compaction, 🚩 missing bookend. - Currency in USD to 4 decimals. - Cite only event data returned by the API — do not invent timestamps or summaries. - If the dashboard is unreachable, tell the user to start it with `npm start` from the repo root.
Operate and maintain the local MCP server for this repository. Use for MCP tool updates, policy-guard changes, host configuration, and MCP runtime troubleshooting.
Run release-readiness checks for this repository. Use when validating docs, scripts, verification coverage, and operational safety before merge or release.
Understand this repository quickly before making changes. Use for architecture discovery, ownership mapping, command selection, and initial implementation planning.
Review backend route and hook logic for regressions, data integrity risks, and missing tests.
Review React UI changes for behavior regressions, state consistency, and UX breakage.
Review MCP server changes for tool safety, schema quality, and host integration correctness.
Debug production-like issues in this repository with disciplined evidence gathering. Use when fixing failing workflows, regressions, flaky behavior, or data inconsistencies across hooks, API, DB, websocket, and UI.
Operate and maintain the local MCP server for this project. Use when creating MCP host config, troubleshooting tool connectivity, modifying tool domains, or adjusting safety policy flags.