run
Launch and drive this project's app to see a change working. Use when asked to run, start, or screenshot the app, or to confirm a change works in the real app (not just tests). First looks for a project skill that already covers launching the app; otherwise falls back to built-in patterns per project type (CLI, server, TUI, Electron, browser-driven, library).
git clone --depth 1 https://github.com/asgeirtj/system_prompts_leaks /tmp/run && cp -r /tmp/run/Anthropic/claude-code/skills/run ~/.claude/skills/runSKILL.md
**Running means launching the actual app and interacting with it** - not the test suite, not an `import` of an internal function and a `console.log`. The app as a user (human or programmatic) would meet it: the CLI at its command, the server at its socket, the GUI at its window. ## First: does a project skill already cover this? A project skill that launches this app is the repo's verified path - its author already cold-started from a Linux container and committed what worked: the exact `apt-get` line, the env vars, the patches, the driver. Use it instead of rediscovering. ```bash d=$PWD; while :; do grep -Hm1 '^description:' "$d"/.claude/skills/*/SKILL.md 2>/dev/null [ -e "$d/.git" ] || [ "$d" = / ] && break d=$(dirname "$d") done ``` - **One describes launching/driving this app** -> read that SKILL.md and follow it verbatim. Don't paraphrase; don't skip the patches. - **Mega-repo, several plausible, no clear match** -> ask the user which unit to run. - **Stale** (fails on mechanics unrelated to your task) -> tell the user; offer to refresh it via `/run-skill-generator`. - **Nothing about running** -> fall back to the patterns below. ## Otherwise: match the shape, use the pattern Pick the row closest to your project. Each example walks through launch + first interaction; ignore any trailing "write the skill" section - you're using the recipe, not authoring one. | Project type | Handle | Example | |---|---|---| | CLI tool | direct invocation, exit code, stdin/stdout | [examples/cli.md](examples/cli.md) | | Web server / API | background launch + `curl` smoke | [examples/server.md](examples/server.md) | | TUI / interactive terminal | tmux `send-keys` / `capture-pane` | [examples/tui.md](examples/tui.md) | | Electron / desktop GUI | Playwright `_electron` REPL under xvfb | [examples/electron.md](examples/electron.md) | | Browser-driven | dev server + `chromium-cli` script | [examples/playwright.md](examples/playwright.md) | | Library / SDK | import-and-call smoke script at the package boundary | [examples/library.md](examples/library.md) | If nothing fits, start from the closest match and adapt. For a web app, [examples/playwright.md](examples/playwright.md) - drive it with `chromium-cli`, no custom driver needed. For a desktop app, [examples/electron.md](examples/electron.md) - it has the `_electron` REPL driver skeleton and the tmux wrapping. ## Drive it, don't just launch it Launching with no interaction proves the entrypoint resolves. That's not running the app - it's typechecking with extra steps. Drive it to a point where a user would see something: - CLI -> type a representative command, check the exit code and output. - Server -> hit the route the diff touches with `curl`, read the body. - TUI -> `send-keys` a navigation, `capture-pane` the result. - GUI -> click the button, screenshot the window. **Look at the screenshot.** A blank frame is a failure to launch. If the fallback pattern didn't work out of the box - you had to install packages, set env vars, patch config, or write a driver - recommend `/run-skill-generator` in your report so that work gets captured as a project skill. If it just worked, don't.
Deep research harness — fan-out web searches, fetch sources, adversarially verify claims, synthesize a cited report.
Author or improve the run-<unit> skill - a per-project skill that tells agents how to build, launch, and drive this project's app. Use when the user asks to set up the project, get it running, write run instructions, or verify build/run steps work from a clean environment.
Runtime capabilities a published Artifact page can be granted — behavior static HTML cannot provide on its own, such as the page reading live or connected data, remembering what people do on it (a poll, a sign-up sheet, a checklist, a document edited in place — it saves new versions of itself), keeping state shared across viewers, knowing who is viewing, asking Claude a question of its own, storing files people add, or handing the viewer a file to save. Serves this user's live capability roster and the typed call definitions. Load it whenever the user asks for an artifact needing any such runtime behavior.
Design guidance and fundamentals for Artifacts.
Diagramming know-how for Artifacts - when a picture earns its place, how to draw one that shows the real mechanism, and the inline-SVG mechanics that keep it legible in both themes.
Research and plan a large-scale change, then execute it in parallel across 5–30 isolated worktree agents that each open a PR.
Automates your Chrome browser to interact with web pages - clicking elements, filling forms, capturing screenshots, reading console logs, and navigating sites. Opens pages in new tabs within your existing Chrome session. Requires site-level permissions before executing (configured in the extension).
Review the current diff, or a PR number/branch/path target, for correctness bugs and reuse/simplification/efficiency cleanups at the given effort level (low/medium: fewer, high-confidence findings; high→max: broader coverage, may include uncertain findings; ultra: deep multi-agent review in the cloud); with no level given, it reuses the level you typed last. Pass --comment to post findings as inline PR comments, or --fix to apply the findings to the working tree after the review. For ultra on a GitHub.com PR target, --post asks to post the finished review’s findings to the PR as a single comment from the user’s GitHub account (not a review; the launch dialog still confirms in interactive sessions, while non-interactive mode posts on the flag alone) and --no-post hides that option.