Commit Graph

1366 Commits

Author SHA1 Message Date
Ollie Agent 059cceed5c AGENTS.md: document both script and compiled tool paths 2026-07-30 22:54:54 +02:00
Ollie Agent ebd994fe7e doc/EVOLUTION: add LSP Go port to Phase 12 2026-07-30 22:54:28 +02:00
Ollie Agent 9f947e93ec docs: update repo layout for tools/builtin, tools/lsp, data/ 2026-07-30 22:53:48 +02:00
Ollie Agent 5a84e8b326 toolsrv: fix Registry.discover() to use .meta files
The Registry had its own discover() method that still required
'ollie:prompt' in file content — the old header-based check that was
removed from DiscoverTools(). This caused tool_load to fail for ALL
tools (not just Go binaries) since .meta is now the sole metadata source.

Fix: delegate to DiscoverTools() which correctly scans .meta files.
2026-07-30 22:50:49 +02:00
Ollie Agent 46a990cd42 tools/lsp: fix arg field names to match .meta schema
Binaries now read path/line/col (matching the .meta schema the model
sees) instead of file/line/character. Also fix col to be 1-indexed
(matching the schema description) with proper -1 conversion to LSP
0-indexed protocol.
2026-07-30 22:47:27 +02:00
Ollie Agent 36e42057d4 justfile: rm stale files before go build (overwrite safety) 2026-07-30 22:43:03 +02:00
Ollie Agent 77b4b624cf tools/lsp: port LSP tools from Python to Go
Implements a bridge daemon + client architecture in pure Go:
- tools/lsp/ — shared library (adapter registry, LSP server management,
  JSON-RPC framing, bridge daemon, client)
- tools/lsp/cmd/{lsp_definition,lsp_references,lsp_hover,lsp_rename,
  lsp_symbols,lsp_completion,lsp_diagnostics}/ — individual binaries

Each binary:
- Reads JSON args from stdin (same contract as before)
- Connects to bridge daemon over Unix socket (starts it if needed)
- Bridge manages long-lived LSP server processes (gopls, clangd, intelephense)
- Bridge auto-exits after 5min idle

Removes:
- Python LSP tool scripts (data/tools/lsp_*)
- Python LSP library (data/tools/_lib/lsp/)

Adds lsp-tools build target to justfile. The .meta sidecar files remain
in data/tools/ and are installed alongside the compiled binaries.
2026-07-30 22:10:56 +02:00
Ollie Agent 1015536f2c tools: move builtins to tools/builtin/
Prepares tools/ as the umbrella for all tool implementations:
- tools/builtin/ — in-process handlers (shell, reasoning, tool/skill registry)
- tools/lsp/ — (next) Go LSP tools with shared client library

Package rename: ollie/tools → ollie/tools/builtin
2026-07-30 22:04:32 +02:00
Ollie Agent ba8db09143 justfile: fix .meta install loop and remove dead targets
- Fix for loop: just doesn't need $$ escaping (that produces PID)
- Remove empty install-scripts and install-contrib targets
- Fold script installs into install-data
2026-07-30 21:55:21 +02:00
Ollie Agent 63f602fb07 README: fix custom tools description 2026-07-30 21:52:58 +02:00
Ollie Agent a632f630ce README: update for current architecture
- Remove terminal/s/sh/bfg from diagram and frontends
- Update repo layout table (data/, mount/, skills)
- Fix env var descriptions (u/complete → code completion)
- Update intro text
2026-07-30 21:52:25 +02:00
Ollie Agent 6ef99918e0 doc: add Phase 12 to EVOLUTION.md 2026-07-30 21:50:18 +02:00
Ollie Agent 69b2c2cc40 tool metadata: replace header comment parsing with .meta sidecar files
The tool registry now reads metadata exclusively from JSON .meta sidecar
files alongside each tool executable. Header comment parsing (ollie:prompt,
ollie:tier, ollie:parallel, args_json) is removed entirely.

- Add toolsrv/meta.go: MetaFile struct, LoadMetaFile, ToolInfoFromMeta
- Rewrite discover.go: scans .meta files only
- Rewrite schema.go: ParseToolInfo reads .meta only
- Rewrite tier.go: tier/readOnly from .meta only
- Generate .meta for all 35 tools
- Update all docs: README, AGENTS.md, ARCHITECTURE, CORE, USAGE, WRITING_TOOLS
2026-07-30 21:48:42 +02:00
Ollie Agent 942cad2dee rename contrib/{prompts,scripts,services,tools,skills,agents} → data/
These are project data files, not community contributions.
contrib/elisp stays as-is.
2026-07-30 21:40:11 +02:00
Ollie Agent ddddb1f53b remove s/, u/, x/ script namespaces and 9P backing
All session scripts (s/sh, s/b, s/bfg, s/bbg, s/ls, s/kill, s/cleanup),
utility scripts (u/optimize, u/complete, u/cascade, u/escalate), and
internal scripts (x/bd, x/prime, x/freeloader, x/task) are removed.

