jahala/tilth
Smart(er) code reading for humans and AI agents. Reduces cost per correct answer by ~40% on average. Install: cargo install tilth -or- npx tilth
What it solves
AI 에이전트가 코드를 읽을 때 발생하는 높은 비용과 비효율성을 줄여줍니다. 특정 함수를 찾거나 호출 체인을 이해하기 위해 여러 번의 도구 호출(globbing, 전체 파일 읽기, grepping 등)을 수행하는 대신, tilth는 단 한 번의 호출로 구조적 인지 능력을 제공하여 토큰 사용량을 크게 낮추고 정확도를 높입니다.
How it works
Tilth는 빠른 검색을 위해 ripgrep을, 16개 언어에 대한 AST 파싱을 위해 tree-sitter를, 그리고 속도를 위해 메모리 맵 파일 읽기를 결합합니다. 코드를 단순한 텍스트가 아닌 구조적으로 분석하여 다음과 같은 기능을 제공합니다:
- Outline large files: 대규모 파일의 전체 내용 대신 구조적 요약을 자동으로 제공하여 토큰을 절약합니다.
- Find definitions: 심볼이 단순히 언급된 곳보다 심볼이 정의된 위치를 우선적으로 찾습니다.
- Trace call chains: 검색 결과에 "callee footer"를 포함하여 에이전트가 새로운 검색 없이도 함수 호출을 따라갈 수 있게 합니다.
- Structural Diffing: 라인 단위가 아닌 함수 단위로 변경 사항을 감지합니다.
- MCP Integration: Model Context Protocol (MCP) 서버로 작동하여, Claude Code나 Cursor와 같은 AI 에이전트가 이러한 구조적 도구를 직접 사용할 수 있게 합니다.
Who it’s for
- 대규모 코드베이스를 효율적으로적으로 탐색해야 하는 AI 에이전트 및 LLM 기반 코딩 어시스턴트.
- 코드 정의, 의존성 및 호출 지점을 탐색하기 위한 빠르고 구조적인 CLI 도구를 원하는 개발자.
Highlights
- Cost Reduction: 다양한 모델에 걸쳐 정답당 비용이 38-44% 감소함을 벤치마크 결과가 보여줍니다.
- Structural Search: 단순한 문자열 매칭이 아닌, tree-sitter를 사용하여 실제 정의와 호출 지점을 찾습니다.
- Smart Outlining: 토큰 수(~6000 tokens)에 따라 전체 내용과 구조적 개요(outline) 사이를 전환합니다.
- Broad Language Support: Rust, TypeScript, Python, Go, Java를 포함한 16개 언어를 지원합니다.
- Hash-Anchored Editing: 해시를 사용하여 편집이 코드의 올바른 버전의 적용되도록 보장하는 선택적 편집 모드입니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트