Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
mattpocock avatar

Wizard

  • 89k installs
  • 192k repo stars
  • Updated July 27, 2026
  • mattpocock/skills

wizard is a Claude Code skill that generates an interactive bash script walking a human through a manual procedure - opening URLs, capturing values, and writing .env files and GitHub secrets.

About

wizard generates an interactive bash script that walks a human step by step through a manual procedure such as third-party service setup, a one-off migration, or an A-to-B state transition. The generated script opens each URL, says exactly what to click and copy, captures values with hidden entry for secrets, writes them to .env files and GitHub Actions secrets, confirms at every stage, and shows how much is left. The skill follows a 4-step process: scope the procedure from the repo (.env files, README, and every secrets.* reference in CI workflows), map each stage's exact UI journey without inventing steps, author one stage per step on top of the bundled template.sh library (never hand-editing the library itself), then verify with bash -n and shellcheck and trace values statically rather than running it. Wizards are ephemeral by default, committed only when the user wants a repeatable setup path in the repo. Developers reach for it when a setup or migration is tedious to do by hand and tedious to re-explain to an AI every time.

  • Bundled template.sh solves the UX: progress with time remaining, confirmation gates, cross-platform URL opening (includi
  • 4-step process: scope the procedure from the repo, map each stage's exact UI journey, author stages on the template, ver
  • Scoping reads .env.example, README, docker-compose, and every secrets.*/vars.* reference in .github/workflows before ask
  • Never invents UI steps: where the current dashboard path is unknown, it asks the user or checks the docs
  • Verification is static: bash -n, shellcheck, and tracing every captured value to where it lands - never running the wiza

Wizard by the numbers

  • 89,005 all-time installs (skills.sh)
  • +24,279 installs in the week ending Jul 28, 2026 (Skillselion tracking)
  • Ranked #6 of 560 CLI & Terminal skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

wizard capabilities & compatibility

Use cases
devops · ci cd · documentation
Runs
Runs locally
Pricing
Free
From the docs

What wizard says it does

A **wizard** is a bash script that walks a human, step by step, through a manual procedure that's tedious to do by hand and tedious to re-explain to an AI every time.
SKILL.md
Your job is only to scope the procedure and author its stages.
SKILL.md
Don't run it end-to-end yourself — it opens browsers and blocks on human input.
SKILL.md
npx skills add https://github.com/mattpocock/skills --skill wizard

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs89k
repo stars192k
Security audit3 / 3 scanners passed
Last updatedJuly 27, 2026
Repositorymattpocock/skills

How do you make a tedious manual procedure - third-party setup, env and secret configuration, a one-off migration - fast, safe, and repeatable without re-explaining it to an AI every time?

Generate an interactive bash wizard that walks a human through third-party setup or a one-off migration, capturing values into .env files and GitHub Actions secrets.

Who is it for?

Developers who repeatedly walk themselves or teammates through multi-dashboard setup (API keys, .env values, CI secrets) or a delicate one-off migration and want a guided, confirm-at-every-step script.

Skip if: Skip it for procedures that can be fully automated with no human in the loop, or one-liners not worth a staged script; wizards exist precisely because a human must click, copy, and confirm.

When should I use this skill?

Invoke when a project needs third-party service setup, env/secret provisioning, a one-off migration, or any A-to-B state transition that a human must perform manually. User-triggered; model invocation is disabled.

What you get

An executable, syntax-checked bash wizard at a scratch or scripts/ path that opens each URL, captures every value, and writes .env entries and GitHub secrets.

  • Executable bash wizard script authored on template.sh
  • Populated .env entries and GitHub Actions secrets after the human runs it

By the numbers

  • 4-step authoring process: scope the procedure, map each stage's journey, author the wizard, verify and hand off

Files

SKILL.mdMarkdownGitHub ↗

Wizard

A wizard is a bash script that walks a human, step by step, through a manual procedure that's tedious to do by hand and tedious to re-explain to an AI every time. It opens each URL, says exactly what to click and copy, captures the values, writes them where they belong (.env, GitHub secrets), confirms at every stage, and shows how much is left. It might configure third-party services, run a one-off migration, or move the project from one state to another.

The delightful UX is already solved by template.sh — progress with time-remaining, confirmation gates, cross-platform URL opening (including WSL), hidden secret entry, idempotent .env upserts, gh secret/gh variable writes, and a closing summary. Your job is only to scope the procedure and author its stages. The library above the STAGES marker is identical in every wizard; that consistency is the point — never hand-edit it.

A wizard is ephemeral by default — built for one run, saved to a scratch or scripts/ path, deleted when the job's done. Commit it only when the user wants a repeatable setup path that should live in the repo.

Process

1. Scope the procedure

Work out every manual step the human must take and every value that gets captured along the way. Read the repo first — don't ask cold:

  • For setup: .env, .env.example, .env.*, README, docker-compose*, framework config, and .github/workflows/* (every secrets.* / vars.* reference is a value the wizard must produce).
  • For a migration or transition: the current state, the target state, and the irreversible actions between them.

Then show the user the ordered list of stages and the values each produces, and confirm — they may add, drop, or reorder.

Done when: every stage is named in order, and for each captured value you know (a) where the human gets it, (b) where it's written (.env, a GitHub secret, both, or nowhere — some stages are pure actions), and (c) whether it's secret (hidden entry) or public.

2. Map each stage's journey

For each stage, write the precise path a human follows: which URL to open, what to do there, where a value is shown, which variable it fills — e.g. "Dashboard → Developers → API keys → Reveal test key → copy". Where you don't actually know the current UI or the exact command, say so and ask the user or check the docs — never invent steps that may not exist.

Done when: every stage traces to concrete instructions a stranger could follow.

3. Author the wizard

Copy template.sh to the target path. Replace the example stage with one stage per step, in dependency order. Use the library helpers — stage, say/step, open_url, ask/ask_secret, write_env, set_secret/set_var, pause/confirm — and set TOTAL_STAGES and TOTAL_MINUTES to honest estimates (this drives the time-remaining display).

Hold the bar the template sets: open the URL before asking for its value, use ask_secret for anything secret, write_env every persisted value, set_secret only the values CI actually needs, and confirm before any irreversible action. Each stage clears the screen so only the current step is visible — keep a stage to one focused task so nothing the human needs scrolls away. Don't touch the library above the marker.

4. Verify and hand off

  • bash -n <script>; run shellcheck if available.
  • chmod +x <script>.
  • Don't run it end-to-end yourself — it opens browsers and blocks on human input. Trace it statically instead: every value from step 1 is captured and lands where step 1 said, and every set_secret name exactly matches a secrets.* reference in CI.
  • Tell the user how to run it. If it's a repeatable setup path, commit it and link it from the README so the next person runs the script instead of asking an AI.

Related skills

How it compares

Use instead of ad-hoc README setup instructions or dictating dashboard steps in chat; the generated script encodes the whole journey with confirmation gates and idempotent writes.

FAQ

What does the wizard skill generate?

A bash script built on a bundled template.sh library that guides a human through a manual procedure stage by stage: it opens each URL, says what to click and copy, captures values (hidden entry for secrets), writes .env files and GitHub secrets via gh, and confirms each step.

When should I use wizard instead of automating the setup directly?

When the procedure requires a human in browser dashboards - creating API keys, third-party accounts, irreversible migrations. The wizard makes the tedious manual path fast and repeatable instead of re-explaining it to an AI every time.

Does the skill run the generated wizard itself?

No. It verifies statically with bash -n and shellcheck and traces that every captured value lands where the scoping said, and that every set_secret name matches a secrets.* reference in CI. Running it end-to-end is left to the human, since it opens browsers and blocks on input.

Is Wizard safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

CLI & Terminalintegrationsdevops

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.