Skip to main content
Glama

ontomics

Python Rust TypeScript JavaScript platform MCP MCP Registry Claude Code Codex pi

ontomics verleiht Claude Code sofortiges Wissen über Ihre Codebasis. Ein Tool-Aufruf statt 19. ~20x weniger Token.

Benchmark

Getestet mit Claude Sonnet — dieselbe Frage, mit und ohne ontomics.

"Was bedeutet 'transform' in dieser Codebasis?" auf voxelmorph (vollständiges Transkript):

Mit ontomics

Ohne

Tool-Aufrufe

1

19

Token

~3.7k

~76k

Zeit

5s

1m 15s

Antwortqualität

Vollständig

Vollständig

"Was sind die wichtigsten Domänenkonzepte in dieser Codebasis?" auf ScribblePrompt (vollständiges Transkript):

Mit ontomics

Ohne

Tool-Aufrufe

1

26

Token

~3.7k

~61.6k

Zeit

~5s

56s

Antwortqualität

Vollständig

Vollständig

Beide Bedingungen lieferten vollständige, korrekte Antworten. ontomics erreichte dies mit einem einzigen Aufruf.

Related MCP server: Code-Index-MCP

Was es kann, was die Suche nicht kann

Die Suche zeigt Ihnen, wo eine Zeichenfolge vorkommt. Ein LSP zeigt Ihnen, wo ein Symbol definiert und referenziert wird. Keines von beiden beantwortet: Was sind die Domänenkonzepte in dieser Codebasis? Wie hängen sie zusammen? Welche Namenskonventionen haben sich herausgebildet? Was hat sich seit der letzten Version am Domänenvokabular geändert? Welche Funktionen verhalten sich ähnlich, unabhängig davon, wie sie benannt sind?

ontomics erstellt einen semantischen Index der Domäne Ihres Projekts — es gruppiert verwandte Symbole zu Konzepten, erkennt Namenskonventionen anhand der Nutzungshäufigkeit, löst Abkürzungen auf, gruppiert Funktionen nach verhaltensbezogener Ähnlichkeit und verfolgt, wie sich das Vokabular im Laufe der Zeit entwickelt. Dieser Index kann als portables Artefakt exportiert werden, um Konventionen in anderen Repositories zu etablieren.

Verhaltensbezogene Ähnlichkeit

Über Benennungen und Konzepte hinaus bettet ontomics rohe Funktionsrümpfe mittels CodeRankEmbed (768-dim, kontrastive Code-Retrieval) ein und gruppiert sie nach verhaltensbezogener Ähnlichkeit. Dies bringt Beziehungen zum Vorschein, die weder Benennungen noch Aufrufdiagramme offenlegen:

❯ 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.62

Das Ergebnis zeigt auch, dass random_transform an zwei Stellen mit unterschiedlichen Ähnlichkeitswerten vorkommt — ein Zeichen für Implementierungsduplizierung, die eine konzeptbasierte Suche komplett übersehen würde.

Installation

Einmal installieren, in jedem Projekt verfügbar. Keine Konfiguration erforderlich — ontomics erkennt das Repo automatisch und indiziert es beim ersten Ausführen.

ontomics erfordert ein Git-Repository (.git/-Verzeichnis). Es verweigert die Indizierung von Home-, Root- oder Temp-Verzeichnissen. Um ein Nicht-Git-Verzeichnis zu indizieren, verwenden Sie --force.

1. Das Binärprogramm installieren

npm (macOS/Linux):

npm install -g @ontomics/ontomics

macOS (Homebrew):

brew install EtienneChollet/tap/ontomics

Shell-Installer (macOS/Linux):

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/EtienneChollet/ontomics/releases/latest/download/ontomics-installer.sh | sh

Aus dem Quellcode:

git clone https://github.com/EtienneChollet/ontomics.git
cd ontomics
cargo build --release

2. Bei Ihrem Harness registrieren

Claude Code:

claude mcp add -s user ontomics -- ontomics

Codex:

codex mcp add ontomics -- ontomics

OpenClaw:

openclaw mcp set ontomics '{"command":"ontomics"}'

pi-coding-agent:

pi install npm:@ontomics/ontomics

Mit Ihrem Team teilen — legen Sie eine .mcp.json in Ihr Repo-Root-Verzeichnis:

