Install any skill in seconds. Free to start, no credit card required.
Get Started Free →chrisblattman/kit-setup
One-time starter-kit setup: detects optional AI engines (Codex, Gemini), confirms each with you, writes the engines config, and optionally personalizes how Claude writes for you. Safe to re-run anytime.
Passed 16 of 21 test cases with the skill, and 7 of 21 without it.
and 12 more in the full report
10 fixed8 passed either way5 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 10 test cases the skill fixed. Same model, same prompt, with and without the skill.
When writing engines.json for the very first time on a fresh installation, what default array should be assigned to the paste_loop configuration property?
| Checked | Without skill | With skill |
|---|---|---|
| Sets paste_loop array default to ["chatgpt", "gemini"]. | Missed | Passed |
The instructions your model reads when the skill loads.
Everything in this kit works on Claude alone. This skill records which optional extra engines exist on this machine, so other kit skills can offer second opinions. Detect, then confirm. Never ask the user what subscriptions or plans they have, and never list, describe, or ask about tools that weren't detected.
One Bash call:
command -v codex; command -v gemini; date +%Y-%m-%d
For each CLI found, run a quick <tool> --version; if that fails, say it looks installed but isn't currently working, record it as unavailable, and move on — don't troubleshoot here. Version output only means "detected," not "usable."
One short yes/no question per tool that was found — and nothing about tools that weren't:
If nothing was found, skip the questions entirely. Either way, close Phase 1 with one line: "If you later install the Codex or Gemini CLI, run /kit-setup again."
For each detected tool the user accepts, create one private temp directory with mktemp -d, then run one tiny smoke test through the shipped wrapper:
smoke_dir="$(mktemp -d)"
printf 'Reply with exactly: starter-kit-ok\n' | bash "${CLAUDE_PLUGIN_ROOT}/scripts/codex-run.sh" "$smoke_dir/codex.txt" light
printf 'Reply with exactly: starter-kit-ok\n' | bash "${CLAUDE_PLUGIN_ROOT}/scripts/gemini-run.sh" "$smoke_dir/gemini.txt"
If the wrapper succeeds and the output is non-empty, mark the engine available: true. If it fails, mark it unavailable but preserve what happened, for example { "available": false, "detected": true, "auth_unverified": true }. Keep the user-facing message plain: "I found Codex/Gemini, but it did not answer a test prompt yet. Everything still works on Claude."
Target: ~/.claude/starter-kit/engines.json. Run mkdir -p ~/.claude/starter-kit first. If the file already exists, Read it and preserve any fields you don't recognize — newer kit versions may have added some. Schema (full contract: ${CLAUDE_PLUGIN_ROOT}/references/engines-contract.md):
test cases passed, vs 7 / 21 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.