用途:drivable-vscode 提供对运行中 VS Code 实例的远程可视化呈现与操作能力,适用于探索性测试、客户缺陷复现、功能验证和证据采集。
主要能力:通过 MCP 服务器驱动 VS Code,支持脚本化与智能体驱动两种工作流。脚本化用于可重复检查或场景矩阵;智能体驱动用于开放式目标、探索测试与缺陷复现。可观察截图与 ARIA/文本状态,执行动作,使用 waitForText 等待预期状态转换,并记录缺陷发现。finish 会保存最终截图、视频、动作日志、控制台日志、发现与摘要。
使用方式:在仓库根目录执行 npm install 与 npm run compile -w @salesforce/drivable-vscode。start 会先运行缓存的 vscode:package 图再启动 VSIX;如需更快源码迭代,运行 npm run vscode:bundle,再以 extensionMode: "dev" 启动。接入 Claude Code:claude mcp add --scope local drivable-vscode -- ./packages/drivable-vscode/bin/drivable-vscode-mcp.js,随后 claude mcp get drivable-vscode,添加后重启 Claude Code,工具不可用时检查 /mcp。OpenCode 在 opencode.jsonc 的 mcp 下配置本地命令并重启,用 opencode mcp list 验证。Cursor 可用 cursor --add-mcp 命令或在 .cursor/mcp.json 的 mcpServers.drivable-vscode 下配置,重启后在 Settings > Tools & MCP 启用。
智能体驱动流程:以目标调用 start(仅在需要已认证组织时添加 orgAlias),调用 observe 查看截图与状态,基于观察选择 1 个动作,调用 act 并带上最新观察序列,用 waitForText 等待特定预期转换,再次 observe,循环直至通过、失败或达到已记录限制;每个缺陷立即调用 add_finding 并附复现步骤与证据路径;最后调用 finish 并报告产物目录与相关截图/视频。
限制:1 个服务器进程最多拥有 1 个活动会话,开始新会话前须先 finish;每次动作前必须观察,过期序列会按设计失败;优先使用最新观察中可见的角色/名称动作与命令标题;意外 UI 与工具错误应作为证据而非改用回退选择器;文本产物会脱敏常见凭据,但截图/视频不会,应避免显示机密;原生 OS 对话框与外部窗口不在控制范围内。