ba2ce3c821
- Carpeta raiz para documentos compartidos entre agentes - README explica proposito, funcionamiento, diferencia con privado - Ejemplo de flujo de colaboracion entre agentes - Issue 0018: Shared Knowledge (fase 4) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
2.6 KiB
2.6 KiB
Shared Knowledge Base
Esta carpeta contiene la base de conocimiento compartida entre todos los agentes del sistema.
Propósito
Los agentes pueden leer, escribir y buscar documentos en esta carpeta usando las tools shared_knowledge_*. Esto permite que múltiples agentes colaboren acumulando y consultando conocimiento común.
Funcionamiento
- Documentos: Los archivos
.mden este directorio son los documentos de conocimiento compartidos entre agentes. - Índice FTS5: Los documentos se indexan automáticamente en
data/knowledge.db(SQLite con Full-Text Search). - Sincronización: El índice se actualiza al arrancar cada agente con
Sync(). - WAL mode: El DB usa WAL (Write-Ahead Logging) para permitir lecturas y escrituras concurrentes entre múltiples procesos.
Tools disponibles
Los agentes con tools.shared_knowledge.enabled: true tienen acceso a:
shared_knowledge_search— buscar documentos por queryshared_knowledge_read— leer un documento por slugshared_knowledge_write— crear o actualizar un documentoshared_knowledge_list— listar todos los documentos compartidos
Diferencia con knowledge privado
Cada agente puede tener dos bases de conocimiento:
- Knowledge privado (
agents/<id>/knowledge/): solo visible para ese agente, toolsknowledge_* - Knowledge compartido (
knowledges/): visible para todos los agentes con shared_knowledge habilitado, toolsshared_knowledge_*
Ejemplo de flujo
1. agente-A recibe: "investiga X y guarda lo que encuentres"
→ LLM usa shared_knowledge_write(slug: "investigacion-x", content: "...")
→ Se escribe knowledges/investigacion-x.md + actualiza FTS5
2. agente-B recibe: "qué sabemos sobre X?"
→ LLM usa shared_knowledge_search(query: "X")
→ Encuentra el documento que escribió agente-A
→ shared_knowledge_read(slug: "investigacion-x")
→ Responde con la información
Estructura
knowledges/
├── README.md ← este archivo
├── *.md ← documentos compartidos (commiteados)
└── data/
├── knowledge.db ← índice SQLite FTS5 (no commiteado)
├── knowledge.db-shm
└── knowledge.db-wal
Notas
- Los archivos
.mdse commitean en el repositorio (forman parte del conocimiento compartido del equipo). - El directorio
data/está en.gitignore— el índice se reconstruye automáticamente al arrancar. - No hay control de acceso por agente: cualquier agente con shared_knowledge habilitado puede leer y escribir.
- Si dos agentes escriben el mismo slug, el último gana (sobreescritura).