57dc91585d
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.
1.4 KiB
1.4 KiB
description, argument-hint
| description | argument-hint |
|---|---|
| Summarize one Agent Monitor session by id — header plus a concise transcript recap. | [session-id] |
Produce a concise recap of one Claude Code session tracked by the Agent Monitor.
The session id is $ARGUMENTS. If empty, resolve the latest:
curl -s "http://localhost:4820/api/sessions?limit=1" and use its id.
Fetch the session header and its transcript:
curl -s "http://localhost:4820/api/sessions/$ARGUMENTS"
curl -s "http://localhost:4820/api/sessions/$ARGUMENTS/transcript"
The first returns the session detail (status, model, cwd, started_at, ended_at, cost, metadata: turn_count, thinking_blocks, total_turn_duration_ms). The second returns the ordered transcript messages (user / assistant / tool).
Then print, concisely:
- Header — one block:
id · model · status · cwd basename · turn_count turns · $<cost to 4dp> · <started_at → ended_at>. - Recap — 5–10 bullets walking the conversation in order: the user's goal, the key
assistant actions and tools used, any tool failures, and how it ended. Summarize each
message in one line; do not paste large payloads (truncate past ~200 chars with
…).
Currency as USD to 4 decimal places. If the transcript is empty, say the session has no
stored transcript rather than inventing turns. If the dashboard is unreachable, tell the
user to start it with npm start from the repo root.