Skip to content

Conceptos

memsys3 organiza la memoria de un proyecto en archivos YAML, los compila mediante agentes especializados y los expone a tu AI agent mediante prompts en Markdown.

memsys3 define tres roles agenticos canonicos:

  • Main Agent — implementa features, resuelve bugs, trabaja en el dia a dia. Lee el contexto compilado al empezar y documenta al acabar.
  • Context Agent — sintetiza toda la memoria del proyecto en un unico context.yaml (~3K tokens) usando criterio inteligente.
  • Setup Agent — gestiona el lifecycle de memsys3: deploy inicial, actualizacion y cleanup. Es el unico autorizado a tocar infraestructura (prompts/, agents/, templates/).

Cada rol tiene sus propias restricciones declaradas en agents/*.yaml.

Filosofia: “Que debe saber CUALQUIER agent descontextualizado para trabajar aqui?”.

  • Limite unico: maximo 2000 lineas en context.yaml.
  • No hay limites arbitrarios por ADRs o sessions.
  • Lee TODO primero, despues filtra con criterio.
  • Sistema de 5 tiers de ingesta hasta 150K tokens: memory/full obligatorio, README, backlog completo, docs contextuales y git log reciente.
  • Se ejecuta con @memsys3/prompts/compile-context.md.

memsys3/memory/full/sessions.yaml registra que se hizo en cada sesion: decisiones, cambios, proximos pasos. Se documenta al final de cada sesion con:

@memsys3/prompts/endSession.md

Cuando supera las 1800 lineas se rota automaticamente a sessions_N.yaml.

memsys3/memory/full/adr.yaml registra decisiones arquitectonicas significativas: que se decidio, por que, alternativas consideradas, consecuencias.

Se gestiona con:

@memsys3/prompts/adr.md

Tambien rota automaticamente a adr_N.yaml cuando supera 1800 lineas.

memsys3/memory/project-status.yaml es la fuente de verdad sobre el estado actual: fase, ultima feature, siguiente milestone, pendientes prioritarios. Se actualiza durante endSession.

memsys3/backlog/ (opcional) gestiona trabajo futuro estructurado con prefijos:

  • ISSUE-XXX — bugs y problemas.
  • FEATURE-XXX — nuevas funcionalidades.
  • IMPROVEMENT-XXX — mejoras incrementales.
  • SPEC-XXX — especificaciones tecnicas.
  • BLUEPRINT-XXX — disenos de alto nivel.
  • EXPLORATION-XXX — investigacion y prototipos.

Se gestiona con @memsys3/prompts/backlog.md (3 operaciones: consultar, crear, actualizar). Los items completados se archivan en backlog/archive/.

Los prompts viven en memsys3/prompts/ y se invocan con @-mentions:

PromptProposito
newSession.mdCargar contexto al empezar a trabajar.
endSession.mdDocumentar la sesion (sessions, status, gotchas, canonizacion anti-CDC).
compile-context.mdRegenerar context.yaml desde cero.
deploy.mdDesplegar memsys3 en un proyecto nuevo.
actualizar.mdActualizar memsys3 en un proyecto existente (con backups, deteccion de estructura antigua y sustitucion diferencial).
adr.mdGestionar Architecture Decision Records.
backlog.mdGestionar el backlog estructurado.
github.mdLectura obligatoria antes de operaciones git (commits, tags, push).

Cuando sessions.yaml o adr.yaml superan 1800 lineas, se rotan a sessions_N.yaml / adr_N.yaml. Los datos se preservan; el Context Agent lee todos los archivos rotados hasta detectar >150K tokens.

Cuando el contexto compilado supera 150K tokens, el Context Agent archiva datos antiguos a memsys3/memory/history/ (que NO se lee). Reduce a ~120K tokens preservando los datos.

Cada archivo de infraestructura (prompts, agents, templates) lleva su propio file_version. Sólo actualizar.md puede modificarlo. Esto permite versionado independiente y sustitucion diferencial al actualizar.

memory.yaml agnostico + bridge MEMORY.md opcional para Claude (y equivalentes para otras herramientas via AGENTS.md). El contenido de memoria es portable entre Claude Code, Gemini CLI, Codex CLI y otros agentes.

  • Almacenamiento: YAML files. Sin base de datos.
  • Distribucion: Git + clonado local.
  • Lenguaje: YAML + Markdown.
  • Compatibilidad: agnostico de modelo de IA.