- scripts/x/freeloader: track tried models per-session in freeloader-tried-$SID;
walk the full sorted :free pool in order before exiting 1; write recovery
prompt to fifo.in (not prompt) to avoid goroutine race
- core submodule: 404 tool_unsupported detection + FIFO drain on error
- tui submodule: fix mid-stream newlines from backgroundTail chatOff race
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- scripts/x/freeloader: hook-driven script; intercepts rate_limit and
tool_unsupported on :free models; auto-blacklists on tool_unsupported;
cycles to next non-blacklisted free model; exits 1 for unhandled errors
- agents: add turnError hook to all agent configs
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
subagent_spawn rewritten: creates session, submits prompt, returns
immediately. Auto-prefixes session name with parent ID for uniqueness.
Injects [parent_session_id] and [session_id] headers into every prompt.
New read-only env file in session namespace exposes OLLIE_ vars.
TUI background-tails chat file for async output.
Updated SYSTEM_PROMPT.md and tools-subagent.md.
subagent_spawn now passes -name through to b, letting the parent assign
predictable session IDs. Updated coordination docs: parent passes full
peer roster in seeding prompts, names prefixed with parent session ID
for global uniqueness. Noted silent failure on duplicate names.
Backend now streams native thinking tokens via StreamEvent.Reasoning.
The no-op scratchpad tool is redundant.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
system prompt: require task list for multi-step work
agents: remove preTurn hook; rely on agentSpawn prime + system prompt
backend: require OLLIE_BACKEND/OLLIE_MODEL env vars
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move inline JSON prompt strings to prompts/agent-*.md files, referenced
via $OLLIE/x/prime in the new executable prompt array. Move all
prime calls (tools-*, beads) from hooks.agentSpawn into prompt.
Rename greybeard to sysarchitect.
preTurn now has two branches: no plan → remind task_add; open tasks → remind
task_check. Blank/whitespace-only arguments to task_add are silently skipped.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Removing it caused the model to fall back to reasoning_think for planning.
The preTurn reminder is necessary to override that behavior.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
printf format string starting with '-' was treated as a flag; use '--' to
terminate option parsing. Agents reading individual tool scripts to understand
them should use $OLLIE/t/idx instead.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>