Commit Graph

70 Commits

Author SHA1 Message Date
Levi Neely cf6fe52fc4 update core, 9p submodules; agent configs and prime script 2026-07-20 13:37:22 +02:00
Ollie Agent e72199a8ab prompts: extract session management into separate files
Split session management (9P and D-Bus) out of the monolithic system
prompts into dedicated files primed separately:

- session-9p.md: 9P filesystem session operations
- session-dbus.md: D-Bus method/signal session operations

System prompts are now server-agnostic. The install target copies
the appropriate session-*.md as session.md. Agent configs prime
"session" after "SYSTEM_PROMPT" to compose the full prompt.

This eliminates the N×2 variant matrix (one -9p and -dbus per model)
and makes adding new model prompts simpler.
2026-07-19 17:00:10 +02:00
Ollie Agent 0fb8f0c2b7 copilot agent: read-only tools, structured response format 2026-07-16 21:44:52 +02:00
Levi Neely 8a93fb8c08 agents: realign prompts with actual usage
- default: promote to full coding agent (no subagents)
- agent-coding.md: drop production paranoia, keep discipline
- partner: add elevation, diff review, explanation mode
- theo: add elevation, lower temp, generalize scope
- explorer: new read-only code exploration/explanation agent
- taskmanager: rewrite for actual TODO management workflow
- librarian: add memory
- worker: delete (unused)
- orchestrator: delete (unused)
- coding.json: delete (redundant with new default)
2026-06-29 15:16:26 +02:00
Ollie Agent f11031221e remove $OLLIE mount dependency from agent startup path
- agent JSONs: $OLLIE/x/ -> $OLLIE_CFG_PATH/scripts/x/
- x/prime: use $OLLIE_PROMPTS_PATH instead of $OLLIE/p/
- x/elevate-adapter-start: use $OLLIE_CFG_PATH/scripts/x/
- Update core and 9p submodules

olliesrv and agent sessions now work without FUSE. Mount remains
available as an enhancement when present.
2026-06-16 12:30:48 +02:00
Levi Neely ee33add081 add theo agent: Theo de Raadt-style adversarial security reviewer 2026-06-15 16:54:57 +02:00
Levi Neely 6b1c053a55 allow taskmanager to use memory 2026-06-08 09:48:20 +02:00
Ollie Agent 5a3a28d206 add Navigator (partner) agent and Oi acme script
- prompts/agent-partner.md: Navigator identity with thinking modes,
  decisiveness, memory discipline, acme-compatible file addressing
- agents/partner.json: read-only agent with file, LSP, reasoning, memory tools
- acme/scripts/Oi: persistent session trigger scoped to cwd
- prompts/agent-coding.md: debugging and discipline improvements
2026-05-26 21:33:04 +02:00
Ollie Agent f4d49d2420 Add librarian agent; update LSP tools 2026-05-26 11:58:17 +02:00
Levi Neely d08497d287 big refactor: agent core, 9p sessions, webui, architecture docs 2026-05-21 14:42:55 +02:00
Ollie Agent 65f1314d9f contrib: add ollie-remount script for 9pfuse recovery after sleep/wake 2026-05-21 08:44:17 +02:00
Ollie Agent 4b6562b6f2 add t/route: unified dispatch with tier selection
- route --tier=worker (default): cheap model for scoped subtasks
- route --tier=expert: strong model for complex reasoning
- Orchestrator now uses route instead of cascade
- Unified prompt and callback contract for both tiers
- cascade/escalate remain available for other agents
2026-05-20 09:26:05 +02:00
Ollie Agent d28d6af23c agents: slim down configs, remove unused tools
- Remove task tools from default/coding agent prompts (planning is coding-only)
- Remove MCP server config from coding agent
- Remove env and grep tools from orchestrator allowlist
- Delete unused tool scripts: env, grep, task_add, task_check, task_clear
- Strip default agent to minimal prompt set
2026-05-20 09:14:46 +02:00
Ollie Agent dd522e48f9 give execute_code to orcestrator 2026-05-18 22:41:34 +02:00
Ollie Agent 39b54f1571 improve system prompt 2026-05-18 22:39:07 +02:00
Levi Neely 48c23c7ddf Add taskmanager agent prompt and config 2026-05-18 13:27:38 +02:00
Ollie Agent 1acfb29fb0 update agent/cascade models 2026-05-18 11:57:50 +02:00
Ollie Agent eba9120d61 update agent/cascade models 2026-05-18 11:56:40 +02:00
Levi Neely 426e3a423b env/grep tools, orchestrator file_edit 2026-05-17 16:46:30 +02:00
Levi Neely 279f6c29ed remove trustedTools; update cascade defaults to deepseek v4 2026-05-17 15:21:31 +02:00
Levi Neely 2b30e3cc3e add orchestrator/worker agents; update cascade defaults to deepseek v4 2026-05-17 15:04:06 +02:00
Levi Neely 1e1e36bf36 agents: add temperature/maxTokens; prompt: anti-oscillation instruction
- Set temperature=0.5 and maxTokens=16384 on default and coding agents
  to reduce confidence-oscillation loops in smaller models
