关于 miru
miru 为编码 Agent 提供混合语义与关键词代码搜索,可返回相关文件路径、行号和源码片段。它结合向量嵌入、BM25 与代码感知排序,并在首次使用时建立索引、监视本地文件变化。
主要功能
- 01按代码含义搜索
- 02查找字符串、正则和文件名
- 03读取相邻代码片段
- 04查找其他文件中的相似代码
- 05支持 26 种语言的语法分块
适用场景
- 01定位代码库中的认证配置
- 02查找特定常量或文件
- 03查看代码位置附近内容
- 04寻找跨文件的相似实现
MCP 相关
miru 通过 MCP 暴露搜索、定位、扩展代码片段、查找相关代码等工具。服务首次使用时建立索引,并监视本地文件变化。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Miru(見る)
面向 AI 编码 Agent 的混合代码搜索。
询问代码库中某项功能在哪里实现。Miru 会通过 MCP 返回相关文件路径、行号和源代码片段。
安装
需要安装 Bun 1.1 或更高版本,并确保 bunx 位于 PATH 中。
Claude Code(推荐)
在 Claude Code 中运行:
/plugin marketplace add takara-ai/miru-code
/plugin install miru@miru
重新加载插件或重启 Claude Code,然后提问:
Use Miru to find where authentication is configured in this project.
如果缺少凭据,Claude 可以使用 Miru 的 auth 工具启动登录流程。批准登录代码,然后重试搜索。插件凭据与 CLI 凭据彼此独立。
其他 Agent
请参阅 Agent 集成,了解 Codex 和 Cursor 插件。Cursor 插件提供技能和规则;使用下方的 CLI 安装程序连接其 MCP 工具。
安装(CLI 备用方式)
用于终端操作或通过 CLI 配置的 Agent:
bun add -g @takara-ai/miru-code
miru setup
miru install
在安装程序中选择你的 Agent,然后重启它们。请参阅支持的集成。使用 miru uninstall 移除配置。
试用
miru search "auth middleware" ./src
miru locate REDIS_HOST ./src
miru expand src/auth.ts 42 ./src
miru find-related src/auth.ts 42 ./src
脚本可使用 --json。运行 miru <command> -h 查看选项。
MCP 工具
| 工具 | 用途 |
|---|---|
search | 按含义查找代码 |
locate | 查找精确字符串、正则表达式匹配项或文件名 |
expand | 阅读同一文件中的相邻代码块 |
find_related | 在其他文件中查找相似代码 |
auth | 登录或配置 SageMaker 端点 |
read_benchmark | 基准测试模式启用时读取节省的令牌总量 |
可选的 repo 参数默认为服务的工作目录。Miru 会在首次使用时构建索引,并监视本地文件的更改。
工作原理
Miru 将嵌入、BM25 和代码感知排序结合起来。Tree-sitter 为 26 种语言提供语法感知代码块;对于其他文件,则采用结构化和基于行的回退方案。
隐私与 API 使用
默认情况下,Miru 会通过 HTTPS 将文件内容(以源代码片段形式)和搜索查询发送给 Takara,以生成嵌入。API 使用可能会根据你的 Takara 套餐产生费用。
如需在自己的基础设施上生成嵌入,请使用 AWS SageMaker。设置 MIRU_WORKSPACE_ROOT,将本地 MCP 仓库路径限制在一个目录内。
文档
致谢
Miru 基于 MinishLab 的成果构建:
- semble:文件遍历、索引、BM25、混合搜索和排序信号。
- potion-code 和 Model2Vec:WordPiece 分词器。
请参阅 NOTICE 中的署名和许可证文本。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。