Google escribió la especificación de lo que yo hacía mal
El 12 de junio de 2026, Google Cloud publicó una especificación llamada Open Knowledge Format. La leí un martes por la noche y tardé unos veinte minutos en darme cuenta de que llevo meses construyendo exactamente eso, mal.
No mal en el sentido de roto. Mal en el sentido de que funcionaba para mí y no habría funcionado para nadie más, y yo no tenía forma de notarlo.
Qué es OKF, sin adornos
Un directorio de archivos Markdown con frontmatter YAML, enlazados entre sí con enlaces Markdown normales. Eso es todo.
Un archivo es un concepto. La ruta del archivo es su identidad. Los enlaces entre archivos forman un grafo de relaciones explícitas, en vez de relaciones inferidas por similitud de vectores.
La regla obligatoria es una sola: todo archivo lleva frontmatter con un campo
type no vacío. El resto es opcional, y la especificación obliga a los
consumidores a tolerar campos que no conocen, tipos que no conocen y enlaces
rotos.
Cabe en una página. Está en GitHub.
Vale la pena aclarar algo, porque he visto varios artículos afirmando lo contrario: OKF no reemplaza una base de datos vectorial. Es un formato de contenido, no un sistema de recuperación. Un bundle OKF se ingiere sin problema en Pinecone o en Qdrant. Lo que cambia es que las relaciones entre conceptos están escritas, no adivinadas.
Lo que ya coincidía
Llevo meses operando un sistema de decisión que es, literalmente, un directorio de Markdown: un archivo por concepto, enlaces entre ellos, un archivo de historia al que solo se agrega al final, y un índice que resume y enlaza en vez de duplicar.
Cuando leí la especificación, cinco de sus seis convenciones ya estaban ahí. No por visión: porque son las que aparecen solas cuando trabajas a diario con un agente y te cansas de repetirte.
Eso fue lo agradable de la lectura. Lo útil vino después.
Error 1: todo mi estado vive en prosa
Mis archivos marcan el estado de cada afirmación: HECHO, INFERENCIA,
SUPUESTO, EVIDENCIA PENDIENTE. Estoy convencido de que es la mejor decisión
de diseño que tomé, y la sigo defendiendo.
El problema es dónde la puse: dentro del texto.
Para saber si un archivo mío es fiable hay que abrirlo y leerlo. OKF pone esos mismos datos en el frontmatter, donde se pueden consultar sin leer el cuerpo. La diferencia parece cosmética hasta que tienes cuarenta archivos y un agente con ventana finita: entonces es la diferencia entre poder decidir qué cargar y tener que cargarlo todo para averiguarlo.
Yo había resuelto el problema correcto en el lugar equivocado.
Error 2: nada caduca
OKF v0.2 tiene un campo llamado stale_after: una fecha después de la cual el
concepto se considera vencido.
Mi sistema exige fecha de evaluación a toda idea que se guarda sin ejecutar. Estaba orgulloso de esa regla. Pero solo la aplico a las ideas.
Mi archivo de conocimiento personal dice «última actualización» y esa fecha lleva meses igual. Mis prioridades tienen fecha de revisión, pero nada me avisa. Es decir: construí un sistema que distingue con precisión entre un hecho y una suposición, y que no distingue en absoluto entre un hecho de esta semana y uno de hace cinco meses.
Un hecho viejo se lee exactamente igual que uno reciente. Esa es la forma más silenciosa de estar equivocado.
Error 3: no distingo quién escribió qué
Este es el que me dejó incómodo.
OKF v0.2 usa una convención de actor. Cuando algo lo produjo o lo confirmó una
persona, se anota como human:<id>. Cuando lo produjo un agente, se anota con el
nombre y la versión del modelo. De ahí se derivan tres niveles: sin verificar,
confirmado por máquina, revisado por humano.
En mis archivos, una conclusión que escribí yo después de pensarla una semana y una que redactó un agente en cuatro segundos se ven idénticas.
Y cada vez escribo yo una proporción menor. Este año delegué buena parte de la redacción de mi propio contexto a agentes, que es justo lo que se supone que hay que hacer, y en el camino perdí la capacidad de saber qué revisé de verdad.
No es un problema teórico. Un agente puede escribir una inferencia razonable a partir de datos incompletos, guardarla, y leerla tres semanas después como antecedente propio. Sin la marca de quién la produjo, el sistema no tiene forma de darse cuenta. Yo tampoco.
Lo que voy a hacer, y lo que no
No voy a migrar nada esta semana. Estoy en mitad de otro experimento y cambiar la estructura de mi contexto mientras mido otra cosa es la manera perfecta de no aprender ninguna de las dos.
Lo que sí hice fue registrarlo con fecha de evaluación, que es la regla que acababa de reconocer que aplico a medias.
Cuando lo haga, el orden es este:
generatedyverified, porque distinguir mi criterio del de un agente es lo que más me duele hoy.stale_afteren los archivos que envejecen: conocimiento personal, prioridades, cifras.typeen todo, que es la única regla obligatoria y la más fácil.
Deliberadamente al revés del orden de dificultad. Primero lo que arregla el fallo que ya me está costando algo.
La parte que no esperaba
Llevaba meses convencido de que mi sistema estaba bien porque a mí me funcionaba.
Una especificación escrita por gente que no me conoce, para un problema que yo creía particular, me mostró tres agujeros en veinte minutos. Ninguno era de implementación. Los tres eran de diseño, y los tres llevaban meses ahí.
Esa es la parte que vale de que existan estándares abiertos, y la razón por la que recomiendo leerla aunque no vayas a adoptarla: no te dice cómo hacer lo que ya haces. Te muestra lo que dejaste de mirar.
Artículos relacionados
Puedes copiar mi estructura. No puedes copiar mis decisiones.
El árbol de archivos de un sistema de contexto se reproduce en una tarde. Lo que sostiene sus resultados son cuatro decisiones que ningún archivo vacío puede tomar por ti.
Un buen prompt sigue siendo una instrucción desechable
Un prompt resuelve una tarea. Para operar trabajo repetible con agentes hacen falta instrucciones, contexto, memoria y un lugar donde guardar el resultado.
Más contexto no es mejor contexto
Le di a un agente acceso a todo el repositorio para arreglar tres líneas. Falló, y no por falta de información. Las cuatro reglas que escribí después para administrar el contexto como el recurso escaso que es.