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 terva-sh/terva --skill retrospectivegit clone --depth 1 https://github.com/terva-sh/tervaWrote 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/terva-sh/terva/retrospective)<a href="https://agentmods.dev/skills/terva-sh/terva/retrospective"><img src="https://agentmods.dev/badge/skills/terva-sh/terva/retrospective.svg" alt="Measured on agentmods" height="20"></a>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.00076 | $0.00771 |
| Opus 5 | $0.00038 | $0.00385 |
| Sonnet 5 | $0.00015 | $0.00154 |
| Haiku 4.5 | $0.00008 | $0.00077 |
Grade A, and why
retrospective 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 8d 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 — 63 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Session retrospective
Mine this session for what should outlive it, and write each piece into the
home where future sessions will actually encounter it. This is the complement
of the handoff skill: handoff carries unfinished work to the next
session; a retrospective carries lessons to all of them. Ephemeral task
state does not belong here — if the user also wants the work continued, do a
handoff separately.
What to mine for
Walk the session with these filters:
- Corrections — every place the user redirected you. Extract the rule behind the correction, not the incident. If they corrected the same class of thing twice, that rule is the session's most important output.
- Wrong turns — where you lost time, and the tell that would have caught it sooner. The tell is the valuable part.
- Discoveries — commands, procedures, or repo facts you had to work out that the next session would otherwise re-derive.
- Confirmed conventions — choices the user approved that were not written anywhere ("we vendor deps", "tests through the caller").
- Stated preferences — how the user likes to work, phrased generally.
Route each item to its home
| The lesson is… | Write it to |
|---|---|
| specific to this repo (commands, conventions, policy, gotchas) | the repo's AGENTS.md |
| a procedure with real depth (a runbook, a checklist) | a project skill: .terva/skills/<name>/SKILL.md |
| how this user works, across every repo | $TERVA_HOME/AGENTS.md (global) |
| a durable fact and a memory facility is available (e.g. a memory extension's tools) | memory, via its own conventions |
| world/story state in a lore-bearing project | lore, via its own conventions |
| unfinished work, next steps, open loops | not here — that's a handoff |
When a memory facility is present, prefer it for facts and AGENTS.md for standing instructions — memory recalls; AGENTS.md commands.
Quality bar
- Write the rule, include the why, one lesson per entry. A future session gets the entry without this conversation attached.
- Generalize honestly: "prefer X over Y when Z", not "on Aug 2 we did X".
- A command goes in only if it was run and worked in this session.
- Check for an existing entry saying the same thing — sharpen it in place rather than duplicating; delete entries this session proved wrong.
- Respect scope: repo facts never go global; personal preferences never go into a shared repo file without the user's say-so (other people may work in this repo too).
- AGENTS.md rides every prompt — keep additions to a line or two each; if a lesson needs paragraphs, it wants to be a skill instead.
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.
- 8d ago First seen · 63 lines · 76 tokens per session scan A 7b1e63cae126
retrospective is a skill published in the GitHub repository terva-sh/terva (2 stars, last pushed today), licensed MIT. It adds 76 tokens to every session and 771 once invoked, about $0.0004 per session on Opus 5. 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-31.
Other skills, from other repositories
memory-index
Index a folder's contents into the MemPalace semantic memory for search and retrieval. Use this skill whenever the user asks to "index a folder", "index a directory", "index memory", "mine a project into memory", "make a folder searchable", "embed a folder", "ingest code into the palace", or "index this directory for…
memory-mine
Mine project files or conversations into the MemPalace memory system. Indexes source code and conversation history as searchable palace drawers with semantic embeddings and room assignment.
memory-status
Show MemPalace memory system status — drawer counts, wings, rooms, knowledge graph stats, and embedding model state.
pi-sync
Daily upstream-sync job for the pi Go port — fetch upstream pi, triage every change since the recorded pin, port what's in scope, verify idiomatic + parity via independent reviews, update the ledger, and push. Use for "sync with upstream", "porting job", or as the scheduled daily run.
pi-go-review
Review ported Go code for idiomatic quality — that the port maximizes Go rather than transliterating TypeScript. Use after porting upstream pi changes, or standalone on any diff in this repo.
tracer
Query the contAIned tracer database for session history, audit log, and file changes. Use when asked about past agent sessions, what files changed, what commands were run, or any audit events.