1. Validate argument
if $ARGUMENTS.profile not in ["quality", "balanced", "budget"]:
Error: Invalid profile "$ARGUMENTS.profile"
Valid profiles: quality, balanced, budget
STOP
2. Check for project
ls .planning/config.json 2>/dev/null
If no .planning/ directory:
Error: No Kata project found.
Run /kata-new-project first to initialize a project.
3. Update config.json
Read current config:
cat .planning/config.json
Update model_profile field (or add if missing):
{
"model_profile": "$ARGUMENTS.profile"
}
Write updated config back to .planning/config.json.
4. Confirm
✓ Model profile set to: $ARGUMENTS.profile
Agents will now use:
[Show table from model-profiles.md for selected profile]
Next spawned agents will use the new profile.
</process>
<examples>
Switch to budget mode:
/kata-set-profile budget
✓ Model profile set to: budget
Agents will now use:
| Agent | Model |
| ------------- | ------ |
| kata-planner | sonnet |
| kata-executor | sonnet |
| kata-verifier | haiku |
| ... | ... |
Switch to quality mode:
/kata-set-profile quality
✓ Model profile set to: quality
Agents will now use:
| Agent | Model |
| ------------- | ------ |
| kata-planner | opus |
| kata-executor | opus |
| kata-verifier | sonnet |
| ... | ... |
</examples>