Kipt

Your prompts and skills, one keystroke away.

Explore

Wizard skill: turn manual setup steps into a bash script

The wizard skill from mattpocock/skills writes an interactive bash script that walks you through dashboards, keys and CI secrets. What it does and how to install it.

By the Kipt team · Updated 26 October 2026

Source: mattpocock/skills · Maintainer: community: Matt Pocock · License: MIT · Checked: 26 October 2026

What is the wizard skill?

The wizard skill makes your coding agent write an interactive bash script for the manual steps it can't do itself: signing in to a third-party dashboard, copying an API key, setting a CI secret, flipping switches during a migration. You run the script, and it walks you through each step, captures the values and writes them where they belong.

It lives in mattpocock/skills, Matt Pocock's collection that the README describes as "My agent skills that I use every day to do real engineering - not vibe coding." The SKILL.md description reads: "Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself."

As of 26 October 2026, its skills.sh page listed about 560,700 installs (snapshot, 26 October 2026). According to the skill's docs page, it graduated from the repo's in-progress/ folder to engineering/ as of v1.2 and now ships in the plugin.

What does it do?

The agent writes the script; it never runs it. The docs put it this way: "A wizard is a program, not a list of instructions." Your part is to click, paste and press Enter.

The SKILL.md sets a four-step process:

  1. Scope the procedure. The agent reads the repo before asking you anything: .env, .env.example, README, docker-compose*, framework config and .github/workflows/*, where "every secrets.* / vars.* reference is a value the wizard must produce." It then shows you the ordered stages and the values each one produces, and you can add, drop or reorder them.
  2. Map each stage's journey. For every stage it writes the exact path a person follows, such as "Dashboard → Developers → API keys → Reveal test key → copy". Where it doesn't know the current UI, the instructions say to ask you or check the docs: "never invent steps that may not exist."
  3. Author the wizard. It copies template.sh, replaces the example stage with one stage per step and sets TOTAL_STAGES.
  4. Verify and hand off. It runs bash -n, runs shellcheck if available, and chmod +x. It does not run the script end to end, because the script opens browsers and waits for your input. It traces it statically instead and checks that every set_secret name matches a secrets.* reference in CI.

For each captured value, scoping decides where it goes:

Destination When (from the docs)
.env only Local dev needs it, CI doesn't
GitHub secret CI reads it, and it's sensitive
GitHub variable CI reads it, and it's public
Both .env and a secret Local dev and CI both need it
Nowhere The stage is a pure action, such as a switch flipped or a plan upgraded

What the template gives you

The folder holds SKILL.md, template.sh and agents/openai.yaml (Codex display metadata: "Wizard", "Generate an interactive setup wizard"). The template is a 223-line bash library with a fixed section above a STAGES marker that the skill says never to hand-edit. Its helpers include:

  • stage, say, step: a progress header per stage, with the screen cleared so only the current step shows.
  • open_url: tries wslview, explorer.exe, xdg-open and open in turn, and prints the link if no browser opens.
  • ask and ask_secret: visible or hidden input, offering an existing .env value as the default on re-runs.
  • write_env: upserts a key into .env (or whatever ENV_FILE points to), creating the file with mode 0600.
  • set_secret and set_var: write GitHub Actions secrets and variables through gh, and record a skip if gh isn't ready.
  • finish: a closing summary of what was written and what you still have to do by hand.

The example stage in the template walks through Stripe test API keys, which shows the intended shape: open the URL first, then ask for the value from that page.

How do you install the wizard skill?

The README offers a self-updating plugin route and an editable-files route, and says to "Pick one per agent, because installing both gives you every skill twice."

Claude Code plugin (whole collection). From the README, installing from Anthropic's official plugin marketplace:

claude plugin install mattpocock-skills@claude-plugins-official

Codex plugin. Also from the README:

codex plugin marketplace add mattpocock/skills
codex plugin add mattpocock-skills@mattpocock

Just this skill, as editable files. The command shown on skills.sh:

npx skills add https://github.com/mattpocock/skills --skill wizard

Add -g to install it for all projects. Per the Claude Code skills docs, personal skills live in ~/.claude/skills/<skill-name>/SKILL.md and project skills in .claude/skills/<skill-name>/SKILL.md. Codex and Cursor read the same SKILL.md format; see Codex skills and Cursor skills.

Generating a wizard needs no setup. Running one needs bash, plus the GitHub CLI if a stage sets secrets or variables.

How do you use it?

The skill is model-invoked: the agent can pick it up on its own when it hits a step you have to take, instead of pasting numbered instructions into the chat. You can also call it directly. The docs say to "type /wizard in Claude Code or $wizard in Codex, or just describe the setup you're stuck on."

Example prompts (suggestions, not quotes from the repo):

  • /wizard Set up everything a new developer needs before this app boots locally.
  • Write a wizard that creates the Stripe, Resend and Sentry keys this repo expects and sets the CI secrets the workflows reference.
  • /wizard We're moving DNS from our old registrar to Cloudflare. Put every irreversible step behind a confirmation.
  • Our README has a 12-step setup section. Turn it into a wizard and save it to scripts/setup.sh.

Before any script exists, you should see an ordered list of stages to confirm. After the run, the final screen lists what was written and, separately, what it couldn't do.

A wizard is ephemeral by default. The SKILL.md says it's "built for one run, saved to a scratch or scripts/ path, deleted when the job's done," and committed only when you want a repeatable setup path. In that case, link it from the README so the next person runs the script instead of asking an AI.

Tips and limits

From the SKILL.md, the docs page and skills.sh, not from testing:

  • No back button. A wrong value means Ctrl-C and re-run; saved .env values come back as defaults.
  • It reads the repo, not your accounts. The docs say it doesn't check the third-party service. If you made a Stripe account but never saved the key, the wizard still sends you to the dashboard.
  • Secrets stay out of the chat only if you keep them out. Values the script captures never reach the model. Anything you paste during scoping does.
  • Keep stages small. Each stage clears the screen, so a stage that overflows loses what scrolled away.
  • Not for decisions. The docs point to grill-with-docs and to-spec for deciding what to build.
  • Security audits. On skills.sh, Gen Agent Trust Hub (risk level Safe), Socket and Snyk (risk level Low) all rated it Pass, audited 9 October 2026. The Trust Hub report notes that malicious content in repo files the agent reads could influence the generated script, so read the script before you run it.

Under the MIT License you can copy and change the skill as long as you keep the copyright and license notice.

Save it in your Kipt library

In Kipt, open Skills and paste the skill's GitHub folder link to import it, including template.sh. For a repo with many skills, Kipt shows a list to pick from, so you can take setup-matt-pocock-skills in the same pass. You can also drop the folder or a .zip. Your skills live in your own private GitHub repo, and you can install every one into Claude Code or Codex with one command:

npx skills add https://github.com/<you>/<repo>.git --all -g

Kipt is not affiliated with Matt Pocock or mattpocock/skills.

Similar skills

Questions

What is the wizard skill?

wizard is an Agent Skill in Matt Pocock's mattpocock/skills repo. It has your coding agent generate an interactive bash script that walks you through manual steps only you can do, such as creating API keys in a dashboard, setting GitHub Actions secrets or running a one-off migration. The script opens each URL, tells you what to copy, and writes the values to .env or GitHub.

How do I install the wizard skill?

Install the whole collection in Claude Code with claude plugin install mattpocock-skills@claude-plugins-official, or install just this skill as editable files with npx skills add https://github.com/mattpocock/skills --skill wizard. Pick one route per agent, because the README warns that installing both gives you every skill twice.

Does the agent see my API keys when I use wizard?

Not the ones the script captures. The repo docs say the agent writes the script but never runs it; you run it in your own terminal, secrets are typed with hidden entry, and values go straight to .env or gh secret. A key you paste into the chat while planning is in the model's context like any other text.

Can Claude use the wizard skill without me typing /wizard?

Yes. The skill is model-invoked, so the agent can reach for it on its own when it hits a step you have to take, such as a key it can't create. You can still type /wizard in Claude Code or $wizard in Codex to call it directly.

Can I go back and fix a value I typed wrong in a wizard?

Not mid-run. The repo docs say there is no back button: press Ctrl-C and run the script again. Values already written to .env are offered back as defaults, so you press Enter through the stages you got right and retype only the wrong one.

Does the generated wizard need Claude Code to run?

No. The output is plain bash, so it runs the same whichever agent generated it. It uses the GitHub CLI (gh) only for stages that set GitHub secrets or variables; if gh is missing or not signed in, that stage shows a warning and the closing summary lists what to set by hand.

More in Skill directory

All guides

Keep your prompts and skills in one place, in your own GitHub. Install every skill with one command.

Get started

Kipt is an independent product, not affiliated with or endorsed by Anthropic, OpenAI, Cursor or GitHub. Claude, ChatGPT, Codex, Cursor and GitHub are trademarks of their owners.