关于 Delphi Code
Delphi Code 是面向编码 Agent 的本地代码搜索 MCP 服务,可索引本地项目及 GitHub、Bitbucket 仓库,并跨仓库按语义查找相关文件。索引和搜索在本机离线运行,支持本地模型。
主要功能
- 01索引本地及远程仓库
- 02跨项目语义搜索代码
- 03仅重新嵌入变更文件
- 04提供本地搜索 Web 界面
- 05连接多种编码 Agent
适用场景
- 01查找跨仓库功能实现位置
- 02用自然语言搜索代码逻辑
- 03同步并搜索多个项目
- 04让编码 Agent 检索本地代码
MCP 相关
通过 stdio 提供 MCP 工具,使编码 Agent 能调用 Delphi Code 的代码搜索。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
9收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| path | array | 否 | 仅返回 path 与以下某个 glob 模式匹配的结果,例如 src/* |
| limit | integer | 否 | 结果的最大数量;默认值为 10 |
| query | string | 是 | 描述你要查找的行为,而不是单个关键词 |
| project | string | 否 | 项目路径、索引键或文件夹名称,用于限定在单个项目内;省略则搜索所有已索引的仓库 |
| language | array | 否 | 仅返回这些语言的结果 |
详细介绍
Delphi Code
让你的编码 Agent 浏览所有代码仓库中的代码。为本地项目以及 GitHub 或 Bitbucket 仓库建立索引,然后询问“Web 应用请求退款时,后端在哪里处理?”即可一次性从所有仓库中找到相关文件,即使没有任何文件包含这些词语。

- 隐私保护: 你的代码不会离开本机。索引和搜索使用本地模型离线运行;无需账户、云服务提供商或后台守护进程。
- 快速: MCP 服务会一直加载模型,因此重复搜索几乎是即时完成的。无需 GPU。
- 兼容你的 Agent: Claude Code、Claude Desktop、Codex、Cursor、VS Code、Gemini CLI 和 OpenCode。
安装
curl -LsSf https://github.com/markdorof/delphi-code/releases/latest/download/install.sh | sh
如果需要,该脚本会安装 uv,然后运行 setup,下载一次嵌入模型,并连接检测到的所有 Agent。选项放在 sh -s -- 后面:--no-setup、--no-connect、--version VERSION。如果已安装 uv:
uv tool install --managed-python --python 3.14 delphi-code
delphi-code setup
需要搭载 Apple 芯片的 macOS 14+(Linux 未经测试,不支持 Windows)。delphi-code doctor 会检查安装情况。
使用
delphi-code add ~/src/api github.com/octo/tools # track and index projects
delphi-code search 'where are user passwords checked?'
delphi-code ui # or do it all in the browser
你的 Agent 会通过 MCP 调用同一搜索功能。安装新 Agent 后,运行 delphi-code connect。手动连接方式如下:
| Agent | 设置 |
|---|---|
| Claude Code | claude plugin marketplace add markdorof/delphi-code,然后运行 claude plugin install delphi-code@delphi-code |
| Codex | codex plugin marketplace add markdorof/delphi-code,然后运行 codex plugin add delphi-code@delphi-code |
| Cursor | 将 {"mcpServers": {"delphi-code": {"type": "stdio", "command": "delphi-code", "args": ["mcp"]}}} 添加到 ~/.cursor/mcp.json |
| VS Code (Copilot) | code --add-mcp '{"name": "delphi-code", "command": "delphi-code", "args": ["mcp"]}' |
| Gemini CLI | gemini mcp add delphi-code delphi-code mcp |
| OpenCode | 将 {"mcp": {"delphi-code": {"type": "local", "command": ["delphi-code", "mcp"]}}} 添加到 ~/.config/opencode/opencode.json |
对于 Claude Code 和 Codex 以外的 Agent,还要将技能复制到 Agent 的技能文件夹,让它知道何时应按含义搜索,而不是使用 grep。
命令
| 命令 | 功能 |
|---|---|
setup | 下载模型(或在离线机器上使用 --from DIR 导入模型),并连接 Agent。 |
add [SOURCE ...] | 跟踪并为本地路径或远程仓库建立索引(--ref 用于选择分支或标签)。如果未指定来源,则从你的 GitHub 或 Bitbucket 账户中选择仓库。 |
sync [PROJECT ...] | 更新跟踪的项目,只重新生成已更改内容的嵌入。 |
index -p PATH | 为项目建立一次索引,但不跟踪该项目。 |
search QUERY | 搜索所有索引,或使用 -p 指定一个索引。使用 --language、--path、--limit 进行筛选。 |
list、status、remove NAME | 显示跟踪的项目、显示项目索引、停止跟踪项目。 |
connect、disconnect | 在 Agent 的配置中添加或移除 Delphi Code。 |
ui | 打开本地 Web UI,用于搜索、查看项目和检查设置。 |
doctor | 检查模型和存储。 |
mcp | 通过 stdio 将这些命令作为 MCP 工具提供服务。 |
-p 接受路径或已建立索引的项目名称。index 和 add 会跳过 .gitignore 中列出的文件,并接受 --ignore、--path 和 --language。每个命令都支持 --help,大多数命令还支持 --json,以便用于脚本。只有 setup、add 和 sync 会使用网络。
设置
| 变量 | 用途 |
|---|---|
GITHUB_TOKEN / GH_TOKEN | 用于访问远程仓库(依次回退到 gh auth token,然后是 git 的凭据) |
BITBUCKET_APP_PASSWORD 与 BITBUCKET_EMAIL 或 BITBUCKET_USERNAME 配合使用 | 用于访问 Bitbucket(也可使用 API 令牌) |
DELPHI_CODE_MODEL | 使用其他本地 SentenceTransformers 模型,而非默认的 all-MiniLM-L6-v2 |
DELPHI_CODE_INDEX_ROOT、DELPHI_CODE_REGISTRY、DELPHI_CODE_LOG_FILE | 更改索引、受跟踪的项目列表或日志的位置 |
DELPHI_CODE_LOG_LEVEL | DEBUG、INFO、WARNING、ERROR 或 OFF |
在 macOS 上,数据存储于 ~/Library/Application Support/delphi-code;在 Linux 上,存储于 ~/.local/share/delphi-code。
升级和卸载
uv tool upgrade delphi-code
模型和索引会保留。如果命令因 index_incompatible 失败,请删除其所指的索引目录,然后再次运行 sync。如需了解变更,请参阅版本发布。
delphi-code disconnect
uv tool uninstall delphi-code
rm -rf ~/Library/Application\ Support/delphi-code
uv cache clean # frees about 900 MB of downloaded packages
如果安装脚本安装了 uv,而你不再需要它,可以卸载 uv及其 Python。
许可证
Apache-2.0。请参阅 THIRD_PARTY_NOTICES.md。如需贡献,请参阅 CONTRIBUTING.md。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。