ollie/agents
Levi Neely c37a4db480 freeloader: fix hook wiring; remove || true from agent turnError hooks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 17:27:34 +02:00
..
README.md docs: update documentation for recent refactor 2026-04-22 10:35:46 +02:00
coding.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
default.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
devops.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
qa.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
reviewer.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
sysarchitect.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00
writer.json freeloader: fix hook wiring; remove || true from agent turnError hooks 2026-04-28 17:27:34 +02:00

README.md

Agents

Each .json file defines an agent configuration. Agent configs are installed to ~/.config/ollie/agents/ and selected at runtime via /agent <name>.

default

Base agent with no specializations. Provides the standard ollie toolset and hook wiring. Use this as the starting point when creating a new agent — copy default.json and add a prompt and any additional configuration.

coding

Coding-focused agent. Extends default with agent instructions covering code modification discipline, security practices, and exploratory reading habits. Also enables the execute_elevated_bash trusted tool for operations requiring elevated privileges.

System prompt

The base system prompt is loaded from SYSTEM_PROMPT.md by Go at session creation — it is not assembled from hooks. Tool-specific prompts (e.g. tools-file, tools-memory) are injected via preTurn hooks using $OLLIE/x/prime <name>, which reads a file from p/ and writes it to stdout with environment variable substitution.

bd prime is appended in agentSpawn in both agents — it injects the active beads context if a database is found, and silently does nothing otherwise.

The fully assembled system prompt is visible at s/<id>/systemprompt.

Adding a new agent

Copy default.json, rename it, and adjust the preTurn hook array to include the prime calls you want. Add a prompt field for agent-specific instructions appended after the base system prompt. Hooks, trusted tools, and generation parameters can all be customized per agent.