Octobrain 0.6.0: Tu IA por fin recuerda lo que leyó

La mayoría de herramientas de memoria IA guardan lo que les dices que guarden. 0.6.0 cambia qué puede encontrar Octobrain.

Esta release va sobre conocimiento — no solo los recuerdos que tu IA acumula de las conversaciones, sino los documentos, páginas y archivos a los que la apuntas. Leer, buscar, hacer match. Extracción completa de contenido. Regex grep sobre todo lo que ha indexado. Y una superficie MCP más limpia que elimina una herramienta que nunca tuviste que llamar manualmente.


Lee cualquier cosa, extrae todo

La mayor adición en 0.6.0 es el comando read. Dale a Octobrain una URL o una ruta local, y saca el texto completo — sin chunking, sin resumen, sin truncado. Contenido bruto, devuelto directamente.

Maneja HTML, PDF, DOCX y archivos de texto plano. URLs remotas y fuentes locales funcionan igual.

octobrain knowledge read https://docs.example.com/api-reference
octobrain knowledge read ./spec.pdf

Vía MCP, es la herramienta knowledge con command: "read". Es el fallback cuando la búsqueda semántica no es lo bastante precisa — cuando necesitas la cosa entera, no solo el chunk relevante.

El caso de uso es exactamente lo que suena: tu agente IA choca con un recuerdo vago, lo apuntas a la fuente, lee el documento completo y trabaja desde ahí. Sin copia-pega, sin gimnasia de ventana de contexto.


Match regex sobre contenido indexado

El comando match es nuevo y útil para flujos de desarrollador.

Corre un patrón regex sobre todo lo indexado — o sobre una fuente específica si pasas una — y devuelve las líneas que coinciden con sus números de línea y rutas de origen.

octobrain knowledge match "error_code|timeout"
octobrain knowledge match "fn\s+handle_" --source ./src/main.rs

Esto es grep, pero sobre la base de conocimiento de tu IA. Si has indexado un codebase, un conjunto de docs o una colección de URLs, puedes buscarlos por patrón exacto en vez de por similitud semántica. Los dos modos se complementan: search para "encuéntrame algo sobre autenticación", match para "encuéntrame cada línea que menciona auth_token".

La herramienta MCP knowledge lo soporta como command: "match". Los patrones se validan antes de ejecutar — un regex malo falla rápido con un error claro, no con un resultado vacío silencioso.


Resultados de query en streaming

Por debajo, las consultas de conocimiento ahora streaming los resultados desde LanceDB en vez de juntarlos todos en memoria primero.

El enfoque anterior tenía un tope arbitrario de 10.000 filas y subía memoria en tablas grandes. El streaming quita el tope completamente y mantiene el pico de memoria plano sin importar el tamaño del índice. Para la mayoría de usuarios esto es invisible — pero si indexas codebases o colecciones de documentos grandes, notarás que deja de ser lento.


auto_link se fue (sigue funcionando, solo que no la llamas)

La herramienta MCP auto_link se eliminó. Es el único cambio que rompe.

El auto-linking — conectar automáticamente recuerdos relacionados por similitud semántica — sigue ocurriendo. Corre en cada llamada memorize y update_memory. Solo que ya no puedes disparalo manualmente, porque nunca hubo una buena razón.

Si tenías config de cliente MCP o prompts de agente que llamaban a auto_link, quítalos. Todo lo demás sigue igual.


Índice vector: se acabaron los errores de dimensión

Un bug sutil pero molesto: el índice PQ de LanceDB requiere que el número de sub-vectores divida exactamente la dimensión del embedding. Cuando no lo hacía, salía un error opaco de indexado.

0.6.0 lo arregla bajando el conteo de sub-vectores al divisor válido más cercano automáticamente, tope en 96. El optimizador lo maneja — no configuras nada, simplemente funciona.


Fuentes de conocimiento más estrictas

Dos cambios pequeños pero importantes de validación:

Las rutas de directorio se rechazan. Si pasas un directorio a knowledge index o knowledge read, Octobrain ahora devuelve un error en vez de no hacer nada silenciosamente. Solo archivos.

Las URIs de fuente se normalizan. Las barras finales se eliminan durante el indexado, así que https://example.com/docs/ y https://example.com/docs se tratan como la misma fuente. Antes creaban entradas duplicadas.


Cómo se ve 0.6.0 en la práctica

Aquí hay un flujo de agente real con esta release:

  1. Indexa los docs de tu proyecto: octobrain knowledge search "rate limiting" — encuentra el chunk relevante
  2. ¿Necesitas la spec completa? octobrain knowledge read ./docs/api.md — texto completo, sin truncar
  3. ¿Buscas un código de error específico en todas las fuentes indexadas? octobrain knowledge match "ERR_4[0-9]{2}" — cada línea que coincide, con fuente y número de línea
  4. Guarda una idea clave: octobrain memory memorize — auto-enlaza con recuerdos relacionados automáticamente
  5. El agente lo recoge en la siguiente llamada remember — sin cableado manual

La capa de conocimiento y la de memoria trabajan independientemente pero se complementan. Conocimiento es para fuentes externas. Memoria es para contexto y decisiones acumuladas. 0.6.0 hace el lado de conocimiento sustancialmente más capaz.


Actualizar

Si estás en 0.5.x:

  • Quita cualquier llamada auto_link de configs de cliente MCP o prompts de agente
  • Todo lo demás es compatible hacia atrás

El formato de config no cambió. El formato de storage no cambió. La herramienta MCP knowledge gana dos nuevos valores de command (read y match) — las llamadas existentes a search, store y delete no se ven afectadas.

Código y binarios en github.com/muvon/octobrain. Si te topas con algo, abre un issue — los leemos.