{
  "mcpServers": {
    "ontomics": {
      "command": "npx",
      "args": ["-y", "@ontomics/ontomics", "--repo", "."]
    }
  }
}

Unterstützte Sprachen

Python, TypeScript, JavaScript, Rust. Automatische Erkennung anhand von Dateiendungen.

Tools

Konzepte und Vokabular

Tool

Was es tut

query_concept

Findet alle Varianten, verwandte Konzepte und Vorkommen eines Begriffs

locate_concept

Findet die Schlüsselsignaturen, Klassen und Dateien für ein Konzept

describe_symbol

Ruft Signatur, Docstring und Beziehungen für eine Funktion oder Klasse ab

trace_concept

Verfolgt, wie ein Konzept über Aufrufketten durch die Codebasis fließt

list_concepts

Listet die wichtigsten Domänenkonzepte nach Häufigkeit auf

list_conventions

Listet alle erkannten Namensmuster auf (Präfixe, Suffixe, Konvertierungen)

list_entities

Listet Code-Entitäten (Klassen, Funktionen) gefiltert nach Konzept, Rolle oder Art auf

check_naming

Überprüft einen Bezeichner auf Projektkonventionen; schlägt die kanonische Form vor

suggest_name

Generiert einen Bezeichnernamen, der zum Vokabular des Projekts passt

vocabulary_health

Misst Konventionsabdeckung, Namenskonsistenz und Cluster-Kohäsion

ontology_diff

Zeigt neue, geänderte oder entfernte Domänenkonzepte seit einem Git-Ref an

export_domain_pack

Exportiert Domänenwissen als portables YAML zur Verwendung in anderen Repos

Verhaltensbezogene Ähnlichkeit

Tool

Was es tut

find_similar_logic

Findet Funktionen mit verhaltensähnlichen Implementierungen, sortiert nach Einbettungsähnlichkeit

describe_logic

Ruft die Verhaltensbeschreibung, den Rumpftext und die Zugehörigkeit zum Logik-Cluster für eine Funktion ab

compact_context

Stellt gestuften Kontext (Konzepte + Logik) für ein Symbol zusammen, optimiert für LLM-Verbrauch

Codebasis-Struktur

Tool

Was es tut

describe_file

Überblick über die Entitäten, Konzepte und Beziehungen einer Datei

concept_map

Zeigt, welche Module welche Domänenkonzepte enthalten

type_flows

Zeigt dominante Typen und wie Daten durch die Codebasis fließen

trace_type

Verfolgt, wie sich ein spezifischer Typ über Dateien und Aufrufstellen hinweg ausbreitet

Ressourcen

Ressource

Was es tut

ontomics://briefing

Sitzungs-Briefing: wichtigste Konventionen, Abkürzungen, Schlüsselkonzepte, kontrastive Paare und Vokabular-Warnungen. Auch über das CLI ontomics briefing verfügbar.

Funktionsweise

ontomics führt eine mehrstufige Pipeline vollständig auf Ihrem Rechner aus — keine API-Schlüssel erforderlich:

  1. Parse — tree-sitter extrahiert jeden Bezeichner, jede Signatur und jede Aufrufstelle aus Ihren Quelldateien

  2. Analyze — TF-IDF-Scoring identifiziert domänenspezifische Konzepte und erkennt Namenskonventionen

  3. Embed (Konzepte) — BGE-small (384-dim) gruppiert verwandte Konzepte nach semantischer Ähnlichkeit

  4. Embed (Logik) — CodeRankEmbed (768-dim) bettet rohe Funktionsrümpfe ein und gruppiert sie nach verhaltensbezogener Ähnlichkeit

  5. Centrality — PageRank bewertet Entitäten nach struktureller Wichtigkeit

Beide Einbettungsmodelle werden beim ersten Ausführen einmal heruntergeladen und lokal zwischengespeichert. Der Index befindet sich unter <repo>/.ontomics/index.db — nachfolgende Starts laden aus dem Cache und überwachen Dateiänderungen.

Konfiguration über .ontomics/config.toml im Repo-Root. Alle Felder haben sinnvolle Standardwerte. Siehe SPEC.md für den vollständigen Design-Vertrag.

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