- Add explicit instruction to act when information is sufficient,
  rather than re-verifying or hedging
2026-05-15 22:41:40 +02:00
Levi Neely e185496963 agents: add maxSteps: 50 to default and coding agents 2026-05-15 19:34:58 +00:00
Levi Neely 2f7107d44c u/complete: strip markdown fences, insert at cursor, info to stderr
Also set tools:false on copilot agent and update core submodule
with the new tools config field.
2026-05-03 14:59:05 +02:00
Levi Neely 3c03faed3a u/complete: persistent copilot session per cwd; add freeloader hook
- Replace per-invocation s/bfg calls with a persistent *-copilot session
  looked up from s/idx; first call in a cwd spawns the session, subsequent
  calls reuse it, skipping s/new overhead
- Clear context after each completion so inference stays fast
- Fix session lookup to read s/idx instead of globbing the 9P mount
- Add x/freeloader turnError hook to copilot.json

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 13:54:29 +02:00
Levi Neely 2c8e59e7f5 acme: add u/complete for AI ghost-text code completion
Adds a u/complete script that reads prefix/suffix from the current acme
window via dot position, submits a fill-in-the-middle prompt to ollie
via s/bfg, and writes the completion to a new ollie/complete window.

Also adds a minimal copilot agent config (no system prompt, no tools)
for use by u/complete, and wires both into the install target in mkfile.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 13:30:26 +02:00
Levi Neely 2bbaecb531 JIT subagent generation via subagent_generate | xargs subagent_spawn
- rename agent_generate to subagent_generate
- subagent_generate reads JSON from stdin, copies default.json as base,
  replaces prompt with SYSTEM_PROMPT + identity text
- update tools-subagent.md to enforce composition pattern
- remove unused agent configs and prompts (devops, qa, reviewer,
  sysarchitect, writer)
- update agents/README.md
- update core submodule (remove stale-read pruning)
2026-05-02 13:50:52 +02:00
Levi Neely 36010d0143 prompts: add tools-lsp prompt, wire into all agents 2026-04-30 11:14:13 +02:00
Levi Neely cfe367bca1 docs: sync documentation with current implementation
- Update agent config docs (prompt array, hooks, mcpServers)
- Add new session files (context, cost, env, plan, prompt.prev)
- Document httpgw daemon subcommands
- Update tool scripts list
- Move readmulti to tui submodule
2026-04-30 09:07:59 +02:00
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
Levi Neely 15df9eeb1a freeloader: turnError-driven free model cycling with blacklist
- 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>
2026-04-28 17:17:56 +02:00
Levi Neely 2f9e392320 restore reasoning_think tool and prompt
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 19:07:13 +02:00
Levi Neely e4c76603ba remove reasoning_think tool and prompt
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>
2026-04-26 19:04:03 +02:00
Levi Neely 18a7840b3c agents: add SYSTEM_PROMPT to prompt array, move all prime calls from hooks 2026-04-26 15:10:22 +02:00
Levi Neely d333bf290a agents: extract prompts to markdown, assemble via executable prompt
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.
2026-04-26 15:00:46 +02:00
Levi Neely b5a0765fc1 tools/agents: skip blank task_add args; remind task_check when plan has open tasks
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>
2026-04-26 13:26:03 +02:00
Levi Neely 70f9aed14e agents: restore preTurn task_add reminder
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>
2026-04-26 13:13:48 +02:00
Levi Neely f4b6cfa4f9 agents: revert preTurn reminder; tools-task prime is sufficient
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 13:12:23 +02:00
Levi Neely 2d20f95b93 agents: name task_add explicitly in preTurn reminder
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 13:07:59 +02:00
Levi Neely 68246cd527 agents: preTurn reminder to plan before acting when plan is empty
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 13:04:46 +02:00
Levi Neely 84e7b29015 agents: inline bd prime conditional; simplify task dispatcher
Replace 'task prime' hook with inline .beads walk in all agent configs —
no wrapper script needed. Drop 'prime' subcommand from scripts/x/task.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 12:31:34 +02:00
Levi Neely b7f6b08e6a task: session plan checklist; replace todo.sh fallback
- tools/task_add, task_check, task_clear: manage s/{sid}/plan markdown checklist
- prompts/tools-task.md: agent command reference, injected at spawn via prime tools-task
- agents: add 'prime tools-task' to agentSpawn in all configs
- scripts/x/task: show_plan() on 'task list'; drop todo.sh fallback (wrong tool)
- prompts/tools-todosh.md: removed (no longer needed)
- prompts/tools-subagent.md: add coordination model documentation
- core: update submodule ref (s/{sid}/plan 9p endpoint)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 12:30:14 +02:00
Levi Neely 1a01002f7b planning: observe step, task dispatcher, tool parallel annotations, graceful degradation
- agents: agentSpawn uses 'task prime', postTurn uses 'task list' (observe step)
- scripts/x/task: dispatcher routes to bd (beads) or todo.sh based on availability
- prompts/tools-todosh.md: prime context for todo.sh fallback
- tools: add '# ollie:parallel read' annotation to file_read, file_glob, file_grep,
  file_grep, memory_recall, reasoning_think, denote_view