These are replaced by:
- generate, complete, route files (ollie-9p rdwr)
- integrated elevation broker
- D-Bus/9P session management

Also removes:
- 9P rootFileOrder entries and permission map for script files
- Script-serving catch-all in rootOpen
- prependOlliePath (no x/ scripts to shadow PATH with)

ollie-watchdog moved to contrib/scripts/ alongside ollie-remount.
2026-07-30 21:36:54 +02:00
Ollie Agent ffe45c4f1f docs: replace s/sh, s/bfg, s/bbg references with generate/complete/route
These scripts have been removed. Update all documentation to reference
the current interfaces: ollie-9p rdwr generate, complete, and route.
2026-07-30 21:31:10 +02:00
Ollie Agent d9871e686a docs: replace s/{sh,b,bfg,bbg} references with generate/complete/route
These scripts were removed. Update all documentation to reference the
current alternatives: ollie-9p rdwr generate, ollie-9p rdwr complete,
and ollie-9p rdwr route.
2026-07-30 21:30:18 +02:00
Ollie Agent a306cbbce6 remove dead session scripts s/{sh,b,bfg,bbg} 2026-07-30 21:24:54 +02:00
Ollie Agent 0cea373207 mount: document purpose and fix misleading comment
Add README.md explaining the network transparency role of the mount
package. Replace 'kept as a convenience' comment with one that explains
why it exists and how it differs from local 9pfuse.
2026-07-30 21:23:25 +02:00
Ollie Agent dd8520abb7 Revert "remove dead mount/ package and olliesrv mount subcommand"
This reverts commit bcfdda26b4.
2026-07-30 21:19:11 +02:00
Ollie Agent bcfdda26b4 remove dead mount/ package and olliesrv mount subcommand
The FUSE-based 9P mount (mount/) was unused — all actual mounting
uses 9pfuse via ollie-remount. Remove the package, the olliesrv mount
subcommand, and the go-fuse dependency.
2026-07-30 21:18:52 +02:00
Ollie Agent 96dc6e442b main.go for olliesrv 2026-07-30 21:14:26 +02:00
Ollie Agent 35cbee0e35 update kde submodule: fix justfile paths 2026-07-30 20:51:32 +02:00
Ollie Agent b2a3e7121f justfile: move install-kde* rules to kde/justfile
The install-kde and install-kde-kf5 targets are now invoked via
'just -f kde/justfile install-kde' from the install/install-kf5 recipes.
Removed the standalone install-kde* targets from the root justfile.
2026-07-30 20:44:31 +02:00
Ollie Agent d6544ba892 fix justfiles: quote echo args with parens, remove stale cd kde
- KDE justfile: quote @echo arguments containing parentheses (sh syntax)
- KDE justfile: remove 'cd kde &&' prefix from cmake commands (already
  running from kde/ directory when invoked via just -f)
- Root justfile: quote all @echo arguments with parentheses
- KDE justfile: fix cmake install prefix and j*(nproc) typo
2026-07-30 20:43:08 +02:00
Ollie Agent 7bbdbd1f7f agent: refresh tool definitions from server on every turn
Previously the agent loop used a frozen Tools slice from BuildRuntime.
When tool_load promoted a tool, it was added to the registry but the
runtime's Tools slice was never updated — the LLM never saw the new
tool's schema until a session rebuild.

Fix: on each turn, call ToolServer.ListTools() to get the current set
of built-in + dynamically loaded tools, then convert to backend.Tool.
This makes tool_load behave identically to a built-in: the schema is
injected into the tool definitions on the very next turn.
2026-07-30 20:37:35 +02:00
Ollie Agent 178d79b3cb remove remaining webui/httpgw references in docs 2026-07-30 20:22:49 +02:00
Ollie Agent ea3db9eb08 remove httpgw and webui; update AGENTS.md to reflect current structure
- Remove cmd/ollie-httpgw/ directory and webui/ submodule
- Update justfile: remove httpgw/webui build targets
- Update README.md: remove httpgw/webui references
- Update doc/ARCHITECTURE.md: remove httpgw/webui references
- Update doc/EVOLUTION.md: remove httpgw/webui references
- Update doc/USAGE.md: remove httpgw/webui sections
- Update AGENTS.md: fix repo layout, build targets, testing, architecture
  paths, key files, adding tools/prompts, submodule workflow
2026-07-30 20:19:32 +02:00
Ollie Agent dd5701b1bb readme: bring up to date after Great Flattening
- Frame olliesrv as single binary with two surfaces (9P + D-Bus)
- Fix repository layout table: no core/, 9p/, remote/ submodules
- Fix all namespace paths: session/{id}/agent/{aid}/
- Fix architecture diagram labels (agent.Agent, toolsrv.Server)
- Fix httpgw description (HTTP→9P, not D-Bus)
- Replace verbose features list with concise capability table
- Remove outdated development/pull.sh sections
2026-07-30 20:02:14 +02:00
Ollie Agent f63cb3bb37 doc: update architecture diagrams to Mermaid, reflect current codebase
- Convert all ASCII diagrams to Mermaid (gitea-rendered)
- ARCHITECTURE.md: System Overview, Data Flow, Frontends → Mermaid
- CORE.md: Package Map, Per-Iteration Flow → Mermaid
- EVOLUTION.md: Timeline → Gantt, coordination/security/frontends → Mermaid
- MULTI_AGENT.md: coordination patterns → Mermaid
- REMOTE_EXECUTION.md: split-brain architecture → Mermaid
- Update all references: agent.Core → *agent.Agent, execute.Server → toolsrv.Server,
  tools.Dispatcher → toolsrv.Runner, s/ → session/ namespace
