speckit-analyze-zh

对spec.md、plan.md和tasks.md三个核心文档进行非破坏性跨工件一致性和质量分析。在任务生成后识别不一致、重复、模糊和规范不足的项目。触发词包括:"speckit-analyze"、"speckit分析"、"文档一致性分析"、"规范分析"、"质量检查"、"工件分析"、"spec分析"、"plan分析"、"task分析"。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "speckit-analyze-zh" with this command: npx skills add forztf/open-skilled-sdd/forztf-open-skilled-sdd-speckit-analyze-zh

用户输入

$ARGUMENTS

必须在继续之前考虑用户输入(如果不为空)。

目标

在实现之前,识别三个核心工件(spec.mdplan.mdtasks.md)之间的不一致、重复、歧义和未充分说明的项目。此命令必须仅在 speckit-tasks 成功生成完整的 tasks.md 后运行。

操作约束

严格只读不要修改任何文件。输出结构化分析报告。提供可选的补救计划(用户必须明确批准后才能手动调用任何后续编辑命令)。

宪章权威性:项目宪章(.specify/memory/constitution.md)在此分析范围内是不可协商的。宪章冲突自动为关键级别,需要调整规格、计划或任务——而不是稀释、重新解释或默默忽略原则。如果原则本身需要更改,必须在 speckit-analyze 之外的单独、明确的宪章更新中进行。

执行步骤

scripts: sh: .specify/scripts/bash/check-prerequisites.sh --json ps: .specify/scripts/powershell/check-prerequisites.ps1 -Json

1. 初始化分析上下文

从仓库根目录运行一次 {SCRIPT} 并解析 JSON 以获取 FEATURE_DIR 和 AVAILABLE_DOCS。推导绝对路径:

  • SPEC = FEATURE_DIR/spec.md
  • PLAN = FEATURE_DIR/plan.md
  • TASKS = FEATURE_DIR/tasks.md

如果缺少任何必需文件,则中止并显示错误消息(指示用户运行缺少的先决条件命令)。 对于参数中的单引号,如 "I'm Groot",使用转义语法:例如 'I'''m Groot'(或者如果可能的话使用双引号:"I'm Groot")。

2. 加载工件(渐进式披露)

仅加载每个工件的最小必要上下文:

来自 spec.md:

  • 概述/上下文
  • 功能要求
  • 非功能要求
  • 用户故事
  • 边缘情况(如果存在)

来自 plan.md:

  • 架构/技术栈选择
  • 数据模型引用
  • 阶段
  • 技术约束

来自 tasks.md:

  • 任务 ID
  • 描述
  • 阶段分组
  • 并行标记 [P]
  • 引用的文件路径

来自 constitution:

  • 加载 .specify/memory/constitution.md 用于原则验证

3. 构建语义模型

创建内部表示(不要在输出中包含原始工件):

  • 要求清单:每个功能+非功能要求带有一个稳定键(根据祈使句派生 slug;例如,"用户可以上传文件" → user-can-upload-file
  • 用户故事/动作清单:具有验收标准的离散用户动作
  • 任务覆盖映射:将每个任务映射到一个或多个要求或故事(通过关键词/显式引用模式如 ID 或关键词进行推断)
  • 宪章规则集:提取原则名称和 MUST/SHOULD 规范性陈述

4. 检测过程(高效令牌分析)

专注于高信号发现。限制总数为 50 个发现;在溢出摘要中聚合其余发现。

A. 重复检测

  • 识别近似重复的要求
  • 标记质量较低的措辞以进行合并

B. 歧义检测

  • 标记缺乏可测量标准的模糊形容词(快速、可扩展、安全、直观、健壮)
  • 标记未解决的占位符(TODO、TKTK、???、<placeholder> 等)

C. 未充分说明

  • 有动词但缺少对象或可测量结果的要求
  • 缺少验收标准对齐的用户故事
  • 引用在规格/计划中未定义的文件或组件的任务

D. 宪章对齐

  • 任何与 MUST 原则冲突的要求或计划元素
  • 缺少宪章中规定的章节或质量门

E. 覆盖差距

  • 没有关联任务的要求
  • 没有映射要求/故事的任务
  • 未在任务中体现的非功能要求(例如,性能、安全性)

F. 不一致

  • 术语漂移(同一概念在不同文件中有不同名称)
  • 计划中引用但在规格中缺失的数据实体(反之亦然)
  • 任务排序矛盾(例如,集成任务在基础设置任务之前但没有依赖注释)
  • 冲突的要求(例如,一个要求 Next.js 而另一个指定 Vue)

5. 严重性分配

使用此启发式方法来优先处理发现:

  • 关键:违反宪章 MUST、缺少核心规格工件,或阻塞基本功能的零覆盖要求
  • :重复或冲突的要求、模糊的安全/性能属性、不可测试的验收标准
  • :术语漂移、缺少非功能任务覆盖、未充分说明的边缘情况
  • :样式/措辞改进、不影响执行顺序的次要冗余

6. 生成紧凑分析报告

输出一个 Markdown 报告(不写入文件)具有以下结构:

规格分析报告

ID类别严重性位置摘要建议
A1重复spec.md:L120-134两个相似的要求 ...合并措辞;保留更清晰的版本

(每项发现添加一行;生成以类别首字母为前缀的稳定 ID。)

覆盖摘要表:

要求键有任务?任务 ID备注

宪章对齐问题:(如果有)

未映射的任务:(如果有)

指标:

  • 总要求
  • 总任务
  • 覆盖率%(有>=1个任务的要求)
  • 歧义计数
  • 重复计数
  • 关键问题计数

7. 提供下一步行动

在报告末尾,输出一个简洁的下一步行动块:

  • 如果存在关键问题:建议在 speckit-implement 之前解决
  • 如果只有低/中等:用户可以继续,但提供改进建议
  • 提供明确的命令建议:例如,"使用改进运行 speckit-specify","运行 speckit-plan 调整架构","手动编辑 tasks.md 添加 'performance-metrics' 的覆盖"

8. 提供补救措施

询问用户:"您希望我为前 N 个问题建议具体的补救编辑吗?"(不要自动应用它们。)

操作原则

上下文效率

  • 最小高信号令牌:专注于可操作的发现,而不是详尽的文档
  • 渐进式披露:增量加载工件;不要将所有内容倒入分析
  • 高效令牌输出:限制发现表为 50 行;总结溢出
  • 确定性结果:在没有更改的情况下重新运行应产生一致的 ID 和计数

分析指南

  • 永不修改文件(这是只读分析)
  • 永不虚构缺失部分(如果缺失,准确报告)
  • 优先处理宪章违规(这些总是关键的)
  • 使用示例而非详尽规则(引用具体实例,而非通用模式)
  • 优雅报告零问题(发出带有覆盖统计的成功报告)

上下文

{ARGS}

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

openspec-proposal-creation

No summary provided by upstream source.

Repository SourceNeeds Review
165-forztf
General

openspec-implementation

No summary provided by upstream source.

Repository SourceNeeds Review
134-forztf
General

openspec-context-loading

No summary provided by upstream source.

Repository SourceNeeds Review
109-forztf
General

openspec-archiving

No summary provided by upstream source.

Repository SourceNeeds Review
103-forztf