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 agentmods add commands/fusengine/agents/lessonsgit clone --depth 1 https://github.com/fusengine/agentsWrote 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/commands/fusengine/agents/lessons)<a href="https://agentmods.dev/commands/fusengine/agents/lessons"><img src="https://agentmods.dev/badge/commands/fusengine/agents/lessons.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.00026 | $0.00550 |
| Opus 5 | $0.00013 | $0.00275 |
| Sonnet 5 | $0.00005 | $0.00110 |
| Haiku 4.5 | $0.00003 | $0.00055 |
Grade A, and why
lessons 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.
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.
/lessons
Manage the project's lessons memory — a MEMORY/LESSON.md file committed at the project root. It records compact post-mortems so the same mistake is never reproduced twice.
Architecture
MEMORY/LESSON.md— the committed list of lessons. One lesson per line, newest at the bottom. This is the file you read and append to.MEMORY/state.json— the throttle counter (last-reminder / last-write timestamps). It is gitignored and managed by the hooks; never edit it by hand.
The fuse-lessons hooks force-read MEMORY/LESSON.md at every session and sub-agent start, so anything written here is automatically reloaded into context.
View existing lessons
Read MEMORY/LESSON.md at the project root (create it if absent). Each line is one lesson, newest at the bottom.
Add a lesson
Append one line in this exact compact format:
- [YYYY-MM-DD HH:MM] <what went wrong> → <what to do instead>
Rules:
- One lesson per line. Keep it short — a single actionable sentence.
- Timestamp uses the current local date and time in
YYYY-MM-DD HH:MM. TheStophook injects the exact stamp to use — copy it verbatim. - Left of
→: the concrete failure (what broke, what was wrong). - Right of
→: the corrective action (what to do next time). - No paragraphs, no code blocks — just the bullet line.
Example
- [2026-06-20 11:02] Added "hooks": "./hooks/hooks.json" string in marketplace entry → never set a hooks field in marketplace.json; hooks auto-load by convention from hooks/hooks.json
Throttle
The Stop hook reminds you to capture a lesson at most once every 5 minutes by default. Override with the FUSE_LESSONS_THROTTLE_MIN environment variable (minutes). Writing to MEMORY/LESSON.md resets the throttle automatically via the PostToolUse hook (it updates MEMORY/state.json).
After appending, mention that the lesson will be force-read on the next session/sub-agent start, and that MEMORY/LESSON.md should be committed with the change so the whole team inherits it.
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.
- 2d ago First seen · 47 lines · 26 tokens per session scan A 557d62397709
lessons is a command published in the GitHub repository fusengine/agents (25 stars, last pushed today), licensed MIT. It adds 26 tokens to every session and 550 once invoked, about $0.0001 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-09-03.
Other commands, from other repositories
setup-agents
Scaffold a multi-agent AI setup for any repo. Scans the codebase, interviews the developer, generates agent configs for whichever AI tools the repo uses (Copilot, Claude Code, Cursor, Codex, Windsurf). Use when asked to "set up agents", "scaffold Copilot agents", or "create an AGENTS.md".
disconnect
Disconnect the NeatContext context from this session.
wf-list
List the available ultracode workflows with what each one does and when to use it.
on
Turn on senior mode — refuses vague questions, hints instead of answers, never writes code.
unwrap
You are resuming a Claude Code session. Execute all steps below in order — no confirmation needed.
continue
Resume an interrupted autoimprove session from where it left off.