.codebuddy/commands/speckit.analyze.md
$ARGUMENTS
在继续之前, 你必须考虑用户输入(如果不为空).
在实施之前, 识别三个核心制品(spec.md、plan.md、tasks.md)之间的不一致、重复、模糊和规范不足的项目. 此命令必须在 /speckit.tasks 成功生成完整的 tasks.md 后运行.
严格只读: 不要修改任何文件. 输出结构化分析报告. 提供可选的修复计划(用户必须明确批准后才能手动调用任何后续编辑命令).
章程权威: 项目章程(.specify/memory/constitution.md)在此分析范围内是不可协商的. 章程冲突自动为严重问题, 需要调整规范、计划或任务——而不是稀释、重新解释或默默忽略原则. 如果原则本身需要更改, 那必须在 /speckit.analyze 之外的单独、明确的章程更新中进行.
从仓库根目录运行一次 .specify/scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks 并解析 JSON 以获取 FEATURE_DIR 和 AVAILABLE_DOCS. 推导绝对路径:
如果任何必需文件缺失, 则以错误消息中止(指示用户运行缺失的先决条件命令). 对于参数中的单引号, 如 "I'm Groot", 使用转义语法: 例如 'I'''m Groot'(或尽可能使用双引号: "I'm Groot").
仅从每个制品加载最小必需的上下文:
**从 spec.md: **
**从 plan.md: **
**从 tasks.md: **
**从章程: **
.specify/memory/constitution.md 进行原则验证创建内部表示(输出中不包含原始制品):
user-can-upload-file)专注于高信号发现. 限制总共 50 个发现; 在溢出摘要中聚合其余部分.
<placeholder> 等)使用此启发式方法对发现进行优先级排序:
输出 Markdown 报告(不写入文件), 结构如下:
| ID | 类别 | 严重性 | 位置 | 摘要 | 建议 |
|---|---|---|---|---|---|
| A1 | 重复 | 高 | spec.md:L120-134 | 两个相似需求... | 合并表述; 保留更清晰的版本 |
(每个发现添加一行; 生成以类别首字母为前缀的稳定 ID. )
**覆盖摘要表: **
| 需求键 | 有任务? | 任务 ID | 备注 |
|---|
**章程对齐问题: **(如果有)
**未映射任务: **(如果有)
**指标: **
在报告末尾, 输出简洁的下一步操作块:
/speckit.implement 之前解决询问用户: "你希望我为前 N 个问题建议具体的修复编辑吗?"(不要自动应用它们. )
$ARGUMENTS