plugins/quickspec/skills/prd-analyzer/SKILL.md
内部步骤(Task 2),由 generator 编排器调用,不从用户直接触发。 对 PRD 内容进行 5-zone 结构化分析,提取功能、用户故事、业务实体、约束和验收条件。
npx skillsauth add hicaosen/skills prd-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
系统化地从 PRD 中提取结构化、可操作的信息。
${ARGUMENTS}/prd-source.md(由 prd-loader 产出),${ARGUMENTS} 为编排器传入的 {workspace} 绝对路径(无尾部斜杠)${ARGUMENTS}/prd-analysis.md使用 Read 工具读取 ${ARGUMENTS}/prd-source.md,获取 PRD 原始内容。从元数据头中提取 feature-name 用于后续引用。
读取 PRD 后,执行以下验证:
STATUS: failed,ISSUES: "无法读取 prd-source.md"STATUS: failed,ISSUES: "PRD 内容为空"STATUS: partial,WARNINGS: "PRD 内容过短,可能包含不完整信息"STATUS: failed,ISSUES: "prd-source.md 缺少 feature-name 元数据"验证通过后,对 PRD 内容应用五区域提取框架,按顺序处理每个区域。
提取每个独立的功能或功能性需求:
每个功能的输出格式:
F{n}: <功能名称>
描述: <功能做什么>
优先级: <优先级>
关联功能: <相关功能的 F 编号>
提取谁在什么上下文中做什么:
对每个场景,确定:
提取 PRD 中描述的业务层面的实体、属性、关系和交互需求(不提取技术实现细节):
注意:本区域只提取 PRD 中已有的业务描述。具体的字段类型、校验规则、API 方法/路径/请求响应结构等技术规格由 spec-creator(步骤 4)结合代码库映射结果来生成。
提取非功能性和业务约束:
注意:只提取 PRD 中明确提到的业务约束,不推导技术实现方案(如"使用 Redis 缓存")。
提取每个功能的可衡量结果:
PRD 有多种格式,需要适配提取方法。
各 zone 的详细提取信号(信号词、判断标准、注意事项),参考:
${CLAUDE_PLUGIN_ROOT}/skills/prd-analyzer/references/extraction-patterns.md — 按信息类型组织的提取信号和启发式规则将以下情况标记为歧义(不使用 AskUserQuestion,写入产出文件的"歧义(需确认)"章节,由编排器在检查点统一展示给用户确认):
发现歧义时,以编号列表的形式提出具体问题,写入产出文件的"歧义(需确认)"章节。
重要:歧义不使用 AskUserQuestion 询问,由编排器在检查点统一展示给用户确认。
使用 ${CLAUDE_PLUGIN_ROOT}/skills/prd-analyzer/references/output-template.md 作为结构模板,将提取的分析结果写入 ${ARGUMENTS}/prd-analysis.md:
读取 ${CLAUDE_PLUGIN_ROOT}/skills/prd-analyzer/references/quality-gate.md,逐项核对产出物 ${ARGUMENTS}/prd-analysis.md 是否满足所有验收标准:
STATUS: partial,ISSUES: "质量门禁未通过:{未通过项列表}"完成所有工作后,输出以下格式的状态信息(不要包含其他内容):
[STATUS: success | partial | failed]
[OUTPUT: prd-analysis.md]
[FEATURE-NAME: <从 prd-source.md 元数据提取>]
[WARNINGS: <警告列表,没有则为 none>]
[ISSUES: <阻塞问题列表,没有则为 none>]
[AMBIGUITY-COUNT: <歧义数量,无歧义则为 0>]
[SUMMARY: <一句话摘要,包含歧义数量提示>]
development
VictoriaTraces HTTP API reference for querying distributed traces via Jaeger-compatible API. This skill should be used when searching traces, listing services/operations, getting trace details by ID, querying service dependencies, constructing HTTP requests to VictoriaTraces, or working with Jaeger API endpoints for distributed tracing analysis.
development
VictoriaMetrics HTTP API reference for querying metrics, exporting/importing data, TSDB stats, and administrative operations. This skill should be used when constructing HTTP requests to VictoriaMetrics, understanding query endpoints (/api/v1/query, /api/v1/query_range, /api/v1/export, /api/v1/import), response formats, checking cardinality, creating snapshots, or integrating with VictoriaMetrics API.
development
VictoriaLogs HTTP API reference for querying logs, hits stats, field discovery, live tailing, and log statistics. This skill should be used when constructing HTTP requests to VictoriaLogs, understanding query endpoints (/select/logsql/query, /select/logsql/tail, /select/logsql/hits, /select/logsql/field_names), response formats, or integrating with VictoriaLogs API for log search and analysis.
testing
PromQL query language fundamentals for Prometheus and Prometheus-compatible systems. Use for understanding PromQL instant/range vectors, label matchers, aggregation operators, offset/@ modifiers, or when targeting non-VictoriaMetrics Prometheus systems. For VictoriaMetrics-specific features like default_rollup, rollup, or outlier detection, use the metricsql skill.