Claude-skill-registry alto-configure
Use when configuring ALTO settings including arbiter thresholds, permissions, or verification hooks. Applies during setup orchestrator "Configure ALTO" selection, build orchestrator checkpoints, or when user requests configuration changes.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/alto-configure" ~/.claude/skills/majiayu000-claude-skill-registry-alto-configure && rm -rf "$T"
manifest:
skills/data/alto-configure/SKILL.mdsource content
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, read
alto.json, update the arbiter section, and write back:
| Selection | max_lines | max_files | task_interval |
|---|---|---|---|
| Conservative | 500 | 20 | 2 |
| Balanced | 2000 | 50 | 3 |
| Autonomous | 5000 | 100 | 5 |
Procedure:
- Read
alto.json - Update
,arbiter.max_lines_changed_without_human
,arbiter.max_files_changed_without_humanarbiter.task_checkpoint_interval - Write back
alto.json
Example updated
arbiter section for "Balanced":
"arbiter": { "max_lines_changed_without_human": 2000, "max_files_changed_without_human": 50, "task_checkpoint_interval": 3, ... }
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
alto.json, display the verification section, 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"
Procedure: Read
alto.json, update the verification section, write back alto.json.
Format for verification section:
"verification": { "<glob-pattern>": { "<check-type>": "<command>" } }
Example:
"verification": { "*.ts": { "typecheck": "npx tsc --noEmit", "lint": "npm run lint" }, "*.py": { "lint": "ruff check {file}" }, "*.test.ts": { "test": "npm test -- --related" } }
Check types:
lint, typecheck, test, format
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)