mcpField
H
hrt-backlog-reconcile

hrt-backlog-reconcile

github.com/hash-id开发241 次安装5 天前更新
代码仓库

关于 hrt-backlog-reconcile

hrt-backlog-reconcile 是一项由用户调用的技能,用于根据已交付的 OpenSpec 需求核对延期条目。它标出已覆盖和部分覆盖的条目,并且只删除用户确认的内容。

主要功能

  1. 01将待办切片与 OpenSpec 规格对照
  2. 02识别已覆盖和部分覆盖的条目
  3. 03删除条目前征求确认
  4. 04保留待办文件及其标题

适用场景

  1. 01归档 OpenSpec 变更后核对延期工作
  2. 02查找行为已由已交付规格覆盖的条目
  3. 03检查部分覆盖情况并确定剩余工作

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hash-id/openspec-schema --skill hrt-backlog-reconcile

安装后在 Claude Code 中输入/hrt-backlog-reconcile确认已加载。

详细介绍

hrt-backlog-reconcile

openspec/BACKLOG.md 存放规划其他变更时暂缓处理的切片(由 hrt-change-size-gate 写入)。只有手动处理后才会移除条目,因此即使有些工作已经交付,它们仍会留在文件中,而 discovery 会继续将其作为过时的访谈上下文读取。此技能会根据实际已交付的内容整理待办列表。

没有 schema.yaml 指令会调用此技能——它只能由用户主动调用(/hrt-backlog-reconcile)。最好在执行 openspec archive <change> 后立即运行,此时 openspec/specs/ 刚吸收了变更的增量规格,但任何时候都可以运行。

流程

  1. 读取 openspec/BACKLOG.md。如果文件不存在或没有条目,说明情况并停止。
  2. 对每个条目,提取其 Slice: 行,并根据 openspec/specs/**/*.md 中的要求进行判断:
    • 已覆盖 — 已交付的要求现在能够实现该可演示行为。建议删除该条目。
    • 部分覆盖 — 说明仍有哪些部分尚未实现;不要建议删除。
    • 未覆盖 — 保留该条目,不作说明。 应基于语义判断,而不是字符串匹配。能力名称相同并不能证明已覆盖。
  3. 逐条展示所有建议删除的条目和部分覆盖说明:指出条目名称,引用其 Slice: 行,列出覆盖该条目的要求,并请用户确认。遵循 plain-language-writing 技能的 COMMS 规则。
  4. 仅删除已获确认的条目。删除条目的完整区块(从 ## <slug> 标题到最后一行 - )。即使文件已空,也要保留 # Deferred Slices 标题。绝不能删除文件。
  5. 报告删除了哪些内容,以及保留了哪些内容。

条目格式(与 hrt-change-size-gate 保持同步)

## <slug-kebab>
- Raised by: <change-id> (<YYYY-MM-DD>)
- Slice: <1–2 sentences: what a user can demo when this slice is done>
- Deferred because: <blocking dependency / scope / capacity>

文件存在时的文件头:

# Deferred Slices

> Slices raised while planning another change, deliberately deferred. Not proposals - just enough to start a `discovery` session. Delete an entry when it becomes a change.

hrt-change-size-gate 在 proposal 期间负责写入此文件(拆分时添加条目,删除其自身变更所覆盖的条目);此技能负责由用户手动运行的整理。两者都遵循上述格式。

限制

  • 仅依据规格判断。若某条目的 Raised by 变更已被放弃,且在 openspec/specs/ 中没有任何相关记录,此技能无法检测到——请手动清理。
  • 第 3 步需要与用户交互。在非交互式运行中,报告建议删除的条目,然后停止,不做任何编辑。

评论

支持 Markdown