Continuous Learning V2 logo

Continuous Learning V2

CommunityPopular
affaan-m
continuous-learning-v2

Sistema de aprendizaje basado en instintos que observa sesiones mediante hooks, crea instintos atómicos con puntuación de confianza y los evoluciona en skills/comandos/agentes. v2.1 agrega instintos con alcance de proyecto para prevenir contaminación entre proyectos.

Overview

Publisheraffaan-m
RepositoryECC
Skill namecontinuous-learning-v2
Stars
261.1K
Forks
39.1K
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by affaan-m on GitHub. Read the source before you install it.

Installation

Install the Continuous Learning V2 AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/affaan-m/ECC.git /tmp/ECC
mkdir -p .claude/skills
cp -r /tmp/ECC/docs/es/skills/continuous-learning-v2 .claude/skills/continuous-learning-v2
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Continuous Learning V2 in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Continuous Learning V2 on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Continuous Learning V2 is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Aprendizaje Continuo v2.1 - Arquitectura Basada en Instintos

Un sistema de aprendizaje avanzado que convierte tus sesiones de Claude Code en conocimiento reutilizable a través de "instintos" atómicos — pequeños comportamientos aprendidos con puntuación de confianza.

v2.1 agrega instintos con alcance de proyecto — los patrones de React se quedan en tu proyecto React, las convenciones de Python se quedan en tu proyecto Python, y los patrones universales (como "siempre validar la entrada") se comparten globalmente.

Cuándo Activar

  • Configurar aprendizaje automático desde sesiones de Claude Code
  • Configurar extracción de comportamientos basada en instintos mediante hooks
  • Ajustar umbrales de confianza para comportamientos aprendidos
  • Revisar, exportar o importar librerías de instintos
  • Evolucionar instintos en skills, comandos o agentes completos
  • Gestionar instintos con alcance de proyecto vs globales
  • Promover instintos de alcance de proyecto a global

Qué hay de Nuevo en v2.1

Característicav2.0v2.1
AlmacenamientoGlobal (~/.claude/homunculus/)Con alcance de proyecto (${XDG_DATA_HOME:-~/.local/share}/ecc-homunculus/projects/<hash>/)
AlcanceTodos los instintos aplican en todas partesCon alcance de proyecto + global
DetecciónNingunaURL remota de git / ruta del repositorio
PromociónN/AProyecto → global cuando se ve en 2+ proyectos
Comandos4 (status/evolve/export/import)6 (+promote/projects)
Entre proyectosRiesgo de contaminaciónAislado por defecto

Qué hay de Nuevo en v2 (vs v1)

Característicav1v2
ObservaciónHook Stop (fin de sesión)PreToolUse/PostToolUse (100% confiable)
AnálisisContexto principalAgente en segundo plano (Haiku)
GranularidadSkills completos"Instintos" atómicos
ConfianzaNingunaPonderada 0.3-0.9
EvoluciónDirectamente a skillInstintos → cluster → skill/comando/agente
CompartirNingunoExportar/importar instintos

El Modelo de Instinto

Un instinto es un pequeño comportamiento aprendido:

yaml
---
id: prefer-functional-style
trigger: "when writing new functions"
confidence: 0.7
domain: "code-style"
source: "session-observation"
scope: project
project_id: "a1b2c3d4e5f6"
project_name: "my-react-app"
---

# 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

Propiedades:

  • Atómico — un disparador, una acción
  • Ponderado por confianza — 0.3 = tentativo, 0.9 = casi seguro
  • Etiquetado por dominio — code-style, testing, git, debugging, workflow, etc.
  • Respaldado por evidencia — rastrea qué observaciones lo crearon
  • Consciente del alcanceproject (por defecto) o global

Cómo Funciona

Actividad de Sesión (en un repositorio git)
      |
      | Los hooks capturan prompts + uso de herramientas (100% confiable)
      | + detectan contexto del proyecto (git remote / ruta del repo)
      v
+---------------------------------------------+
|  projects/<project-hash>/observations.jsonl  |
|   (prompts, llamadas de herramientas, resultados, proyecto)   |
+---------------------------------------------+
      |
      | El agente observador lee (segundo plano, Haiku)
      v
+---------------------------------------------+
|          DETECCIÓN DE PATRONES               |
|   * Correcciones de usuario -> instinto      |
|   * Resoluciones de errores -> instinto      |
|   * Flujos de trabajo repetidos -> instinto  |
|   * Decisión de alcance: ¿proyecto o global? |
+---------------------------------------------+
      |
      | Crea/actualiza
      v
+---------------------------------------------+
|  projects/<project-hash>/instincts/personal/ |
|   * prefer-functional.yaml (0.7) [project]   |
|   * use-react-hooks.yaml (0.9) [project]     |
+---------------------------------------------+
|  instincts/personal/  (GLOBAL)               |
|   * always-validate-input.yaml (0.85) [global]|
|   * grep-before-edit.yaml (0.6) [global]     |
+---------------------------------------------+
      |
      | /evolve clusters + /promote
      v
