retrospective

A command that records experiment findings in a documentation repository. It summarizes established results, failed attempts, and evidence from experiment runs and journals.

In plain words
What is it for?
Reviewing experiment runs, comparing metrics, documenting what worked or failed in findings.md, and committing the updated findings.
Why use it?
It keeps useful lessons from a work session from being lost and helps prevent repeating unsuccessful approaches.

Command

Install

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.

agentmods
npx agentmods add commands/zhyx12/projtool/retrospective
Clone the repo
git clone --depth 1 https://github.com/zhyx12/projtool
Per session 36 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 560 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00036 $0.00560
Opus 5 $0.00018 $0.00280
Sonnet 5 $0.00007 $0.00112
Haiku 4.5 $0.00004 $0.00056

Measured 2d ago against content hash bbc8f420d40e, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

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 2d 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.

src/projtool/assets/project_templates/claude/commands/retrospective.md · 60 lines

What it actually says

You are running the user's /retrospective command. The goal is Sionic-style knowledge capture: whatever this session learned must land in the docs repo NOW, not evaporate when the conversation ends. Failed attempts are the most valuable entries — they're what prevents re-running dead ends next month.

Steps

  1. Determine the experiment scope. If the session touched one experiment, use it; if several, do one findings pass per experiment (confirm with the user which ones matter).

  2. Gather the raw record for each experiment:

    • mcp__projtool__list_runs (with experiment_id, generous limit) and mcp__projtool__compare_runs for the metric table;
    • the auto-appended docs/exp/<slug>/journal.md (chronological log);
    • anything notable from this conversation that the journal can't know: hypotheses, dead ends, environment quirks, manual bypasses.
  3. Draft into docs/exp/<slug>/findings.md (create if absent). Structure — keep existing content, append/update sections:

    # Findings — <experiment>
    
    ## Established (what we now believe, with evidence)
    - <claim> — run `<run_id>`, <metric>=<value>
    
    ## Failed attempts (do not retry without new information)
    | Tried | Why it failed | Evidence (run / log) |
    |---|---|---|
    
    ## Environment / tooling gotchas
    - <exact fix, exact command>
    
    ## Open questions
    - <question> — what evidence would settle it
    
  4. Show the draft to the user for corrections. Do not invent conclusions the runs don't support — if a number is missing from the manifests, say so rather than reconstructing it from memory.

  5. After approval, commit in the docs repo (explicit paths, matching projtool convention):

    cd <container>/docs && git add exp/<slug>/findings.md && git commit -m "findings: <slug> — <one-line summary>"
    
  6. If the session also revealed installs/config that a fresh instance needs, remind the user those belong in .proj-tool/env-setup.sh (append them now if they aren't there).

Before designing the NEXT experiment, read findings.md + journal.md first — that's the whole point of writing them.

Changes

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.

  1. 2d ago First seen · 60 lines · 36 tokens per session scan A bbc8f420d40e

Subscribe to this mod's changes

retrospective is a command published in the GitHub repository zhyx12/projtool (1 stars, last pushed 19d ago), licensed MIT. It adds 36 tokens to every session and 560 once invoked, about $0.0002 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.