Skip to main content

continuous-learning-v2

Instinct-based learning system that observes sessions via hooks, creates atomic instincts with confidence scoring, and evolves them into skills/commands/agents.

Source facts

Repository
Jamkris/everything-gemini-code
Last source activity
April 22, 2026 at 06:43
Detected SKILL.md language
English
Stars
93
Forks
23

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
7 files

Showing SKILL.md

SKILL.md
Source instructions ยท Read-only preview
name
continuous-learning-v2
description
Instinct-based learning system that observes sessions via hooks, creates atomic instincts with confidence scoring, and evolves them into skills/commands/agents.
version
2.0.0
# Continuous Learning v2 - Instinct-Based Architecture An advanced learning system that turns your Gemini CLI sessions into reusable knowledge through atomic "instincts" - small learned behaviors with confidence scoring. ## What's New in v2 | Feature | v1 | v2 | |---------|----|----| | Observation | Stop hook (session end) | PreToolUse/PostToolUse (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 | ## The Instinct Model An instinct is a small learned behavior: ```yaml --- id: prefer-functional-style trigger: "when writing new functions" confidence: 0.7 domain: "code-style" source: "session-observation" --- # Prefer Functional Style ## Action Use functional patterns over classes when appropriate. ## Evidence - Observed 5 instances of functional pattern preference - User corrected class-based approach to functional on 2025-01-15 ``` **Properties:** - **Atomic** โ€” one trigger, one action - **Confidence-weighted** โ€” 0.3 = tentative, 0.9 = near certain - **Domain-tagged** โ€” code-style, testing, git, debugging, workflow, etc. - **Evidence-backed** โ€” tracks what observations created it ## How It Works ``` Session Activity โ”‚ โ”‚ Hooks capture prompts + tool use (100% reliable) โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ observations.jsonl โ”‚ โ”‚ (prompts, tool calls, outcomes) โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ Observer agent reads (background, Haiku) โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ PATTERN DETECTION โ”‚ โ”‚ โ€ข User corrections โ†’ instinct โ”‚ โ”‚ โ€ข Error resolutions โ†’ instinct โ”‚ โ”‚ โ€ข Repeated workflows โ†’ instinct โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ Creates/updates โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ instincts/personal/ โ”‚ โ”‚ โ€ข prefer-functional.md (0.7) โ”‚ โ”‚ โ€ข always-test-first.md (0.9) โ”‚ โ”‚ โ€ข use-zod-validation.md (0.6) โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ /egc-evolve clusters โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ evolved/ โ”‚ โ”‚ โ€ข commands/new-feature.md โ”‚ โ”‚ โ€ข skills/testing-workflow.md โ”‚ โ”‚ โ€ข agents/refactor-specialist.md โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ## Quick Start ### 1. Enable Observation Hooks Add to your `~/.gemini/settings.json`. **If installed as a plugin** (recommended): ```json { "hooks": { "PreToolUse": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "${GEMINI_EXTENSION_ROOT}/skills/continuous-learning-v2/hooks/observe.sh pre" }] }], "PostToolUse": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "${GEMINI_EXTENSION_ROOT}/skills/continuous-learning-v2/hooks/observe.sh post" }] }] } } ``` **If installed manually** to `~/.gemini/skills`: ```json { "hooks": { "PreToolUse": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "~/.gemini/skills/continuous-learning-v2/hooks/observe.sh pre" }] }], "PostToolUse": [{ "matcher": "*", "hooks": [{ "type": "command", "command": "~/.gemini/skills/continuous-learning-v2/hooks/observe.sh post" }] }] } } ``` ### 2. Initialize Directory Structure The Python CLI will create these automatically, but you can also create them manually: ```bash mkdir -p ~/.gemini/homunculus/{instincts/{personal,inherited},evolved/{agents,skills,commands}} touch ~/.gemini/homunculus/observations.jsonl ``` ### 3. Use the Instinct Commands ```bash /egc-instinct-status # Show learned instincts with confidence scores /egc-evolve # Cluster related instincts into skills/commands /egc-instinct-export # Export instincts for sharing /egc-instinct-import # Import instincts from others ``` ## Commands | Command | Description | |---------|-------------| | `/egc-instinct-status` | Show all learned instincts with confidence | | `/egc-evolve` | Cluster related instincts into skills/commands | | `/egc-instinct-export` | Export instincts for sharing | | `/egc-instinct-import <file>` | Import instincts from others | ## Configuration Edit `config.json`: ```json { "version": "2.0", "observation": { "enabled": true, "store_path": "~/.gemini/homunculus/observations.jsonl", "max_file_size_mb": 10, "archive_after_days": 7 }, "instincts": { "personal_path": "~/.gemini/homunculus/instincts/personal/", "inherited_path": "~/.gemini/homunculus/instincts/inherited/", "min_confidence": 0.3, "auto_approve_threshold": 0.7, "confidence_decay_rate": 0.05 }, "observer": { "enabled": true, "model": "haiku", "run_interval_minutes": 5, "patterns_to_detect": [ "user_corrections", "error_resolutions", "repeated_workflows", "tool_preferences" ] }, "evolution": { "cluster_threshold": 3, "evolved_path": "~/.gemini/homunculus/evolved/" } } ``` ## File Structure ``` ~/.gemini/homunculus/ โ”œโ”€โ”€ identity.json # Your profile, technical level โ”œโ”€โ”€ observations.jsonl # Current session observations โ”œโ”€โ”€ observations.archive/ # Processed observations โ”œโ”€โ”€ instincts/ โ”‚ โ”œโ”€โ”€ personal/ # Auto-learned instincts โ”‚ โ””โ”€โ”€ inherited/ # Imported from others โ””โ”€โ”€ evolved/ โ”œโ”€โ”€ agents/ # Generated specialist agents โ”œโ”€โ”€ skills/ # Generated skills โ””โ”€โ”€ commands/ # Generated commands ``` ## Integration with Skill Creator When you use the [Skill Creator GitHub App](https://skill-creator.app), it now generates **both**: - Traditional SKILL.md files (for backward compatibility) - Instinct collections (for v2 learning system) Instincts from repo analysis have `source: "repo-analysis"` and include the source repository URL. ## Confidence Scoring Confidence evolves over time: | Score | Meaning | Behavior | |-------|---------|----------| | 0.3 | Tentative | Suggested but not enforced | | 0.5 | Moderate | Applied when relevant | | 0.7 | Strong | Auto-approved for application | | 0.9 | Near-certain | Core behavior | **Confidence increases** when: - Pattern is repeatedly observed - User doesn't correct the suggested behavior - Similar instincts from other sources agree **Confidence decreases** when: - User explicitly corrects the behavior - Pattern isn't observed for extended periods - Contradicting evidence appears ## Why Hooks vs Skills for Observation? > "v1 relied on skills to observe. Skills are probabilisticโ€”they fire ~50-80% of the time based on Gemini's judgment." Hooks fire **100% of the time**, deterministically. This means: - Every tool call is observed - No patterns are missed - Learning is comprehensive ## Backward Compatibility v2 is fully compatible with v1: - Existing `~/.gemini/skills/learned/` skills still work - Stop hook still runs (but now also feeds into v2) - Gradual migration path: run both in parallel ## Privacy - Observations stay **local** on your machine - Only **instincts** (patterns) can be exported - No actual code or conversation content is shared - You control what gets exported ## Related - [Skill Creator](https://skill-creator.app) - Generate instincts from repo history - [Homunculus](https://github.com/humanplane/homunculus) - Inspiration for v2 architecture - [The Longform Guide](https://x.com/Jamkris/status/2014040193557471352) - Continuous learning section --- *Instinct-based learning: teaching Gemini your patterns, one observation at a time.*
View on GitHub