ontomics
ontomics
ontomics proporciona a Claude Code conocimiento instantáneo de tu base de código. Una llamada a herramienta en lugar de 19. ~20 veces menos tokens.
Benchmark
Probado con Claude Sonnet — misma pregunta, con y sin ontomics.
"¿Qué significa 'transform' en esta base de código?" en voxelmorph (transcripción completa):
Con ontomics | Sin | |
Llamadas a herramientas | 1 | 19 |
Tokens | ~3.7k | ~76k |
Tiempo | 5s | 1m 15s |
Calidad de respuesta | Completa | Completa |
"¿Cuáles son los principales conceptos del dominio en esta base de código?" en ScribblePrompt (transcripción completa):
Con ontomics | Sin | |
Llamadas a herramientas | 1 | 26 |
Tokens | ~3.7k | ~61.6k |
Tiempo | ~5s | 56s |
Calidad de respuesta | Completa | Completa |
Ambas condiciones produjeron respuestas completas y correctas. ontomics lo logró en una sola llamada.
Related MCP server: Code-Index-MCP
Lo que hace que la búsqueda no puede hacer
La búsqueda te dice dónde aparece una cadena. Un LSP te dice dónde se define y referencia un símbolo. Ninguno responde: ¿cuáles son los conceptos del dominio en esta base de código? ¿Cómo se relacionan? ¿Qué convenciones de nomenclatura surgieron? ¿Qué cambió en el vocabulario del dominio desde la última versión? ¿Qué funciones se comportan de manera similar, independientemente de cómo se llamen?
ontomics construye un índice semántico del dominio de tu proyecto: agrupa símbolos relacionados en conceptos, detecta convenciones de nomenclatura a partir de la frecuencia de uso, resuelve abreviaturas, agrupa funciones por similitud de comportamiento y rastrea cómo evoluciona el vocabulario con el tiempo. Ese índice puede exportarse como un artefacto portátil para iniciar convenciones en otros repositorios.
Similitud de comportamiento
Más allá de los nombres y conceptos, ontomics incrusta cuerpos de funciones sin procesar utilizando CodeRankEmbed (768 dimensiones, recuperación de código contrastiva) y los agrupa por similitud de comportamiento. Esto revela relaciones que ni los nombres ni los grafos de llamadas exponen:
❯ What functions behave like spatial_transform()?
random_transform() nn/functional.py:352 0.80
spatial_transform() functional.py:596 0.69
random_transform() functional.py:1399 0.67
random_disp() nn/functional.py:275 0.65
integrate_disp() functional.py:764 0.65
compose() nn/functional.py:216 0.63
disp_to_trf() functional.py:343 0.62El resultado también revela que random_transform aparece en dos ubicaciones con diferentes puntuaciones de similitud: una señal de duplicación de implementación que la búsqueda a nivel de concepto pasaría por alto por completo.
Instalación
Instálalo una vez, disponible en cada proyecto. No se necesita configuración: ontomics detecta automáticamente el repositorio y lo indexa en la primera ejecución.
ontomics requiere un repositorio git (directorio .git/). Se negará a indexar directorios de inicio, raíz o temporales. Para indexar un directorio que no sea git, usa --force.
1. Instalar el binario
npm (macOS/Linux):
npm install -g @ontomics/ontomicsmacOS (Homebrew):
brew install EtienneChollet/tap/ontomicsInstalador de shell (macOS/Linux):
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/EtienneChollet/ontomics/releases/latest/download/ontomics-installer.sh | shDesde el código fuente:
git clone https://github.com/EtienneChollet/ontomics.git
cd ontomics
cargo build --release2. Registrar con tu entorno
Claude Code:
claude mcp add -s user ontomics -- ontomicsCodex:
codex mcp add ontomics -- ontomicsOpenClaw:
openclaw mcp set ontomics '{"command":"ontomics"}'pi-coding-agent:
pi install npm:@ontomics/ontomicsComparte con tu equipo — coloca un .mcp.json en la raíz de tu repositorio:
{
"mcpServers": {
"ontomics": {
"command": "npx",
"args": ["-y", "@ontomics/ontomics", "--repo", "."]
}
}
}Lenguajes soportados
Python, TypeScript, JavaScript, Rust. Detectados automáticamente a partir de las extensiones de archivo.
Herramientas
Conceptos y vocabulario
Herramienta | Qué hace |
| Encuentra todas las variantes, conceptos relacionados y ocurrencias de un término |
| Encuentra las firmas clave, clases y archivos para un concepto |
| Obtiene la firma, docstring y relaciones para una función o clase |
| Rastrea cómo fluye un concepto a través de la base de código mediante cadenas de llamadas |
| Lista los principales conceptos del dominio por frecuencia |
| Lista todos los patrones de nomenclatura detectados (prefijos, sufijos, conversiones) |
| Lista entidades de código (clases, funciones) filtradas por concepto, rol o tipo |
| Comprueba un identificador contra las convenciones del proyecto; sugiere la forma canónica |
| Genera un nombre de identificador que se ajuste al vocabulario del proyecto |
| Mide la cobertura de convenciones, la consistencia de nombres y la cohesión de clústeres |
| Muestra conceptos de dominio nuevos, cambiados o eliminados desde una referencia de git |
| Exporta el conocimiento del dominio como YAML portátil para su uso en otros repositorios |
Similitud de comportamiento
Herramienta | Qué hace |
| Encuentra funciones con implementaciones de comportamiento similar, clasificadas por similitud de incrustación |
| Obtiene la descripción del comportamiento, el texto del cuerpo y la pertenencia al clúster de lógica para una función |
| Ensambla contexto escalonado (conceptos + lógica) para un símbolo, optimizado para el consumo de LLM |
Estructura de la base de código
Herramienta | Qué hace |
| Descripción general de las entidades, conceptos y relaciones de un archivo |
| Muestra qué módulos contienen qué conceptos de dominio |
| Muestra los tipos dominantes y cómo fluyen los datos a través de la base de código |
| Rastrea cómo se propaga un tipo específico a través de archivos y sitios de llamada |
Recursos
Recurso | Qué hace |
| Resumen de la sesión: convenciones principales, abreviaturas, conceptos clave, pares contrastivos y advertencias de vocabulario. También disponible a través de la CLI |
Cómo funciona
ontomics ejecuta una tubería de varias etapas completamente en tu máquina; no se requieren claves de API:
Analizar (Parse) — tree-sitter extrae cada identificador, firma y sitio de llamada de tus archivos fuente
Analizar (Analyze) — la puntuación TF-IDF identifica conceptos específicos del dominio y detecta convenciones de nomenclatura
Incrustar (conceptos) — BGE-small (384 dimensiones) agrupa conceptos relacionados por similitud semántica
Incrustar (lógica) — CodeRankEmbed (768 dimensiones) incrusta cuerpos de funciones sin procesar y los agrupa por similitud de comportamiento
Centralidad — PageRank puntúa las entidades por importancia estructural
Ambos modelos de incrustación se descargan una vez en la primera ejecución y se almacenan en caché localmente. El índice reside en <repo>/.ontomics/index.db: los inicios posteriores se cargan desde la caché y vigilan los cambios de archivo.
Configuración a través de .ontomics/config.toml en la raíz del repositorio. Todos los campos tienen valores predeterminados razonables. Consulta SPEC.md para ver el contrato de diseño completo.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/EtienneChollet/ontomics'
If you have feedback or need assistance with the MCP directory API, please join our Discord server