원클릭으로
llman-sdd-apply
在一个闭环内实施 llman SDD 变更的 tasks:写代码 → 跑测试 → 失败自修复 → 直到门禁全绿。自动更新 tasks.md 勾选状态并运行校验。用于提案完成后的实现阶段。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
在一个闭环内实施 llman SDD 变更的 tasks:写代码 → 跑测试 → 失败自修复 → 直到门禁全绿。自动更新 tasks.md 勾选状态并运行校验。用于提案完成后的实现阶段。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
单个闭环完成一个变更:实现→测试→校验→归档→提交。仅手动触发。Agent 禁止自动启用。
归档已完成的 llman SDD 变更。BDD-off 合并 TOON delta 到主 specs;BDD-on 在 attach/checkpoint 后仅封存 change 文档,再由 Git/PR merge 提升 live specs。在 verify 报告全绿后运行。
进入 llman SDD 探索模式:理清思路、调查需求、分析问题。仅思考,禁止写代码。用于意图不明确或需要分析后再行动的场景。
以 mermaid 图可视化 llman SDD 变更间的依赖关系(depends_on/blocks)。辅助工具,任意阶段可用,不属于主实现 pipeline。
创建 llman SDD 变更提案与规划工件(proposal/tasks;在 feature 分支编辑 live specs/features 并 attach)。用于 MUST/SHALL 行为合约变更。
快速路径:处理不改行为合约的小改动——重构、修错字、性能优化。不涉及 MUST/SHALL 变更。如发现需要改合约,立即切换到 propose 完整路径。
| name | llman-sdd-apply |
| description | 在一个闭环内实施 llman SDD 变更的 tasks:写代码 → 跑测试 → 失败自修复 → 直到门禁全绿。自动更新 tasks.md 勾选状态并运行校验。用于提案完成后的实现阶段。 |
| metadata | {"version":"0.0.64","llman_sdd":{"bdd_mode":"on","skill_set":"default"}} |
使用此 skill 在一个闭环内按顺序完成 llmanspec/changes/<id>/tasks.md 的所有任务:
实现代码 → 补测试/验收 → 跑门禁 → 失败自修复并重跑 → 全部通过后报告结果。
除非遇到明确 blocker,否则不要中途停下来问「要不要继续」。
flowchart LR
propose["llman-sdd-propose<br/>提案"] --> apply
apply["★ llman-sdd-apply ★<br/>实施(你现在在这里)"]
apply --> verify["llman-sdd-verify<br/>验证"]
verify --> archive["llman-sdd-archive<br/>归档"]
archive --> commit["git commit<br/>完成闭环"]
style apply fill:#fff3cd,stroke:#ffc107,stroke-width:3px
📍 你现在在实施阶段 → 完成本阶段后下一步
llman-sdd-verify(验证)
proposal.md / design.md / tasks.md / specs/ 为唯一事实来源;specs 中的 MUST/SHALL 必须逐条落实。llman sdd change finalize <id>(工作区可脏)→ 一次 git commit;勿默认再拆 checkpoint/archive 三连 commit。llmanspec/config.yaml、AGENTS.md(若存在)。git status --porcelain:
git stash push -u -m "llman-sdd-apply autopilot backup" 做备份。llman sdd validate --all --strict --no-interactive:
llman sdd list --specs --json 列出所有 spec,然后对每个 spec 验证其 valid_scope 中的每个路径是否存在于磁盘上。若存在缺失的文件/目录,停下并建议更新 spec(从 valid_scope 中移除已删除的路径)。若已提供 change id,直接使用。
否则从上下文推断;若不明确,运行 llman sdd list --json 并让用户选择。
始终说明:"使用变更:",并告知如何覆盖。
BDD-on:确认已在经 llman sdd change attach <id> 绑定的非默认 feature 分支上(仅在需要重绑时用 --force)。分支上的 specs/features 即 SSOT——不要编造 change 内 feature_delta。
检查阶段守卫:
llman sdd show <id> --json --type change
draft:变更尚未准备好实现 → STOP,提示先用 llman-sdd-propose 完善到至少 spec 阶段。 BDD-on 下,若已有 proposal+design+tasks 仍是 draft,说明变更未 attach —— 在非默认 feature 分支上运行 llman sdd change attach <id>(不要新增 changes/<id>/specs/,BDD-on specs 位于分支)。attach 后 stage 即为 full。specified / designed / full:通过,继续。 BDD-on 下 full 由 attach + 完整工件推断;changes/<id>/specs/ 预期为不存在,请勿视为缺失。使用 llman sdd context --task "<proposal 中的目标>" --paths "<specs 中的 scope>" 获取相关 specs。
llman sdd index rebuild 后重试。必须通读以下文件:
llmanspec/changes/<id>/proposal.md
llmanspec/changes/<id>/design.md(如存在)
llmanspec/changes/<id>/tasks.md
feature 分支上的 live specs:llmanspec/specs/**(spec.toon + *.feature)——BDD-on 下这是 SSOT
change 内 llmanspec/changes/<id>/specs/** 仅当残留文档存在时(BDD-on archive 会忽略;优先读 live specs)
将 proposal.md 和 design.md 中的决策整理为不可违反的硬约束清单。把 tasks.md 转成可执行的最小步骤序列(保持原顺序)。
对每个未完成 task:
- [ ] → - [x]。💡 上一阶段
llman-sdd-propose(已生成 tasks);完成本阶段后 →llman-sdd-verify(验证)
运行项目门禁命令(根据项目实际选择):
相关测试集:just test 或 cargo test --all
格式/lint:just check 或 just lint + just fmt
BDD-on(Git-native Partitioned SSOT):留在已 attach 的 feature 分支;编辑 live spec.toon(约束)与 *.feature(@req);实现 steps;llman sdd validate --specs 通过。闭环收尾优先在 verify 后用 change finalize(工作区可脏);勿在每个 task 后跑 checkpoint。不要跑 solidify / 新建 feature_delta。
SDD 校验:llman sdd validate <id> --strict --no-interactive
若失败 → 进入自修复循环(不要问要不要继续):
Round N:失败点 → 修复 → 重跑 → 通过/失败。自修复上限 8 轮;超过仍不通过视为 blocker:停止并输出 blocker 报告(含最后一次失败命令与输出摘要、你已尝试的修复)。
所有 task 完成 + 全部门禁通过后,输出结构化报告(见下方 Output Contract)。
然后建议运行 llman-sdd-verify 进入验证阶段。
💡 实施完成 → 下一步
llman-sdd-verify(验证)
行动前先阅读 llmanspec/config.yaml,并遵循其中的 context 与 rules(若有)。
常用命令:
llman sdd context --task "<描述>" --paths "<文件>"(找相关 specs)。使用 pageindex agentic tree 后端(需 LLMAN_SDD_INDEX_CHAT_MODEL)。可用 LLMAN_SDD_INDEX_BACKEND 预设。llman sdd list(列出变更)llman sdd list --specs(列出 specs 及 purpose/scope 元数据)llman sdd show <id>(展示 change/spec)llman sdd validate <id>(校验 change 或 spec)llman sdd validate --all(批量校验)llman sdd index rebuild(重建 pageindex 树索引——不需要模型)llman sdd index check(检查索引新鲜度)llman sdd change new <id>(创建草稿 changes/<id>/proposal.md)
{% if bdd_enabled %}llman sdd change attach <id> [--force](BDD-on:绑定 feature 分支 + base SHA)llman sdd change finalize <id> [--no-check](BDD-on:推荐单 commit 路径——不要求干净树;同进程 checkpoint + docs-only archive;写 checkpoint_sha = base_sha)llman sdd change checkpoint <id> [--no-check](BDD-on:干净工作区 + 归档前门禁;严格 sha = HEAD)llman sdd change diff <id> [--export-patch <path>](BDD-on:只读 base...HEAD 审查/导出)
{% endif %}
{% if not bdd_enabled %}llman sdd change delta …(仅 BDD-off:TOON delta 作者工具;BDD-on 会拒绝)
{% endif %}llman sdd change archive <id>(封存变更;BDD-on:checkpoint 后仅文档 / 或作 finalize fallback;BDD-off:合并 TOON delta)llman sdd archive freeze [--before YYYY-MM-DD] [--keep-recent N] [--dry-run](冻结已归档目录)llman sdd archive thaw [--change <id> ...] [--dest <path>](从冷备份恢复)llman sdd graph [CHANGE] [--format mermaid] [--scope active|archived|all] [--depth N](生成变更依赖图)llman sdd project migrate [--kind format|partitioned|legacy-bdd|auto](一次性迁移)llman sdd context --task --paths 获取相关 specs,而非全量读取或猜测。llman sdd 命令结果为事实来源。llman sdd context 获取相关 specs,而非全量读取或猜测。list --specs --json)。所有 tasks 完成后(或遇到 blocker 时)必须输出:
Round N:失败点 → 修复 → 重跑命令 → 是否通过。llman sdd validate <id> --strict --no-interactive 的结果。llman-sdd-verify 进入验证阶段。ethics.risk_level:按 low|medium|high|critical 标注风险等级。ethics.prohibited_actions:列出绝对禁止执行的动作。ethics.required_evidence:列出高影响输出前必须具备的证据。ethics.refusal_contract:定义何时拒答以及安全替代响应方式。ethics.escalation_policy:定义何时必须升级为用户确认/人工复核。