continual-learning
// Guide for implementing continual learning in AI coding agents — hooks, memory scoping, reflection patterns. Use when setting up learning infrastructure for agents.
$ git log --oneline --stat
stars:1,603
forks:305
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namecontinual-learning
descriptionGuide for implementing continual learning in AI coding agents — hooks, memory scoping, reflection patterns. Use when setting up learning infrastructure for agents.
Continual Learning for AI Coding Agents
Your agent forgets everything between sessions. Continual learning fixes that.
The Loop
Experience → Capture → Reflect → Persist → Apply
↑ │
└───────────────────────────────────────┘
Quick Start
Install the hook (one step):
cp -r hooks/continual-learning .github/hooks/
Auto-initializes on first session. No config needed.
Two-Tier Memory
Global (~/.copilot/learnings.db) — follows you across all projects:
- Tool patterns (which tools fail, which work)
- Cross-project conventions
- General coding preferences
Local (.copilot-memory/learnings.db) — stays with this repo:
- Project-specific conventions
- Common mistakes for this codebase
- Team preferences
How Learnings Get Stored
Automatic (via hooks)
The hook observes tool outcomes and detects failure patterns:
Session 1: bash tool fails 4 times → learning stored: "bash frequently fails"
Session 2: hook surfaces that learning at start → agent adjusts approach
Agent-native (via store_memory / SQL)
The agent can write learnings directly:
INSERT INTO learnings (scope, category, content, source)
VALUES ('local', 'convention', 'This project uses Result<T> not exceptions', 'user_correction');
Categories: pattern, mistake, preference, tool_insight
Manual (memory files)
For human-readable, version-controlled knowledge:
# .copilot-memory/conventions.md
- Use DefaultAzureCredential for all Azure auth
- Parameter is semantic_configuration_name=, not semantic_configuration=
Compaction
Learnings decay over time:
- Entries older than 60 days with low hit count are pruned
- High-value learnings (frequently referenced) persist indefinitely
- Tool logs are pruned after 7 days
This prevents unbounded growth while preserving what matters.
Best Practices
- One step to install — if it takes more than
cp -r, it won't get adopted - Scope correctly — global for tool patterns, local for project conventions
- Be specific —
"Use semantic_configuration_name="beats"use the right parameter" - Let it compound — small improvements per session create exponential gains over weeks