Commit Graph

2654 Commits

Author SHA1 Message Date
Levi Neely 5a1f16610b consensus: don't write to goal file, synthesis lives in foreman chat 2026-08-19 17:27:36 +02:00
Levi Neely 80a9f7ecc4 consensus workflow: foreman + panelist agents with peer messaging
New workflow that spawns N independent panelists (default 3) and a
foreman. Each panelist analyzes the goal from a different angle:
- correctness/completeness
- simplicity/maintainability
- edge cases/failure modes

Panelists report findings to foreman via peer/ links. The foreman
synthesizes agreement, resolves disagreements, and writes the verdict.

Files:
- data/workflows/consensus — orchestration script
- data/agents/foreman.json — low-temp synthesis profile
- data/agents/panelist.json — high-temp analysis profile
- data/prompts/agent-foreman.md — synthesis behavior
- data/prompts/agent-panelist.md — investigation behavior

Usage:
  printf 'name=review\ncwd=%s\nworkflow=consensus\n' $PWD | ollie-9p write session/new
  echo 'Review error handling in agent/loop.go' | ollie-9p write session/review/goal
2026-08-19 17:26:31 +02:00
Levi Neely 86b5039552 peers: clean up peer links when an agent is killed
RemoveAgent now iterates remaining agents and removes any peer link
pointing to the removed agent's name, preventing stale/corrupt state.
2026-08-19 17:23:27 +02:00
Levi Neely 7055444748 agent peers: bidirectional peer links with topology-controlled messaging
Add peer/ directory to each agent's 9P namespace. Agents communicate
by writing to peer/{name}, which delivers to the target's prompt handler.
Only declared peers can be messaged — the directory is the ACL.

Implementation:
- Agent struct: peers map + AddPeer/RemovePeer/Peers methods
- fs/spec.go: peer/ Each node (write-only entries), peeradd/peerdel/peers ctl commands
- Bidirectional: peeradd A on B also adds B on A
- Peers constrained to same session
- Persisted with session state (PersistedAgent.Peers field)
- peeradd/peerdel trigger immediate session save

Docs updated: system_prompt.md, AGENTS.md, README.md, architecture-9p.md,
architecture-core.md, architecture.md, usage.md.
2026-08-19 17:22:30 +02:00
Levi Neely 28085e4de0 update user prefs 2026-08-19 16:23:33 +02:00
Levi Neely a73ef13fb5 tools: remove old individual cmd/ binaries
All tool logic lives in the multicall main.go at each family root.
Move .meta files to data/tools/ (single canonical location).
Expand test-core to cover all tools.
2026-08-19 13:56:21 +02:00
Levi Neely 27ba54a163 tools/lsp: move library code to internal
Moves package lsp and cmdutil under tools/lsp/internal/ so the
multicall binary can live at tools/lsp/main.go — same layout as
codeintel and filetools.
2026-08-19 13:54:39 +02:00
Levi Neely fa99020667 tools: multicall binaries, sandbox fixes
- Multicall pattern for tool families: one binary per family with
  symlinks for each tool name. Reduces tools dir from 156MB to 31MB.
  codeintel (6 tools), filetools (5 tools), lsptools (7 tools).

- Build with -ldflags="-s -w" to strip debug symbols.

- Fix Landlock EINVAL on regular files: filter directory-only access
  rights (READ_DIR, MAKE_*, REMOVE_*) when adding rules for non-
  directory paths.

- Fix toolsrv CWD initialization: pass --cwd flag value to server
  state at startup so {CWD} in sandbox.yaml expands correctly.
2026-08-19 13:51:52 +02:00
Levi Neely b52643314b fix remote toolsrv spawn: use tools/ path and emit ready on stderr 2026-08-19 12:44:03 +02:00
Levi Neely b4baddd826 Memory tools: never expose raw memo commands to agents
- Add MEMO_TOOLS=1 env var to memo script; when set, all printed
  instructions reference native tool names instead of memo paths
