Aiwg ralph-config
View and configure agent loop settings — show, set, reset, and apply named presets
git clone https://github.com/jmagly/aiwg
T=$(mktemp -d) && git clone --depth=1 https://github.com/jmagly/aiwg "$T" && mkdir -p ~/.claude/skills && cp -r "$T/agentic/code/addons/agent-loop/skills/ralph-config" ~/.claude/skills/jmagly-aiwg-ralph-config-47a2a0 && rm -rf "$T"
agentic/code/addons/agent-loop/skills/ralph-config/SKILL.mdAl Config
View and modify Al's runtime configuration. Settings control loop behavior defaults such as iteration limits, timeouts, provider selection, and commit behavior. Changes persist to
.aiwg/ralph/config.json and apply to all subsequent loops unless overridden per-invocation.
Natural Language Triggers
Users may say:
- "ralph config"
- "configure ralph"
- "ralph settings"
- "show ralph config"
- "set ralph max iterations"
- "reset ralph config"
- "apply ralph ci preset"
Parameters
Subcommand (required)
One of
show, set, reset, or preset.
key (required for set
)
setThe configuration key to change. See the configuration reference below.
value (required for set
)
setThe new value to assign to the key.
Preset name (required for preset
)
presetOne of the built-in preset names:
ci, thorough, or quick.
Configuration Reference
| Key | Default | Description |
|---|---|---|
| | Maximum iterations before the loop halts |
| | Maximum wall-clock time per loop (minutes) |
| | AI provider for loop iterations (, , , ) |
| (provider default) | Model override for the provider |
| | Commit after each successful iteration |
| | Default branch name (null = work on current branch) |
| | Suppress verbose iteration output |
| | Enable semantic memory accumulation |
| | Pull relevant memories from other completed loops |
| | Enable iteration analytics logging |
Built-in Presets
| Preset | maxIterations | timeout | quiet | Description |
|---|---|---|---|---|
| | | | Conservative limits for CI/CD pipelines |
| | | | Extended limits for complex tasks |
| | | | Fast exploration, fail-fast on difficulty |
Behavior
show
Subcommand
show- Read
; if absent, show built-in defaults.aiwg/ralph/config.json - Display the current configuration in a readable table
Output (active config):
Al Configuration Source: .aiwg/ralph/config.json Key Value Default Modified ─────────────── ─────────── ───────── ──────── maxIterations 5 10 yes timeout 30 60 yes provider claude claude no model (default) (default) no autoCommit true true no branch null null no quiet true false yes memory true true no crossTask false false no analytics false false no Active preset: ci (applied 2026-04-01) To change a value: /ralph-config set <key> <value> To reset defaults: /ralph-config reset
Output (no config file — using defaults):
Al Configuration Source: built-in defaults (no .aiwg/ralph/config.json found) Key Value ─────────────── ───────── maxIterations 10 timeout 60 provider claude model (default) autoCommit true branch null quiet false memory true crossTask false analytics false To customize: /ralph-config set <key> <value> To apply a preset: /ralph-config preset <ci|thorough|quick>
set
Subcommand
set- Validate the key is a recognized configuration key
- Validate the value type matches the key's expected type
- Read existing config (or start from defaults)
- Apply the change
- Write updated config to
.aiwg/ralph/config.json - Confirm the change
Output:
Al config updated. maxIterations: 10 → 15 Saved to: .aiwg/ralph/config.json
Validation error — unknown key:
Unknown configuration key: 'maxIter' Did you mean 'maxIterations'? Run /ralph-config show to see all valid keys.
Validation error — wrong type:
Invalid value for 'maxIterations': 'lots' Expected: integer >= 1 Got: 'lots' Example: /ralph-config set maxIterations 15
reset
Subcommand
reset- Confirm with the user before proceeding
- Delete or overwrite
with built-in defaults.aiwg/ralph/config.json - Confirm the reset
Confirmation prompt:
This will reset all Al configuration to defaults. Current non-default values: maxIterations: 5 (default: 10) timeout: 30 (default: 60) quiet: true (default: false) Type 'yes' to confirm reset:
After reset:
Al configuration reset to defaults. .aiwg/ralph/config.json has been cleared. All future loops will use built-in default values.
preset
Subcommand
preset- Validate the preset name is one of
,ci
, orthoroughquick - Confirm which keys will be overwritten
- Apply the preset values on top of current config
- Save and confirm
Preview before applying:
Applying preset: ci Changes: maxIterations: 10 → 5 timeout: 60 → 30 quiet: false → true Other keys are unchanged. Apply? (yes/no):
After applying:
Preset 'ci' applied. Al will now use: maxIterations: 5 timeout: 30 minutes quiet: true These values persist until changed or reset. Saved to: .aiwg/ralph/config.json
Unknown preset:
Unknown preset: 'aggressive' Available presets: ci — max 5 iterations, 30m timeout, quiet (for pipelines) thorough — max 20 iterations, 120m timeout (for complex tasks) quick — max 3 iterations, 15m timeout (for exploration) Usage: /ralph-config preset <name>
Config File Location
| Context | Path |
|---|---|
In-session loops () | |
External loops () | |
Each context has its own config file.
show, set, reset, and preset operate on the in-session config by default. Use /ralph-config --external show to inspect external loop config (if the --external flag is available in your install).
Error Handling
Config file unreadable:
Cannot read Al config: .aiwg/ralph/config.json Permission error or corrupted JSON. Options: 1. Delete the file to reset to defaults: rm .aiwg/ralph/config.json 2. Inspect manually: cat .aiwg/ralph/config.json
Read-only directory:
Cannot write to .aiwg/ralph/config.json. Check that the .aiwg/ralph/ directory is writable: chmod 755 .aiwg/ralph/
Examples
Example 1: Show current config
/ralph-config show
Response: Table of all current values with defaults and modified markers.
Example 2: Set a single value
/ralph-config set maxIterations 15
Response: Confirms
maxIterations: 10 → 15, writes file.
Example 3: Apply the CI preset
/ralph-config preset ci
Response: Previews 3 changes, prompts confirmation, applies and saves.
Example 4: Apply the thorough preset for a complex refactor
/ralph-config preset thorough
Response: Sets max 20 iterations and 120-minute timeout.
Example 5: Disable auto-commit
/ralph-config set autoCommit false
Response: Loop iterations will no longer create git commits.
Example 6: Reset everything
/ralph-config reset
Response: Confirms which values will revert, then clears the config file.
Related
— Start an in-session loop (uses this config as defaults)/ralph
— Start a crash-resilient external loop/ralph-external
— Check active loop state/ralph-status
— Manage accumulated loop memory/ralph-memory
References
- @$AIWG_ROOT/src/cli/handlers/ralph.ts — Al CLI handler (config parsing)
- @$AIWG_ROOT/tools/ralph-external/README.md — External loop architecture
- @$AIWG_ROOT/agentic/code/addons/ralph/README.md — Al documentation