公司动态
终端里的 AI 结对编程:OpenCode 落地指南
终端里的 AI 结对编程OpenCode 落地指南【免费下载链接】opencodeThe open source coding agent.项目地址: https://gitcode.com/GitHub_Trending/openc/opencodeOpenCode 是一款跑在终端里的开源 AI 编程工具解决你每天在命令行里反复复制粘贴上下文给聊天框的痛点它直接读你的代码库、改文件、跑测试改完把 diff 摆到你面前。模型不绑死Anthropic、OpenAI、Google 的密钥都能用随时切换。它到底能帮你做什么给它一个目录它就能自己搜索、读文件、动手改。几个典型场景排查一段报错日志 → 它自己翻文件定位到行顺手给出修复重构 2000 行的遗留模块 → 一句话指令自动出 diff 供你审接手完全陌生的代码库 → 切到 plan 模式先只读侦察不碰一行代码场景交给 OpenCode 之后报错日志定位自动读取相关文件指出问题行并给出修复 diff遗留模块重构一句话描述目标产出可 review 的 diff陌生代码库摸底plan 只读 agent 先侦察确认方向再让 build 动手装好 OpenCode安装与环境自检系统要求不苛刻macOS 12 / LinuxUbuntu 20.044GB 内存起步磁盘留 1GB装之前跑一下df -h ~和free -h确认余量就行。安装推荐这一条命令npm i -g opencode-ailatestHomebrew 用户可改用brew install anomalyco/tap/opencode官方一键脚本等其他方式见 README 安装一节。装完敲opencode --version确认版本号。如果终端提示 command not found执行以下两行——echo export PATH$HOME/.opencode/bin:$PATH ~/.zshrc source ~/.zshrc[!TIP] bash 用户把~/.zshrc换成~/.bashrc即可。OpenCode 需要模型提供商的 API Key 才能调模型。如果第一次运行时提示缺少 key执行下面这段把密钥写进当前会话和 shell 配置——export ANTHROPIC_API_KEY你的密钥 echo export ANTHROPIC_API_KEY你的密钥 ~/.zshrcOpenAI、Google 同理把变量名换成OPENAI_API_KEY或GOOGLE_API_KEY即可。跑通第一个真实任务终端 AI 编程实战场景项目里npm test挂了报TS2304: Cannot find name userStore。在项目根目录输入——opencode run npm test 报 TS2304: Cannot find name userStore 帮我定位是哪个文件漏了 import 并修掉run子命令发一条 prompt 进去、干完自动退出适合这种单次任务opencode不带参数则是交互式界面可以多轮对话。看到什么它先全库搜索userStore的定义和引用逐个读取候选文件判断哪一侧漏了 import全过程在终端里滚出来随时可以打断。结果长这样——一个可直接 review 的 diff--- a/src/store/index.ts b/src/store/index.ts import { userStore } from ./user改完它会顺手重跑测试确认通过你决定收不收不满意说一句改回去就行。[!NOTE] ⚠️ 默认每次改文件、跑命令都会弹授权确认这是它的自我保护确认到烦了在可信目录里可以加--yolo自动批准。让它真正融入你的工作流Tab 切换 build / plan 双 agent。build 是默认全权限的动手 agentplan 是只读 agent。接手陌生代码库时先按 Tab 切到 plan 让它讲清楚结构再切回 build 下指令改错方向的成本低很多。CI 流水线里直接调opencode run。opencode run 同步 CHANGELOG --format json是非交互模式输出结构化事件天然适合写进 CI 脚本或定时任务让仓库的例行维护自动发生。VS Code 侧边栏联动。在编辑器里打开 OpenCode 会话左边写代码、右边看它读文件和改动的 diff审批点一下就合入不用来回切窗口。[!TIP] 项目根目录放一个 AGENTS.md相当于给 AI 写的岗位说明书把测试命令、代码风格写进去每个新会话都自动遵守。打开你手边那个最乱的项目目录敲opencode把最头疼的那个函数或那段报错直接甩给它看它怎么拆解。【免费下载链接】opencodeThe open source coding agent.项目地址: https://gitcode.com/GitHub_Trending/openc/opencode创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考