원클릭으로
comet-archive
仅在用户明确调用 /comet-archive,或由 Comet 根 Skill/runtime 路由到 archive 阶段时使用;确认归档、合并 delta spec 并完成分支收尾。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
仅在用户明确调用 /comet-archive,或由 Comet 根 Skill/runtime 路由到 archive 阶段时使用;确认归档、合并 delta spec 并完成分支收尾。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use only when explicitly invoked as /comet-any or when the user explicitly wants to customize the /comet-classic five-phase workflow or create/upgrade a workflow Skill managed by Comet Creator. Do not use for general Skill authoring, cleanup, or review.
Use only when explicitly invoked as /comet-archive or routed by the root Comet skill/runtime to the archive phase; confirm archive, merge delta specs, and finish the branch.
Use only when explicitly invoked as /comet-build or routed by the root Comet skill/runtime to a full workflow build phase; create or recover the implementation plan and execute tasks.
Use when the user explicitly invokes /comet-classic, asks to start or resume the permanent Comet Classic workflow, or repository evidence identifies one unambiguous active Classic change; route through the intent runtime and .comet.yaml.
Use only when explicitly invoked as /comet-design or routed by the root Comet skill/runtime to a full workflow design phase; create or recover the deep technical Design Doc.
Use only when explicitly invoked as /comet-hotfix or routed by the root Comet skill/runtime to the hotfix preset; fix an existing behavior bug, not an ordinary unmanaged bugfix.
| name | comet-archive |
| description | 仅在用户明确调用 /comet-archive,或由 Comet 根 Skill/runtime 路由到 archive 阶段时使用;确认归档、合并 delta spec 并完成分支收尾。 |
branch_status: pending)openspec/changes/<name>/.comet.yaml 中 verify_result: pass归档摘要和生命周期闭环说明必须使用 comet state get <name> language 读取到的 Comet 配置产物语言。
按 comet/reference/scripts.md 使用稳定 comet CLI,然后执行入口验证;从任意入口恢复时先按 comet/reference/context-recovery.md 运行恢复检查:
comet state select <change-name>
comet state check <name> archive
验证通过后继续 Step 1。验证失败时脚本会输出具体失败原因。
若上述 select / check 输出 BLOCKED,且原因是 bound_branch 与当前分支不一致,立即按 comet/reference/decision-point.md 暂停,让用户单选:切回绑定分支后重新运行入口验证,或在用户明确确认当前分支应接管该 change 后运行 comet state rebind <change-name> 并重新入口验证。不得自行切换分支,不得自行换绑。
入口验证通过后,必须按 comet/reference/decision-point.md 的协议暂停并等待用户确认是否立即归档。不得在用户确认前运行 comet archive "<change-name>"。
确认前必须向用户展示简短摘要:
用户确认问题必须以单选题形式呈现,包含以下选项:
comet state transition <change-name> archive-reopen 回到 phase: verify,再调用 /comet-verify。若验证阶段确认需要修复,再按 /comet-verify 的验证失败决策回到 /comet-buildphase: archive 状态,等待用户稍后再次调用 /comet-archive用户选择「确认归档」后,立即执行:
comet state transition <change-name> archive-confirm
如 transition 返回非零退出码,报告错误并停止。只有 transition 成功后,才允许继续 Step 2。用户选择「需要调整或重新验证」后,必须先执行 archive-reopen 状态回退,不得手动编辑 .comet.yaml。
运行归档脚本:
comet archive "<change-name>"
脚本自动执行:
如脚本返回非零退出码,报告错误并停止。 如脚本返回零退出码,归档完成。
脚本摘要中的 X/Y steps succeeded 以真实执行步骤计数,不会因 delta spec 同步或文档标注重复累计。
脚本会调用 OpenSpec 归档能力按 ADDED/MODIFIED/REMOVED/RENAMED 语义合并主 spec,并在归档后校验主 spec 中没有残留 delta-only section 标题。
如需预览而不实际执行,使用 --dry-run 参数。
Spec 生命周期在此完成:
brainstorming → delta spec → 实施 → 验证 → 主 spec 合并 → design doc 标注 → 归档
归档脚本只移动文件和合并 spec,不会自动提交。归档完成后工作区会有以下未提交改动:
openspec/changes/<name>/ 移动到 openspec/changes/archive/YYYY-MM-DD-<name>/归档后先读取 git status --short,并以归档前的 dirty-worktree 归因记录为基线。只允许暂存可归因于当前 change 的路径:原 active change 路径、脚本输出的实际 archive 路径、被本次 delta 更新的 main specs,以及当前 Design Doc/Plan 的归档元数据。存在无法归因的路径时停止并请求用户处理。
使用显式 pathspec 暂存核对后的路径,再检查 staged diff;不得使用全仓库暂存,也不得把用户已有改动混入归档提交:
git add -- <逐项核对后的归档路径...>
git diff --cached --stat
git commit -m "chore: archive <change-name>"
提交失败或 staged diff 含无关路径时停止,不得继续分支处理。
归档提交成功后,先读取 comet state get <change-name> isolation,按隔离方式分流:
isolation !== current:立即执行: 使用 Skill 工具加载 Superpowers finishing-a-development-branch 技能。该步骤必须位于归档与归档提交之后,确保最终分支/PR 包含 spec 合并和归档元数据。如该技能不可用,停止流程并提示安装或启用;不得把 branch_status 标记为完成。技能加载后,按 comet/reference/decision-point.md 暂停让用户选择:本地合并到主分支、推送并创建 PR、保持当前分支稍后处理。isolation === current:跳过 Superpowers finishing-a-development-branch。按 comet/reference/decision-point.md 暂停让用户二选一:推送当前分支,或暂不推送并保留本地状态。归档已经完成,因此这里不提供“丢弃工作”选项。只有用户选择的操作成功完成、明确选择保持分支,或在 current 模式下明确选择暂不推送后,才运行:
comet state set <change-name> branch_status handled
comet guard <change-name> archive
archive guard 必须同时确认归档产物完整且 branch_status: handled;失败时流程仍未完成。
openspec/changes/archive/YYYY-MM-DD-<change-name>/ 存在.comet.yaml 中 archived: truebranch_status: handledcomet guard <change-name> archive 通过归档脚本会把 openspec/changes/<name>/ 移动到 openspec/changes/archive/YYYY-MM-DD-<name>/。
comet guard <change-name> archive 会按原 change 名解析实际归档目录;不要手工拼接日期目录名。
Comet Classic 流程全部完成。如需开始新的 Classic 工作,调用 /comet-classic 或 /comet-open。
按 comet/reference/context-recovery.md 执行,phase 参数为 archive。若 archived: true 且归档目录存在,归档已完成,无需再次执行归档操作。