- Set MEMO_TOOLS=1 in all memory tool .meta wrappers
- Add memory_nap tool for compressions
- Add memory_zoom tool for tree navigation
- Add part/T pagination args to memory_wake
- Update system prompt to use memory_zoom tool call
- Fix inject ctl: submit as user message when agent is idle
2026-08-19 10:13:02 +02:00
Levi Neely 9bb2e41e33 Add memory section to system prompt, fix icon resolution
- Add OptMem memory section to system_prompt.md with tool-based API
- Fix KRunner plugin icon: resolve via QStandardPaths instead of theme name
- Fix desktop file icon: use absolute path to bypass stale system icon
2026-08-19 10:02:51 +02:00
Levi Neely 04bef4978c fix tests 2026-08-19 08:50:36 +02:00
Levi Neely 95a457e823 fix kf5 build path 2026-08-19 08:43:48 +02:00
Ollie Agent b562fafe1f Install vendored OptMem with runtime data 2026-08-19 07:41:57 +02:00
Ollie Agent dc45bd3b3f Cap vendored OptMem wake context 2026-08-18 14:12:04 +02:00
Ollie Agent af478550a9 Wake OptMem before restored session turns 2026-08-18 14:04:27 +02:00
Ollie Agent 94b4c4be3f Integrate OptMem wake into agent memory prompting 2026-08-18 14:01:18 +02:00
Ollie Agent db8414f815 Add optional system tray support to KDE GUI 2026-08-18 13:55:46 +02:00
Ollie Agent f36a782632 Update KDE branding to Ollie octopus icon 2026-08-18 13:48:42 +02:00
Ollie Agent 0cb9c481f0 clarify olliesrv portability goal 2026-08-18 13:42:54 +02:00
Ollie Agent 6c150f6628 document portable olliesrv work 2026-08-18 13:41:37 +02:00
Ollie Agent 2235500e39 make KDE integration optional 2026-08-18 13:39:54 +02:00
Ollie Agent d7b8a9efa8 move dependencies before build 2026-08-18 13:37:06 +02:00
Ollie Agent 5adc3b37d8 remove plan9port runtime dependency 2026-08-18 13:36:09 +02:00
Ollie Agent 223a8f1235 remove plumber references 2026-08-18 13:32:43 +02:00
Ollie Agent bf262cba16 manage namespace directory lifecycle 2026-08-18 13:31:52 +02:00
Ollie Agent a5cd5d36ed document compatibility roadmap 2026-08-18 13:28:30 +02:00
Ollie Agent 409ca01571 move future work to document end 2026-08-18 13:23:45 +02:00
Ollie Agent 90591aefaf restructure future work headings 2026-08-18 13:23:19 +02:00
Ollie Agent 7acaebdaaa add generic sandbox interface 2026-08-18 13:22:52 +02:00
Ollie Agent 7ce880021a cheeky docs 2026-08-18 13:04:27 +02:00
Ollie Agent c6257afc90 docs: link AnviLLM repository 2026-08-18 12:59:29 +02:00
Ollie Agent a8342e83fd docs: mark evolution introduction heading 2026-08-18 12:58:38 +02:00
Ollie Agent 0a6fbe7f44 docs: keep AnviLLM history professional 2026-08-18 12:58:16 +02:00
Ollie Agent c8bc9cdbe8 docs: connect Ollie evolution to AnviLLM research 2026-08-18 12:56:30 +02:00
Ollie Agent 4e381b1293 Add YOLO option to session dialog 2026-08-18 12:54:36 +02:00
Ollie Agent 2ba9ba036c Document native Landlock and persist session yolo 2026-08-18 12:49:25 +02:00
Ollie Agent 1915cf292d fix evolution phase numbering 2026-08-18 12:42:54 +02:00
Ollie Agent b7511eb089 document native Landlock evolution 2026-08-18 12:41:32 +02:00
Ollie Agent 8e472a07d9 describe Ollie as a distributed integrating agent 2026-08-18 12:39:09 +02:00
Ollie Agent bdafc30022 replace landrun with native Landlock sandbox 2026-08-18 12:36:27 +02:00
Ollie Agent 09729a9149 Place Kate TUI workflow in Kate section 2026-08-18 12:23:32 +02:00
Ollie Agent 50f8919d9d Document Kate terminal TUI workflow 2026-08-18 12:23:11 +02:00
Ollie Agent fc6b9afd47 Clarify Kate chat ownership 2026-08-18 12:22:23 +02:00
Ollie Agent baf75702d1 Document Kate KDE GUI chat workflow 2026-08-18 12:21:22 +02:00
Ollie Agent 3cf98f2607 Demote Kate documentation heading 2026-08-18 12:19:32 +02:00
Ollie Agent 05b3e36767 Add Kate section to editor architecture 2026-08-18 12:19:15 +02:00
Ollie Agent 99c1a85603 Clarify editor architecture documentation 2026-08-18 12:17:26 +02:00
Ollie Agent a4b9ef323f Remove redundant ASCII architecture diagram 2026-08-18 12:12:44 +02:00
Ollie Agent b4c573766b Move octopus artwork to README footer 2026-08-18 12:11:52 +02:00