AST con tree-sitter
Cada archivo se parsea a su árbol de sintaxis en 158 lenguajes. Funciones, clases, métodos e imports se extraen sin ejecutar nada.
Ñaupa — Motor de inteligencia de código
Ñaupa es el motor de inteligencia de código de Theus: gratuito, con el índice en tu disco y escrito en C puro. Analiza el AST de 158 lenguajes, construye un grafo de conocimiento persistente de tu repositorio y expone 19 herramientas MCP desde un único binario estático.
Del quechua ñawpa: «lo que va adelante».
$ curl -fsSL https://theus.pe/naupa.sh | bash
[ñaupa] instalado en ~/.local/bin/naupa
[ñaupa] Docs: https://theus.pe/docs/naupa
$ naupa cli index_repository \
--repo-path . --name web
{"project":"web","skipped_count":0,
"status":"indexed"}
$ naupa cli search_graph --project web \
--query "enviar correo de acceso"
{"results":[
{"name":"enviar_email_acceso",
"label":"Function",
"file_path":"server/theus_oauth_server.py",
"start_line":26302}]}
$ naupa cli trace_path --project web \
--function-name enviar_email_acceso
{"callers":[
{"name":"request_magic_link","hop":1},
{"name":"_route_post","hop":2}]}01 — Qué es
Ñaupa convierte tu código en un grafo de conocimiento persistente que los agentes consultan en milisegundos. Un único binario estático, cero dependencias; el índice, el grafo y la memoria viven en tu disco.
02 — Cómo funciona
Ñaupa combina parsing estructural, resolución de tipos y un grafo persistente. El resultado: contexto exacto para el agente, sin quemar tokens releyendo archivos.
Cada archivo se parsea a su árbol de sintaxis en 158 lenguajes. Funciones, clases, métodos e imports se extraen sin ejecutar nada.
Resolución semántica de tipos para Python, TS, JS, JSX, TSX, PHP, C#, Go, C, C++, Java, Kotlin y Rust: quién llama a quién, con tipos reales, no con heurísticas.
Todo se persiste en un grafo local: cadenas de llamadas, rutas HTTP, enlaces entre servicios. Los agentes lo consultan en milisegundos, sin releer el código.
03 — Las 19 herramientas MCP
Ñaupa expone su grafo por MCP. Cualquier agente compatible —11 funcionan plug and play— consulta estas herramientas como si fueran memoria propia.
index_repositoryIndexa un repositorio completo y construye o actualiza su grafo.
search_graphBúsqueda BM25, regex o semántica sobre símbolos y código del grafo.
query_graphConsultas Cypher directas sobre el grafo de conocimiento.
trace_pathTraza cadenas de llamadas entre dos puntos del código.
get_code_snippetDevuelve el código fuente exacto de cualquier símbolo indexado.
get_graph_schemaExpone el esquema del grafo: nodos, relaciones y propiedades.
get_architectureResume la arquitectura del proyecto: módulos, capas y dependencias.
search_codeGrep aumentado con contexto del grafo para resultados con significado.
list_projectsLista todos los proyectos indexados en la máquina.
delete_projectElimina un proyecto y su grafo del índice local.
index_statusEstado y progreso de la indexación de cada proyecto.
detect_changesDetecta cambios y calcula su impacto: el blast radius de una edición.
manage_adrRegistra y consulta decisiones de arquitectura (ADR) junto al grafo.
get_database_schemaEl esquema de base de datos detectado en el código: tablas, claves y relaciones.
table_usageQuién lee y quién escribe una tabla, con archivo:línea y la ruta HTTP que llega a ella.
db_healthSeñales de salud del esquema: tablas sin PK, foreign keys sin índice, SQL concatenado.
blast_radiusQué se rompe si tocas esto: lee el git diff con precisión de línea y dice qué tests correr.
find_dead_codeCódigo al que nadie llega, con confianza alta/media y caveats honestos.
find_clonesFamilias de código duplicado, agrupadas por similitud real.
04 — Rendimiento
Medido sobre el repositorio del propio motor: 14.257 nodos y 69.566 conexiones en 1,15 segundos, y una búsqueda sobre el grafo en 15 milisegundos, contando el arranque del proceso. Es la salida del binario que puedes descargar hoy.
05 — Privacidad
Los embeddings vienen incluidos en el binario: búsqueda semántica sin claves ni red. El grafo se guarda en tu disco y la visualización 3D corre en localhost:9749. Ninguna línea de tu código viaja a un servidor.
Instalación
Ñaupa se instala como un único binario estático para macOS, Linux y Windows. Sin runtimes, sin gestores de paquetes, sin configuración. En Windows lo instala el instalador de Theus para PowerShell — powershell -c "irm https://theus.pe/install.ps1 | iex" — junto con el CLI (en PowerShell curl es un alias de Invoke-WebRequest, así que el comando de abajo es solo para macOS/Linux).
$ curl -fsSL https://theus.pe/naupa.sh | bash
-> Descargando binario para tu plataforma
-> Ñaupa listo. Ejecuta: naupa cli index_repository --repo-path . --name mi-proyectoÑaupa es parte de la plataforma Theus: conéctalo a tu CLI, a tu dashboard y a tus agentes hoy mismo.