Agent skill · software engineering · microsoft

smoke-tests

Use when running VS Code smoke tests or working on smoke-test CI steps. Covers pnpm run smoketest / smoketest-no-compile, grep filtering tests, and a temporary repeat-loop technique for tracking down flaky smoke tests in CI.

Why this skill is useful

Adds specific npm commands and CI techniques for running and debugging smoke tests that the AI wouldn't reliably generate on its own.

What it needs

Requires npm installed locally. About 8k tokens when loaded. Last updated 2026-08-07. 188,455 stars on the source repository.

What this skill does

Running Smoke Tests Smoke tests live in test/smoke/ and drive a full VS Code instance (Electron, web, or remote) through end-to-end user flows. Scripts pnpm run smoketest — compiles the smoke tests first (test/smoke), then runs them. pnpm run smoketest-no-compile — runs the already-compiled smoke tests. CI uses this after an explicit compile step. Both forward extra arguments after -- to the runner (test/smoke/test/index.js). Common options Option Description -------- ------------- -g <pattern> (alias -f) Grep filter on test/suite titles (mocha grep). --build <path> Run against a packaged build instead of the compiled-from-source dev build. --tracing Capture Playwright traces (and screenshots on failure). --web Run the browser smoke tests instead of Electron. --headless Headless browser (used with --web). --remote Run the remote smoke tests. --shard <index>/<total> Run only one part of the top-level suites, for example --shard 1/2. Suites are balanced across shards by estimated duration (see test/smoke/src/shard.ts); each suite runs in exactly one shard. The -g pattern matches against test/suite titles. For example, -g "Agents Window" matches all three Agents Window suites (Agents Window, Agents Window (local AgentHost), and Agents Window (local AgentHost, SDK sandbox)); use whatever substring identifies the suite(s) you care about. The runner exits non-zero if any test fails, so a 0 exit code means every selected test passed. Sharding in PR CI The GitHub PR workflows split the Electron smoke tests into shards: the electron-smoke-1 through electron-smoke-3 jobs of .github/workflows/pr-linux-test.yml and pr-win32-test.yml pass their SMOKESHARDINDEX/SMOKESHARDTOTAL env to the runner as --shard. They report as <OS> / Electron-Smoke (shard 1/3) through <OS> / Electron-Smoke (shard 3/3). On Windows, the WSL Dev Container suite runs in its own electron-smoke-wsl job instead of a shard, which reports as Windows / Electron-Smoke (WSL). …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills microsoft/smoke-tests

View the source on GitHub

Browse the @skills marketplace