-
Notifications
You must be signed in to change notification settings - Fork 1
Tune Auto Orchestration
Note
Goal: Adjust the auto-orchestration toggles, thresholds, and cooldowns so the SessionStart briefing and idle-time memory chain fire on a cadence that fits how you work.
Prereqs: MEMORY_VAULT_PATH set; harness with the auto-orchestration push-surface installed (V4 #23). See Auto-orchestration config for every key this page edits.
The tunables live in <vault>/personal-private/auto-orchestration-config.md, auto-seeded with sensible defaults the first time the push-surface runs. The file is yours to edit — a re-seed never clobbers your edits. Every key sits in one settings fence; you change a value, save, and the next run picks it up. This page is the recipe for editing a threshold, a cooldown, or a toggle, then verifying the change with --dry-run.
-
Locate (or seed) the config. Open
<vault>/personal-private/auto-orchestration-config.md. If it doesn't exist yet, seed it with the defaults:python3 harness/skills/memory/scripts/auto_orchestration.py --vault-path "$MEMORY_VAULT_PATH" seed-configIt prints
seeded(wrote the file) orkept(one already existed — your edits are safe). The values to edit live in the fenced block:```settings enable_briefing = true enable_idle_chain = true inbox_threshold = 10 briefing_cooldown_hours = 8 idle_chain_cooldown_hours = 24 ... ```
-
Raise or lower a briefing threshold. In the
settingsfence, change the threshold for a signal the briefing reports too often (or not often enough) — for example, only flag the inbox once it's larger:- inbox_threshold = 10 + inbox_threshold = 25
The other thresholds are
watchlist_high_threshold,incubator_pending_threshold,idea_ledger_stale_months, plus the two nudge thresholdspromote_mention_thresholdandstale_promotion_days. -
Change a cooldown so a chain fires more or less often. Cooldowns are in hours; a non-positive value means "always eligible". To let the idle chain run twice a day instead of once:
- idle_chain_cooldown_hours = 24 + idle_chain_cooldown_hours = 12
The others are
briefing_cooldown_hoursandphase_reflect_cooldown_hours. -
Toggle an emission on or off. Each
enable_*key turns one emission off entirely. To silence the SessionStart briefing while keeping the idle chain:- enable_briefing = true + enable_briefing = false
The toggles are
enable_briefing,enable_idle_chain,enable_phase_integration,enable_promote_suggest,enable_stale_promotion_nudge. (There is no per-step toggle inside the idle chain —enable_idle_chaingates the whole chain.) -
Verify the change took effect. Confirm the config parses to the values you expect:
python3 harness/skills/memory/scripts/auto_orchestration.py --vault-path "$MEMORY_VAULT_PATH" show-configThen dry-run the affected chain without touching state — the idle chain prints its resolved step plan and
cooldown_ok:python3 harness/skills/memory/scripts/orchestration_idle.py --vault-path "$MEMORY_VAULT_PATH" --dry-runFor the briefing, run the generator directly — it prints the block only when something is over threshold and the cooldown allows:
python3 harness/skills/memory/scripts/orchestration_briefing.py --vault-path "$MEMORY_VAULT_PATH"To see when each chain last fired, inspect the
last_firetimestamps in<vault>/_meta/auto-orchestration-state.json.
- Auto-orchestration config — every config key and the state-file shape.
- Auto-orchestration — the memory push-surface — what the briefing and idle chain do, and why they never nag.
- Use auto-context in harness phases — tuning the complementary phase-boundary pull surface (recall budgets, save mode).
🔧 How-to
- Your first install
- Install into a project
- Configure a new project
- Update an installed harness
- Cut a release
- Use auto-context in phases
- Use per-project install
- Audit the vault
- Find missing note links
- Use AgentMemory in any agent
- Tune auto-orchestration
- Run without a vault
- Choose a storage backend
- Stand up the memory MCP server