interactive-extension-testing
Provides steps to set up a development workspace for interactive testing of the PowerShell VS Code extension.
Install
mkdir -p .claude/skills/interactive-extension-testing && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/16657" && unzip -o skill.zip -d .claude/skills/interactive-extension-testing && rm skill.zipInstalls to .claude/skills/interactive-extension-testing
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Guide for setting up the multi-root PowerShell VS Code extension/PSES dev workspace. Use when asked to open the dev workspace, interactively test the extension, set up PSES for F5 debugging, or open pwsh-extension-dev workspace.Key capabilities
- →Set up multi-root PowerShell VS Code extension dev workspace
- →Interactively test the extension
- →Set up PSES for F5 debugging
- →Build local PSES for testing
- →Ensure workspace can resolve the Server root
- →Ensure extension can load the runtime PSES module
How it works
The skill guides the setup of a multi-root VS Code workspace for the PowerShell extension, including building PSES, creating symbolic links for the server root and modules, and launching for interactive debugging.
Inputs & outputs
When to use interactive-extension-testing
- →Setup extension dev workspace
- →Perform F5 debugging of extension
- →Build local PSES for testing
- →Configure multi-root workspace
About this skill
Interactive Extension Testing
Read .github/copilot-instructions.md "Build, Lint, and Test" and "PSES and Cross-Repo Work" first — this skill only adds the worktree setup details for hands-on F5 testing.
Use this when the goal is to open pwsh-extension-dev.code-workspace and run
F5 → Launch Extension against a locally-built PowerShellEditorServices (PSES).
Prerequisites
- Follow
.github/copilot-instructions.mdfor the repository build dependencies and themodules/symlink model. - Confirm these commands are available:
pwsh,dotnet,code, and the PowerShellInvokeBuildmodule. - Have a PSES checkout that can be used as
<pses-checkout>.
Setup
-
Build PSES first. In
<pses-checkout>, run the PSES build task (for example,Invoke-Build Build) so<pses-checkout>/module/PowerShellEditorServices/binexists. Without that directory, the extensionBuildtask invscode-powershell.build.ps1assertsExtension requires PSES. -
Ensure the workspace can resolve the Server root. The workspace defines
Clientas<extension-repo>andServeras../PowerShellEditorServices, so a worktree parent may need a sibling link:ln -s <pses-checkout> <extension-repo-parent>/PowerShellEditorServices -
Ensure the extension can load the runtime PSES module.
modules/is gitignored and should point at the built PSES module directory:ln -s <pses-checkout>/module <extension-repo>/modulesIn a normal sibling clone,
Invoke-Build RestoreEditorServicesinvscode-powershell.build.ps1creates thismoduleslink and builds PSES. In a worktree or fresh checkout, create the sibling link first ifGet-EditorServicesPathcannot resolve../PowerShellEditorServices/PowerShellEditorServices.build.ps1. -
Open the dev workspace:
cd <extension-repo> code pwsh-extension-dev.code-workspace -
Launch interactively. In VS Code, use F5 → Launch Extension. The workspace also defines
Launch Extension - Temp Profile; seepwsh-extension-dev.code-workspacefor the current launch/task wiring.
Verify
cd <extension-repo>
readlink modules
test -d modules/PowerShellEditorServices/bin
Then confirm F5 starts the extension host and attaches to PSES.
Cleanup
Both links are reversible and not under version control: modules is gitignored, and the
sibling PowerShellEditorServices link lives outside <extension-repo>. Cleanup is just:
rm <extension-repo>/modules
rm <extension-repo-parent>/PowerShellEditorServices
How It Resolves
Use pwsh-extension-dev.code-workspace as the source of truth for roots and launch
configs. Use Get-EditorServicesPath, RestoreEditorServices, and Build in
vscode-powershell.build.ps1 as the source of truth for how the extension locates,
links, builds, and asserts the local PSES module.
When not to use it
- →When the goal is not to open `pwsh-extension-dev.code-workspace`
- →When the goal is not to run F5 → Launch Extension against a locally-built PowerShellEditorServices
- →When the task is not related to interactive extension testing
Prerequisites
Limitations
- →The skill guides setting up the multi-root PowerShell VS Code extension/PSES dev workspace
- →The skill is used when interactively testing the extension or setting up PSES for F5 debugging
- →The skill requires specific commands and the PowerShell `InvokeBuild` module
How it compares
This skill provides specific steps for setting up a local development environment for the PowerShell extension, including building PSES and configuring symbolic links, enabling F5 debugging unlike general VS Code setup.
Compared to similar skills
interactive-extension-testing side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| interactive-extension-testing (this skill) | 0 | 2mo | Review | Intermediate |
| webapp-testing | 353 | 4mo | Review | Intermediate |
| dev-browser | 53 | 5mo | Review | Intermediate |
| playwright-browser-automation | 29 | 8mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
webapp-testing
anthropics
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
dev-browser
SawyerHood
Browser automation with persistent page state. Use when users ask to navigate websites, fill forms, take screenshots, extract web data, test web apps, or automate browser workflows. Trigger phrases include "go to [url]", "click on", "fill out the form", "take a screenshot", "scrape", "automate", "test the website", "log into", or any browser interaction request.
playwright-browser-automation
lackeyjb
Complete browser automation with Playwright. Auto-detects dev servers, writes clean test scripts to /tmp. Test pages, fill forms, take screenshots, check responsive design, validate UX, test login flows, check links, automate any browser task. Use when user wants to test websites, automate browser interactions, validate web functionality, or perform any browser-based testing.
windows-ui-automation
martinholovsky
Expert in Windows UI Automation (UIA) and Win32 APIs for desktop automation. Specializes in accessible, secure automation of Windows applications including element discovery, input simulation, and process interaction. HIGH-RISK skill requiring strict security controls for system access.
unity-mcp-orchestrator
CoplayDev
Orchestrate Unity Editor via MCP (Model Context Protocol) tools and resources. Use when working with Unity projects through MCP for Unity - creating/modifying GameObjects, editing scripts, managing scenes, running tests, or any Unity Editor automation. Provides best practices, tool schemas, and workflow patterns for effective Unity-MCP integration.
agent-browser
vercel-labs
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.