主流 Agent 入门教程 / CodeBuddy
12. 桌面版与插件版
原文备份 · 第 14 / 16 篇 · 查看极客时间原知识库 ↗
本篇目录 · 8 节
来源:CodeBuddy
前面十章都在终端里。这一章换个场景。
不是说 CLI 不够好——而是它并不总是最合适的工具。用对工具的前提是知道每个工具擅长什么。
什么时候该从 CLI 切到桌面版
| 你在干什么 | 该用哪个 | 为什么 |
|---|---|---|
| 批量改几十个文件 | CLI | 脚本化、可重放、能接 CI |
| 接进流水线 / 定时任务 | CLI | 只有命令行能被调用 |
| 在服务器或容器里干活 | CLI | 没有图形界面 |
| 想看着 diff 一点点改 | Desktop / 插件 | 可视化 diff 比终端里读 patch 舒服得多 |
| 断点调试、看变量 | Desktop / 插件 | CLI 里你只能靠 print 和日志 |
| 从零做一个带界面的东西 | Desktop | 有预览,能边看边调 |
| 边写边要补全 | 插件 | 补全必须在编辑器里 |
| 设计稿转代码 | Desktop | 需要上传设计稿和可视图 |
一句话的判断标准:要"看"和"点"的,用桌面版或插件;要"批量"和"自动"的,用 CLI。
装 Desktop
macOS
- 打开官网下载页,下载 macOS 版安装包(.dmg)
- 双击打开,把图标拖进 Applications
- 首次打开如果提示"来自身份不明的开发者",去「系统设置 → 隐私与安全性」里点"仍要打开"
- 启动后按提示登录(和 CLI 一样的几种登录方式)
Windows
- 下载 Windows 版安装程序(.exe)
- 双击运行,按向导下一步
- 如果 SmartScreen 弹窗,点"更多信息 → 仍要运行"
- 启动后登录
Apple 芯片的 Mac 和 Intel 的 Mac 安装包不一样,下载时注意选对。不确定自己是哪一种:左上角苹果图标 → 关于本机,看"芯片"那一行。
WSL2 用户:Desktop 是 Windows 程序,装在 Windows 侧。它可以直接打开 WSL 里的项目目录——启动后选择"打开文件夹"时,WSL 的项目路径在 \\wsl$\Ubuntu\home\你\... 下面(或者在 WSL 终端里敲 explorer.exe . 直接用 Windows 资源管理器打开当前目录,再拖进去)。
界面长什么样
第一次打开你会看到三块区域:
- 左侧:文件树 + 会话列表
- 中间:对话区(和 CLI 里一样,用自然语言说需求)
- 右侧/下方:结果区——代码 diff、文件列表、预览
和 CLI 最大的区别有两个:
一是 diff 是可视化的。 CLI 里你看到的是文本 patch,这里你能看到并排的旧/新代码,能一行一行地点"保留"或"撤销"。改错了一行,不用整个推翻。
二是能真的调试。 它有运行环境,能打断点、看变量、看调用栈。CLI 里遇到复杂逻辑问题,你只能加 print 再跑一遍;这里可以直接停在那儿看。
同一个案例在 Desktop 里做一遍
我们把第 4 章那个"接手陌生仓库"在 Desktop 里重做一次,你就能感受到差别了。
第一步:打开项目。 启动 Desktop,选择"打开文件夹",选 ~/playground/legacy-repo(或你自己的项目)。
第二步:建记忆。 在对话框里输入:
/init
和 CLI 里完全一样。CODEBUDDY.md 会生成在同一个位置——这是关键:三端共享同一份项目记忆。
第三步:让它考古。
读一遍这个项目,告诉我它干什么、怎么启动、有哪些隐患。
先不要改代码。
第四步:看 diff。 让它修 Flask 那个 before_first_request 的问题。改完之后,右侧结果区会显示改动的文件列表,点进去能看到并排 diff。你可以逐行决定要还是不要。
对比一下两种体验:
| CLI | Desktop | |
|---|---|---|
| 建记忆 | /init |
一样 |
| 看改动 | git diff(文本 patch) |
并排可视化 diff,可逐行取舍 |
| 确认命令 | 弹一个 Y/n | 有命令执行面板,能看到完整命令再决定 |
| 验证启动 | 自己在终端跑 | 可以直接点运行、看输出、打断点 |
| 检查改动范围 | git status |
结果区直接列出所有被改的文件 |
哪个更好? 取决于你在干什么。这个案例里 Desktop 更舒服——因为你主要是在"看"和"验证"。但如果你的任务是"把两百个文件的 class 组件改成函数组件",CLI 的脚本化和可重放就是决定性的优势。
三端怎么配合
共享的部分:
CODEBUDDY.md 三端都读
.codebuddy/rules/ 三端都读
.codebuddy/settings.json 三端都读
.codebuddy/agents/ 三端都读
所以你在 CLI 里建立的规矩,切到 Desktop 里照样生效——这就是第 10、11 章那套配置最值钱的地方,它不绑工具。
具体说:项目级的 CODEBUDDY.md、.codebuddy/rules/、.codebuddy/agents/、.codebuddy/skills/ 三端都读。唯一的例外是 CodeBuddy 自己的 Hooks(第 11.4 节)——那是 CLI 运行时的机制,Desktop 有自己的执行环境,hooks 不一定会被触发。如果你依赖某个 hook 做安全拦截,跨端时要重新验证一遍,别默认它在那边也生效。
不共享的部分:
~/.codebuddy/CODEBUDDY.md 用户级,跟着机器走,但三端在同一台机器上都读
会话历史 CLI 的 /resume 和 Desktop 的会话列表是两套
会话历史不互通,这是当前的现实——你不能在终端里接着桌面版的会话继续聊。
我的实际用法,供你参考:
- 日常写代码:插件(在编辑器里补全和问答最顺)
- 批量改动、接 CI、服务器上干活:CLI
- 接手陌生项目、做原型、需要调试或预览:Desktop
- 项目规矩:写在
.codebuddy/里,三端共享
不需要忠诚于某一个。需要什么拿什么。
生态能力简介
Desktop 版有些能力是 CLI 没有的,简单提一下,用不用看你:
- 设计稿转代码:上传 Figma/图片设计稿,生成前端代码
- 后端集成:接 CloudBase、Supabase 这类托管后端,做带数据存储的应用
- 一键部署:做完直接发布成可访问的链接
- 可视化调试:前面说过了
这些能力面向的是"从零做一个能用的应用"这个场景,和 CLI 面向的"在既有代码库上干活"是两条路。
选择建议
| 你是谁 | 建议 |
|---|---|
| 后端 / 全栈开发者,日常在既有仓库里改 | CLI 为主,插件做补全 |
| 前端开发者,经常做界面 | 插件为主,Desktop 做原型 |
| DevOps / SRE | CLI,几乎不用别的 |
| 产品 / 设计 / 编程初学者 | Desktop |
| 学生 / 自学编程 | Desktop 入门,熟练后转 CLI |
如果你不知道选哪个:先用 Desktop(门槛最低),等你需要"批量改文件"或者"接进自动化"的时候,自然就会用到 CLI。到时候回来翻第 2、3 章就行。
常见坑
Desktop 里改了代码,CLI 里看不到。 不存在这个问题——同一个文件系统,同一份 git 仓库。只是两边的会话历史不互通。
规则在 Desktop 里没生效。 确认规则文件在 .codebuddy/rules/(项目级)而不是只有用户级。项目级的三端都读。
WSL 里的项目打开很慢。 可能是因为路径经过了网络映射。把项目放在 WSL 自己的文件系统里,通过 \\wsl$\... 路径打开,不要放在 /mnt/c/。
插件版和 Desktop 版冲突。 不冲突,它们是独立的。但同一个项目里三个工具同时改文件容易打架——同一时间只用一个工具改代码。
最后一章,把常用的东西整理成速查表。