- core: update submodule ref

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-26 09:00:54 +02:00
Levi Neely c170917ff2 agents: revert postTurn bd list (premature)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 23:56:31 +02:00
Levi Neely c0a4fd1525 agents: observe step via postTurn bd list
All agents now run `bd list --status open` after each turn. Output is
injected into session history (not stdout) so the model is aware of open
tasks on the next turn without triggering autonomous continuation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 23:53:11 +02:00
Levi Neely df4d8a3a19 agents: move tool primes to agentSpawn; update core submodule
Tool primes (tools-file, tools-reasoning, tools-memory, tools-subagent,
tools-elevate) moved from preTurn to agentSpawn across all agent configs.
Context is now injected once at session refresh points (start, post-clear,
post-compaction) rather than repeated on every turn.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 19:38:27 +02:00
Levi Neely 2f8d18dc51 elevate: auto-start adapter via agentSpawn hook
Add x/elevate-adapter-start: checks if the adapter is already listening
(connect test), starts it in the background if not. Exits 0 always so it
never blocks session startup. Wire it into agentSpawn in all agent configs
and install it via mkfile.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-25 11:54:29 +02:00
Levi Neely 2f1db75b02 docs: update documentation for recent refactor
- Package layout: add pkg/store, pkg/log, pkg/env, pkg/paths, pkg/skills
- System prompt: loaded from SYSTEM_PROMPT.md by Go, not agentSpawn hooks
- Tool prompts injected via preTurn hooks, not agentSpawn
- Sandbox config: single named config, not layered global+overlay
- Store interfaces: unified Store, remove ReadableStore/ReadWriteStore/BlobStore
- Fix batch status -> state in USAGE.md polling examples
- Fix enqueue -> fifo.in in session-management skill
- Fix 9p/internal/p9/server.go -> 9p/server.go (flattened)
- Remove stale sys-base, sys-ollie, sys-skills prompt file references
- Remove stale /pl references from 9p backing stores docs
2026-04-22 10:35:46 +02:00
Levi Neely e7cca59089 remove MCP support, add execute_code tests
- Update submodules: core (remove MCP, add tests), 9p (remove mcp file)
- Add doc/NO_MCP.md: justification for removing MCP
- Add observation to doc/OBSERVATIONS.md
- Update ARCHITECTURE.md, help.md, SYSTEM_PROMPT.md, agents/README.md
2026-04-21 13:26:00 +02:00
Levi Neely 7e62336c61 prompts: consolidate sys-* into SYSTEM_PROMPT.md; load via Go, not hooks
sys-base, sys-ollie, sys-skills merged into a single SYSTEM_PROMPT.md.
Core now loads and envsubst-expands it at startup, prepending it to the
agentPrompt to form the system message. Removes the three preTurn hook
injections from all agent configs.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-21 09:14:14 +02:00