使用 OpenCode+DeepSeek 进行Java编程
文中参考网址
- OpenCode官网网址:https://opencode.ai/
- DeepSeek官网网址:https://www.deepseek.com/
- Windows命令行简易入门
1. 工具简介
1.1 OpenCode 简介
OpenCode 是一个开源的终端 AI 编码助手,在终端里直接和 AI 对话就能完成代码编写、Bug 修复和项目重构。它采用 Client/Server 架构,支持 75+ 种 AI 模型提供商,包括 OpenAI、Anthropic、Google Gemini 和 DeepSeek、GLM 等。
1.2 DeepSeek V4 大模型简介
国内的DeepSeek V4 于 2026 年 4 月发布,是国内顶级开源权重模型。其有两个版本 V4-Pro、V4-Flash。OpenCode可以与DeepSeek API结合,进行基于自然语言描述的程序开发。
主要特点:
- 100 万 token 上下文
- Agent 原生优化:可与OpenCode等Agent工具集成。
- MIT 协议开源:支持国产华为昇腾 NPU。
- 价格便宜
1.3 Windows下OpenCode CLI与命令行、PowerShell与WSL2
OpenCode CLI(Command-Line Interface) 是一个开源的、模型无关的 AI 编程助手命令行工具,可以在终端中直接运行,提供智能化的代码开发支持。
实际上,OpenCode 还提供了 GUI 界面,但是 GUI 版本目前仍处于早期实验阶段,功能远不如 CLI 成熟。
在Windows上使用OpenCode CLI,你会遇到三种命令行环境,它们的定位和关系如下:
三者定位
| 环境 | 性质 | 适合场景 |
|---|---|---|
| CMD | 老式命令提示符 | 简单命令,不推荐用于OpenCode |
| PowerShell | 现代化命令行 | OpenCode原生支持,直接可用。Windows中的“终端”实际上调用的就是PowerShell |
| WSL2 | Linux子系统 | Linux原生体验,插件全兼容,体验最佳,推荐使用 |
总结:
追求省心用PowerShell,追求体验用WSL2。
两者可以共存——日常开发进WSL,临时测试用PowerShell。但初学者,还是使用PowerShell就行了(Windows 11下打开终端就是打开PowerShell)。因为WSL2的安装与使用将又是一个小门槛。
2. OpenCode 安装、配置与使用
OpenCode可以安装在多种类型操作系统上,Linux与macOS操作系统下对其支持最好,Windows下官方建议先安装WSL2(Windows Subsystem Linux)后然后在其上安装OpenCode。当然如果只是初学者,想快速体验一下,在Windows下亦可直接安装。
OpenCode有终端版和桌面版等。但现在桌面版功能还不是特别全,建议安装OpenCode终端。
2.1 Windows 安装 OpenCode 终端
在Windows下直接安装OpenCode终端:
- 安装Node.js。
- 通过Node.js的包管理器npm安装OpenCode终端。
2.1 以管理员权限启动PowerShell:按住Win+X,选择*Windows PowerShell终端(管理员)。也可以按Win键,输入powershell,点击以管理员身份运行**.
2.2 执行安装命令:npm i -g opencode-ai
2.3 验证安装成功:opencode -version
对Windows终端、CLI不熟悉的可阅读如下文章:
如果是在WSL下,则使用如下命令安装:curl -fsSL https://opencode.ai/install | bash
更多安装方法见官网。
2.2 启动 OpenCode 终端(OpenCode TUI)并创建Java项目
启动 OpenCode 之前,首先要理解项目目录这个概念。
当你编写某个程序项目,一般会包含多个文件与子目录。而项目目录就是这些文件与子目录共同所在的根文件夹。
为了演示,在D:\盘下建立一个firstprj项目,将该目录作为项目目录。
详细步骤如下:
- 打开PowerShell。
- 创建并进入项目目录
firstprj后,执行OpenCode命令打开OpenCode终端:

