· actualizado

Qué sacar de Obsidian, y qué dejar dentro

Mueve las notas de las que otras personas dependen para que sean ciertas — convenciones, decisiones y sus motivos, y cualquier cosa sobre la que un agente actuaría. Deja todo lo que sea pensamiento en curso. La prueba es por nota, no por vault: si equivocarte en esta nota induciría a error a otra persona, se le ha quedado pequeña una herramienta personal.

El post anterior sostenía que un vault de Obsidian no puede ser la base de conocimiento de tus agentes de IA: es privado de una máquina, sus afirmaciones no llevan procedencia y nada marca una nota como caducada.

Con ese argumento se está de acuerdo y luego no se actúa, porque «mueve tu conocimiento» no es algo que nadie pueda empezar un martes. Este post es la mitad práctica. Qué se mueve de verdad, qué se queda, y qué aspecto tiene el reemplazo una vez está en marcha.

La línea, aplicada nota a nota

Si equivocarte en esta nota induciría a error a otra persona, se le ha quedado pequeño un vault personal.

Nota a nota, no vault a vault. Esa distinción lo es todo, y es la razón de que sea un trabajo más pequeño de lo que suena. La mayor parte de un vault es pensamiento — conexiones a medio hacer, restos de reuniones, cosas que escribiste para averiguar qué pensabas. Nada de eso se mueve. Lo que se mueve es la minoría sobre la que otras personas, o un agente, actuarían.

En la práctica ha sido menos de una quinta parte de las notas en todos los casos que he visto hacerlo. El resto se queda exactamente donde está.

¿Qué se mueve?

Las convenciones. «Las migraciones las hacemos en dos pasos.» «Los handlers devuelven el error, no lo registran.» Cualquier cosa formulada como hacemos X es una afirmación sobre el equipo, y una afirmación sobre el equipo pertenece a donde el equipo pueda verla y corregirla.

Las decisiones, con sus motivos. No sólo lo que se eligió, sino lo que se descartó y por qué. Es la categoría de mayor valor y la que más se pierde, porque el razonamiento vive en la cabeza de alguien y el vault registra sólo la conclusión. Un agente al que le entregas la conclusión sin el motivo la deshará alegremente la primera vez que la conclusión resulte incómoda.

Cualquier cosa sobre la que un agente actuaría. Si una nota cambiaría lo que se escribe cuando un agente la lee, es operativa, no personal. Es la categoría más nueva y aquella para la que los vaults nunca se diseñaron.

Los límites. «Deliberadamente no hacemos X, y aquí está por qué.» Nadie los escribe y todo el mundo los redescubre por la vía cara.

¿Qué se queda?

Todo lo demás, y no es un premio de consolación.

Las ideas a medio formar. Las notas a las que se les permite estar equivocadas. La conexión que aún no has hecho. Las notas de lectura, los restos de reuniones, lo que escribiste a las 2 de la mañana y a las 2 de la mañana tenía sentido. Obsidian es mejor en todo eso que cualquier cosa por la que lo cambiarías, y es mejor porque no tiene revisión, ni aprobación, ni público — exactamente las propiedades que lo descalifican para la otra categoría.

Un vault que sólo contiene esto es un vault haciendo su trabajo.

¿Y las notas que son mitad pensamiento, mitad convención?

El caso incómodo habitual, y el que atasca a la gente, porque la línea parece limpia hasta que te encuentras con una nota real de dos mil palabras dándole vueltas a algo con una decisión de verdad enterrada al final.

Divídela, y es más fácil de lo que parece. El pensamiento se queda en el vault. La afirmación se mueve, sola, como una frase. Enlaza de vuelta si quieres.

Lo que no debes hacer es mover el conjunto. Una nota que es ochenta por ciento tanteo y veinte por ciento decisión, dentro del repositorio, le enseña a un agente que las convenciones de tu equipo son tentativas — y un agente que cree que una regla es tentativa negociará con ella la primera vez que la regla resulte incómoda. Dejar el conjunto en el vault tiene el fallo opuesto: el veinte por ciento que otras personas necesitan queda invisible, indistinguible de la divagación que lo rodea.

La prueba de si una nota está lista: ¿puedes extraer una frase que empiece por «hacemos» o «no hacemos»? Si no, todavía no hay nada que mover, y la nota sigue haciendo su trabajo donde está.

¿Dónde deben vivir las notas que se mueven?

En el repositorio que describen. No en un wiki, no en una segunda herramienta: el repo, revisado en el mismo pull request que el código del que hablan.

Esa ubicación es la que hace el trabajo. Una nota en el repo se lee en el momento en que alguien cambia lo que describe, porque está en el diff. Una nota en un wiki se lee cuando alguien va a buscarla, que es el modo de fallo que estás dejando atrás.

