launch

Launch Code OSS with isolated profiles and debug ports for Playwright automation and dap-cli debugging.

137|10|Updated Aug 18, 2026
One-click install
npx skills add https://github.com/devdotfast/review --skill launch-devdotfast
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: launch
Source: https://github.com/devdotfast/review/tree/main/apps/review-desktop/code-oss/.agents/skills/launch
Command: npx skills add https://github.com/devdotfast/review --skill launch-devdotfast

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @playwright/cli, and includes scripts (resource) components.

What problem does it solve? Developing and testing VS Code itself requires launching Code OSS from sources with working authentication, UI automation, and debugger access, but manual setup causes port conflicts, profile corruption, and unauthenticated instances that break chat and agent flows. ## Core Features & Use Cases - Isolated throwaway profiles: Clones an authenticated user-data-dir into a slim temp copy that preserves Copilot/GitHub auth while excluding caches, workspace storage, and logs. - Unique debug ports per launch: Picks free ports for the renderer (CDP), extension host, main process, and agent host, printing them as JSON for programmatic pickup. - UI automation and debugging: Drives the workbench with @playwright/cli over CDP, pastes text into Monaco chat inputs via a helper script, and attaches dap-cli breakpoints in the same session. - Use Case: Run multiple concurrent Code OSS instances on one machine, each driven by its own agent with its own Playwright session, to test chat flows or UI features in parallel without cross-contamination. ## Quick Start Ask the agent to launch Code OSS from the VS Code repo with an isolated profile, attach Playwright over the returned CDP port, and drive the chat UI.

Frequently Asked Questions about launch

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I launch VS Code from sources for UI automation testing?

Run the launch.sh script from a compiled VS Code checkout; it clones an authenticated profile, picks free debug ports, and blocks until the CDP endpoint responds. Attach with npx @playwright/cli attach --cdp using the cdpPort from the printed JSON.

How do I type into the VS Code Monaco chat input with Playwright?

Monaco's native-edit-context ignores Playwright's fill and type commands. Use the monaco-paste.sh helper, which dispatches a ClipboardEvent paste with a DataTransfer payload into the focused editor, then verify with the JSON read-back it prints.

Can I run multiple Code OSS instances in parallel for testing?

Yes, each launch gets its own user-data-dir, extensions dir, shared-data dir, and ports, so instances do not conflict. Give each driver a unique Playwright session name via -s=NAME; on macOS, more than two or three instances may hit Crashpad Mach-port limits.

Why does the launched Code OSS window show language model unavailable?

This means the cloned profile lacks working authentication. Confirm the source user-data-dir contains User/globalStorage with persisted extension state, and note that auth tokens live in the per-user OS keychain, so you must run as the same user.

How do I debug the VS Code extension host or main process?

Attach dap-cli to the port matching your target: extHostPort for the extension host, mainPort for the Electron main process, agentHostPort for the agent host, or cdpPort for the renderer workbench. All ports are printed in the launch JSON.

Why does launch.sh fail with built-in extension module errors?

The built-in extensions were not compiled; running npm run transpile-client only populates the client out directory. Run npm run compile once or keep npm run watch running so both the client and all extensions under extensions/ are built.