Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add sonichi/sutando --skill session-recapgit clone --depth 1 https://github.com/sonichi/sutandoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sonichi/sutando/session-recap)<a href="https://agentmods.dev/skills/sonichi/sutando/session-recap"><img src="https://agentmods.dev/badge/skills/sonichi/sutando/session-recap/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sonichi/sutando/session-recap"><img src="https://agentmods.dev/badge/skills/sonichi/sutando/session-recap.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.01486 |
| Opus 5.5 | $0.00000 | $0.00594 |
| Sonnet 5.5 | $0.00000 | $0.00297 |
| Haiku 4.5 | $0.00000 | $0.00149 |
Grade A, and why
session-recap scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 47 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Session Recap
Reconstruct what happened in a past core session — from a high-level summary down to verbatim owner quotes — by reading the raw session transcripts (complete, crash-proof, unbiased), not the curated relay/handoff notes.
Usage: /session-recap [last | <session-uuid-prefix> | list] [detail hint]
Why transcripts, not notes (owner design, 2026-07-13)
- Relay/handoff notes are short and reflect my curation — bias by construction.
- Notes need a graceful exit; the transcript JSONL is appended by the harness live, so accidental restarts lose nothing.
- Only the transcript has verbatim detail ("what did the owner say exactly").
Notes remain useful as a fast index into a long session — nothing more.
How to run it
- Bound the session.
python3 skills/session-recap/scripts/extract.py listprints recent sessions (newest first: file uuid, start/end ISO, message counts, first user line). Cross-check with<workspace>/state/session-starts.log(one JSONL line per core boot; consecutive entries bound a session). "last" = the second-newest transcript (newest = the running session). - Extract.
python3 skills/session-recap/scripts/extract.py dump --session last --filter dialog --max-chars 0→ chronological[ts] USER:/ASSISTANT:stream.--filter userfor owner messages only (verbatim-quote lookups: just grep this).--filter alladds tool-call names + system lines when the recap needs to cover actions, not just conversation.--max-chars 0= no cap. - Summarize with a CHEAP model (owner requirement — transcripts run to tens of MB; never burn core-model quota on this). Spawn an Agent-tool subagent with
model: haiku, hand it the dump (or the dump file path if huge — have it Read in slices), and ask for: timeline, tasks processed + outcomes, PRs/commits, decisions, errors + fixes, artifacts (files/notes/memories written — the dump'sWrite(path)/Edit(path)tool lines carry the paths; owner requirement 2026-07-13), loose ends. Match the detail level the owner asked for. Drop routine operational noise (owner rule 2026-07-13): battery-escalation ladders, idle proactive-loop passes, quota checks, watcher restarts, memory syncs, health-check green runs — none of it belongs in a recap unless it materially changed the session's course (e.g. quota exhaustion forced a pivot, a crash lost work). - Deliver to the asking channel. For a verbatim-quote request, skip the subagent entirely — grep the
--filter userdump and quote directly.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 47 lines · 0 tokens per session scan A 39a9576441f5
session-recap is a skill published in the GitHub repository sonichi/sutando (399 stars, last pushed today), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,486 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
vellum-memory-v2-migration
Perform a one-time migration from memory v1, to memory v2, which was introduced in 0.8.0.
vellum-memory-v3-migration
One-time migration of an existing memory-v2 concept corpus into the memory-v3 section-grain "wiki" — topical articles with a stand-alone lead and queryable sections — with loss-proof staging, assistant-reviewed authoring, and a retrieval-eval gate before cutover.
daily-briefing
Proactive daily briefing that fires on a recurring schedule, pulls recent memory and workspace context, composes a structured summary (action items, progress, radar, next steps), and delivers it to all active channels. Enable with a time like "set up my daily briefing at 9am". Disable, reschedule, or check status at…
openclaw-lite
On first message, check if /.loci/lite/tasks/active.md exists.
loci
Use a shared local Loci brain for personal memory, tasks, notes and project context.
memory-corpus-ingest
Ingest a large dataset into memory as a skimmed map. Cold-store the raw files under a workspace imports directory, census them into a slice plan, skim each slice into compact map pages that point back at the raw files, ingest the map with the memory ingest CLI, and author a drill-in retrieval skill so the corpus stays…