news 2026/4/29 13:35:17

Open Code教程(二)| 命令与技巧大全

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Open Code教程(二)| 命令与技巧大全

Open Code教程(二)| 命令与技巧大全

  • OpenCode 命令与技巧大全
    • 一、前言
    • 二、命令大全
      • 斜杠命令(/commands)
    • 三、快捷键大全
      • 基础操作
      • 消息浏览
      • Leader 键命令
    • 四、文件引用(@ 符号)
      • 技巧
    • 五、Shell 命令(! 前缀)
      • 使用场景
    • 六、Plan 模式 vs Build 模式
      • 🧠 Plan Agent(规划模式)
      • 🔨 Build Agent(构建模式)
      • 最佳实践
      • 示例工作流
    • 七、@general 子代理
      • @general
      • @explore
    • 八、会话操作
    • 九、提示词技巧
      • ❌ 不好的提示
      • ✅ 好的提示
      • 提示词要素
    • 十、图片支持
    • 十一、下一篇预告

OpenCode 命令与技巧大全

一、前言

上一篇我们完成了 OpenCode 的安装和基础配置。本文将详细介绍所有命令、快捷键和使用技巧,帮助你更高效地使用 OpenCode。


二、命令大全

斜杠命令(/commands)

在 OpenCode 中输入/可以触发命令,以下是完整命令列表:

命令功能快捷键
/help显示帮助对话框Ctrl+x h
/connect添加/配置 AI 提供商-
/models列出可用模型Ctrl+x m
/init创建/更新 AGENTS.md 文件Ctrl+x i
/new开始新会话(别名:/clearCtrl+x n
/sessions列出和切换会话(别名:/resume/continueCtrl+x l
/undo撤销上一次修改Ctrl+x u
/redo重做撤销的修改Ctrl+x r
/share分享当前会话Ctrl+x s
/unshare取消分享当前会话-
/compact压缩当前会话(别名:/summarizeCtrl+x c
/details切换工具执行详情显示Ctrl+x d
/editor打开外部编辑器编写消息Ctrl+x e
/export导出对话为 MarkdownCtrl+x x
/theme列出可用主题Ctrl+x t
/exit退出 OpenCode(别名:/quit/qCtrl+x q

三、快捷键大全

基础操作

快捷键功能
Enter提交消息
Shift+EnterCtrl+j输入换行
Ctrl+v粘贴
Ctrl+c清空输入 / 退出
Tab切换 Agent(Plan/Build)
Shift+Tab反向切换 Agent
Escape中断当前会话

消息浏览

快捷键功能
PgUp向上翻页
PgDown向下翻页
Ctrl+Alt+u向上翻半页
Ctrl+Alt+d向下翻半页
Ctrl+gHome跳到第一条消息
Ctrl+Alt+gEnd跳到最后一条消息
Ctrl+x y复制消息

Leader 键命令

OpenCode 使用Ctrl+x作为 Leader 键(可自定义),后接字母触发命令:

快捷键功能
Ctrl+x h帮助 / 显示提示
Ctrl+x m模型列表
Ctrl+x n新会话
Ctrl+x l会话列表
Ctrl+x i初始化项目
Ctrl+x u撤销
Ctrl+x r重做
Ctrl+x s分享会话
Ctrl+x c压缩会话
Ctrl+x d详情切换
Ctrl+x e外部编辑器
Ctrl+x x导出会话
Ctrl+x t主题列表
Ctrl+x b切换侧边栏
Ctrl+x aAgent 列表
Ctrl+x g会话时间线
Ctrl+x q退出

四、文件引用(@ 符号)

使用@可以快速引用项目文件,支持模糊搜索:

@api.ts 解释这个文件的作用
@src/utils/ 这个目录下的文件是做什么的?

文件内容会自动添加到对话上下文中,AI 可以直接看到文件内容。

技巧

  • 输入@后会弹出文件搜索框
  • 支持模糊匹配,输入部分文件名即可
  • 可以引用多个文件:@api.ts @types.ts 这两个文件的关系是什么?

五、Shell 命令(! 前缀)

!开头可以直接执行 Shell 命令:

!ls -la
!git status
!npm run build

命令输出会作为工具结果添加到对话中,AI 可以看到执行结果并据此回答。

使用场景

  • 查看目录结构:!tree -L 2
  • 查看 Git 状态:!git log --oneline -5
  • 运行测试:!npm test
  • 查看进程:!ps aux | grep node

六、Plan 模式 vs Build 模式

OpenCode 内置两个 Agent,按Tab键切换:

🧠 Plan Agent(规划模式)

  • 特点:只分析,不修改代码
  • 用途:规划复杂功能、评估方案
  • 标识:右下角显示 “Plan”

🔨 Build Agent(构建模式)

  • 特点:直接修改代码
  • 用途:实际编码、修复 bug
  • 标识:右下角显示 “Build”(默认)

最佳实践

  1. 复杂功能:先 Plan 规划 → 确认方案 → 切 Build 实现
  2. 简单修改:直接 Build 模式
  3. 代码审查:用 Plan 模式分析代码

示例工作流

# 1. 切换到 Plan 模式(按 Tab) 我想给用户模块添加邮箱验证功能,帮我规划一下实现方案 # 2. AI 给出方案后,确认没问题 # 3. 切换到 Build 模式(按 Tab) 按照刚才的方案开始实现

七、@general 子代理

除了 Plan 和 Build 两个主代理,OpenCode 还有内置的子代理(subagent),可以通过@提及来调用:

@general

通用子代理,用于复杂搜索和多步骤任务:

@general 在整个项目中搜索所有使用了 localStorage 的地方
@general 分析项目的依赖关系,找出可能的循环依赖

@explore

快速探索代码库的子代理,适合快速查找文件和搜索代码:

@explore 找到所有包含 "TODO" 注释的文件
@explore 这个项目的入口文件在哪里?

提示:子代理会创建子会话,你可以使用Ctrl+x →Ctrl+x ←在父会话和子会话之间切换。


八、会话操作

撤销与重做

/undo/redo功能依赖 Git,你的项目必须是一个 Git 仓库:

/undo# 撤销上一次 AI 的修改/redo# 重做刚才撤销的修改

OpenCode 内部使用 Git 追踪文件变更,/undo会回滚到上一次提交前的状态,同时移除对话中对应的消息。

会话管理

/new# 新建会话(别名:/clear)/sessions# 查看历史会话(别名:/resume)/compact# 压缩会话以节省 Token

分享与导出

/share# 生成分享链接/unshare# 取消分享/export# 导出对话为 Markdown

外部编辑器

如果消息很长,可以用外部编辑器编写:

/editor

需要设置EDITOR环境变量:

exportEDITOR=vim# VimexportEDITOR="code --wait"# VS CodeexportEDITOR="cursor --wait"# Cursor

九、提示词技巧

❌ 不好的提示

帮我改一下代码
让它更好
修复 bug

✅ 好的提示

重构 @src/utils/api.ts 中的 request 函数,使用 async/await 替代 Promise.then,并添加统一的错误处理
登录表单点击提交时报错 'Cannot read property of undefined' 错误发生在 @src/pages/login.ts 第 45 行 请帮我定位原因并修复
为 @src/utils/cart.ts 中的 calculateTotal 函数编写单元测试,覆盖以下场景: 1. 空购物车 2. 单个商品 3. 多个商品 4. 有折扣的情况

提示词要素

  1. 具体文件:用@引用相关文件
  2. 明确目标:说清楚要做什么
  3. 上下文:提供错误信息、期望结果
  4. 约束条件:技术栈、代码风格等

十、图片支持

直接拖拽图片到终端,OpenCode 可以理解图片内容(设计稿、错误截图、UI 原型图、流程图等):

[拖入设计稿图片] 按照这个设计稿实现登录页面
[拖入错误截图] 帮我分析这个错误是什么原因

十一、下一篇预告

本文介绍了 OpenCode 的所有命令和使用技巧。下一篇《OpenCode 实战案例集》将通过 10+ 个真实开发场景,展示如何用 OpenCode 解决实际问题。


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/24 22:30:34

槽型光电开关传感器原理图设计,已量产(光电传感器)

目录 1、光电检测前端:信号的 “源” 电路 2、信号缓冲:小器件解决电平与驱动问题 3、电路工作流程:从遮挡到信号输出 4、设计细节:避免踩坑的几个小技巧 在嵌入式设备的位置限位、物料计数等场景中,槽型光电开关是性价比极高的传感器方案 —— 它通过遮挡发射器与接收…

作者头像 李华
网站建设 2026/4/25 22:09:09

零基础学习大语言模型之十四:注意力机制

本文首先介绍了自然语言处理从基于规则到深度学习的演进过程,重点分析了词嵌入技术在语义表示中的关键作用。随后详细阐述了编码器-解码器结构,引入了注意力机制和多头注意力的讨论。注意力机制是当前生成式AI取得突破的技术基础。 生成式人工智能是指通过学习训练数据的分布…

作者头像 李华
网站建设 2026/4/26 15:53:21

高性能32位MCU微控制器数字电源参考方案

在电源管理领域,数字电源凭借其智能化、可编程与高集成度优势,正逐步取代传统开关电源。数字电源不仅具备基本的电压转换功能,还集成了实时通信、数控调节及环境参数监测等能力,大幅提升了系统的可靠性与灵活性。英尚微电子基于MM…

作者头像 李华
网站建设 2026/4/18 11:15:26

导师严选2026 AI论文软件TOP10:专科生毕业论文写作全测评

导师严选2026 AI论文软件TOP10:专科生毕业论文写作全测评 2026年专科生论文写作工具测评:为何需要一份专业榜单? 随着AI技术在学术领域的广泛应用,越来越多的专科生开始借助智能写作工具提升论文效率。然而,市面上的AI…

作者头像 李华
网站建设 2026/4/28 6:45:48

MQTT傻瓜化调用组件,零成本学习.NET开发,上位机开发

你希望用 MQTTnet 在 VB.NET 中实现极简、低门槛的调用方式(像 WebSocket 那样,连接、接收、错误各一个简单过程,小学生都能看懂),同时保留精细控制的能力。我完全理解这个需求 —— 新手不需要纠结复杂的配置&#xf…

作者头像 李华
网站建设 2026/4/27 7:28:44

手把手教你8款免费AI论文工具,鲲鹏智写助知网维普查重不留痕

还在为论文降重、AI率过高、文献引用格式而头大吗?别担心,你不是一个人在战斗。从开题到定稿,每一个环节都充满了挑战。今天,我将化身为你的专属“论文助教”,为你带来一份保姆级的AI论文工具实战指南。我们不仅会盘点…

作者头像 李华