Volver a la wiki

Biblioteca Supercontexto · guía para todo el staff

Para quién es esta guía

Para todo el equipo de CreaRackSL — Edu, Dani, Txell — sin necesidad de ser programador. Si trabajas aquí, esta guía te explica qué es “la Biblioteca” que ves en los dashboards, cómo te sirve a ti y por qué Claude la usa.

Lenguaje llano, sin jerga innecesaria. Ve al sitio que te interese:


¿Qué es la Biblioteca?

La Biblioteca CreaRackSL es nuestro cerebro colectivo auto-mantenido. Es tres cosas a la vez:

  1. Un índice del código vivo de CreaRack Pro y del workspace. Sabe qué funciones, modelos y endpoints existen, y cómo están conectados entre sí.
  2. Una wiki que se escribe sola. Cuando alguien hace un cambio importante en el código, un agente llamado Bibliotecario lo lee, entiende el cambio, y escribe una página de wiki para dejar constancia. Sin que nadie se lo pida.
  3. Un buscador semántico que entiende preguntas en lenguaje natural. Puedes preguntar “¿cómo funciona el sistema de multi-tenancy?” y devuelve la respuesta sintetizada con los fuentes.

Todo esto vive en D1 (la base de datos del workspace en Cloudflare), se expone via tools MCP para que Claude pueda consultarlo, y se visualiza en el sensor Bibliotecario del widget “Salud del sistema”.

¿Por qué la llamamos “Supercontexto”?

El término viene del concepto de “dar contexto extendido a una IA”. En lugar de que Claude tenga que leer todo el repo cada vez que arranca una sesión, la Biblioteca le da la foto más relevante al momento. Como un asistente que ha leído todo el código y la documentación, y te lo cuenta en el idioma que necesites.

¿Por qué se construyó?

Originalmente teníamos docs tradicionales (Markdown en el repo) que se quedaban desactualizados cada pocas semanas. Y teníamos código que solo Edu o Dani podían leer fluidamente. El objetivo del proyecto Supercontexto (cerrado en sesión 22, abril 2026) fue construir un sistema donde:


¿Para qué me sirve a mí?

Si eres Edu o Dani (devs)


¿Cómo la usa Claude?

Cada instancia de Claude Code (la que usa Edu, la de Dani, y cualquier otra que se monte) tiene acceso al Supercontexto como fuente de verdad complementaria al código.

Flujo típico en una sesión del agente

  1. Al arrancar: Claude lee automáticamente el STATE.md del Supercontexto para saber en qué estado está el sistema. Sin intervención tuya.
  2. Antes de hacer algo no trivial: llama a bib_ask (“¿cómo funciona X?”) o bib_search_semantic para consultar sin reinventar la rueda.
  3. Al tocar código: llama a bib_impact_query para saber qué docs se ven afectados y avisarte.
  4. Al cerrar: reporta los cambios con bib_report_change para que el Bibliotecario los indexe.

Por qué cada miembro del staff tiene su Claude

Cada persona del equipo tiene su instancia independiente de Claude Code con memorias propias (tus preferencias, tus vicios, tus contextos específicos). Pero todas comparten el Supercontexto — es conocimiento del proyecto, no de ti.

Es como una biblioteca de barrio: cada lector tiene su carnet y sus anotaciones privadas, pero los libros son de todos.


Los sensores del dashboard

En el widget “Salud del sistema” (dashboard principal workspace.crearack.com) verás tres sensores relacionados con la Biblioteca. Los tres miran el mismo sistema desde ángulos distintos.

Biblioteca

Qué mira: si el índice del código está al día. Cada noche a las 08:00 UTC un cron cuenta cuántos “nodos” (piezas de código y documentación) llevan más de 7 días sin verificarse, y publica el porcentaje “sano”.

Qué leer primero: el porcentaje grande. Si está por encima de 90% y en verde, no hay nada que hacer.

Si está en amber/rojo: el reindex ha fallado o lleva demasiado tiempo sin correr. Avisar a Edu/Dani.

¿Por qué no llega al 100%?

Es esperable que se estabilice en torno al 95-97%, no al 100%. Razones:

Si ves un salto brusco (de 90% a 17% como pasó el 06-05-2026), suele ser una de tres cosas:

  1. Cron caído: el script cron-bib-reindex.sh perdió permisos o el repo en STAGE tiene drift. Mirar /opt/bib-reindex/cron-bib-reindex.log.
  2. Handler MCP fallando silenciosamente: el reindex se ejecuta pero el handler en CF Workers excede el límite de 1000 subrequests con specs grandes. El log dice [OK] endpoints=0 engañoso. Solución: chunking en el script.
  3. Nuevos tipos de nodo no contemplados: si se añade un tipo nuevo (ej. js_module) sin actualizar los crones, queda stale al 100%.

