Tab · Knowledge
Lessons
The active store of accepted lessons. Every accepted proposal from Brain reflection lands here as a Lesson with a trigger, what-went-wrong, and fix. Active lessons regenerate into a managed block in CLAUDE.md and AGENTS.md so Claude Code / Cursor / Codex all read them on next run.
See it in motion
Where to find it
- Localhost:
/lessons.html?repo=<id> - Source:
.claude/brain/lessons/lessons.jsonl - Keyboard: ⌘ K then
lessons
What it does for you
Lessons stay loaded into every agent.Active lessons auto-regenerate the managed block in `CLAUDE.md` + `AGENTS.md`. Claude Code, Cursor, Codex all read them on startup — no per-agent setup.
Save-as-lesson from a 'Caused by' trail.Every causal-link finding has a one-click "save as lesson" button. The full audit trail becomes a future-prevention rule.
Hand-author lessons too.Direct authoring for rules that aren't reflexive — team conventions, naming standards, anything the reflector wouldn't catch.
Configure
- Active lessons regen the managed block on every
npm run sync-brain. - Deactivate a lesson to remove it from the managed block without deleting the history.
- Lessons file:
.claude/brain/lessons/lessons.jsonl— append-only.
Use it well
Lessons should be specific enough to act on ("stage by explicit path, never git add -A") and short enough to scan. The managed block in CLAUDE.md is what the agent actually reads — keep it lean.