帮助用户在本地启动 vscode.dev 并测试 VS Code 工作台与 Agents 窗口。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "vscode-dev-workbench" 技能: 1. 下载 https://raw.githubusercontent.com/microsoft/vscode/main/.github/skills/vscode-dev-workbench/SKILL.md 2. 保存为 ~/.claude/skills/vscode-dev-workbench/SKILL.md 3. 装好后重载技能,告诉我可以用了
请指导我基于本地 microsoft/vscode 源码启动 vscode.dev 开发服务器,并告诉我如何用带有 vscode-quality=dev 的 URL 打开集成浏览器中的工作台。
提供启动步骤、所需命令以及使用指定 URL 打开本地工作台的方法。
我想在本地 vscode.dev 环境里测试 VS Code workbench 的浏览器交互,请给我一套操作流程,包括打开页面、进入资源管理器、打开命令面板并验证基本功能。
输出一套可执行的浏览器测试步骤,用于验证工作台核心交互是否正常。
请说明如何在本地运行 vscode.dev 时接入一个 mock agent host,用来测试 Agents 窗口,并列出需要的配置、启动方式和验证步骤。
给出本地 mock agent host 的接入方案,涵盖配置方法、运行命令和 Agents 窗口验证流程。
The vscode-dev repo is the vscode.dev server. When run locally with ?vscode-quality=dev, it serves the VS Code web workbench (or Agents window at /agents) from the sibling microsoft/vscode checkout. This is the fastest way to validate web-only changes to the workbench without shipping an Insiders build.
vscode-dev and vscode must be sibling folders:
<workRoot>/
vscode/ # microsoft/vscode checkout
vscode-dev/ # microsoft/vscode-dev checkout
If your paths differ, check server/ in vscode-dev for the source root resolution — the /vscode-sources/* route maps to ../vscode.
Critical: Run npm run dev from the vscode-dev folder, NOT from vscode. The vscode repo has no dev script and will fail with npm error Missing script: "dev". Terminal tools that simplify/strip leading cd into separate commands will silently keep the cwd of a previous terminal — always use an absolute pushd or verify with pwd before npm run dev.
cd /path/to/vscode-dev # NOT /path/to/vscode
npm run dev # runs watch + nodemon; serves https://127.0.0.1:3000
If you're driving this through an agent/terminal tool, prefer:
pushd /absolute/path/to/vscode-dev >/dev/null && pwd && npm run dev
On first start you may see one crash like Cannot find module './indexes' — it's the watcher racing the first build. nodemon restarts automatically once out/ finishes compiling. The server is ready when curl -sk -o /dev/null -w "%{http_code}" https://127.0.0.1:3000/ returns 200.
https://127.0.0.1:3000/?vscode-quality=dev — main workbench, local dev sourceshttps://127.0.0.1:3000/agents?vscode-quality=dev — Agents window, local dev sourceshttps://127.0.0.1:3000/?vscode-version=<commit> — pinned production commit&vscode-log=trace for verbose client loggingUse open_browser_page and the standard browser tools.
The chat input is a Monaco editor — page.keyboard.press('Enter') inserts a newline. To send, click the Send button (a[aria-label^="Send"]) or use the send keybinding.
The service worker caches client assets aggressively. A plain reload can still serve stale modules:
await page.evaluate(async () => {
const regs = await navigator.serviceWorker?.getRegistrations() ?? [];
await Promise.all(regs.map(r => r.unregister()));
const keys = await caches?.keys() ?? [];
await Promise.all(keys.map(k => caches.delete(k)));
});
await page.reload({ waitUntil: 'domcontentloaded' });
The integrated browser panel clamps width, so page.setViewportSize() and CDP setDeviceMetricsOverride narrow the viewport only as far as the panel allows. User-Agent override and touch emulation work fine:
const client = await page.context().newCDPSession(page);
await client.send('Emulation.setUserAgentOverride', {
userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1',
platform: 'iPhone'
});
await client.send('Emulation.setTouchEmulationEnabled', { enabled: true, maxTouchPoints: 5 });
await client.send('Emulation.setDeviceMetricsOverride', {
width: 393, height: 852, deviceScaleFactor: 3, mobile: true,
screenOrientation: { type: 'portraitPrimary', angle: 0 }
});
await page.reload();
For a true mobile viewport, drive a standalone Playwright script with devices['iPhone 14 Pro'] instead of the integrated browser. If a mobile-responsive overlay intercepts pointer events during automation, fall back to { force: true } on click().
…
帮助开发者定位并读取 Code OSS 开发构建日志,快速排查运行与扩展问题。
帮助开发者新增、修改或审查 VS Code 配置策略,并生成平台相关产物。
帮助开发者验证 Azure DevOps 流水线改动,快速排查构建与 YAML 配置问题。
在隔离环境启动 VS Code OSS,便于联动自动化操作与多进程调试。
运行聊天性能基准与内存泄漏检查,定位聊天界面回归和性能问题。
帮助开发者创建和维护组件截图测试夹具,并优化组件的可测试性。
帮助开发者在 VS Code 仓库中运行、筛选并调试单元测试。
帮助开发者在 VS Code 仓库中运行并筛选集成测试,区分不同测试类型。
自动启动并操控 VS Code Insiders 与 Copilot Chat,完成界面测试、聊天交互和截图。
自动驱动 VS Code 性能与内存排查,生成可复现分析结果与对比证据。
连接 Chrome DevTools,帮助 AI 代理调试网页、排查问题并分析页面行为
帮助用户在 VS Code 中从零搭建完整项目结构与初始化开发环境。