← ClaudeAtlas

quick-startlisted

快速测试功能或新改动:理解诉求后自动注入测试代码(便捷入口、硬编码、mock 数据、console.log 埋点),减少用户操作步骤,验证功能与数据是否符合预期,验证完成后清除全部注入代码恢复原状。依赖浏览器控制 MCP(chrome-devtools / playwright 等)。当用户想快速验证某个功能、测试新改动、入口太深或没有入口、需要 mock 数据时使用。
fongzhizhi/claude-skill-lab · ★ 1 · AI & Automation · score 77
Install: claude install-skill fongzhizhi/claude-skill-lab
# quick-start 快速验证功能的"注入-验证"闭环:**理解诉求 → 注入测试代码 → 复现/触发 → 看数据 → 收敛**。与 live-debugger 同引擎(依赖浏览器 MCP、同样的闭环节奏与硬性限额),但目标不同:live-debugger 为修复 bug,**quick-start 为验证功能与数据**——用注入代码减少用户操作步骤,或验证数据是否符合预期,验证完清场走人,不留任何测试痕迹。 ## 前置:明确验证诉求 开始前确认:**要验证什么**(功能/新改动/数据)、**预期结果**(行为或数据应符合什么)、**涉及页面 URL**(未提供用默认值)。缺失则先询问——验证目标不明确时注入代码就是盲打。 ## 前置:确认浏览器控制 MCP 可用 用 ToolSearch 查找浏览器控制工具(navigate / refresh / 读取 console 等,工具名形如 `mcp__chrome-devtools__navigate`、`mcp__playwright__navigate`)。**以实际找到的工具名为准,不要臆造工具名。** 找不到 → 告知用户需要配置浏览器控制 MCP,本次降级为"纯代码注入 + 用户手动复现":由用户手动操作页面、打开 DevTools Console 回贴 `[quick-start]` 日志。 ## 注入手段选择矩阵 分析代码后按场景选择注入手段(可组合): | 场景 | 手段 | | --- | --- | | 触发入口深、无入口、需要 N 步操作 | 在入口函数处暴露快捷触发:`window.xxx = () => ...` 全局函数、URL 参数触发、注入临时按钮 | | 依赖后端数据、接口慢/报错/环境无数据 | mock 数据:拦截接口返回,或在**数据消费处**注入固定数据(能 mock 局部数据就不要 mock 整个接口) | | 需要特定初始状态/参数组合 | 硬编码:固定参数、直接调用目标函数传入测试数据 | | 验证流程与数据 | console.log 埋点:`console.log('[quick-start][<context>]', { vars })` | 优先选**改动最小、最局部**的注入;多轮迭代中每轮注入范围必须比上一轮小。 ## 注入代码标记规范(保证可精确清除) - 单行埋点:`console.log('[quick-start][<context>]', { vars })`,context 为语义化位置名 - 多行注入代码块(mock / 入口 / 硬编码)用标记注释对包裹: ```js // [quick-start] begin: <注入名> ...注入代码... // [quick-start] end ``` 清除时按 `[quick-start]` 前缀 + begin/end 对精确删除,不误删业务代码。 ## 可逆性原则(注入的红线) - 注入必须是**局部、可逆**的:只替换数据/暴露入口/临时改参数,不改动业务逻辑本身 - 清理后代码行为必须完全恢复原状——清理不干净 = 事故 - 业务代码的语义(函数签名、调用链)不做任何持久性改动 ## 验证主流程 ### 步骤 1:分析代码,确定注入位置 根据验证诉求分析代码,找到注入点。 - **硬性限额**(AI 没有时间概念,用操作次数换时间约束): | 动作 | 上限 | | --- | --- |