cie

▎ Un grafo de código que se extiende a cualquier lenguaje mediante adaptadores conectables, con trazabilidad de tareas/QA y herramientas MCP reales — sin configuración para probar. ▎

Documentación

cie — el único grafo de código que sabe qué tareas y pruebas implementan realmente tu código.

Hacia dónde va esto: vision.md — la orilla lejana. El grafo se convierte en el software; los repositorios se convierten en su caché. Software que siempre puede explicarse a sí mismo. Una brújula, no una afirmación.

CI Release License: MIT Python 3.10+ MCP tree-sitter Neo4j Tests Keep a Changelog

GitHub issues PRs Contributors Stars Last commit Commit activity Code size Repo size Platform Status

Code Insight Engine. Ninguna otra herramienta de grafo de código evaluada puede responder "¿qué archivos implementan esta tarea, y están probados?" como una sola consulta. Todo lo orientado a desarrolladores vive en la wiki — arquitectura escrita desde el código base, y un cómo-hacer para cada flujo de trabajo. Este README se mantiene conciso: la demo, la instalación y cómo ayudar.

30-second demo: cie, asked about itself

Cada segundo es una sesión real grabada, nada escenificado: este repositorio clonado desde la etiqueta pública v0.1.4, cie index . en 1.9s (1,902 nodos · 6,581 aristas · 4,169 llamadas), la línea única del README registrándolo con Claude Code (✔ Connected), luego UNA pregunta en palabras simples — sobre resolve_backend, la regla de selección de almacenamiento — respondida solo con las herramientas de cie (las funciones integradas del agente estaban deshabilitadas para la toma: callers → affected_by → test_map eran su único camino). El agente devolvió las 7 pruebas de fijación con números de línea, incluida la prueba añadida para el error explícito de auto corregido ese mismo día. El GIF está editado solo por tiempo — el contenido nunca se edita; las sesiones sin cortar se incluyen en el repositorio: resolve-backend-uncut.cast (la toma del agente) y setup-uncut.cast (índice → registrar → conectado). Registro completo de toma/QC: docs/demo/production-log.md.

Instalación

Un clic, sin clonar, sin Neo4j, sin registro — instala una vez desde una etiqueta de versión, luego un comando por proyecto lo indexa, registra cie con tu cliente MCP (entrada robusta ante procesos: ruta absoluta, para que los clientes iniciados por GUI lo encuentren), y escribe los archivos de contexto del agente:

# once per machine (latest tag):
uv tool install "cie-mcp[mcp] @ git+https://github.com/kannamma-labs/cie.git@v0.1.5"

# per project — from inside the project:
cie index .        # ~1.9s on a 110-file repo
cie init .         # registers the client, writes AGENTS.md/CLAUDE.md

¿Ya instalado y prefieres la ruta del lado del cliente?

claude mcp add cie -- $(command -v cie-mcp) /path/to/your/project --backend embedded --policy readonly

pip simple también funciona:

pip install "cie-mcp[mcp]"   # core + MCP server (cie-mcp) — what most people want
pip install "cie-mcp[http]"  # + the HTTP tool-mount (cie/routes.py)

Nota sobre el nombre del paquete (actualizado 2026-08-31, v0.1.1): la distribución se publica como cie-mcp — el nombre cie en PyPI pertenece a un proyecto no relacionado (cluster311/cie10, códigos ICD-10; pip install cie NO te da esta herramienta — nunca lo hizo). El paquete de importación sigue siendo cie; los scripts de consola siguen siendo cie y cie-mcp. Las instalaciones desde GitHub son una alternativa equivalente: pip install "cie-mcp[mcp] @ git+https://github.com/kannamma-labs/cie.git@v0.1.5".

Dependencias principales: Pydantic v2, tree-sitter (+ gramáticas de Python/JS/TS/Java/Go/ Rust/C/C++/C#), watchdog, Click, Rich; el controlador de Neo4j solo cuando uses ese backend. Python ≥ 3.10. El almacenamiento se selecciona automáticamente (sirve .cie/graph.db cuando indexaste, si no Neo4j — indicado en stderr al inicio, nunca en silencio).

Más: servir a Cursor/Codex, múltiples proyectos, modo de equipo Neo4j, búsqueda semántica, HTTP, políticas, solución de problemas — cada flujo de trabajo tiene un cómo-hacer en la wiki (empieza con install-and-serve).

Se buscan colaboradores

cie es un núcleo pequeño con una superficie descomunal (135 herramientas, 9 idiomas, dos backends de almacenamiento, tres interfaces) y una cultura que se ve en los commits: DoD = verificado contra el entorno real, nunca solo escrito; los fallos se publican, no se ocultan. La demo anterior fue producida dogfooding — y la medición de dogfooding encontró (y corrigió) un error real del producto ese mismo día. Ese es el estilo de trabajo.

Formas de entrar, de más fácil a más difícil:

  • Úsalo e informa — indexa tu repositorio, hazle preguntas de impacto, reporta lo que está mal o lo que falta. El cómo-hacer de solución de problemas enumera honestamente los bordes afilados conocidos.
  • Una brecha medida — la heurística de PRUEBAS de llamadas directas se publicó porque una medición de dogfooding mostró 1 arista en una suite de 308 pruebas. Encuentra un número así, y la corrección entra.
  • Un primer PR — empieza con la etiqueta good first issue (cada una nombra un módulo de punto de entrada seguro y criterios de aceptación) o los problemas #17–#19.
  • Documentación — los cómo-hacer de la wiki cuentan. Si deseaste que existiera una página, escríbela; si la wiki y el código no coinciden, el código gana y la wiki recibe un PR.

La configuración de desarrollo son tres comandos (clonar, uv venv + instalación editable, python -m pytest -q — 312 pasando): los detalles, el arnés de conformidad y el estándar de honestidad están en CONTRIBUTING.md y en la página de contribución de la wiki. La sección "Becoming a second maintainer" de CONTRIBUTING.md es el camino más allá de un PR único.

Licencia

cie se publica bajo la Licencia MIT.

Al contribuir, aceptas que tus contribuciones se licencian bajo los mismos términos.