02 命令(Command):用户侧提示模板 本节摘要:四类能力里,本节讲命令(Command)——用户侧的提示模板,输入 展开成预设提示发给会话。本节讲清 OpenWork 如何管理命令(CRUD),以及它和技能的根本区别(用户触发 vs 模型按需)。 一、命令是什么:用户快捷方式 命令是用户主动触发的提示模板。你输入 ,它展开成一段预设提示,发给当前会话,就像你自己打了那段话。 命令的底层机制和 OpenCode 教程第 11 章讲的斜杠命令一样。OpenWork 在这之上加了「管理」。 二、OpenWork 如何管理命令(CRUD) OpenWork 服务端对命令的 CRUD: 操作 | 说明 list | 扫描命令目录(.
本节摘要:四类能力里,本节讲命令(Command)——用户侧的提示模板,输入
/某命令展开成预设提示发给会话。本节讲清 OpenWork 如何管理命令(CRUD),以及它和技能的根本区别(用户触发 vs 模型按需)。
命令是用户主动触发的提示模板。你输入 /某命令,它展开成一段预设提示,发给当前会话,就像你自己打了那段话。
输入: /deploy │ ▼ 命令展开 预设提示: "请按部署流程,先跑测试再构建再发布..." │ ▼ 发给会话 │ ▼ Agent 按这段提示干活
命令的底层机制和 OpenCode 教程第 11 章讲的斜杠命令一样。OpenWork 在这之上加了「管理」。
OpenWork 服务端对命令的 CRUD:
| 操作 | 说明 |
|---|---|
| list | 扫描命令目录(.md 文件),列出所有命令 |
| upsert | 写一个命令文件(.md 模板) |
| delete | 删命令文件 |
命令是 .md 文件,存在命令目录: <root>/.opencode/commands/deploy.md <root>/.opencode/commands/review.md ...
命令文件就是一段提示模板(可含占位符)。OpenWork 扫描这些 .md 文件,注册成可用命令。
命令文件是 Markdown,内容就是提示模板。有时还带 frontmatter(前置元数据),如指定用什么模型:
--- model: 某模型 --- 请审查当前工作区的改动,重点关注: 1. 潜在 bug 2. 性能问题 3. 安全风险
OpenWork 扫描时会解析 frontmatter(如果有的话),还可能「修复」legacy 命令文件(自动补全缺失的 frontmatter 字段)——这是兼容旧格式的贴心处理。
这是本节最该记住的对比。命令和技能都「含预设提示」,但触发方式和定位完全不同:
| 维度 | 命令 | 技能 |
|---|---|---|
| 触发者 | 用户主动(敲 /命令) |
模型按需(模型决定读) |
| 本质 | 发给会话的提示模板 | 给模型的指令 |
| 解决 | 用户快速发起常用任务 | 模型遇到相关任务时自动用 |
举例:
/review,用户每次主动敲。💡 判断标准:「我主动想发起」用命令;「希望模型遇到 X 自动懂」用技能。命令是用户驱动,技能是模型驱动。
和技能一样,命令也可分享:
命令作为「能力」的一种,同样享受 OpenWork 的分享体系。
有个有趣的细节:技能的正文也可作为命令模板。也就是说,一个技能既能被模型按需读(技能用法),也能被用户主动调(命令用法)。这把两类能力连起来了。
技能 pdf-handler 的正文 │ ├─ 模型按需读 ──► 技能用法 │ └─ 用户主动调(/pdf-handler)──► 命令用法
这种互通让你写一份内容,两种用法都支持——灵活且不重复。
/命令 展开成预设提示发给会话。命令讲清了,下一节讲 MCP——把外部工具拉进来。