# klaassen-thinkroom-compounding-knowledge-lifecycle-2026-07-02

## Veille

Guía de agente (Thinkroom, la plataforma de Kieran Klaassen) que documenta el **Compounding Knowledge Lifecycle** del compound-engineering-plugin (Every): cómo una lección aprendida una vez "sigue dando frutos" — se captura, se almacena, se recupera y se mantiene veraz. Describe la anatomía de un *learning* (`docs/solutions/`), su captura mediante `/ce-compound`, el mapa de memoria (durable vs. efímera), la recuperación *grep-first* (learnings-researcher) integrada en 5 skills en puntos de decisión, y las tres contrafuerzas que evitan que la memoria mienta. Directamente relevante: es la doctrina detrás de la convención `docs/solutions/` de este repositorio. Dominio: compound engineering, gestión agéntica del conocimiento, skills.

## Titre Article

The Compounding Knowledge Lifecycle — Agent Guide

## Date

2026-07-02

## URL

https://thinkroom.kieranklaassen.com/d/Yxr8tfwAVV

## Keywords

Compound engineering, compounding knowledge lifecycle, learning, documento de solución, docs/solutions, /ce-compound, learnings-researcher, pattern doc, memoria durable vs. efímera, grep-first, frontmatter, la evidencia presente prevalece, coherence neighborhood, /ce-compound-refresh, retiro de clases de fallos, CONCEPTS.md, repo-profile cache

## Authors

Kieran Klaassen (Thinkroom / Every — compound-engineering-plugin) ; document « Agent Guide » généré (byline « Claude Code / Anthropic »)

## Ton

**Perfil**: guía técnica de referencia con propósito agéntico ("Agent Guide"), en tercera persona, registro analítico denso, estructurada en 8 secciones numeradas + un glosario. Nivel técnico alto, dirigida tanto a agentes como a ingenieros que practican compound engineering.

