profile-sessionlisted
Install: claude install-skill greglas75/zuvo
# zuvo:profile-session — Where a session's wall-clock actually went
Sessions get slow for boring, measurable reasons: a full suite re-run per task, four-minute
adversarial passes that fired ten times, a sub-agent nobody was waiting on, an API stall. Guessing
at which one is expensive — the 2026-07 pipeline forensics measured 28 sessions and found the
dominant cost (thread-polling dead-air, ~88h) was **not** the one everyone blamed (adversarial
review, 38 minutes total across all 28).
This skill measures instead of guessing. It reads the transcript's timestamps, charges each gap to
the activity that preceded it, and reports the ranked truth.
**Scope:** wall-clock attribution for a single session, or a comparison of two, plus the token
totals the profiler computes (`tokens` block).
**Out of scope:** per-file / per-include context budgeting (`zuvo:context-audit`), skill quality
(`zuvo:skill-eval`), fleet-wide trends (`~/.zuvo/runs.log` + `zuvo:retro`).
### Tokens come from the script or they do not get reported
This line used to read *"Out of scope: token cost"*, and the profiler computed none — so every run
asked for a token breakdown produced one **by hand**. Five profiles of the SAME Codex session then
reported gross 202,362,002 vs 203,519,738, model calls 1,395 vs 1,406, and a "strict lower bound"
for polling of **45 / 55 / 83 / 396 / 400** calls — a 9x spread, each figure labelled `[M] MEASURED`.
The trap is not carelessness, it is the data: **the two transcript forma