内容
# LeanToken — 用于编码代理的基于令牌的存储库上下文
LeanToken 为编码代理提供存储库的相关部分,而无需重复读取整个文件。它作为只读 CLI 和 MCP 服务器在本地运行,在 SQLite 中索引源代码,并将检索限制在明确的令牌预算内。
## 安装
通过一条命令为您的编码代理设置 LeanToken:
```bash
npx leantoken setup
```
npm 包下载适用于基于 glibc 的 Linux(x64 或 arm64)、macOS(Intel 或 Apple Silicon)或 Windows x64 的预编译 LeanToken 二进制文件。向导检测已安装的客户端,让您选择要配置的客户端,并将 LeanToken 注册为全局 MCP 服务器。每个客户端都在活动工作区中启动它。
当设置通过 `npx` 运行 时,它会注册版本化的 npm 命令,而不是临时缓存路径。也可以使用全局安装:
```bash
npm install --global leantoken
leantoken setup
```
支持的客户端包括 Claude Code、Cursor、OpenCode、Codex、Gemini CLI 和 Antigravity。要跳过向导,请显式选择客户端或配置所有客户端:
```bash
npx leantoken setup --claude --codex --yes
npx leantoken setup --all --yes
```
设置仅安装 `leantoken` MCP 条目。它不会添加技能、规则或 shell 钩子。以后可以使用以下命令删除生成的条目:
```bash
npx leantoken remove
npx leantoken remove --all --yes
```
要从源代码构建,请安装 Rust 1.95 或更高版本和本机 C/C++ 工具链,然后运行 `cargo install --git https://github.com/morluto/leantoken`。
## 变化
没有 LeanToken,存储库探索通常意味着广泛的文件搜索、整个文件读取和在交接后重复源代码。有了 LeanToken,代理可以发现路径、检查结构或排名匹配,并仅检索所需的源代码范围。排名任务上下文在范围仍不确定的情况下仍然可用。
主机代理仍然拥有编辑、命令、测试、对话状态和模型编排。LeanToken 处理存储库发现和有界源代码检索。
## 可用工具
| 工具 | 用途 |
| --- | --- |
| `leantoken_files` | 浏览紧凑的树或查找不包含源代码体的路径。 |
| `leantoken_search` | 搜索文本、正则表达式、标识符、符号或语法引用。 |
| `leantoken_outline` | 返回定义、签名、父项、导入和范围。 |
| `leantoken_read` | 在令牌限制下读取确切的行或符号范围。 |
| `leantoken_context` | 当狭窄的发现使范围不确定时,排名任务证据。 |
目录保持较小,因为每个工具描述和模式都消耗模型上下文。
## CLI 使用
LeanToken 也可以直接使用:
```bash
leantoken --root /path/to/repo index
leantoken --root /path/to/repo search handle_request --mode identifier --max-tokens 800
leantoken --root /path/to/repo context \
--task "fix request cancellation during shutdown" \
--budget 2000
```
通过 stdio 手动运行 MCP 服务器:
```bash
leantoken --root /path/to/repo mcp
```
示例手动客户端配置:
```json
{
"mcpServers": {
"leantoken": {
"command": "leantoken",
"args": ["--root", "/path/to/repo", "mcp"]
}
}
}
```
## 工作原理
LeanToken 索引源代码一次,然后提供紧凑的路径、排名匹配、结构大纲、精确的源代码范围和任务特定的上下文。渐进式披露和内容哈希减少了广泛的读取,并在回合或模型交接时抑制了未更改的证据。
主要指标是每个模型令牌提供的有用存储库证据。
## 文档
- [使用和工具参考](docs/usage.md)
- [架构和可靠性](docs/architecture.md)
- [路线图](docs/roadmap.md)
- [开发和测试](docs/development.md)
- [基准测试方法](benchmarks/README.md)
- [实验和线路成本测试](docs/measurement.md)
## 许可证
MIT OR Apache-2.0