**Estilo**: explicativo y sistemático, cada sección describe una fase del ciclo (premisa → captura → almacenamiento → detección → refresh → ciclo completo → por qué se acumula). Uso constante de **tablas** (el rol de cada campo del frontmatter, consumidores de la memoria, modos de fallo evitados) y **descripciones de diagramas**. Una **metáfora financiera extendida**, deliberada y "merecida": *learning = capital*, *un retrieval que cambia una decisión = pago de intereses*, *pattern doc = reinversión*, el corpus (35 docs) = *balance*. Fórmulas de doctrina: *"el conocimiento que echarías de menos va en git; el conocimiento re-derivable va en /tmp,"* *"la evidencia presente prevalece,"* *"una memoria equivocada con seguridad es peor que ninguna,"* *"no que los documentos se acumulen, sino que se retiren clases de fallos,"* *"sin manos vacías."* Autoridad por autodemostración: la guía se trata a sí misma como un corpus vivo (un censo de 35 learnings, la funcionalidad `/ce-explain` lanzada "ayer", el incidente real #714). **Público objetivo**: diseñadores de sistemas agénticos y skills, practicantes de compound engineering.

## Pense-betes

- **La apuesta fundacional de compound engineering**: *"cada unidad de trabajo debería facilitar la siguiente."* El **código** mejora el *producto*, no el *proceso*; lo que **se acumula** es el **conocimiento** — cada problema resuelto, concepto nombrado y convención documentada en una forma **recuperable en el momento exacto en que el trabajo futuro la necesita**.
- **El verdadero cuello de botella = la recuperación**, no la escritura. Los postmortems "se pudren en las wikis porque nadie los vuelve a leer". Este sistema **cierra el ciclo** haciendo que la recuperación sea **automática** en 5 skills, en lugar de dejarla a la disciplina voluntaria.
- **Un *learning* (documento de solución)** = 1 archivo markdown = 1 problema resuelto, bajo `docs/solutions/<category>/`. **Todo el frontmatter sirve para la *búsqueda*, no para la narrativa**: `title` (objetivo de grep #1), `tags` (superficie de sinónimos — grep `tags:.*(menu|routing|handoff)` sin abrir un archivo), `module`/`component` ("¿es mi área?"), `problem_type` (el switch de enrutamiento), `applies_when` (una prueba de autoselección de 3 líneas), `severity` (clasificación cuando coinciden varios), `date` (señal de obsolescencia).
- **`problem_type` = 2 tracks**: **bug-track** (qué se rompió: `runtime_error`, `test_failure`, `performance_issue`, `security_issue`…) y **knowledge-track** (qué se *decidió/descubrió*: `architecture_pattern`, `design_pattern`, `tooling_decision`, `convention`, `workflow_issue`, `best_practice`…). *"Un sistema que solo retiene bugs olvida la parte esencial de lo que aprende un equipo."* Censo vivo: **35 learnings, 6 categorías, con skill-design a la cabeza (20)**.
- **Pattern doc** = un escalón más arriba: generalizado a partir de *varios* learnings → **más apalancamiento, más riesgo si queda obsoleto**. Todavía no se ha promovido ninguno aquí (`docs/solutions/patterns/critical-patterns.md` = una plaza a la espera de ser ocupada).
- **Captura = `/ce-compound`**, disciplina central = **timing**: documentar **mientras el contexto sigue fresco** (en la misma sesión que el fix, mientras los intentos fallidos y el "ah, POR ESO era" siguen presentes). Una semana después → se degrada en un resumen.
- **Mecánica**: fan-out de subagentes (**context analyzer** = category/name/frontmatter, **solution extractor** = cuerpo en prosa problem/investigation/solution/prevention, **related-docs finder** = comprobación de duplicados); **solo el orquestador escribe UN doc**, los subagentes nunca tocan archivos versionados. Otros puntos de entrada: `/ce-debug` (ofrece un compound tras la causa raíz), `/ce-pov` ("compound it" → `tooling_decision` en modo headless), **modo ligero** (lecciones pequeñas, se salta la comprobación de duplicados).
- **"La vida de un learning"** (ejemplo canónico): el issue **#714** (el agente se detiene después del menú) → causa raíz (enrutamiento por opción en un archivo de referencia que no se cargaba) → fix + `/ce-compound` → learning `post-menu-routing-belongs-inline.md` → **test de regresión** + **doctrina en AGENTS.md** ("Inline the Trigger, Not the Content"). **Un incidente, 4 artefactos durables.** *"Compounding" = se retiran clases de fallos*, no solo se acumulan documentos.
- **Mapa de memoria, eje = durabilidad.** **DURABLE (git)**: `docs/solutions/` (los 35 learnings), `CONCEPTS.md` (vocabulario/glosario, nunca specs), `STRATEGY.md` (dirección/tracks), `docs/plans/` + `brainstorms/` (el **POR QUÉ**). **EFÍMERO (derivado)**: **repo-profile cache** (re-derivada 1×/commit, compartida por 9 skills, nunca una fuente de verdad — eliminarla no pierde nada). Regla: *el conocimiento que echarías de menos → git; lo re-derivable → /tmp*. **Los planes nunca se editan después de la ejecución** → siguen explicando el *por qué* meses después.
- **Detección: nada empuja el conocimiento hacia ti** (sin digest, sin "lee la wiki"). **5 skills lo tiran (pull)** en el momento de decisión, mediante un protocolo compartido **learnings-researcher**, **grep-first** (la memoria está diseñada para ser *buscada* sin ser *leída*). Embudo: 35 docs → greps paralelos de frontmatter → un puñado de candidatos (~30 líneas de frontmatter) → lectura completa de los ganadores → **5 findings destilados** en el contexto del llamador.
- **Consumidores**: `/ce-plan` (learnings → constraints y KTDs), `/ce-brainstorm` (encuadra el alcance), **`/ce-code-review`** (revisor siempre activo: veredicto **followed / violated** contra el diff real — *"el diente más afilado"; una violación = un finding `file:line`, no una sugerencia*), `/ce-ideate` (poda callejones sin salida pasados), `/ce-debug` (saca a la luz causas raíz conocidas).
- **2 reglas de confianza**: (1) **La evidencia presente prevalece** — si un learning contradice el código actual, el conflicto se **señaliza** en lugar de invalidarlo (una memoria *equivocada con seguridad* es peor que ninguna); (2) **La fecha es señal** — cada learning lleva su fecha para ponderar si el mundo ha avanzado.
- **Refresh — "la memoria que solo crece termina mintiendo."** 3 contrafuerzas a distintos ritmos: **tiempo de lectura** (la evidencia presente prevalece, gratis); **tiempo de escritura** (al añadir/editar una entrada de `CONCEPTS.md`, se inspecciona su **coherence neighborhood** — los términos vecinos referenciados — y se corrige la deriva *para la que hay evidencia*; acotado, nunca una auditoría completa por una corazonada); **bajo demanda** (`/ce-compound-refresh`, un barrido deliberado, **NO un seguimiento por defecto**, solo se ejecuta cuando hay un motivo, toma una **pista de alcance** — `/ce-compound-refresh payments` — porque un refresh de todo el corpus casi nunca es el gasto correcto).
- **El ciclo completo vía `/ce-explain`** (skill lanzada "ayer", todo ocurrió de verdad): el brainstorm extrae el repo-profile de la caché; la planificación saca a la luz **5 learnings** (3 *de aplicación obligatoria*: enrutamiento inline del menú [legado del #714], portabilidad de `$ARGUMENTS`, ancla `SKILL_DIR`); la implementación crea su **test de regresión reflejado**; la revisión audita el diff contra **8 learnings** (todos respetados) y **rechaza un fix propuesto por el revisor** que habría reintroducido el fallo original (*"la memoria no solo informó el trabajo, lo defendió"*); vocabulario compound (*Explainer*, *Check-in* → `CONCEPTS.md`); lo pendiente → el issue **#1057** → futuro **learning #36**. *"Ningún paso requirió que alguien recordara consultar la memoria."*
- **Por qué se acumula (metáfora financiera)**: learning = **capital**, cada retrieval que cambia una decisión = **pago de intereses**, pattern doc = **reinversión**. Modos de fallo evitados: podredumbre de wikis, guías obsoletas que arruinan el trabajo nuevo, acumulación sin curar, memoria invisible, decaimiento, silos (un único `docs/solutions/` sirve a 9 skills).
- **Vínculo directo con este repositorio**: la convención `docs/solutions/` (frontmatter `module`/`tags`/`problem_type`) documentada en el `CLAUDE.md` del repo veille es exactamente este sistema; las skills `compound-engineering:*` (`ce-compound`, `ce-plan`, `ce-code-review`, `ce-compound-refresh`…) están instaladas aquí. **Un candidato natural para promoción a nivel de firma** (un patrón de capitalización).

## RésuméDe400mots

Esta guía de agente de Thinkroom (la plataforma de Kieran Klaassen) describe el **Compounding Knowledge Lifecycle** del compound-engineering-plugin: el mecanismo por el cual "una lección aprendida una vez sigue dando frutos". La apuesta fundacional de compound engineering: *cada unidad de trabajo debería facilitar la siguiente*. Sin embargo, el código mejora el producto, no el proceso; lo que **se acumula** es el **conocimiento** — siempre que esté documentado en una forma **recuperable en el momento exacto en que se necesita**. El verdadero cuello de botella, entonces, no es la escritura (los postmortems "se pudren en las wikis") sino la **recuperación**, hecha **automática** aquí en cinco skills en lugar de dejarla a la disciplina.

La unidad es el **learning**: un archivo markdown, un problema resuelto, bajo `docs/solutions/<category>/`, cuyo **frontmatter completo sirve para la búsqueda**, no para la narrativa (`title`, `tags`, `module`, `problem_type`, `applies_when`, `severity`, `date`). `problem_type` se divide en **bug-track** (qué se rompió) y **knowledge-track** (qué se decidió/descubrió) — porque "un sistema que solo retiene bugs olvida lo esencial". Corpus vivo: 35 learnings, con skill-design a la cabeza. Por encima, el **pattern doc** generaliza varios learnings (más apalancamiento, más riesgo si queda obsoleto).

La **captura** ocurre mediante `/ce-compound`, cuya disciplina es el **timing** (documentar mientras el contexto sigue fresco), con un fan-out de subagentes (analyzer, extractor, dedup-check) mientras que solo el orquestador escribe un único doc. El ejemplo canónico — el incidente #714 convirtiéndose en un fix + learning + test + doctrina — muestra que "compounding" significa **retirar clases de fallos**, no acumular documentos.

El **mapa de memoria** contrasta lo durable (git: `docs/solutions/`, `CONCEPTS.md`, `STRATEGY.md`, plans/brainstorms = el POR QUÉ) con lo efímero (la repo-profile cache, re-derivable). La **detección** no empuja nada: cinco skills **tiran** (pull) en el momento de decisión mediante el **learnings-researcher** grep-first (35 docs → greps de frontmatter → candidatos → lectura completa → 5 findings). `/ce-code-review` es "el diente más afilado": una violación se convierte en un finding `file:line`. Dos reglas de confianza lo protegen: **la evidencia presente prevalece** y **la fecha es señal**.

Finalmente, el **refresh** evita que la memoria mienta mediante tres contrafuerzas (tiempo de lectura, tiempo de escritura vía *coherence neighborhood*, y bajo demanda con alcance acotado mediante `/ce-compound-refresh`). El ciclo se ilustra de principio a fin con la entrega de `/ce-explain`. Metáfora financiera: learning = capital, retrieval = interés, pattern doc = reinversión — un sistema donde el trabajo nuevo "llega inmune a los errores del pasado".

## GrapheDeConnaissance

- Compound engineering —affirme_que→ "chaque unité de travail doit rendre la suivante plus facile" (AFFIRMATION, 0.95)
- Compounding Knowledge Lifecycle —est_basé_sur→ docs/solutions/ (DOCUMENT, 0.94)
- Learning —fait_partie_de→ docs/solutions/ (DOCUMENT, 0.95)
- Learning —est_basé_sur→ frontmatter conçu pour la recherche (grep-first) (CONCEPT, 0.92)
- ce:compound —permet→ Learning (CONCEPT, 0.93)
- ce:compound —utilise→ subagents (context analyzer, solution extractor, related-docs finder) (METHODOLOGIE, 0.9)
- learnings-researcher —permet→ récupération grep-first aux points de décision (5 skills) (CONCEPT, 0.93)
- /ce-code-review —utilise→ learnings pour un verdict followed/violated contre le diff (CONCEPT, 0.92)
- /ce-plan —utilise→ learnings comme contraintes et KTDs (CONCEPT, 0.9)
- Pattern doc —est_basé_sur→ plusieurs learnings généralisées (DOCUMENT, 0.9)
- repo-profile cache —est_instance_de→ connaissance éphémère re-dérivable (CONCEPT, 0.9)
- Compounding Knowledge Lifecycle —recommande→ "present evidence wins" (signaler le conflit si le code contredit) (AFFIRMATION, 0.92)
- /ce-compound-refresh —résout→ obsolescence de la mémoire (balayage scopé, non par défaut) (CONCEPT, 0.9)
- Compounding Knowledge Lifecycle —affirme_que→ "compounding = retirer des classes de défaillance, pas empiler des docs" (AFFIRMATION, 0.9)
- Compounding Knowledge Lifecycle —résout→ wiki rot (postmortems non relus) (CONCEPT, 0.9)
- Kieran Klaassen —a_créé→ Thinkroom (TECHNOLOGIE, 0.85)

---
Canonical: https://www.thekb.eu/es/fiches/klaassen-thinkroom-compounding-knowledge-lifecycle-2026-07-02/