Grafo

Qué mira: si la arquitectura del código es sana (cohesión alta, pocas “funciones dios” que lo controlan todo).

Qué leer primero: el porcentaje de cohesión. >70% es sano, >80% es excelente.

Si está en amber/rojo: la arquitectura se está degradando. No urgente — pero conviene refactorizar cuando se pueda.

¿Qué es exactamente la “cohesión”?

cohesión = edges_internas_de_la_comunidad / edges_totales_de_sus_miembros

Traducido: de todas las conexiones que tiene un módulo, ¿cuántas son consigo mismo y cuántas se van a otros módulos? Cuanto más alto el %, más auto-contenido es ese módulo.

¿Por qué se queda anclada en ~84% y no sube?

Es el techo natural del grafo actual, no un bug. Razones:

¿Cómo subiría el % en la práctica?

PalancaCosteGanancia esperada
Refactor: reducir god nodes (de 10 → 5)Alto, riesgo en producción+1-2pp
Cambiar de algoritmo Label Propagation → LouvainMedio, ~200 LOC en handler+2-4pp
Subir el minCommunitySize (clusters más grandes)Bajo+1pp pero pierdes granularidad
Tocar la fórmulaTrivial“infla” la métrica sin valor real

En literatura de modularidad, >80% de cohesión se considera “alta”. El 84% del grafo CreaRack ya es objetivamente bueno — el widget está dando una señal correcta, no está estancado por un problema técnico.

Más útil que perseguir el % es mirar las 2-3 comunidades con cohesión más baja — esas sí señalan acoplamiento mal estructurado y son candidatos reales a refactor. Disponible en el Pulse (/biblioteca/pulse) con detalle por comunidad.

Bibliotecario

Qué mira: la wiki auto-mantenida. Cuántas páginas hay, cuántas están pendientes de revisión, qué agentes han trabajado en las últimas 24h, cuánto ha costado en API.

Qué leer primero: el número de páginas y el insight en verde (“Sistema sano”). Si dice eso, todo OK.

Si está en rojo: puede ser una contradicción detectada entre páginas, o un cron que lleva >36h sin correr. Skill /wiki-lint-review o mirar gh run list.

Cómo leer la línea de métricas

Cada sensor muestra una línea de números bajo el título. Aquí está la traducción al cristiano:

Biblioteca — 215 stale de 3841 nodos · hace 1h

Grafo — 3841 nodos · 371 comunidades · 10 god nodes

Bibliotecario — 99 pág · 94 active · 5 draft · 42 acc/24h · 460.2k toks/7d

Regla general para los 3 sensores

Si los 3 están en verde, no hay nada que hacer. Solo mirar de reojo una vez al día.


Drift & sync — la banda 5 de Pulse

Pulse tiene una banda llamada “Drift & sync” con tres tarjetas. Vigila cuándo la documentación deja de coincidir con el código (o con sus páginas espejo). Tres ángulos del mismo problema:

1. Docs desactualizados (Escriba)

Páginas de wiki que apuntan a archivos de código que han cambiado desde la última vez que la doc se revisó.

Es comparación por timestamps: si el código se modificó hoy pero la doc no se ha tocado desde hace 8 días, sale aquí marcada con +8 d. No lee el contenido, solo mira las fechas — barato y rápido.

🟢 Verde: nada que hacer. · 🟡 Amber: revisar cuando puedas. · 🔴 Rojo: la doc ya está engañando.

→ Detalle: [[feature—biblioteca—escriba-drift]]

2. Drift checks · 7 d (Haiku)

Un paso más sofisticado: en vez de mirar fechas, un cron usa Claude Haiku para LEER la página y compararla con el código actual, y devuelve un porcentaje de drift + un nivel de confianza. Si encuentra una desviación clara, abre automáticamente un draft con la propuesta de corrección.

Cifras típicas: ~$0.02/semana, 10-15 páginas revisadas/día. Si el % sube por encima de 15 o el coste se dispara, mirar el endpoint.

→ Detalle: [[feature—biblioteca—drift-check-semantic]] · [[decision—20260514—kb-vs-graph-drift-detection]] · [[entity—biblioteca—endpoint—drift-checks]]

3. Mirror cascades (Sync Cascade)

Algunas páginas son espejos entre sí: cuando se actualiza el onboarding de Edu, los onboardings de Dani y Txell deberían recibir el mismo cambio. El runbook de credenciales del workspace es espejo del de la plataforma. Etc.