- Fix namespace layout to show agent/{aid}/ subdirectory hierarchy
- Update package layout to reflect flat Go module (no core/ or 9p/ submodules)
2026-07-30 19:58:53 +02:00
Ollie Agent df22946249 pull.sh: update for flattened repo (only . kde webui remain) 2026-07-30 19:42:21 +02:00
Ollie Agent b6cdd3d369 update submodule pointers for kde and webui (justfiles added) 2026-07-30 19:36:20 +02:00
Ollie Agent 33030053ef split KDE and webui into submodule justfiles
- Create kde/justfile with build, install, clean, uninstall targets
- Create webui/justfile with build target
- Root justfile delegates to submodule justfiles via `just -f`
- Remove inlined KDE commands from root justfile
2026-07-30 19:18:28 +02:00
Ollie Agent 619dbe555c justfile: fix indentation, update acme/scripts/ paths, remove cd core 2026-07-30 19:06:48 +02:00
Ollie Agent 4bc7a21097 flatten: fix stragglers — remote server, _lib, stray go.mod files
- Rewrite cmd/ollie-remote to use toolsrv.Server API (was using non-existent
  ollie/pkg/tools and ollie/pkg/tools/execute packages)
- Restore tools/_lib/ from pre-flatten branch (was lost in migration)
- Remove stray go.mod/go.sum from cmd/Ollie, cmd/ollie-httpgw, cmd/ollie-remote
- Update justfile: ollie-remote target copies tools from contrib/tools/
- Remove leftover root prompts/ directory
2026-07-30 19:01:36 +02:00
Ollie Agent 9b6ddb7df1 flatten: absorb submodules into single Go module
- Remove submodules: core, 9p, acme, httpgw, remote, el
- Keep submodules: kde, webui (separate build systems)
- Collapse core/ packages into root: agent/, backend/, detach/, elevate/,
  env/, log/, paths/, sandbox/, session/, skills/, tools/, toolsrv/
- Collapse 9p/ packages: fs/session/, mount/, dbus/, cmd/olliesrv/
- Move binaries: acme/ → cmd/Ollie/, httpgw/ → cmd/ollie-httpgw/,
  remote/ → cmd/ollie-remote/, 9p/cmd/ollie-9p/ → cmd/ollie-9p/
- Move data: agents/, prompts/, tools/, scripts/, skills/ → contrib/
- Move services/ → contrib/services/, experiments/ → doc/experiments/
- Delete .beads/, .claude/, .kiro
- Single go.mod at root (module ollie)
- Fix all import paths, merge fs/ + session/ packages
- Extract dbus/ and elevate/notify.go from 9p server package
- Update justfile for new paths and single-module build
2026-07-30 18:57:51 +02:00
Levi Neely aa2d185cb6 update kde submodule: fix kate segfault 2026-07-30 17:06:03 +02:00
Levi Neely d7a59e6754 update core, 9p, kde submodules
- core: fix elevate session ID, leaky bucket rate limit
- 9p: remove resetElevation plumbing
- kde: fix model list not populating for default backend
2026-07-30 16:30:05 +02:00
Levi Neely 8eb59ec173 revert 9p submodule: remove streaming generate experiment 2026-07-30 11:29:29 +02:00
Levi Neely 30ce5b7a0e update 9p submodule: true streaming generate 2026-07-30 11:27:10 +02:00
Levi Neely 85e707c932 update 9p submodule: fix generate streaming 2026-07-30 11:25:28 +02:00
Levi Neely ddb297fd36 update 9p submodule: streaming generate 2026-07-30 11:21:51 +02:00
Levi Neely fdd39b7499 docs: update tool registry references to reflect dynamic discovery 2026-07-30 10:08:13 +02:00
Levi Neely e8d3ff92cb update core submodule: AGENTS.md injection 2026-07-30 09:40:06 +02:00
Levi Neely f2e3bcd1c7 update 9p submodule 2026-07-30 09:38:19 +02:00
Levi Neely b79f1a1231 remove skills.Discover() call site, update submodules 2026-07-30 09:38:07 +02:00
Levi Neely b5132ed341 update core submodule: dynamic schema refresh 2026-07-30 09:37:02 +02:00
Levi Neely a92429d973 update justfile 2026-07-30 09:26:21 +02:00
Levi Neely d4f7b2c086 tools: remove reasoning_think script (now a builtin) 2026-07-30 09:24:39 +02:00
Levi Neely 7f8447002d update core submodule: reasoning_think builtin 2026-07-30 09:24:12 +02:00