ontomics
ontomics
ontomics는 Claude Code에 코드베이스에 대한 즉각적인 지식을 제공합니다. 19번의 호출 대신 단 한 번의 도구 호출로 가능하며, 토큰 사용량을 약 20배 줄여줍니다.
벤치마크
Claude Sonnet으로 테스트 — ontomics 사용 여부에 따른 동일 질문 결과.
voxelmorph에서 "이 코드베이스에서 'transform'은 무엇을 의미하나요?" (전체 기록):
ontomics 사용 | 미사용 | |
도구 호출 | 1 | 19 |
토큰 | ~3.7k | ~76k |
시간 | 5초 | 1분 15초 |
답변 품질 | 완전함 | 완전함 |
ScribblePrompt에서 "이 코드베이스의 주요 도메인 개념은 무엇인가요?" (전체 기록):
ontomics 사용 | 미사용 | |
도구 호출 | 1 | 26 |
토큰 | ~3.7k | ~61.6k |
시간 | ~5초 | 56초 |
답변 품질 | 완전함 | 완전함 |
두 조건 모두 완전하고 정확한 답변을 생성했습니다. ontomics는 단 한 번의 호출로 이를 달성했습니다.
Related MCP server: Code-Index-MCP
검색이 할 수 없는 기능
검색은 문자열이 어디에 나타나는지 알려줍니다. LSP는 심볼이 어디에 정의되고 참조되는지 알려줍니다. 하지만 둘 다 "이 코드베이스의 도메인 개념은 무엇인가?", "그들은 어떻게 연관되어 있는가?", "어떤 명명 규칙이 나타났는가?", "마지막 릴리스 이후 도메인 어휘가 어떻게 변경되었는가?", "이름과 상관없이 어떤 함수들이 유사하게 동작하는가?"와 같은 질문에는 답하지 못합니다.
ontomics는 프로젝트 도메인의 의미론적 인덱스를 구축합니다. 관련 심볼을 개념으로 클러스터링하고, 사용 빈도에서 명명 규칙을 감지하며, 약어를 해결하고, 동작 유사성에 따라 함수를 그룹화하며, 시간이 지남에 따라 어휘가 어떻게 진화하는지 추적합니다. 해당 인덱스는 다른 저장소에서 규칙을 부트스트랩하기 위한 이식 가능한 아티팩트로 내보낼 수 있습니다.
동작 유사성
명명 및 개념을 넘어, ontomics는 CodeRankEmbed(768차원, 대조적 코드 검색)를 사용하여 원시 함수 본문을 임베딩하고 동작 유사성에 따라 클러스터링합니다. 이는 명명이나 호출 그래프로는 드러나지 않는 관계를 표면화합니다:
❯ 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결과는 또한 random_transform이 서로 다른 유사도 점수를 가진 두 위치에 나타난다는 것을 보여줍니다 — 이는 개념 수준의 검색으로는 완전히 놓칠 수 있는 구현 중복의 징후입니다.
설치
한 번 설치하면 모든 프로젝트에서 사용할 수 있습니다. 설정이 필요 없습니다 — ontomics는 저장소를 자동 감지하고 첫 실행 시 인덱싱합니다.
ontomics는 git 저장소(.git/ 디렉토리)가 필요합니다. 홈, 루트 또는 임시 디렉토리는 인덱싱하지 않습니다. git이 아닌 디렉토리를 인덱싱하려면 --force를 전달하세요.
1. 바이너리 설치
npm (macOS/Linux):
npm install -g @ontomics/ontomicsmacOS (Homebrew):
brew install EtienneChollet/tap/ontomicsShell 설치 프로그램 (macOS/Linux):
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/EtienneChollet/ontomics/releases/latest/download/ontomics-installer.sh | sh소스에서 빌드:
git clone https://github.com/EtienneChollet/ontomics.git
cd ontomics
cargo build --release2. 하네스에 등록
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/ontomics팀과 공유 — 저장소 루트에 .mcp.json을 추가하세요:
{
"mcpServers": {
"ontomics": {
"command": "npx",
"args": ["-y", "@ontomics/ontomics", "--repo", "."]
}
}
}지원 언어
Python, TypeScript, JavaScript, Rust. 파일 확장자에서 자동 감지됩니다.
도구
개념 및 어휘
도구 | 기능 |
| 용어의 모든 변형, 관련 개념 및 발생 빈도 찾기 |
| 개념에 대한 주요 시그니처, 클래스 및 파일 찾기 |
| 함수나 클래스에 대한 시그니처, 독스트링 및 관계 가져오기 |
| 호출 체인을 통해 개념이 코드베이스를 어떻게 흐르는지 추적 |
| 빈도별 상위 도메인 개념 나열 |
| 감지된 모든 명명 패턴(접두사, 접미사, 변환) 나열 |
| 개념, 역할 또는 종류별로 필터링된 코드 엔티티(클래스, 함수) 나열 |
| 프로젝트 규칙에 따라 식별자 확인; 표준 형식 제안 |
| 프로젝트 어휘에 맞는 식별자 이름 생성 |
| 규칙 적용 범위, 명명 일관성 및 클러스터 응집도 측정 |
| git 참조 이후 새로 추가, 변경 또는 제거된 도메인 개념 표시 |
| 다른 저장소에서 사용할 수 있도록 도메인 지식을 이식 가능한 YAML로 내보내기 |
동작 유사성
도구 | 기능 |
| 임베딩 유사도에 따라 순위가 매겨진, 동작이 유사한 구현을 가진 함수 찾기 |
| 함수에 대한 동작 설명, 본문 텍스트 및 로직 클러스터 멤버십 가져오기 |
| LLM 소비에 최적화된 심볼용 계층화된 컨텍스트(개념 + 로직) 구성 |
코드베이스 구조
도구 | 기능 |
| 파일의 엔티티, 개념 및 관계 개요 |
| 어떤 모듈에 어떤 도메인 개념이 포함되어 있는지 표시 |
| 주요 타입과 데이터가 코드베이스를 통해 어떻게 흐르는지 표시 |
| 특정 타입이 파일과 호출 사이트 전반에 걸쳐 어떻게 전파되는지 추적 |
리소스
리소스 | 기능 |
| 세션 브리핑: 주요 규칙, 약어, 핵심 개념, 대조 쌍 및 어휘 경고. |
작동 원리
ontomics는 API 키 없이 로컬 머신에서 완전히 다단계 파이프라인을 실행합니다:
파싱(Parse) — tree-sitter가 소스 파일에서 모든 식별자, 시그니처 및 호출 사이트를 추출합니다.
분석(Analyze) — TF-IDF 점수가 도메인별 개념을 식별하고 명명 규칙을 감지합니다.
임베딩(개념) — BGE-small(384차원)이 의미론적 유사성에 따라 관련 개념을 클러스터링합니다.
임베딩(로직) — CodeRankEmbed(768차원)가 원시 함수 본문을 임베딩하고 동작 유사성에 따라 클러스터링합니다.
중심성(Centrality) — PageRank가 구조적 중요도에 따라 엔티티 점수를 매깁니다.
두 임베딩 모델 모두 첫 실행 시 한 번 다운로드되어 로컬에 캐시됩니다. 인덱스는 <repo>/.ontomics/index.db에 저장되며, 이후 시작 시 캐시에서 로드하고 파일 변경 사항을 감시합니다.
설정은 저장소 루트의 .ontomics/config.toml을 통해 수행합니다. 모든 필드에는 합리적인 기본값이 있습니다. 전체 설계 계약은 SPEC.md를 참조하세요.
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