continuous-learning
affaan-m/ecc
[DEPRECATED] Legacy v1 stop-hook skill extractor—use continuous-learning-v2 instead.
What is continuous-learning?
This is a deprecated v1 skill that automatically extracts reusable patterns from Claude Code sessions at the end of each session via a Stop hook. It has been superseded by continuous-learning-v2, which uses more reliable PreToolUse/PostToolUse hooks and instinct-based learning. Do not use for new installs.
- Runs as a Stop hook at session end to evaluate session content
- Detects extractable patterns (error resolution, user corrections, workarounds, debugging techniques, project-specific conventions)
- Saves learned patterns to ~/.claude/skills/learned/ directory
- Filters patterns based on configurable thresholds and ignore lists
- Supports manual pattern extraction via /learn command
How to install continuous-learning
npx skills add null --skill continuous-learning- Claude Code environment with hook support
- ~/.claude/settings.json configured with Stop hook
- Write access to ~/.claude/skills/learned/ directory
How to use continuous-learning
- 1.Install the skill via npx skills add null --skill continuous-learning
- 2.Edit config.json to set min_session_length, extraction_threshold, and pattern types
- 3.Add the Stop hook configuration to ~/.claude/settings.json
- 4.Run Claude Code sessions normally; patterns are extracted automatically at session end
- 5.Review extracted skills in ~/.claude/skills/learned/ and curate as needed
Use cases
- Extracting debugging techniques from problem-solving sessions
- Capturing project-specific conventions and workarounds
- Building a personal library of error-resolution patterns
- Reviewing and curating learned skills over time
- Maintaining backward compatibility with existing v1 installs
- Developers using Claude Code who want automatic pattern extraction
- Teams with existing v1 continuous-learning workflows
- Users preferring simpler Stop-hook extraction over instinct-based learning
continuous-learning FAQ
Use continuous-learning-v2 for new installs. v2 is a strict superset with more reliable hook-based observation, atomic instincts with confidence scoring, and project-scoped learning. Keep v1 only if you need backward compatibility with existing workflows.
The Stop hook runs once at the end of each session, evaluating the full transcript for extractable patterns without adding latency to individual messages.
error_resolution, user_corrections, workarounds, debugging_techniques, and project_specific patterns. You can customize which patterns to detect and ignore via config.json.
Yes, use the /learn command for manual pattern extraction during a session.
Learned skills are saved to ~/.claude/skills/learned/ by default, configurable via the learned_skills_path setting.
Full instructions (SKILL.md)
Source of truth, from affaan-m/ecc.
name: continuous-learning description: "[DEPRECATED - use continuous-learning-v2] Legacy v1 stop-hook skill extractor. v2 is a strict superset with instinct-based, project-scoped, hook-reliable learning. Do not invoke v1; route continuous learning, session learning, and pattern extraction requests to continuous-learning-v2." metadata: origin: ECC
Continuous Learning Skill - DEPRECATED
DEPRECATED 2026-04-28. Use
continuous-learning-v2instead. v2 is a strict superset: stop-hook observation becomes PreToolUse/PostToolUse observation, full skills become atomic instincts with confidence scoring, and global-only storage becomes project-scoped plus global promotion.This file is kept for archival reference and backward compatibility with existing installs.
Original v1 Documentation (archival)
Automatically evaluates Claude Code sessions on end to extract reusable patterns that can be saved as learned skills.
When to Activate
- Setting up automatic pattern extraction from Claude Code sessions
- Configuring the Stop hook for session evaluation
- Reviewing or curating learned skills in
~/.claude/skills/learned/ - Adjusting extraction thresholds or pattern categories
- Comparing v1 (this) vs v2 (instinct-based) approaches
Status
This v1 skill is still supported, but continuous-learning-v2 is the preferred path for new installs. Keep v1 when you explicitly want the simpler Stop-hook extraction flow or need compatibility with older learned-skill workflows.
How It Works
This skill runs as a Stop hook at the end of each session:
- Session Evaluation: Checks if session has enough messages (default: 10+)
- Pattern Detection: Identifies extractable patterns from the session
- Skill Extraction: Saves useful patterns to
~/.claude/skills/learned/
Configuration
Edit config.json to customize:
{
"min_session_length": 10,
"extraction_threshold": "medium",
"auto_approve": false,
"learned_skills_path": "~/.claude/skills/learned/",
"patterns_to_detect": [
"error_resolution",
"user_corrections",
"workarounds",
"debugging_techniques",
"project_specific"
],
"ignore_patterns": [
"simple_typos",
"one_time_fixes",
"external_api_issues"
]
}
Pattern Types
| Pattern | Description |
|---|---|
error_resolution | How specific errors were resolved |
user_corrections | Patterns from user corrections |
workarounds | Solutions to framework/library quirks |
debugging_techniques | Effective debugging approaches |
project_specific | Project-specific conventions |
Hook Setup
Add to your ~/.claude/settings.json:
{
"hooks": {
"Stop": [{
"matcher": "*",
"hooks": [{
"type": "command",
"command": "~/.claude/skills/continuous-learning/evaluate-session.sh"
}]
}]
}
}
Why Stop Hook?
- Lightweight: Runs once at session end
- Non-blocking: Doesn't add latency to every message
- Complete context: Has access to full session transcript
Related
- The Longform Guide - Section on continuous learning
/learncommand - Manual pattern extraction mid-session
Comparison Notes (Research: Jan 2025)
vs Homunculus
Homunculus v2 takes a more sophisticated approach:
| Feature | Our Approach | Homunculus v2 |
|---|---|---|
| Observation | Stop hook (end of session) | PreToolUse/PostToolUse hooks (100% reliable) |
| Analysis | Main context | Background agent (Haiku) |
| Granularity | Full skills | Atomic "instincts" |
| Confidence | None | 0.3-0.9 weighted |
| Evolution | Direct to skill | Instincts → cluster → skill/command/agent |
| Sharing | None | Export/import instincts |
Key insight from homunculus:
"v1 relied on skills to observe. Skills are probabilistic—they fire ~50-80% of the time. v2 uses hooks for observation (100% reliable) and instincts as the atomic unit of learned behavior."
Potential v2 Enhancements
- Instinct-based learning - Smaller, atomic behaviors with confidence scoring
- Background observer - Haiku agent analyzing in parallel
- Confidence decay - Instincts lose confidence if contradicted
- Domain tagging - code-style, testing, git, debugging, etc.
- Evolution path - Cluster related instincts into skills/commands
See: docs/continuous-learning-v2-spec.md for full spec.
Related skills
More from affaan-m/ecc and the wider catalog.
contract-first
Agent skill from affaan-m/ecc.
cost-aware-llm-pipeline
Route models by task complexity, track costs immutably, retry safely, and cache prompts to optimize LLM API spend.
cost-tracking
Track Claude Code token usage, spending, and budgets from local metrics logs.
council
Convene four independent voices—Architect, Skeptic, Pragmatist, Critic—to surface structured disagreement on ambiguous decisions.
council-multi-model
Agent skill from affaan-m/ecc.
cpp-coding-standards
C++ coding standards based on the C++ Core Guidelines for modern, safe, and idiomatic code.