用途:为项目生成一个项目本地的验证技能,让后续智能体能够像用户一样启动真实应用、执行功能并捕获证据。技能写入 harness 的项目技能目录,如 Cursor 的 .cursor/skills/、Claude Code 的 .claude/skills/、Pi 的 .pi/skills/、Codex 与 OpenCode 等的 .agents/skills/;若仓库已在某目录维护技能则沿用该目录。输出面向下一次冷启动的智能体,而非人类。
生成过程:先调研代码库而非询问用户,确定用户接触面(Web UI、CLI/TUI、桌面、API、移动、库)、本地启动方式、程序化驱动方式(优先复用已有 Playwright/Cypress 脚本、expect、PTY、curl 端点,否则选浏览器/CDP、tmux/PTY 或纯 HTTP)、可捕获的证据(截图、终端记录、响应体、日志、退出码、数据库状态)、能否并行多实例隔离。若检出无法构建或启动,应先修复或报告后再生成。
生成产物:<skills>/verify-<app>/SKILL.md,含 YAML frontmatter(name: verify-<app> 及描述),并包含 Launch(精确启动命令与就绪判断,含迁移、种子数据与拆除)、Doctor(只读检查实例是否值得驱动)、Drive(仓库真实选择器与命令,优先稳定句柄)、Evidence(捕获真实用户路径及副作用,说明证据标准与 mock 界限)、Cleanup(只杀自己启动的进程,保留证据)、Helpers(脚本可执行并在正文展示调用)。
功能地图:创建 <skills>/verify-<app>/features/README.md 及每个用户可见功能一个文件(先做 3-5 个),每个文件含 Sub-features、How to get to it (user POV)、Driving it with <harness>、Gotchas 四个二级标题,各文件回答功能是什么、如何到达、如何驱动、何种可观察终态证明其有效。种子数据缺前置条件时旅程报失败并将原因写入 Gotchas,不得削弱旅程使其通过。
交付前验证:端到端跑一遍自身指令,启动、doctor、驱动一个已映射功能、捕获证据、清理,并确认清理后证据仍在指定位置;失败则修复并再次运行清理。若在替代环境验证,需列出替代环境执行而真实目标不会执行的步骤。
限制:资料为技能说明,未提供具体命令、代码示例、收费或平台细节;实际命令取决于目标仓库,需在生成时从代码库调研得出。