具体命令如下:
d:\
md firstprj
cd firstprj
opencode
如果启动成功,则打开OpenCode 终端(OpenCode TUI界面):
在中间的对话框中可以输入你想要做的事,比如可以输入:
- 你现在后台用的是什么大模型
- 以后请使用中文回复我
- 现在使用的JDK是什么版本
如果没有配置,OpenCode默认使用的是免费的专为编程优化的Big Pickle大模型,编写一个小程序不成问题。
比如,输入编写一个Java类Calculator支持通过命令行给定参数"操作数1 运算符 操作数2"执行加减乘除运算并输出结果,编写好以后进行测试。不要使用pom项目。,接下来OpenCode就开始编写代码、创建文件、编译然后运行测试。如下图所示(注意:不同机器对上述提示词可能会使用不同的方法来完成该任务,在你电脑上的返回结果也许和文中截图不一致,但完成加减乘除的核心逻辑与异常处理方法,应该基本一致。):
查看一下项目目录中的文件,如下图所示:
可以看到,OpenCode生成了Calculator.java源代码文件,并编译得到了Calculator.class字节码文件。
回顾一下刚才的编码过程,我们实际上并不是直接在 PowerShell 命令行中输入自然语言让 OpenCode 执行任务,而是:
- 在 PowerShell 中启动 opencode 命令;
- 进入 OpenCode 的 TUI 界面(不再是 PowerShell 提示符);
- 在该 TUI 中输入自然语言描述;
- OpenCode 调用大模型在后台完成任务,并通过相同的 TUI 进行反馈。
什么是OpenCode TUI?与PowerShell这种CLI有什么不同?
OpenCode TUI 就是之前启动 OpenCode 后看到的那个交互式界面(Terminal User Interface,终端用户界面)。
简单来说,它是 OpenCode 的"主工作台"——一个直接在终端里运行的全功能 AI 编程助手界面。
CLI 是“输入命令→执行一次→得到结果→结束”,TUI 是“进入一个界面→与 AI 持续对话→AI 可以帮你做一系列操作”。
2.3 OpenCode常见基本概念与命令
2.3.1 常见斜杠命令(slash command)介绍
OpenCode TUI下有很多斜杠命令(slash command),使用斜杠(/)激活。如,输入/theme可以切换TUI的界面主题。
而/models命令可以选择后台大模型,有时会有一些免费大模型可用,如下图所示:
从图片中可以看到,最近大火的 DeepSeek V4 Flash 暂时是免费使用的。
初学者还应掌握其他常见的斜杠命令,如:
/help – 帮助命令。当你忘记某个命令或不知道下一步该做什么时,输入 /help 命令名(如, /help models)会显示当前可用的所有命令和简要说明。
/new – 开始新对话。如果你想清空当前会话的上下文,从头开始一个新的任务,可以使用 /new。这不会影响已修改的代码文件,只是重置了与AI的“聊天记忆”。
/exit – 退出OpenCode。当你完成工作,想要退出TUI界面时,输入 /exit 即可安全退出。
Ctrl + P - 打开命令面板 (Command Palette),会列出所有可用的斜杠命令 (/),并以搜索框的形式呈现。当你记不清具体命令(比如是 /theme 还是 /themes)时,通过 Ctrl+P 呼出面板,再输入关键词(如 theme)进行模糊搜索并执行,是最快捷的查找方式。
/init – 初始化项目上下文。当你打开一个已有的代码项目,OpenCode并不了解这个项目的具体情况。输入 /init 后,它会扫描项目结构、读取关键文件(如 package.json、README.md、requirements.txt 等),快速建立对项目的“认知”。这样后续提问时,AI就能基于你的实际项目给出更精准的回答。其常见使用场景:
- 第一次打开一个新项目
- 项目结构发生了较大变化(如新增了模块)
- AI 的回答明显“跑偏”,不了解你的项目
刚才我们在firstprj目录新建了Calculator.java并进行了编译,执行完\init命令行,OpenCode可能会这样回答你。
+ Thought: 13.1s
调查完毕。该仓库极其简单——只有 Calculator.java 和编译后的 .class 文件。没有构建系统、测试框架、CI、配置文件或隐藏文件。仓库甚至没有 git 初始化
OpenCode默认使用英文回答你的问题,可以在对话框中输入“我希望你始终使用中文回复。”
连按两次esc - 中断当前会话。有的时候开始执行某个会话的时候,发现错了,希望它停下来,可以连续按两次esc键,让当前正在运行的会话停下来。
2.3.2 Plan与Build模式
OpenCode有Plan与Build两种模式,如图所示:

Plan 模式:计划模式,在该模式下OpenCode不会生成与修改任何代码,只有读代码的权限并负责分析需求和生成方案;Build 模式:构建模式,在该模式下可以执行代码编写与文件修改。
建议工作流:
- 按
Tab键进入 Plan 模式,可以通过自然语言和后台的大模型沟通需求、设计方案。 - 再次按 Tab 键(或输入 /build)切换到 Build 模式执行落地
比如,对前面的新建的Calculator,你想要编写一个简单的基于Java Swing的图形界面版本的计算器。你可以在 Plan 模式下,输入如下指令:可以为其编写一个Swing GUI界面吗?
OpenCode就会进行分析,并尝试给出设计方案,如下图所示:
注意:其在给出的设计方案的过程中会和你进行交互等待你确认后再逐步继续下去。
图中OpenCode在询问“界面布局”要怎么选,如果在这里选择3. Type your own answer,你可以自己描述你想要的布局。
图中还可以看到,后面还将对“运算模式”、“文件结构”进行询问。这里进行了如下选择:
这时候按enter就对设计方案进行了提交。提交后后台大模型经过一番规划后,会询问“需要开始执行吗?”,如果按“是”,会发现现在处于 Plan 模式无法编辑文件,如下图所示:
这时候,按 Tab 键切换到 Build 模式,输入“继续”,大模型就开始吭哧吭哧干活了,包括修改代码、新建文件、编译、测试运行。而这整个过程你都可以观察,如下图所示:
吭哧吭哧干完活后,他就会进行一个总结,如下图所示:
我们使用'/exit'推出OpenCode后,然后运行java CalculatorSwing,会看到如下界面:
界面风格嘛,只能说是朴实无华。怎么才能让界面更美观一点,你在 Plan 模式下设置 “界面布局” 的时候可以详细描述。
当然,现在也还可以改。你这时候希望再次进入opencode并继续上次的对话,可使用如下命令:opencode --continue
然后按 Tab 切换到 Plan 模式,告诉它“重新设计一个稍微现代感、美观一点的界面”。然后OpenCode经过一番规划,重新设计,如下图所示:
规划完后,再次切换到 Build 模式,重新编写、编译、测试运行。看看他重新设计的界面,如下图所示:
怎么样?比刚才好看的多吧。当然符合不符合你的要求,还是要由你决定。
2.3.3 总结:使用OpenCode编写程序
可以看到,即使使用 OpenCode 外加如此强大的大模型,编写程序也不是一蹴而就的。因为 AI 大模型虽然强大,但它并不了解你的真实需求。人机之间需要在不断的交互迭代中反复琢磨、修改,才能逐步逼近理想的结果。
这就像盖房子:AI 是一位技术娴熟的施工队,而你才是设计师。你描述一个模糊的愿景,施工队先搭出毛坯;你看了说“窗户再大一点,卧室放东边”,施工队再调整。几轮沟通后,房子才真正符合你的心意。
OpenCode 的 Plan 模式和 Build 模式,正是为了这种“沟通-执行-反馈”的迭代而设计:
- Plan 模式让你先看方案,错了只改文档,不伤代码
- Build 模式确认无误后再落地执行
所以,不必追求一次描述就让 AI 写出完美代码。多试、多改、多沟通,才是人机协作的正确节奏。
2.4 让你的OpenCode使用DeepSeek API
现在,OpenCode 可以免费使用 DeepSeek V4 Flash,像上文那种小程序的编写,它也能轻松拿捏。
不过,面对复杂的程序,DeepSeek V4 Flash 可能就力不从心了。而且免费福利未必长久,未来也可能无法使用 DeepSeek V4 Pro 这类更强大的模型。
所以,如果你确实有复杂任务需要处理,推荐购买 DeepSeek API(国产、便宜、放心),然后在 OpenCode 中配置好。如此一来,你就能拥有 OpenCode + DeepSeek 这套“大杀器”组合!
怎么做,简单来说只有进行如下几个步骤就行:
- 注册:访问 DeepSeek 官网(platform.deepseek.com),注册账号
- 充值:绑定支付方式,按需充值(费用很低,按 token 计费)
- 获取密钥:在控制台创建 API Key,复制保存
- 配置 OpenCode
- 运行 opencode 命令启动 Tui,然后输入
/connect - 在 Provider 中找到
DeepSeek填入你的 API Key - 选择合适的模型如 deepseek-v4-flash 或 deepseek-v4-pro
- 日常使用(推荐):deepseek-v4-flash(便宜、快速)
- 复杂推理任务:deepseek-v4-pro(更强、稍贵)
- 我的建议:规划(plan)的时候用 deepseek-v4-pro,构建(build)的时候用 deepseek-v4-flash - 在 "Select variant" 选择 推理深度,可暂时选择
Medium,如果觉得速度太慢或效果不好,可通过/variants选择其他推理深度。 - 验证:在 OpenCode 中发起一个简单提问,确认能正常回复即可
搞定。接下来,你就能用上“本地最强 IDE + 云端最强模型”的王炸组合了。
注意:如果刚才配置了deepseek-v4-flash,建议再配一个deepseek-v4-pro,方便以后根据不同的任务类型进行切换。
可使用/models命令进行切换。
2.5 OpenCode的其他命令(本小节全用AI生成,还未验证)
除了前面介绍的 /init、/connect 等基础命令,OpenCode 还提供了丰富的斜杠命令,帮助你更高效地管理会话和代码改动。以下是几个最常用的命令:
| 命令 | 功能 | 使用场景 |
|---|---|---|
/help |
显示帮助信息 | 忘记命令时快速查阅 |
/models |
查看并切换可用模型 | 在不同模型间切换,如从 DeepSeek V4 Flash 切换到 V4 Pro |
/compact |
压缩对话上下文 | 当对话太长、Token 接近上限时,让 AI 总结历史并释放空间 |
/undo |
撤销上一步操作 | AI 改错了文件或方向跑偏时,一键回滚 |
/redo |
重做撤销的操作 | 撤销后想恢复,用这个命令 |
/share |
生成会话分享链接 | 需要把对话记录分享给同事或保存到文档时使用 |
/export |
导出会话为 JSON 文件 | 备份重要对话或离线分析 |
/new |
开始新对话 | 清空当前会话,重新开始一个干净的任务 |
💡 实用技巧
善用 /compact 保持对话流畅:长时间使用 OpenCode 后,对话历史会越来越长,不仅消耗 Token,AI 的响应速度也会变慢。输入 /compact 后,AI 会自动总结关键信息并“忘记”不重要的细节,相当于给大脑做了一次清理。
/undo 是你的后悔药:Build 模式下 AI 会直接修改文件。如果改出来的代码不是你想要的,别慌,输入 /undo 就能撤销上一次操作,比 Git 回滚还方便 。
切换模型有快捷键:除了输入 /models,你也可以按 Ctrl+X 再按 m 快速打开模型选择面板,在 DeepSeek V4 Flash(便宜快速)和 V4 Pro(更强推理)之间按需切换 。
📌 小贴士
如果你想清空当前对话重新开始,用 /new 而不是 /clear——OpenCode 中并没有 /clear 命令 。/new 会开启一个全新的会话,之前的对话会被保存但不再占用当前上下文。
2.6 怎么让OpenCode与IDEA结合
IDEA 是优秀的代码编辑器,但它自带的 AI 能力有限;OpenCode 拥有强大的大模型支持(如 DeepSeek、GPT 等)和灵活的 Plan/Build 工作流。两者结合,相当于给 IDEA 装上了一颗 AI 大脑:你可以在熟悉的编辑界面中,直接享受 OpenCode 的智能代码生成、项目理解、方案设计等能力,无需在 IDE 和终端之间来回切换。简单说——用 IDEA 的手感,驾驭 OpenCode 的智能。
至于怎么结合?这里不用多少,随便打开一个AI大模型,问它就好了。



所有评论(0)