VS Code Insiders 自动化技能
通过 Playwright 自动化 VS Code Insiders 与 Copilot Chat。
文档限定了Playwright CLI的Bash工具模式,并说明使用本地CDP、独立用户目录和截图留痕;但会持久化认证状态、操作聊天界面并可能截取敏感内容,未明确逐步确认、数据流、权限边界、敏感数据处理或可靠回滚,因此扣分。
流程、依赖、端口、重试、重新快照和常见故障处理有较清晰说明;但静态材料未证明关键路径可执行,选择器依赖内部实现,认证、平台差异和失败诊断仍有限,按静态上限扣分。
触发词、目标用户场景和主要操作范围较明确,涵盖UI交互、聊天自动化、调试和截图;但未充分声明非适用场景,也没有中文支持说明,且核心Copilot功能依赖GitHub认证及可能受中国大陆网络可达性影响的服务,因此扣分。
文档按前置条件、工作流、附加操作、交互细节、故障排查和清理组织,且给出命令示例、依赖和版本线索;但缺少独立版本策略、变更记录、维护责任和更新路径,部分安装与环境假设仍隐藏,故扣分。
对已具备VS Code Insiders、编译环境和Copilot认证的开发者,流程可覆盖启动、连接、快照、交互、截图和清理;但静态审查无法验证输出完整性或实际成功率,且认证、编译和手工处理带来较高成本,因此未给高分。
技能包含具体命令、端口、选择器和故障条件,仓库也有相关聊天库与性能CI;但这些CI并未直接覆盖该技能的Playwright/CDP关键路径,缺少独立复现结果或第三方执行证据,因此仅给有限分数。
- 使用持久化调试目录会保存Copilot/GitHub认证状态;运行前应确认目录权限,并避免截图包含令牌、代码、提示词或个人数据。
- CDP端口和内部CSS选择器带来本地暴露及版本脆弱性;应限制监听范围,确认目标窗口,并在完成后清理进程和敏感状态。
- Copilot认证及模型服务可能受中国大陆网络、账户策略或地区限制影响;技能未提供离线或替代路径。
- 清理示例使用基于命令行匹配的kill,误匹配时可能终止错误的VS Code进程;执行前应人工核对进程。
它能做什么 & 适用场景
该技能用于通过 Chrome DevTools Protocol 连接 VS Code Insiders,并使用 @playwright/cli 操作 Copilot Chat 扩展及其他 VS Code 界面。它覆盖扩展编译、启动、CDP 连接、页面快照、元素交互和截图留痕。技能特别说明了 Monaco 编辑器输入、多个 Webview 标签页以及扩展代码变更后的重启流程。它适合需要真实操作或测试 VS Code UI 的开发者,但要求使用 VS Code Insiders、先编译扩展并保持 GitHub 身份验证。
运行 npm install、npm run compile 或 npm run watch;用 code-insiders 以扩展开发模式、CDP 端口和持久化用户目录启动 VS Code;通过 npx @playwright/cli attach 连接 CDP;列出或切换标签页,生成快照,使用元素引用填充和按键交互;通过 eval 检查 Monaco 文本;在指定目录保存时间戳截图;代码变更后重新编译、终止并启动调试实例。
- 扩展开发者需要在 VS Code Insiders 中加载并验证自己的扩展 UI。
- Copilot Chat 测试人员需要自动填写聊天输入框并等待响应完成。
- 调试人员需要通过快照发现 VS Code 界面元素并执行交互。
- QA 工程师需要在关键操作前后保存截图作为 UI 测试记录。
- Monaco 输入无法用普通 click 操作时,开发者需要使用 fill、type 或 press 完成输入。
优缺点一览
- 提供从编译、启动到 CDP 连接和快照交互的完整工作流。
- 针对 Monaco 编辑器给出 fill、type、press 及 JavaScript 聚焦方案。
- 支持截图留痕、标签页管理和扩展代码变更后的重启流程。
- 明确要求持久化用户目录,以保留认证、设置和扩展状态。
- 必须使用 VS Code Insiders;VS Code Stable 不会激活该扩展。
- 需要先编译扩展,并需要已认证的 GitHub 会话才能正常使用 Copilot Chat。
- 依赖 VS Code 内部 CSS 选择器,版本更新后可能需要重新快照并调整自动化。
- 源材料未提供独立安装包、自动化测试套件或跨平台验证结果。
如何安装
在 microsoft/vscode 仓库根目录使用 npm install,使 @playwright/cli 可通过开发依赖调用;也可按源文档使用 npm install -g @playwright/cli。该技能位于 extensions/copilot/.agents/skills/launch/SKILL.md,源材料未说明独立安装或复制到其他目录的步骤。
如何使用
先运行 npm run compile,然后使用 code-insiders --extensionDevelopmentPath="$PWD" --remote-debugging-port=9223 --user-data-dir="$PWD/.vscode-ext-debug" 启动。使用 npx @playwright/cli attach --cdp=http://127.0.0.1:9223 连接,再运行 npx @playwright/cli tab-list 和 npx @playwright/cli snapshot。可用自然语言触发,例如“automate VS Code”“interact with chat”“test the UI”“take a screenshot”或“launch with debugging”。
对比同类
与 VS Code Stable 相比,该技能明确要求 VS Code Insiders,因为目标扩展使用了 58 个提议中的 VS Code API,并针对特定版本范围。