+---------------------------------------------+
|  projects/<hash>/evolved/ (project-scoped)   |
|  evolved/ (global)                           |
|   * commands/new-feature.md                  |
|   * skills/testing-workflow.md               |
|   * agents/refactor-specialist.md            |
+---------------------------------------------+

Detección de Proyecto

El sistema detecta automáticamente tu proyecto actual:

  1. Variable de entorno CLAUDE_PROJECT_DIR (máxima prioridad)
  2. git remote get-url origin — hasheado para crear un ID de proyecto portable (el mismo repo en diferentes máquinas obtiene el mismo ID)
  3. git rev-parse --show-toplevel — respaldo usando la ruta del repo (específica de la máquina)
  4. Respaldo global — si no se detecta ningún proyecto, los instintos van al alcance global

Cada proyecto obtiene un ID hash de 12 caracteres (ej. a1b2c3d4e5f6). Un archivo de registro en ${XDG_DATA_HOME:-~/.local/share}/ecc-homunculus/projects.json mapea IDs a nombres legibles.

Directorio de Datos

Continuous-learning-v2 almacena los datos del observador fuera de ~/.claude para que el guard de rutas sensibles de Claude Code no bloquee las escrituras de instintos en segundo plano:

  1. CLV2_HOMUNCULUS_DIR cuando se establece a una ruta absoluta
  2. $XDG_DATA_HOME/ecc-homunculus
  3. $HOME/.local/share/ecc-homunculus

Los usuarios existentes con datos en ~/.claude/homunculus pueden migrar una vez:

bash
bash skills/continuous-learning-v2/scripts/migrate-homunculus.sh

Inicio Rápido

1. Habilitar Hooks de Observación

Si está instalado como plugin (recomendado):

No se requiere bloque extra de hooks en settings.json. Claude Code v2.1+ carga automáticamente el hooks/hooks.json del plugin, y observe.sh ya está registrado allí.

Si está instalado manualmente en ~/.claude/skills, agregar esto a tu ~/.claude/settings.json:

json
{
  "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"
      }]
    }]
  }
}

2. Usar los Comandos de Instinto

bash
/instinct-status     # Mostrar instintos aprendidos (proyecto + global)
/evolve              # Agrupar instintos relacionados en skills/comandos
/instinct-export     # Exportar instintos a archivo
/instinct-import     # Importar instintos de otros
/promote             # Promover instintos de proyecto a alcance global
/projects            # Listar todos los proyectos conocidos y sus conteos de instintos

Guía de Decisión de Alcance

Tipo de PatrónAlcanceEjemplos
Convenciones de lenguaje/frameworkproject"Usar React hooks", "Seguir patrones Django REST"
Preferencias de estructura de archivosproject"Pruebas en __tests__/", "Componentes en src/components/"
Estilo de códigoproject"Usar estilo funcional", "Preferir dataclasses"
Estrategias de manejo de erroresproject"Usar tipo Result para errores"
Prácticas de seguridadglobal"Validar entrada de usuario", "Sanitizar SQL"
Buenas prácticas generalesglobal"Escribir pruebas primero", "Siempre manejar errores"
Preferencias de flujo de trabajo de herramientasglobal"Grep antes de Edit", "Read antes de Write"
Prácticas de Gitglobal"Conventional commits", "Commits pequeños y enfocados"

Puntuación de Confianza

La confianza evoluciona con el tiempo:

PuntuaciónSignificadoComportamiento
0.3TentativoSugerido pero no aplicado
0.5ModeradoAplicado cuando es relevante
0.7FuerteAuto-aprobado para aplicación
0.9Casi seguroComportamiento central

La confianza aumenta cuando:

  • El patrón se observa repetidamente
  • El usuario no corrige el comportamiento sugerido
  • Instintos similares de otras fuentes coinciden

La confianza disminuye cuando:

  • El usuario corrige explícitamente el comportamiento
  • El patrón no se observa por períodos extendidos
  • Aparece evidencia contradictoria

Privacidad

  • Las observaciones permanecen locales en tu máquina
  • Los instintos con alcance de proyecto están aislados por proyecto
  • Solo los instintos (patrones) pueden exportarse — no las observaciones brutas
  • No se comparte código real ni contenido de conversaciones
  • Tú controlas qué se exporta y promueve

Frequently asked questions

What does the Continuous Learning V2 AI skill do?

Sistema de aprendizaje basado en instintos que observa sesiones mediante hooks, crea instintos atómicos con puntuación de confianza y los evoluciona en skills/comandos/agentes. v2.1 agrega instintos con alcance de proyecto para prevenir contaminación entre proyectos.

Why use Continuous Learning V2 on TypingMind?

Because you install it once and use it with any model. Continuous Learning V2 is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Continuous Learning V2 in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/affaan-m/ECC/tree/main/docs/es/skills/continuous-learning-v2. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Continuous Learning V2?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Continuous Learning V2?

As many as you like. As long as a model supports skills, you can use Continuous Learning V2 with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Continuous Learning V2 AI skill free?

Yes. It is published on GitHub by affaan-m under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