Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATEDIR, worktree Next dev server, Playwright against…

MITAuto-check passedTesting & QA

Install Verify

skills CLI
$ npx skills add perminder-klair/subwave --skill verify -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install perminder-klair/subwave verify --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/perminder-klair/subwave.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/verify .claude/skills/verify && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
verify
GitHub stars
1.4k
Token cost
~451 tokens
SKILL.md length
158 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATEDIR, worktree Next dev server, Playwright against…

  • Tasks that involve Git worktrees
  • SKILL.md covers Isolated controller (API… and Worktree web dev server (UI…
  • Calls npx, npm and curl
  • Tasks that involve Browser testing

What it does

Verify is an agent skill from perminder-klair/subwave. Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATEDIR, worktree Next dev server, Playwright against /admin.

Its SKILL.md is about 450 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering Git worktrees and Browser testing. It works with Playwright. The repository describes itself as: Personal internet radio: Agentic AI DJ. The licence is MIT.

When your agent uses it

  • Tasks that involve Git worktrees
  • Tasks that involve Browser testing

Example prompts

  • “/verify”

Requirements

  • Node.js
  • Docker

What it can do on your machine

Read from SKILL.md and the folder at commit fc34e8a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx
    • npm
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, npm and curl, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Verify loads about 451 tokens when it runs. Until then it costs about 53 tokens; SKILL.md has 158 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~53
When it runs · the whole SKILL.md, loaded when a task matches
~451

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from perminder-klair/subwave at commit fc34e8a, republished under its MIT licence (© perminder-klair). 158 words, ~451 tokens.

Download SKILL.mdSave it as .claude/skills/verify/SKILL.md (or your agent's skills folder).
name
verify
description
Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATE_DIR, worktree Next dev server, Playwright against /admin.

Verifying controller + admin-UI changes in isolation

The operator's real station is usually running (docker sub-wave-* containers). Never restart or point tests at it. Boot your own stack from the worktree instead:

Isolated controller (API surface)

bash
cd <worktree>/controller
STATE_DIR=$CLAUDE_JOB_DIR/tmp/state PORT=7791 ADMIN_USER=test ADMIN_PASS=test \
  NODE_ENV=development \
  NAVIDROME_URL=http://localhost:9999 NAVIDROME_USER=x NAVIDROME_PASS=x \
  npx tsx src/server.ts
  • A fresh STATE_DIR boots clean (seeds sfx/jingles, writes settings.json on first save).
  • The fake NAVIDROME_* env matters: without it needsSetup is true and the admin shell redirects every page to /onboarding, so UI tests never find their controls.
  • Drive /settings etc. with curl -u test:test http://localhost:7791/....
  • To test load-time migrations: stop the server, hand-edit settings.json, restart, GET.
  • Kill by port (fuser -k 7791/tcp) — a pkill -f "tsx src/server.ts" matches the Bash tool's own wrapper cmdline and kills your shell (exit 144).

Worktree web dev server (UI surface)

bash
cd <worktree>/web
NEXT_PUBLIC_API_URL=http://localhost:7791 npm run dev -- -p 7793

Then Playwright (headless chromium, sync API):

  • Pre-seed auth before load: ctx.add_init_script("localStorage.setItem('subwave_admin_auth', '<base64 user:pass>')").
  • Assert state through the controller API after clicking Save, not through sonner toasts.
  • Admin modals portal into .admin-root; scope input lookups with [role="dialog"].

© perminder-klair, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/verify of perminder-klair/subwave.

Open the folder on GitHubat commit fc34e8a

Compare with similar skills

Verify next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Verify compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Verify this skillperminder-klair/subwave1.4k—~451Automated safety check: PassMIT
Verifymorapelker/hive470—~709Automated safety check: PassMIT
Run Dozzle Dev Instanceamir20/dozzle15k—~747Automated safety check: PassMIT
Testingkortix-ai/suna20k—~3.6kAutomated safety check: NotesCustom licence
RStudio Selenium to Playwright Migrationrstudio/rstudio5.1k—~3.6kAutomated safety check: PassCustom licence
Desktopgridaco/grida2.7k—~3.2kAutomated safety check: NotesApache-2.0

Similar skills

  • Verify

    morapelker/hive

    Build, launch, and drive this worktree's Hive app over CDP to verify a change end-to-end with playwright-cli

    470 GitHub stars~709 tokensUpdated 9 days ago
    Testing & QAAuto-check passed
  • Starts a Dozzle dev server on a port derived from the current worktree so you can test by hand in a browser, without disturbing instances started elsewhere.

    15k GitHub stars~747 tokensUpdated today
    DevelopmentAuto-check passed
  • Testing

    kortix-ai/suna

    A skill your agent uses for every Kortix test task, behavior change, bug fix, refactor, API route change, CLI change, SDK change, browser journey, test failure, coverage question, local benchmark…

    20k GitHub stars~3.6k tokensUpdated today
    Testing & QAAuto-check: notes
  • Converts RStudio Python Selenium electron tests into TypeScript Playwright tests, checking each against a live RStudio before counting it as migrated.

    5.1k GitHub stars~3.6k tokensUpdated today
    Testing & QAAuto-check passed
  • Desktop

    gridaco/grida

    Grida Desktop Electron shell and release-impact work: BrowserWindow, preload, window.grida, menus, protocol/deep links, file associations, Forge, path-scoped bridge security, Electron-only UI bugs…

    2.7k GitHub stars~3.2k tokensUpdated today
    Testing & QAAuto-check: notes
  • Repro

    vaadin/web-components

    Reproduce a Vaadin web component bug from a GitHub issue in vaadin/web-components.

    582 GitHub stars~1.3k tokensUpdated today
    Testing & QAAuto-check passed

More from perminder-klair/subwave

  • Subwave LLM Bench

    perminder-klair/subwave

    Benchmark and compare LLM models for SUB/WAVE's on-air calls — track picks, segments, listener requests, DJ scripts, banter, and programme beats — in both candidate-pool and agent modes, using…

    1.4k GitHub stars~2.4k tokensUpdated today
    Auto-check: notes
  • Subwave Worktree Dev

    perminder-klair/subwave

    Stage a SUB/WAVE git worktree so the dev stack can run from it, then start it.

    1.4k GitHub stars~2.1k tokensUpdated today
    Auto-check: notes
  • Subwave Control

    perminder-klair/subwave

    Start or stop the SUB/WAVE radio stack (a personal internet radio station) in dev or production mode — no builds, no rebuilds, no config rendering.

    1.4k GitHub stars~1.6k tokensUpdated today
    Auto-check: notes
  • Subwave Discord Release

    perminder-klair/subwave

    Draft a Discord release announcement for SUB/WAVE from a release PR, tag, or version number.

    1.4k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Subwave Release PR

    perminder-klair/subwave

    Open a release pull request from develop to main for SUB/WAVE, and keep develop from drifting behind main.

    1.4k GitHub stars~4k tokensUpdated today
    Auto-check passed
  • Subwave News Dispatch

    perminder-klair/subwave

    Write a news post for the SUB/WAVE "Dispatches" page, a short human-friendly tutorial about a feature, fix, or release.

    1.4k GitHub stars~1.6k tokensUpdated today
    Auto-check: warnings

Works with

Questions about Verify

What does Verify do?

Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATEDIR, worktree Next dev server, Playwright against…. Verify is an agent skill from perminder-klair/subwave. Drive a controller/admin-UI change end-to-end from a worktree without touching the live station — isolated controller on a spare port + temp STATEDIR, worktree Next dev server, Playwright against /admin.

When should I use Verify?

Verify fits situations like: tasks that involve Git worktrees; tasks that involve Browser testing.

How do I install Verify in Claude Code?

Run `npx skills add perminder-klair/subwave --skill verify -a claude-code`. Or copy the skill folder (.claude/skills/verify in perminder-klair/subwave) into .claude/skills/verify in your project. Claude Code loads it when a task matches its description.

How do I install Verify in Codex?

Run `npx skills add perminder-klair/subwave --skill verify -a codex`. Or copy the skill folder (.claude/skills/verify in perminder-klair/subwave) into .agents/skills/verify in your project. Codex loads it when a task matches its description.

Can I use Verify in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add perminder-klair/subwave --skill verify -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/verify, .gemini/skills/verify, .github/skills/verify and .opencode/skills/verify in your project.

What does Verify need to run?

Going by SKILL.md and its folder, Verify needs the command-line tools its instructions call (npx, npm and curl). Our summary lists: Node.js; Docker.

Does Verify access the network?

SKILL.md contains no URLs. Its commands use npx, npm and curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Verify safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Verify use?

Verify is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Verify use?

About 451 tokens (SKILL.md is roughly 1.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Verify?

Skills that share tags, products or a category with Verify: Verify (morapelker/hive, 470 stars), Run Dozzle Dev Instance (amir20/dozzle, 15k stars), Testing (kortix-ai/suna, 20k stars) and RStudio Selenium to Playwright Migration (rstudio/rstudio, 5.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Verify?

perminder-klair (a GitHub user) maintains it in perminder-klair/subwave, which has 1,417 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 9, 2026.

Source: perminder-klair/subwave on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.