In This Tutorial
1 Why a Wizard?
v3 introduces a curated command surface so only the commands relevant to your project type get loaded into the AI's context. Without curation, every CLAUDE.md include would carry the full ~230-command catalog and eat thousands of tokens before you've sent a single prompt.
The wizard's job is to figure out, in one short conversation, which slice of the catalog matters for your project, and to wire up the integration with your existing Claude Code setup. It does six things in order:
- Picks a workflow preset based on what kind of project you're building.
- Tags your experience level so suggestions are pitched right.
- Notes which AI tool you're using (Claude Code, Cursor, Codex, other).
- Sets a token budget for the auto-generated
Claudius/CLAUDIUS.md. - Decides whether to silently auto-enable disabled commands or ask first.
- Optionally appends
@Claudius/CLAUDIUS.mdto your project-rootCLAUDE.md.
Every choice the wizard records is editable later via individual config.* commands or by re-running the wizard. Nothing is permanent and nothing requires you to start over.
2 Starting the Wizard
Open {Project}/Plugins/Claudius/claudius_request.json and write:
{
"id": "setup",
"category": "config",
"command": "run_setup",
"parameters": {}
}
Save the file. claudius_response.json updates with the first prompt, including a next_call field that tells you exactly what to send next.
From that point on, every step has the same shape:
{
"id": "wizard",
"category": "config",
"command": "answer_setup",
"parameters": {
"step": "<current step name>",
"answer": "<your choice>"
}
}
3 The Eight Steps
Step 1 — welcome
Choices: yes / skip
Acknowledges the wizard. Choosing skip exits without changes; yes moves to step 2.
Step 2 — workflow
Choices: fps / platformer / level_design / animation / open_world / general
Drives which preset gets loaded at confirm time. general falls back to the default enable set when no specialized preset fits.
Step 3 — experience
Choices: bp_only / bp_cpp / engine_dev / mixed
Recorded in your profile so the AI can pitch suggestions at the right level. Doesn't change which commands are enabled, only how the AI explains them.
Step 4 — ai_tool
Choices: claude_code / cursor / codex / other
Recorded in profile. Useful when one project is shared across team members using different tools.
Step 5 — token_budget
Choices: minimal / balanced / maximal
Hint for how aggressively to trim Claudius/CLAUDIUS.md:
- minimal — only the highest-value commands per category
- balanced — driven by the workflow preset
- maximal — full descriptions for every enabled command
Step 6 — auto_enable
Choices: ask / always / never
Behavior when the AI tries to call a disabled command:
- ask (default) — plugin returns
command_disabledwith the suggested enable call so the AI can ask first. - always — plugin silently runs
config.enable_commandand processes the original call. - never — plugin returns a hard failure and forces manual enable.
Step 7 — claude_md_link
Choices depend on current state:
- If
missing:yes(create a minimalCLAUDE.mdwith the include) /skip. - If
not_linked:yes(append the include line) /skip. - If
linked: onlyskip(nothing to do).
This is the safe opt-in to the integration. Existing content in your CLAUDE.md is never touched, only the reference line is appended, with a comment explaining where it came from.
Step 8 — confirm
Choices: yes / no
Applies everything: profile, policy, preset, optional CLAUDE.md link, then regenerates Claudius/CLAUDIUS.md. The final response includes the preset applied, enabled command count, paths, link state, and a token estimate.
Each step rejects out-of-band answers with an error response. You can't accidentally pass "yes" to workflow. The plugin tells you which choices are valid for the step.
4 What Gets Persisted
The wizard's choices land in two places:
- Profile + curation in
{Project}/Saved/Claudius/config.json(workflow, experience, ai_tool, token_budget, auto_enable_policy, enabled commands, installed packs). - Generated index at
{Project}/Claudius/CLAUDIUS.md(the auto-generated catalog Claude reads).
Wizard state itself (which step you're on, partial answers) is in-memory only. If the editor crashes mid-wizard, just call config.run_setup again to start over from step 1.
Your project-root CLAUDE.md is only modified at step 7, only if you said yes, and only by appending the include line. The rest of your file is untouched.
5 Re-running and Skipping
The wizard is safe to re-run any time. It picks up the current profile and policy as starting state, so if you only want to change one thing (say, the auto-enable policy) you can answer most steps with the existing value.
If you only need to change one specific setting, skip the wizard and use the targeted command:
# Switch preset { "category": "config", "command": "load_preset", "parameters": { "preset": "animation_studio" } } # Change auto-enable policy { "category": "config", "command": "set_auto_enable_policy", "parameters": { "policy": "always" } } # Link CLAUDE.md (idempotent) { "category": "config", "command": "link_user_claude_md", "parameters": {} } # Force regenerate the index { "category": "config", "command": "regenerate_claude_md", "parameters": {} }
6 Driving It from Claude Code
If @Claudius/CLAUDIUS.md is already in your project-root CLAUDE.md, just say "start CLAUDIUS setup" in Claude Code. Claude reads the config.run_setup response, sees the next_call field, asks you the question conversationally, and writes the answer for you. The whole eight-step flow takes about a minute end-to-end.
For brand-new projects with no CLAUDE.md yet, write the initial config.run_setup JSON manually (or have Claude write it for you in the chat), then let Claude take over from there. Step 7 will create the CLAUDE.md for you.
If you ever see Claude calling answer_setup repeatedly with the same step, the wizard probably wasn't started or has been reset. Send a fresh config.run_setup and let Claude pick up from step 1.