Guide · Agent skill
How to use the Continuous Learning v2 agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The continuous-learning-v2 skill lets Claude Code learn from your sessions. It records your prompts and tool calls through hooks, then a background observer looks for patterns and saves them as small instinct files with confidence scores. This guide explains what it does, how to install and enable it, how to use its commands, and what to check before turning it on.
Quick start
- 1Install the skill. Download the ZIP from this page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder, or upload it under Settings → Capabilities → Skills in the Claude apps.
- 2Enable the hooks. If you installed it as a plugin, rely on its hooks/hooks.json. If installed manually, add the PreToolUse and PostToolUse observe.sh hooks to ~/.claude/settings.json.
- 3Create the data folders. Run the mkdir and touch commands to create ~/.claude/homunculus/ with its subfolders and observations.jsonl, or let the Python CLI do it.
- 4Work normally in Claude Code. Observations are recorded automatically during sessions, and the observer analyses them in the background.
- 5Review instincts. Run /instinct-status to see learned instincts and their confidence scores.
- 6Cluster patterns. Run /evolve to group related instincts into skills, commands or agents under the evolved folder.
- 7Share or import. Use /instinct-export to share instincts and /instinct-import <file> to load instincts from someone else after reviewing them.
What does the continuous-learning-v2 skill make Claude do?
The skill turns Claude Code sessions into small learned behaviours called instincts. Each instinct has one trigger and one action, a confidence score from 0.3 (tentative) to 0.9 (almost certain), and a domain tag such as code-style, testing, git, debugging or workflow.
Observations are captured by hooks, which the source describes as firing deterministically on every tool call, rather than relying on the model to decide to record them. A background observer agent, which uses the Haiku model, reads those observations and detects user corrections, error resolutions and repeated workflows. Related instincts can later be grouped into skills, commands or agents.
- Instincts are stored as markdown files with YAML headers and an evidence section.
- Confidence rises when a pattern repeats and you do not correct the behaviour, and falls when you correct it explicitly.
- v2 is described as fully compatible with v1 skills in ~/.claude/skills/learned/.
How do you install the skill?
Download the ZIP from this page and unzip it. Put the folder in ~/.claude/skills/ for all your projects, or in a project's .claude/skills/ folder for one project only.
You can also upload the skill in the Claude apps under Settings → Capabilities → Skills.
- Personal install: ~/.claude/skills/continuous-learning-v2/
- Project install: .claude/skills/continuous-learning-v2/ inside your project
How do you turn on the observation hooks?
If you installed the skill as a plugin, the plugin's hooks/hooks.json loads automatically on Claude Code v2.1+, so you do not add hook settings yourself. If you copied it manually into ~/.claude/skills, add PreToolUse and PostToolUse hooks that run observe.sh to ~/.claude/settings.json.
If you previously copied observe.sh into settings.json as well as using the plugin, remove the duplicate PreToolUse and PostToolUse blocks. The source warns that duplicates cause double execution and ${CLAUDE_PLUGIN_ROOT} resolution errors.
{
"hooks": {
"PreToolUse": [{
"matcher": "*",
"hooks": [{
"type": "command",
"command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh"
}]
}],
"PostToolUse": [{
"matcher": "*",
"hooks": [{
"type": "command",
"command": "~/.claude/skills/continuous-learning-v2/hooks/observe.sh"
}]
}]
}
}How do you set up the data folders?
The source says the Python CLI creates the directories automatically, but you can create them yourself with the commands below. This builds the homunculus folder with instinct and evolved subfolders and an empty observations log.
- Main folder: ~/.claude/homunculus/
- Observations log: ~/.claude/homunculus/observations.jsonl
- Personal instincts: ~/.claude/homunculus/instincts/personal/
mkdir -p ~/.claude/homunculus/{instincts/{personal,inherited},evolved/{agents,skills,commands}}
touch ~/.claude/homunculus/observations.jsonlHow do you trigger the skill with natural requests?
Observation runs in the background, so you do not need to ask for it. The observer runs after roughly 20 or more tool calls in a session, when you run /analyze-patterns, on the scheduled interval (5 minutes by default), or when the observation hook signals it. You can ask Claude in plain language to show what it has learned or to tidy up patterns, and the slash commands below give you direct control.
- Ask: what instincts have you learned about my coding style?
- Ask: show my learned instincts with their confidence scores.
- Ask: combine related instincts into a reusable skill.
Which commands can you run?
These four slash commands manage the instinct system. Use /instinct-status to review what has been learned, /evolve to group related instincts into skills, commands or agents, and /instinct-export and /instinct-import to share instincts with others.
- /instinct-status shows all learned instincts with their confidence.
- /evolve clusters related instincts into skills or commands.
- /instinct-export exports instincts for sharing.
- /instinct-import <file> imports instincts from someone else.
/instinct-status
/evolve
/instinct-export
/instinct-import <file>What should you check for privacy and safety?
The skill runs scripts: the observe.sh hook is a Bash script, and the observer runs as a background agent. The source states it does not use the network. Observations are kept locally on your machine, and the source says only instincts (patterns), not raw code or conversation content, are shared on export.
Be careful anyway. Observations do capture prompts and tool calls, so do not enable this on a shared machine where others could read ~/.claude/homunculus/, and review any instinct file before importing one from someone else.
- Observations are local; only instincts are exportable.
- Do not use it if you do not want prompts and tool activity written to disk.
- Review imported instinct files before trusting them.
What people use it for
- Learning that you prefer functional style over classes and applying it to new code.
- Remembering that your tests should run first, so the agent starts with them.
- Capturing fixes for recurring errors so the same mistake is resolved faster next time.
- Sharing an exported set of instincts with a teammate on the same project.
Frequently asked questions
Is the continuous-learning-v2 skill free?
The skill is released under the MIT licence, according to this listing. The source does not mention prices, so check the repository for any other terms.
What do I need to run continuous-learning-v2?
You need Claude Code v2.1+ for automatic plugin hook loading, a Bash shell for the observe.sh script, and access to the Haiku model for the background observer. The source also mentions a Python CLI for initialising directories.
How do I install continuous-learning-v2 in Claude Code?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for all projects, or into a project's .claude/skills/ folder. You can also upload it in the Claude apps under Settings → Capabilities → Skills.
Does continuous-learning-v2 send my data over the network?
The listing says it does not use the network. Observations are stored locally in ~/.claude/homunculus/, and only instincts are meant to be exported.
Why does observe.sh run twice or show ${CLAUDE_PLUGIN_ROOT} errors?
This usually happens when you have both the plugin and manually copied hooks in settings.json. Remove the duplicate PreToolUse and PostToolUse blocks from ~/.claude/settings.json, because the variable only expands in plugin-managed hooks.
How does continuous-learning-v2 compare with other approaches?
The source says v2 uses hooks for observation instead of skills, because skill-based observation fired only about 50-80% of the time in v1, while hooks fire on every call. It is specific to Claude Code, so it is not suited to other agents.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Choose this skill if you use Claude Code daily, are comfortable editing JSON and running shell hooks, and want it to adapt to your personal style. Skip it if you do not want your prompts and tool activity logged to disk, if you share the machine, or if you use an agent other than Claude Code.
Download the skill