CommunityRedacción y edicióngithub.com

dancepower22/pi-memory-evo

Memoria persistente nativa y habilidad de auto-evolución: cero dependencias, siempre activa, memoria de 3 capas (hecho/patrón/lección) + enrutamiento de lecciones.

¿Qué es pi-memory-evo?

Esta habilidad convierte el entorno del usuario en un sistema que 'te entiende mejor cuanto más lo usas'. Proporciona una memoria persistente de tres niveles (hechos, patrones y lecciones) que se guarda automáticamente sin necesidad de que el usuario lo solicite. Soporta sesiones continuas, enrutamiento de lecciones para auto-evolucionar (creando o actualizando habilidades en `~/.agents/skills/`), y ofrece herramientas CLI para gestionar, buscar y sincronizar la memoria. Es compatible con agentes como Claude Code, Cursor y Codex, y está diseñado para ser siempre activo, con cero dependencias externas.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add dancepower22/pi-memory-evo

Installed? Explore more Redacción y edición skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Memoria Persistente y Auto-Evolución (memory)

Principio clave: guardar activamente, sin esperar a que el usuario lo pida. Convierte el entorno del usuario en un sistema "te entiende mejor cuanto más lo usas": Memoria de tres niveles (hecho/patrón/lección) + resumen de sesión + enrutamiento de lecciones (auto-evolución).

🚀 Inicio de Sesión (cada sesión nueva)

  1. Si existe ~/.agents/memory/MEMORY.md, léelo primero para conocer rápidamente los antecedentes, preferencias y sesiones recientes del usuario.
  2. Si necesitas detalles, usa memory.py get <id> o memory.py search <palabras-clave> para profundizar.
  3. Muestra al usuario la información clave recordada (de forma breve) para demostrar continuidad.

📌 Guardado Activo (SIEMPRE ACTIVO, guarda cuando lo encuentres, no esperes al final de la sesión)

Cuando ocurra alguna de las siguientes situaciones, inmediatamente llama a memory.py add <tipo> <contenido> para guardar:

TipoCuándo guardarEjemplo
factEl usuario revela preferencias/hábitos/información de identidad; decisiones importantes del proyecto, selección técnica, acuerdos; el usuario dice explícitamente "recuerda""El usuario prefiere respuestas en español" "El proyecto usa pnpm + TypeScript"
patternEl mismo comportamiento/problema aparece 2 o más veces (incluyendo esta)"Cada vez que se instala una habilidad, el usuario pide evaluar las dependencias primero"
lessonExperiencia aprendida tras un error, conclusión de solución de problemas, problema descubierto"El backend predeterminado de ddgs de DuckDuckGo pasa por Yandex y da timeout; hay que usar backend='html'"
  • Al guardar, puedes adjuntar --tag a,b para facilitar la búsqueda.
  • La herramienta realiza deduplicación aproximada automáticamente; si el contenido ya existe, lo indicará en lugar de almacenarlo de nuevo.

🗂️ Fin de Sesión (o cuando el usuario pida "resumir sesión/depurar")

Ejecuta en orden:

  1. Revisa esta sesión y extrae las 2~5 informaciones más importantes.
  2. Guarda por categorías: fact (nuevas preferencias/decisiones) → pattern (nuevos patrones) → lesson (nuevas experiencias).
  3. Enrutamiento de lecciones (auto-evolución): Para cada lesson, evalúa:
    • ¿Es una metodología reutilizable (por ejemplo, "procedimiento estándar para cierto tipo de tarea")? → Crea o actualiza una habilidad en ~/.agents/skills/ (usando herramientas write/edit) para que se active automáticamente la próxima vez.
    • ¿Es un hecho puntual? → Guárdalo como fact.
    • ¿Es específico del entorno/cuenta (por ejemplo, configuración necesaria para una herramienta)? → Guárdalo solo como lesson.
  4. Usa memory.py session-save "<resumen de esta sesión en una frase>" --key palabra-clave1,palabra-clave2 para guardar el registro de la sesión.
  5. Ejecuta memory.py sync para actualizar la visión general en MEMORY.md.

🔍 Consulta de Memoria

Cuando el usuario pregunte "¿dije antes?/¿la última vez?/mis preferencias" → memory.py search <palabras-clave>; para listar todo → memory.py list.

⚙️ Referencia Rápida de Herramientas

P=~/.agents/skills/pi-memory-evo/memory.py
$P init                       # Primera inicialización
$P add fact "contenido" --tag preferencia    # Guardar hecho/patrón/lección
$P session-save "resumen" --key a  # Guardar resumen de sesión
$P search palabras-clave                # Buscar
$P list                        # Listar todo
$P get <id> / update <id> <nuevo-contenido> / delete <id>   # Gestionar
$P stats                       # Estadísticas
$P sync                        # Actualizar visión general MEMORY.md

📂 Ubicación de Almacenamiento

  • Datos: ~/.agents/memory/memory.json (memoria de cuatro niveles, JSON)
  • Visión general: ~/.agents/memory/MEMORY.md (léelo al iniciar sesión)
  • Habilidad en sí: ~/.agents/skills/pi-memory-evo/ (herramienta + esta documentación)

⚠️ Límites

  • No almacenar credenciales sensibles: tokens, contraseñas, claves nunca se guardan.
  • Respetar la voluntad del usuario: si el usuario dice "esto no lo guardes", no lo guardes; si dice "olvida X", usa delete para el elemento correspondiente.
  • La memoria es una ayuda, no un sustituto de la confirmación: para acciones importantes, la intención actual del usuario es la que prevalece.

Skills relacionados