Sync Cascade detecta esos vínculos vía un campo mirrors: en el front-matter y, cuando una página fuente cambia, propone PRs draft con la propagación a sus espejos. La verificación humana siempre queda al final — el sistema no mergea solo.

Si la tarjeta marca “X pendientes”, hay espejos esperando que alguien revise el PR draft. Click en “Ver PR drafts” lleva al listado en GitHub.

→ Detalle: [[feature—supercontext—sync-cascade]] · [[entity—biblioteca—endpoint—mirror-cascades]] · [[runbook—workspace—pausar-sync-cascade]] (cómo apagarlo si se vuelve loco)

Qué hacer cuando algo sale en amber/rojo

TarjetaAcción más típica
Docs desactualizadosAbrir la página, refrescar el contenido tras leer el código actual, y guardar (el timestamp se renueva).
Drift checksSi hay drafts pendientes (badge draft azul), revisarlos con el skill /wiki-review-drafts y promover/descartar.
Mirror cascadesAbrir el PR draft en GitHub, leer la propagación propuesta por Haiku, y mergear o descartar.

Verde en las tres no significa que la doc esté perfecta — solo que el sistema no ha detectado desincronización. Si tú ves algo raro al leer una página, edita y guarda. El sistema te ayuda, no te sustituye.


¿Cómo se alimenta?

El sistema tiene 6 crons automáticos que lo mantienen vivo sin intervención humana. Cada uno hace una cosa específica:

CronCuándoQué hace
Bibliotecario-IngestCada push a mainLee el commit, decide si es relevante, crea/actualiza páginas
Bibliotecario-CuratorDiario 05:00 UTCRevisa borradores pendientes y decide si promover o borrar
Bibliotecario-LintDiario 10:00 UTCDetecta páginas antiguas, huérfanas o con fuentes rotas
Bibliotecario-Lint (consolidación)Domingo 03:00 UTCBusca contradicciones entre páginas del mismo tema
Bibliotecario-UtilityDiario 06:00 UTCRecalcula la puntuación de “utilidad” de cada página
Bibliotecario-CatalogDiario 06:30 UTCRegenera el catálogo completo de la wiki
Bibliotecario-Weekly-ReportDomingo 08:00 UTCGenera el informe semanal archivado

Todo vive en GitHub Actions del repo CreaRackSL-workspace. Si alguno falla, el sensor Bibliotecario pasa a amber/rojo y avisa.

Coste

El sistema consume aproximadamente $10/mes de API Anthropic (Haiku + Sonnet con caching). Este coste se ve reflejado en el sensor (355k toks/7d ≈ $1/semana).


¿Cómo contribuir?

Si eres staff no-dev (Txell)

Tu mejor contribución es preguntar en el Pulse cuando no sepas algo. Cada pregunta que haces:

  1. Genera una respuesta sintetizada.
  2. Si la respuesta es sólida, se archiva automáticamente como borrador de página.
  3. Al día siguiente, el Curator decide si promoverla a página definitiva.
  4. La siguiente persona que pregunte lo mismo obtiene la respuesta instantánea.

Es decir: preguntando, construyes la wiki para todos.

Si eres dev (Edu / Dani)


Glosario mínimo

TérminoQué significa
SupercontextoEl sistema completo (código indexado + wiki auto-mantenida + archivo semántico).
BibliotecaSinónimo coloquial de Supercontexto — cuando hablamos de “la Biblioteca” nos referimos a este sistema.
BibliotecarioLos agentes LLM que mantienen el sistema (Ingest, Curator, Lint). Cada uno tiene un cron.
PageUna entrada de wiki. Puede ser entity_page (un modelo de datos), feature_page (una funcionalidad), decision_page (un ADR — por qué se decidió X), incident_page (un incidente), runbook_page (procedimiento), concept_page (explicación de un concepto).
CronUna tarea programada que corre sola. Los 7 crons del sistema se ejecutan cada uno a su hora sin que nadie los lance.
D1La base de datos en Cloudflare donde vive todo.
MCPModel Context Protocol — cómo Claude habla con la Biblioteca. Tools como bib_ask, bib_search_semantic, wiki_create_page.
PulseEl panel de control en /biblioteca/pulse que muestra el estado del sistema en vivo.
Regla 19La regla del proyecto que dice que toda sesión que toque el Supercontexto lee STATE.md al arrancar. Vive en CLAUDE.md de CreaRack-Pro.

Dónde ampliar


Véase también

Subir