También significa que la nota se revisa como código. Alguien la aprueba. Alguien responde por ella. Dos ingenieros no pueden sostener dos versiones contradictorias sin que una de ellas aparezca en un diff.

¿Qué aspecto tiene una nota ya movida?

El formato importa menos que cuatro propiedades, y cada una responde a una forma en que fallaba la versión del vault:

  • Una afirmación por nota. «Las migraciones las hacemos en dos pasos» es una nota. «Notas sobre nuestro backend» es una carpeta disfrazada de nota, y nada de lo que hay dentro se puede confirmar, contradecir ni archivar por separado.
  • Dice de dónde viene. La decisión, el incidente, el pull request. Una afirmación que no puedes rastrear es una afirmación que no puedes ponderar, y mover una afirmación irrastreable al repositorio reubica el problema en lugar de arreglarlo.
  • Dice qué se descartó. La conclusión sin el razonamiento se deshace la primera vez que la conclusión resulta incómoda — normalmente por un agente, alegremente, en un diff que parece una simplificación.
  • En presente, y lo bastante concreta como para poder estar equivocada. «Cuidado con las migraciones» no es una nota, es un estado de ánimo. Nadie puede actuar sobre ella y nadie podrá demostrar nunca que ha caducado.

Y corta. La razón por la que las páginas de wiki no se leen es que tienen dos mil palabras cuando la afirmación es una línea, y una nota que nadie lee es una nota que no existe — que es el mismo desenlace que dejarla en el vault, después de más trabajo.

¿Qué no arregla esto?

Mover las notas al repo arregla el descubrimiento y la revisión. No arregla la degradación, y cualquier post que te dijera lo contrario te estaría vendiendo algo.

Una nota en un repositorio caduca exactamente igual de rápido que una nota en un vault. Lo que cambia la degradación no es la ubicación, es un disparador — algo que obligue a escribir el conocimiento mientras la persona todavía recuerda por qué, y algo que permita retirar una nota equivocada por un mecanismo y no por la memoria de alguien.

Esas son las dos propiedades que hay que buscar en lo que sea que uses, y son las dos sobre las que construye CommitCycle: el conocimiento se alimenta al cerrar una unidad de trabajo, una línea cada vez, cuando el motivo aún está fresco; y archived es un estado real, que es lo que permite que el corpus encoja en lugar de sólo volverse más seguro de sí mismo.

¿Cómo empiezo sin una migración?

No migres. Las migraciones de conocimiento fallan por la misma razón que fallan las migraciones de cualquier cosa: el esfuerzo va por delante y el beneficio queda difuso.

En su lugar: la próxima vez que escribas una nota de la que otras personas dependerían, escríbela en el repo en lugar de en el vault. Y luego la siguiente. El vault deja de crecer en la categoría que duele, y el corpus que importa empieza a acumularse en el sitio donde se revisa. No se mueve nada y no se pierde nada.

Para las notas cuyos lectores son agentes y no personas, el destino tiene una forma: una skill es una carpeta en el repositorio que se carga cuando resulta relevante y se ignora cuando no, que es lo más parecido a una nota de vault que un agente puede usar de verdad.

Al cabo de unas semanas, lo que siga en el vault y siga siendo estructural es una lista corta, y para entonces sabrás exactamente qué notas están en ella.

¿Cómo sé que está funcionando?

Cuatro señales, más o menos en el orden en que aparecen:

  1. Dejas de reexplicar lo mismo en cada sesión nueva. Esta llega primero y es la más satisfactoria de inmediato.
  2. Alguien corrige una nota durante una revisión de código. Eso es la ubicación dando fruto: significa que la nota se leyó en el momento en que se estaba cambiando lo que describe, que es la razón entera por la que fue al repositorio.
  3. Un agente te cita una de vuelta — propone algo y nombra la nota de la que salió, en lugar de proponer algo plausible.
  4. Alguien archiva una. Esta es la señal de verdad, y es la que más tarda. Un corpus que sólo ha crecido se está acumulando, no manteniendo, y acabará exactamente donde estaba el vault: más seguro de sí mismo cada mes y menos exacto.

La contraseñal es el espejo de esa última. Si las notas del repositorio crecen y nunca se ha retirado ninguna, has reconstruido el vault con ceremonia extra, y la caducidad viene de camino.

Dónde está CommitCycle de verdad

Merece decirse claramente, porque el sentido de este post es una línea que puedes aplicar con nosotros o sin nosotros: el enforcement se instala hoy como plugin, y el paquete commitcycle de npm instala la CLI a su lado. El board alojado es sólo por invitación mientras esto sea pequeño.

Así que coge la línea y úsala. No cuesta nada, se aplica a las herramientas que tengas, y el argumento que hay debajo está en el post anterior si quieres comprobar el razonamiento antes de fiarte de la conclusión.