ALTO Configuration
Shared configuration procedures for setup and build orchestrators.
Arbiter Thresholds
Use AskUserQuestion:
- Header: "Autonomy"
- Question: "How much autonomy should ALTO have before checkpoints?"
- Options:
- Label: "Conservative", Description: "500 lines, 20 files, checkpoint every 2 tasks"
- Label: "Balanced (Recommended)", Description: "2000 lines, 50 files, checkpoint every 3 tasks"
- Label: "Autonomous", Description: "5000 lines, 100 files, checkpoint every 5 tasks"
After user answers, write runs/arbiter/config.json:
| Selection | max_lines | max_files | task_interval |
|---|---|---|---|
| Conservative | 500 | 20 | 2 |
| Balanced | 2000 | 50 | 3 |
| Autonomous | 5000 | 100 | 5 |
Permissions
Use AskUserQuestion:
- Header: "Permissions"
- Question: "What permission level for bash commands?"
- Options:
- Label: "Supervised (Recommended)", Description: "Prompt for git, npm, docker"
- Label: "Autonomous", Description: "Auto-approve most commands"
- Label: "Locked", Description: "Prompt for everything"
If NOT "Supervised": Tell user to update devenv.nix:
alto.permissions.profile = "autonomous"; # or "locked"
Then alto-restart. (Permissions require Nix change - orchestrator cannot modify at runtime.)
Verification (Existing Projects Only)
Read runs/verification-config.json, display current config, then use AskUserQuestion:
- Header: "Verification"
- Question: "How would you like to adjust verification?"
- Options:
- Label: "Keep current", Description: "No changes"
- Label: "Add pattern", Description: "Add verification for new file type"
- Label: "Edit command", Description: "Change existing command"
- Label: "Remove pattern", Description: "Remove file type verification"
Orchestrator writes the JSON file after user answers.
New Projects
Skip verification. Say: "Verification starts empty. QA agent configures it when tooling is set up."
Key Rules
- Orchestrator writes JSON files - never ask user to edit JSON manually
- Orchestrator confirms changes after writing
- Only permissions require user edit (devenv.nix + alto-restart)