命令如何工作
首要须知:OpenSpec 有两种命令,它们运行在两个不同的地方。
openspec ...命令在你的终端中运行。(例如:openspec init。)/opsx:...命令在你的 AI 助手的聊天窗口中运行。(例如:/opsx:propose。)
如果你在终端里输入 /opsx:propose 却发现什么都没有发生,本页就是原因——你找错了 OpenSpec 的那一半。斜杠命令不是终端命令,而是你在 AI 编码助手的同一个聊天框中输入的指令,就像你平时输入「加一个登录表单」一样。
这个区别是新用户最容易绊倒的地方,所以让我们把它彻底讲清楚。
两个半部分
OpenSpec 是一个项目,但戴着两顶帽子。
CLI(终端那一半)。 一个名为 openspec 的程序,你从 shell 中安装并运行它。它用于初始化项目、列出和验证变更、展示仪表盘以及归档已完成的工作。你在 iTerm、VS Code 终端、PowerShell 等任何可以运行 git 或 npm 的地方输入这些命令。
openspec init # 在此项目中设置 OpenSpec
openspec list # 查看活跃的变更
openspec view # 打开交互式仪表盘斜杠命令(聊天那一半)。 像 /opsx:propose 和 /opsx:apply 这样的简短命令,你可以在 AI 助手中输入。它们指示 AI 遵循 OpenSpec 工作流:起草提案、撰写规约、根据任务清单构建、完成后归档。你在 Claude Code、Cursor、Devin Desktop、Copilot 或其他你使用的助手中输入它们。
/opsx:propose add-dark-mode (在 AI 聊天中输入)
/opsx:apply (在 AI 聊天中输入)
/opsx:archive (在 AI 聊天中输入)下面这张图描绘了心智模型:
你的终端 你的 AI 助手的聊天窗口
┌──────────────────────┐ ┌──────────────────────────────┐
│ $ openspec init │ 安装 │ /opsx:propose add-dark-mode │
│ $ openspec list │ ──────────► │ /opsx:apply │
│ $ openspec view │ 命令和技能 │ /opsx:archive │
└──────────────────────┘ └──────────────────────────────┘
在这里运行 openspec 在这里运行 /opsx:*注意箭头。在终端运行 openspec init 会将斜杠命令安装到你的 AI 工具中。终端那一半负责设置聊天那一半。之后,日常的驱动大多在聊天中完成。
「如何启动交互模式?」
不存在需要单独启动的交互模式。 这个问题经常被问到,所以值得直截了当地回答。
你不需要进入某个特殊的 OpenSpec 模式。像平时一样打开你的 AI 编码助手,然后在聊天框中输入一个斜杠命令。斜杠命令就是你「进入」OpenSpec 的方式。你的助手会识别它,加载匹配的 OpenSpec 技能,然后开始遵循工作流。
所以真正的操作步骤是:
- 在你的项目中打开 AI 编码助手(如 Claude Code、Cursor、Devin Desktop 等)。
- 在它的聊天框中输入
/opsx:propose,就像输入任何其他请求一样。 - 观察自动补全:如果 OpenSpec 已安装,当你输入斜杠时,会看到
/opsx:propose、/opsx:apply等选项出现。
就是这样。没有需要切换的模式,没有需要启动的后台进程,也没有单独的窗口。
有一个真正交互的东西存在于终端中:openspec view。它会打开一个用于浏览规约和变更的仪表盘。但那是一个查看器,并非你提建议和构建的地方。构建是通过聊天中的斜杠命令完成的。
为什么会有这种分离
这一点值得理解,因为它解释了为什么 OpenSpec 能与 30 多种不同的 AI 工具协同工作。
CLI 是引擎。它了解规则:变更文件夹应该是什么样子、哪些产物依赖于哪些、如何将增量规约合并到你的单一事实来源中。它在每个地方都一样。
斜杠命令是方向盘,而每个 AI 工具的方向盘都略有不同。Claude Code 称它们为命令。Cursor 和 Devin Desktop 有自己的格式。有些工具叫它们技能。当你运行 openspec init 时,OpenSpec 会为你选择的每个工具生成正确类型的文件,因此无论你偏爱哪个助手,/opsx:propose 这一意图都能正常工作。
这种设计的优势在于:你只需学习一次工作流,就可以在工具之间携带。权衡之处是:命令的确切语法在不同工具之间可能略有不同,这正是下一节要讲的内容。
按工具区分斜杠命令语法
意图在所有地方都一样。拼写则取决于你的工具加载的文件。
| 你的工具的命令文件 | 输入方式 | 示例工具 |
|---|---|---|
.../commands/opsx/<id>.* | /opsx:propose | Claude Code、Gemini CLI、Crush |
.../opsx-<id>.* | /opsx-propose | Cursor、GitHub Copilot (IDE)、Devin Desktop、Trae、Oh My Pi |
.amazonq/prompts/opsx-<id>.md | @opsx-propose | Amazon Q Developer |
| 无 — 仅技能 | /openspec-propose | CodeArts、ForgeCode、Hermes、Mistral Vibe、Zed Agent、共享 .agents |
| 无 — Kimi Code | /skill:openspec-propose | Kimi Code |
| 无 — Codex CLI | $openspec-propose | Codex |
Devin 是唯一一个跨两行的工具。Devin Desktop 读取 .devin/workflows/,因此 /opsx-propose 在那里可用;而 Devin Local 不支持,所以在那类代理上需改用 /openspec-propose 技能。OpenSpec 写入 .devin/skills/ 的技能在两者上都有效,这也是它们通过技能名称相互引用的原因。
每种工具都在如何调用中列出 — 那份表格是权威参考。其中有几行根本不是斜杠命令:Amazon Q 将其文件加载到通过 @ 调用的提示库中,而最后三行使用的是技能名称,而不是命令 ID(例如 /opsx:apply 对应的是 openspec-apply-change 技能)。
如有疑问,请查看 openspec init 打印的「入门」提示:它已经使用了你的工具注册的形式。输入斜杠并观察自动补全也有效(对于会显示斜杠命令的工具)。
命令是如何到达的:技能与命令
当你运行 openspec init(或 openspec update)时,OpenSpec 会在你的项目中写入小文件,以便你的 AI 工具能找到工作流。根据你的工具和设置,这些可能是技能、命令,或两者兼有。
- 技能 位于诸如
.claude/skills/openspec-*/SKILL.md之类的位置。它们是新兴的跨工具标准:一个包含指令的文件夹,你的助手会自动检测。 - 命令 位于诸如
.cursor/commands/opsx-<id>.md或.claude/commands/opsx/<id>.md之类的位置 — 布局由工具决定,并决定了你如何输入命令。它们是较早的、为特定工具编写的斜杠命令文件。Codex 不会生成命令文件;请使用.agents/skills/openspec-*。
你不需要关心你的工具使用哪一种。你只需输入斜杠命令,它就能工作。但了解这些文件的存在有助于在出问题时排查:如果你的命令消失了,通常意味着这些文件缺失或过时了,而 openspec update 会重新生成它们。
有关每个工具的确切路径,请参阅支持的工具;有关技能如何取代旧的仅命令方式,请参阅迁移指南。
确认安装成功
快速检查方法,从快到慢:
- 在你的 AI 聊天中输入一个斜杠。 开始输入
/opsx并观察自动补全建议。如果出现了,就说明你已就绪。对于仅支持技能的工具(Codex、Kimi Code、CodeArts、ForgeCode、Hermes、Mistral Vibe、Zed Agent 或共享.agents目标),即使安装正常,/opsx也不会自动补全 — 请从上表中改用技能名称。 - 查看文件。 对于 Claude Code,检查
.claude/skills/是否包含openspec-*文件夹。其他工具使用自己的目录(支持的工具中列出了它们)。 - 重新运行设置。 从你的项目根目录运行
openspec update。这会为你配置的所有工具重新生成技能和命令文件。 - 重启你的助手。 许多工具在启动时会扫描技能和命令,因此打开一个新窗口可能是缺失的那一步。
我到底有哪些命令?
默认情况下,OpenSpec 安装核心斜杠命令集:
/opsx:explore:在承诺变更之前与 AI 一起思考想法(当你还不确定时,这是很棒的第一步)/opsx:propose:创建变更并一步起草所有规划产物/opsx:apply:通过完成其任务清单来构建变更/opsx:update:修订变更的规划产物并保持它们一致/opsx:sync:将变更的规约更新合并到你的主规约中(通常是自动的)/opsx:archive:完成变更并将其归档
一个不错的默认节律:当你在琢磨要做什么时用 explore,然后依次用 propose、apply、archive。探索优先指南解释了为什么这一步很有价值。
还有一个扩展命令集,适用于希望更精细控制的人(包括 /opsx:new、/opsx:continue、/opsx:ff、/opsx:verify、/opsx:bulk-archive、/opsx:onboard)。你可以通过 openspec config profile 启用它,然后通过 openspec update 应用。
对这些都不熟悉?/opsx:onboard(在扩展集中)会在你实际的代码库上引导你完成一个完整的变更,并解说每一步。这是最友好的入门方式。
欲知每个命令的详细信息,请参阅命令。关于何时使用哪个命令,请参阅工作流。
一个清晰的首次运行流程
综合来看,以下是完整序列,每一步都标注了发生的地点。
终端 $ npm install -g @fission-ai/openspec@latest
终端 $ cd your-project
终端 $ openspec init
(将斜杠命令安装到你的 AI 工具中)
AI 聊天 /opsx:explore
(可选:先和 AI 一起构思想法)
AI 聊天 /opsx:propose add-dark-mode
(AI 起草提案、规约、设计、任务)
AI 聊天 /opsx:apply
(AI 开始构建,逐项勾选任务)
AI 聊天 /opsx:archive
(变更合并到你的规约中并归档)终端两步设置。然后你就活在聊天中了。这就是工作节奏。