Agent测试
- 作者仓库星标 10,042
- 许可证 MIT
- 作者更新于 实时读取
- 作者仓库 imewlconverter
- 领域
- 通用
- 兼容 Agent
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- 信任分
- 94 / 100 · 已通过审计
- 作者 / 版本 / 许可
- @studyzy · MIT
- Token 消耗评级
- 低消耗
- 接入复杂程度
- 即装即用
- 是否需要外部 API Key
- 不需要
- 兼容的系统
- 未声明(默认跨平台)
- 底层运行要求
- 无特殊要求
- 文件与系统权限
-
- 只读
- 允许写入 / 修改
- 网络行为
- 仅限本地
- 安装命令数
- 26 条
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: openspec-verify-change
description: 验证实现是否与变更产出物匹配。当用户想要在归档前验证实现是否完整、正确且一致时使用。 验证实现是否与变更产出物(规范、任务、设计)匹配。 运行 openspec-cn list --json…
category: 通用
runtime: 无特殊运行时
---
# openspec-verify-change 输出预览
## PART A: 任务判断
- 适用问题:通用任务拆解、检查和交付。
- 输入要求:目标材料、限制条件、期望输出和验收方式。
- 证据边界:围绕“先判断是否适合 / 作者设计意图 / 作者的方法与取舍”读取原文规则,不把推断写成作者承诺。
## PART B: 执行结果
- **01** 任务判断:确认你的需求是否属于通用任务拆解、检查和交付,并标出输入、限制和预期结果。
- **02** 执行计划:优先按“先判断是否适合 / 作者设计意图 / 作者的方法与取舍”拆成步骤,说明每一步会读取什么、修改什么、产出什么。
- **03** 交付结果:给出可复制的命令、文件改动、检查清单或内容草稿,并说明如何继续迭代。
- **04** 风险边界:结合 读取文件、写入/修改文件、主要在本地完成、通常不需要额外 API Key 给出执行前确认项。
## Running Rules
- 读取文件、写入/修改文件;主要在本地完成;通常不需要额外 API Key。
- 先小样例验证,再放大到真实任务。
- 交付时同时给结果、检查口径和下一步迭代建议。 原文没有稳定的斜杠命令要求。安装验证后通常全局生效,直接在对话里点名这个 Skill 并描述任务即可。
告诉 Agent 目标文件或材料、期望结果、不可改范围、是否允许联网或执行命令。本 Skill 的权限画像是:读取文件、写入/修改文件。
先用一个小任务确认它会围绕“先判断是否适合 / 作者设计意图 / 作者的方法与取舍”工作;涉及文件或命令时,先看 diff、日志、预览或测试结果。
检查最终产物是否包含明确结果、必要证据和下一步动作;如果输出泛泛而谈,就补充输入、边界和验收标准后重跑。
---
name: openspec-verify-change
description: 验证实现是否与变更产出物匹配。当用户想要在归档前验证实现是否完整、正确且一致时使用。 验证实现是否与变更产出物(规范、任务、设计)匹配。 运行 openspec-cn list --json…
category: 通用
source: studyzy/imewlconverter
---
# openspec-verify-change
## 什么时候使用
- 把通用方向的常用动作沉淀成 Agent 可调用的技能 适合处理通用任务拆解、检查、交付和复盘,核心价值是把输入、判断、执行、验证和交付边界固定下来,避免 Agent 泛泛回答。 把任务拆成可执行、可检查、可继续迭代的步骤;通常不需要额外…
- 面向通用任务拆解、检查和交付,优先处理能明确输入、步骤和验收标准的工作。
## 需要提供什么
- 目标材料、目录范围、期望结果和不可改动内容。
- 是否允许联网、执行命令、读写文件或调用外部服务。
## 执行规则
- 围绕「先判断是否适合 / 作者设计意图 / 作者的方法与取舍」组织步骤,不把推断写成作者事实。
- 读取文件、写入/修改文件;主要在本地完成;通常不需要额外 API Key。
- 先跑小样例,确认结果可检查后再扩大任务范围。
## 输出要求
- 给出最终产物、关键证据、验证方式和下一步动作。
- 信息不足时标记 unknown,不编造命令、平台或依赖。 作者原文负责流程事实;仓库文件负责来源和命令;流狐只补充适用场景、限制和质量判断。
skill "openspec-verify-change" {
输入层 -> 用户目标 + 目标文件 + 禁止范围 + 验收标准
上下文层 -> 先判断是否适合 / 作者设计意图 / 作者的方法与取舍
规则层 -> SKILL.md 触发条件 / 执行顺序 / 输出格式
运行层 -> 无特殊运行时 | 读取文件、写入/修改文件 | 主要在本地完成
安全层 -> 通常不需要额外 API Key + 小任务验证 + diff / 日志复核
输出层 -> 可复制结果 + 检查清单 + 下一步迭代
} 验证实现是否与变更产出物(规范、任务、设计)匹配。
输入:可选指定变更名称。如果省略,检查是否可以从对话上下文中推断。如果模糊或不明确,你必须提示获取可用变更。
步骤
如果没有提供变更名称,提示选择
运行
openspec-cn list --json获取可用变更。使用 AskUserQuestion tool 让用户选择。显示具有实现任务的变更(存在任务产出物)。 如果可用,包括每个变更使用的 Schema。 将任务未完成的变更标记为 "(进行中)"。
重要提示:不要猜测或自动选择变更。始终让用户选择。
检查状态以了解 Schema
openspec-cn status --change "<name>" --json解析 JSON 以了解:
schemaName:正在使用的工作流模式(例如:"spec-driven")- 此变更存在哪些产出物
获取变更目录并加载产出物
openspec-cn instructions apply --change "<name>" --json这会返回变更目录和上下文文件。从
contextFiles读取所有可用产出物。初始化验证报告结构
创建具有三个维度的报告结构:
- 完整性:跟踪任务和规范覆盖率
- 正确性:跟踪需求实现和场景覆盖率
- 一致性:跟踪设计遵循情况和模式一致性
每个维度可以有 CRITICAL、WARNING 或 SUGGESTION 问题。
验证完整性
任务完成情况:
- 如果 contextFiles 中存在 tasks.md,读取它
- 解析复选框:
- [ ](未完成)vs- [x](已完成) - 统计已完成 vs 总任务数
- 如果存在未完成的任务:
- 为每个未完成任务添加 CRITICAL 问题
- 建议:"完成任务:<描述>" 或 "如果已实现则标记为完成"
规范覆盖率:
- 如果
openspec/changes/<name>/specs/中存在增量规范:- 提取所有需求(标记为 "### 需求:")
- 对于每个需求:
- 在代码库中搜索与需求相关的关键词
- 评估实现是否可能存在
- 如果需求看起来未实现:
- 添加 CRITICAL 问题:"未找到需求:<需求名称>"
- 建议:"实现需求 X:<描述>"
验证正确性
需求实现映射:
- 对于增量规范中的每个需求:
- 在代码库中搜索实现证据
- 如果找到,记录文件路径和行范围
- 评估实现是否符合需求意图
- 如果检测到偏差:
- 添加 WARNING:"实现可能偏离规范:<详情>"
- 建议:"根据需求 X 审查 <文件>:<行>"
场景覆盖率:
- 对于增量规范中的每个场景(标记为 "#### 场景:"):
- 检查代码中是否处理了条件
- 检查是否存在覆盖该场景的测试
- 如果场景看起来未覆盖:
- 添加 WARNING:"场景未覆盖:<场景名称>"
- 建议:"为场景添加测试或实现:<描述>"
- 对于增量规范中的每个需求:
验证一致性
设计遵循情况:
- 如果 contextFiles 中存在 design.md:
- 提取关键决策(查找 "Decision:"、"Approach:"、"Architecture:" 等部分)
- 验证实现是否遵循这些决策
- 如果检测到矛盾:
- 添加 WARNING:"未遵循设计决策:<决策>"
- 建议:"更新实现或修订 design.md 以匹配实际情况"
- 如果没有 design.md:跳过设计遵循检查,注明 "没有 design.md 可供验证"
代码模式一致性:
- 审查新代码与项目模式的一致性
- 检查文件命名、目录结构、编码风格
- 如果发现重大偏差:
- 添加 SUGGESTION:"代码模式偏差:<详情>"
- 建议:"考虑遵循项目模式:<示例>"
- 如果 contextFiles 中存在 design.md:
生成验证报告
摘要记分卡:
## 验证报告:<change-name> ### 摘要 | 维度 | 状态 | |----------|------------------| | 完整性 | X/Y 任务,N 需求 | | 正确性 | M/N 需求已覆盖 | | 一致性 | 已遵循/存在问题 |按优先级分类的问题:
CRITICAL(归档前必须修复):
- 未完成的任务
- 缺失的需求实现
- 每个都有具体的、可操作的建议
WARNING(应该修复):
- 规范/设计偏差
- 缺失的场景覆盖
- 每个都有具体的建议
SUGGESTION(最好修复):
- 模式不一致
- 小改进
- 每个都有具体的建议
最终评估:
- 如果有 CRITICAL 问题:"发现 X 个关键问题。归档前请修复。"
- 如果只有警告:"没有关键问题。有 Y 个警告需要考虑。可以归档(但建议改进)。"
- 如果全部通过:"所有检查通过。可以归档。"
验证启发式方法
- 完整性:关注客观的检查清单项(复选框、需求列表)
- 正确性:使用关键词搜索、文件路径分析、合理推断 - 不要求完全确定
- 一致性:寻找明显的不一致,不要挑剔风格
- 误报:不确定时,优先使用 SUGGESTION 而非 WARNING,WARNING 而非 CRITICAL
- 可操作性:每个问题都必须有具体的建议,并在适用时提供文件/行引用
优雅降级
- 如果只存在 tasks.md:仅验证任务完成情况,跳过规范/设计检查
- 如果存在任务 + 规范:验证完整性和正确性,跳过设计
- 如果存在完整产出物:验证所有三个维度
- 始终注明跳过了哪些检查以及原因
输出格式
使用清晰的 Markdown:
- 摘要记分卡使用表格
- 问题按组列出(CRITICAL/WARNING/SUGGESTION)
- 代码引用格式:
file.ts:123 - 具体的、可操作的建议
- 不要使用模糊的建议,如 "考虑审查"
先判断是否适合
作者设计意图
作者的方法与取舍
边界和复核