Deep Code 是专为 deepseek-v4 模型优化的终端 AI 编码助手,支持深度思考、推理强度控制、Agent Skills、MCP 集成,并附带一个原生 macOS 菜单栏应用。
本仓库(deepcode-macos)在 upstream deepcode-cli 基础上增加了 macOS 原生应用、headless 编程接口等功能,并持续同步上游 CLI 的所有更新。
npm install -g @vegamo/deepcode-cli在任意项目目录下运行 deepcode 即可启动。
从 Releases 下载 DeepCode-vX.X.X.dmg,拖入「应用程序」即可使用。应用以菜单栏图标形式常驻(不占据 Dock),点击图标即可唤起对话窗口,底层复用同一份 CLI 与配置。
macOS 应用为未签名 MVP,首次打开如遇 Gatekeeper 拦截,请在「系统设置 → 隐私与安全性」中点击「仍要打开」。
创建 ~/.deepcode/settings.json 文件,内容如下:
{
"env": {
"MODEL": "deepseek-v4-pro",
"BASE_URL": "https://api.deepseek.com",
"API_KEY": "sk-..."
},
"thinkingEnabled": true,
"reasoningEffort": "max"
}配置文件由 CLI、macOS 应用、VSCode 插件 三方共享,配置一次、处处可用。
完整配置说明(多层级优先级、环境变量、权限控制等)请参阅 docs/configuration.md。
Deep Code 支持可扩展的 agent skills,并内置以下开箱即用的 bundled skills:
| Skill | 用途 |
|---|---|
deepcode-self-refer |
让助手查阅 Deep Code 自身文档,自我指引 |
plan |
Plan Mode — 先只读探索、再动手的协作工作流 |
skill-writer |
编写和校验新的 Agent Skill |
skill-digester |
审阅和优化已有 skill 的描述 |
Skills 按以下优先级扫描:
| Scope | Path | Purpose |
|---|---|---|
| Project | ./.deepcode/skills/ |
Deep Code 原生位置 |
| Project | ./.agents/skills/ |
跨客户端互操作 |
| User | ~/.deepcode/skills/ |
Deep Code 原生位置 |
| User | ~/.agents/skills/ |
跨客户端互操作 |
可通过 settings.json 的 enabledSkills 字段控制启用哪些 skill(包括跳过内置 skill)。详见 docs/agent-skills.md。
每段对话都会自动持久化到 ~/.deepcode/projects/<项目>/,包含完整的消息日志和基于内部 Git 仓库的代码快照。这使得 /resume、/continue、/undo 成为可能,并且 CLI、macOS 应用、VSCode 插件之间共享同一份会话记录。详见 docs/session-persistence.md。
Ctrl+V从剪贴板粘贴图片,Ctrl+X清除已粘贴的图片。- 支持读取本地图片文件。
- 可接入视觉模型(如火山方舟 Doubao、Mimo Vision)实现图片理解。详见 docs/mimo-vision-guide.md。
| 斜杠命令 | 操作 |
|---|---|
/ |
打开 skills / 命令菜单 |
/new |
开始新对话 |
/resume |
选择历史对话继续 |
/continue |
继续当前对话,或选择历史对话恢复 |
/model |
切换模型、思考模式和推理强度 |
/raw |
切换显示模式(Normal / Lite / Raw 滚动回溯) |
/init |
初始化 AGENTS.md 文件 |
/skills |
列出可用 skills |
/mcp |
查看 MCP 服务器状态和可用工具 |
/undo |
将代码和/或对话恢复到之前的状态 |
/exit |
退出(也可用连续 Ctrl+D) |
| 按键 | 操作 |
|---|---|
Enter |
发送消息 |
Shift+Enter |
插入换行(也可用 Ctrl+J) |
Ctrl+V |
从剪贴板粘贴图片 |
Ctrl+X |
清除已粘贴的图片 |
Ctrl+R |
切换显示模式(Raw 滚动回溯) |
Esc |
中断当前模型回复 |
连续 Ctrl+D |
退出 |
deepcode headless 提供基于 stdio 的 NDJSON 协议接口,可被原生前端(如 macOS 应用)或其他程序以编程方式驱动。支持提交 prompt、中断回复、加载会话、切换项目目录等。详见 deepcode headless --help。
deepseek-v4-pro(推荐使用)deepseek-v4-flash- 任何其他 OpenAI 兼容模型(含火山方舟 Coding Plan、Doubao 等)
有的。Deep Code 提供功能完整的 VSCode 插件,可在 VSCode Marketplace 安装。插件与 CLI、macOS 应用共享 ~/.deepcode/settings.json 配置文件,可以在终端、菜单栏和编辑器之间无缝切换。
有的。本仓库提供原生 macOS 菜单栏应用,从 Releases 下载 DMG 即可安装。应用常驻菜单栏,底层调用同一份 CLI。
Deep Code 支持多模态,可用 Ctrl+V 从剪贴板粘贴图片,也支持读取本地图片文件。但目前 deepseek-v4 不支持多模态。有些模型虽然有多模态能力,但对多轮对话请求的限制太严。目前多模态输入推荐使用火山方舟的 Doubao-Seed-2.0-pro 模型,适配效果最好。
编写一个调用 Slack webhook 的 Shell 通知脚本,然后在 ~/.deepcode/settings.json 中将 notify 字段设为该脚本的完整路径即可。脚本会收到 STATUS、DURATION、BODY、TITLE 等环境变量。详细步骤请参考 docs/notify.md。
Deep Code 自带免费的、且大部分情况够用的 Web Search 工具。如果你希望使用自定义脚本进行联网搜索,可以在 ~/.deepcode/settings.json 中将 webSearchTool 设为脚本的完整路径即可。详细步骤可参考:https://github.com/qorzj/web_search_cli
Deep Code 支持 MCP(Model Context Protocol),可以连接 GitHub、浏览器、数据库等外部服务。在 settings.json 中配置 mcpServers 字段即可启用,启动后使用 /mcp 命令查看已配置的 MCP 服务器状态和可用工具。
详细配置指南:docs/mcp.md
不是。Deep Code 内置了细粒度的权限控制机制,支持在 AI 助手执行 Shell 命令、读写文件、访问网络、调用 MCP 工具等操作前进行确认。你可以通过 settings.json 中的 permissions 字段按需配置每种权限范围的策略:始终允许(allow)、始终询问(ask)、或直接拒绝(deny)。详见 docs/permission.md。
支持。只要把 ~/.deepcode/settings.json 的 env.BASE_URL 配置为 OpenAI 兼容的接口地址就行。以火山方舟的 Coding Plan 为例:
{
"env": {
"MODEL": "ark-code-latest",
"BASE_URL": "https://ark.cn-beijing.volces.com/api/coding/v3",
"API_KEY": "**************"
},
"thinkingEnabled": true
}欢迎贡献代码!以下是参与方式:
# 克隆仓库
git clone https://github.com/wenjiazhu1980/deepcode-macos.git
cd deepcode-macos
# 安装依赖
npm install
# 运行测试
npm test
# CLI本地开发(类型检查 + lint + 格式检查 + 构建)
npm run build
# CLI链接到全局(即本地全局安装)
npm link
# VSCode插件本地开发
npm run build:vscode
- 提交 PR 前请确保
npm run check通过(类型检查 + lint + 格式检查) - 建议在执行构建前,先执行
npm run format自动格式化代码,避免构建报错 - 本仓库会持续合并 upstream deepcode-cli 的更新
- 在 GitHub Issues 上报告错误或请求功能 (https://github.com/wenjiazhu1980/deepcode-macos/issues)
- MIT
如果你觉得这个工具对你有帮助,请考虑通过以下方式支持我们:
- 在 GitHub 上给我们一个 Star (https://github.com/wenjiazhu1980/deepcode-macos)
- 向我们提交反馈和建议
- 分享给你的朋友和同事
