Commit Graph

420 Commits

Author SHA1 Message Date
lkn f1cbda64c7 add skills and autonomous loading behavior to system prompt 2026-07-29 00:17:58 +02:00
lkn aa1b7d1e1c add skills registry and skill_list/skill_load/skill_active built-in dispatchers 2026-07-29 00:16:39 +02:00
lkn c221426af4 remove root-level /tools from 9P filesystem listing and dead toolsResult field 2026-07-29 00:01:06 +02:00
lkn 6b57fe1f77 move Tool Registry from session_9p.md to system_prompt.md (decoupled from 9P) 2026-07-28 23:27:32 +02:00
lkn 7bcaf7422c update session_9p.md: use tool_list/tool_load/tool_active instead of ollie-9p 2026-07-28 23:26:30 +02:00
lkn df199cd202 execute_code -> shell: simplify to single bash command, remove steps/parallel/detach/language 2026-07-28 23:03:35 +02:00
lkn faaaf0f014 remove SYSTEM_PROMPT_QWEN.md and all references 2026-07-28 22:42:45 +02:00
lkn d5ed0a545f remove allowExecutors from config, execute server, and agent JSONs 2026-07-28 22:39:15 +02:00
lkn de8abb0b7a prompts: tool registry instructions using ollie-9p syntax 2026-07-28 22:15:41 +02:00
lkn 7c15f9ec3b session wiring: use execute.SetToolRegistry instead of separate registry server 2026-07-28 22:08:53 +02:00
lkn b387b33593 tool registry: lazy-loading tool promotion via s/{sid}/tools 2026-07-28 14:57:43 +02:00
lkn 96dda6e5f0 9p: files for per-session dynamic tool loading and inspection 2026-07-28 14:12:41 +02:00
lkn f1f039da20 sync QWEN system prompt with default 2026-07-27 20:37:34 +02:00
lkn 77aabfbe04 ResolveSystemPrompt: expand env, fall back to embedded by filename 2026-07-27 20:31:50 +02:00
lkn 86880feb3a embed Qwen system prompt; remove Devstral 2026-07-27 20:23:58 +02:00
lkn ecbe8067f2 add reactions file to 9P session tree 2026-07-27 19:59:50 +02:00
lkn 57053c4e48 add reactions file to 9P session tree 2026-07-27 19:52:49 +02:00
lkn 35cc360b08 add GetReactions D-Bus method 2026-07-27 19:47:18 +02:00
lkn 8c7dba5cf7 9P/D-Bus ReactTo and assistant:id headers 2026-07-27 19:12:12 +02:00
lkn f962f26451 update system prompt for categorized reaction format 2026-07-27 18:30:01 +02:00
lkn ad66560091 add React method to D-Bus introspection XML 2026-07-27 18:12:09 +02:00
Levi Neely 4a60edc893 add React D-Bus method
Exposes React(sessionID, emoji) over D-Bus so GUI clients can
send emoji reactions without direct 9P access.
2026-07-27 15:33:24 +02:00
Levi Neely d95313d682 add react file and reaction semantics in system prompt
New 9P file s/{id}/react: write an emoji to record a reaction to the
most recent assistant response. The reaction is passive feedback —
no model turn is triggered.

The system prompt now documents how agents should interpret emoji
reactions (positive/negative/confused) and silently adjust behavior.
2026-07-27 15:26:14 +02:00
Levi Neely 300d07b2aa remove ollie-9p-mount binary, inline FUSE into olliesrv
The mount logic is now a library package (mount/) called directly
by `olliesrv mount`. No external binary needed.

Per-session auto-mounts are gone entirely. The mount subcommand
remains for network-transparent human access to remote servers.
2026-07-27 11:51:56 +02:00
Levi Neely 8ef22ab90d rename 9p client to ollie-9p
Avoids shadowing plan9port. Binary auto-discovers server and
identity without flags.
2026-07-27 11:44:55 +02:00
Levi Neely cafe38292f session: remove auto-mount on session creation
Agents now use the 9p client binary directly instead of FUSE mounts.
Remove startMount() calls and OLLIE= env var from session env.
Mounts remain available for human use but are no longer auto-started.
2026-07-27 11:41:42 +02:00
Levi Neely 666acceb0b 9p client: auto-discover aname from \$OLLIE_UNAME
Remove -A flag. The client always attaches with the UID from
\$OLLIE_UNAME. Agents use it transparently without knowing about
9P attach semantics.
2026-07-27 11:35:27 +02:00
Levi Neely 80cc32d0ee 9p: add standalone 9P client binary
Complete 9P client that replaces plan9port dependency.
Subcommands: read, write, rdwr, stat, ls, create, remove, mkdir.
Supports -a addr, -A aname for attach identity, -n for no auth.
Uses 9fans.net/go/plan9/client library (already in go.mod).
2026-07-27 11:32:26 +02:00
Levi Neely e40d266206 session: parallelize session restoration on startup
Load persisted session JSONs sequentially (fast disk reads),
then fan out restoreSession calls in parallel. Each session
restoration involves backend init, prompt resolution, and
potentially SSH connections for remote sessions.
2026-07-27 11:13:36 +02:00
Levi Neely c59f1c57d7 olliesrv: remove SSH agent proxy startup 2026-07-27 11:06:23 +02:00
Levi Neely 238d8214a3 olliesrv: expose elevate/ and s/{id}/elevate via 9P
- /elevate/policy: read/write global policy (YAML)
- /elevate/pending/: list pending requests
- /elevate/pending/<id>: read summary, write approve/deny/persist
- /s/{id}/elevate: read/write session policy (includes global)
2026-07-27 11:03:20 +02:00
Levi Neely 324abd025b olliesrv: start SSH agent proxy alongside elevation broker 2026-07-27 10:49:31 +02:00
Levi Neely 8e348680dc olliesrv: wire integrated elevation broker
Start the elevation broker on $OLLIE_ELEVATE_SOCKET at daemon
startup. D-Bus notifications with approve/deny/persist actions
map back to broker.Resolve() via ActionInvoked signals.

Replaces the external superpowerd adapter.
2026-07-27 10:33:34 +02:00
lkn 76807dd879 sort D-Bus ListModels results 2026-07-26 19:01:19 +02:00
lkn 1a545be58f restore active sessions from data directory 2026-07-26 12:10:11 +02:00
lkn cbd249e5f9 9p: remove daemon subcommands, simplify to foreground-only
Drop start/fgstart/stop/status subcommands. olliesrv now runs
directly in the foreground; lifecycle managed by the supervisor
(systemd, openrc, or xdg-autostart). Keep mount as a convenience
subcommand for mounting remote 9P servers via 9pfuse.

- Remove daemonize(), stopServer(), isRunning(), pid file management
- runServer() no longer takes pidPath
- Move desktop file to main repo services/xdg-autostart/
- Update README examples
2026-07-25 18:20:14 +02:00
Levi Neely af7363cb1d dbus: add remote parameter to CreateSession
The D-Bus method was missing the remote parameter that session.Manager
already supports. Add it as the 6th arg after system_prompt so frontends
can create remote execution sessions via D-Bus.
2026-07-24 11:58:01 +02:00
lkn 32abf7a00c 9p: add ListModelsByBackend D-Bus method 2026-07-21 15:32:41 +02:00
lkn 88a4119707 docs: document peer/ operations (touch/rm/write) 2026-07-21 14:57:30 +02:00
lkn 4a87d25f22 README: add tools, state, peer/, proc/ to filesystem layout 2026-07-21 14:51:18 +02:00
lkn c289f5c7fd prompts: mark 9P as preferred, D-Bus as fallback 2026-07-21 14:45:20 +02:00
lkn c7c8fd1b8b session: inject operational model into restore path
Restored sessions were calling BuildRuntime without baseLayers,
so the 9P/D-Bus operational model never appeared in the system prompt.
Now computes sysPrompt, opModel, envBlock and passes them as BaseLayers.
2026-07-21 14:40:46 +02:00
lkn 87e6c664bd dbus: add systemPrompt arg to CreateSession introspection XML 2026-07-21 14:28:06 +02:00
lkn 17f28647b8 prompts: update D-Bus operational model with all methods, signals, and examples 2026-07-21 14:10:43 +02:00
lkn 590dbb5b4a prompts: rewrite 9P operational model with complete file tree and request-response examples 2026-07-21 14:04:24 +02:00
lkn 5dd0685c10 prompts: update 9P operational model with dns-style endpoints and full file tree 2026-07-21 13:59:38 +02:00
lkn 4964369025 9p: implement /tools write→read (dns pattern) for tool prompt lookup 2026-07-21 13:55:50 +02:00
lkn fe05415ebc 9p: add /tools to root directory listing 2026-07-21 13:50:59 +02:00
lkn 035e4db4b8 add /tools synthetic file with /net/dns pattern
Read: surface listing of all tools (name + description)
Write tool name, then read: full ollie:prompt content
Subsequent read reverts to surface listing (query cleared after use)
2026-07-21 13:36:38 +02:00
lkn 686fa5d0c8 embed layered system prompt: system + operational model + environment
The preamble is now composed as:
  system_prompt + operational_model + environment + agent_prompts

- Embed SYSTEM_PROMPT.md, session-9p.md, session-dbus.md in the binary
- Render environment block at runtime with live cwd/platform/date values
- Inject operational model based on server mode (Enable9P/EnableDBus)
- Accept system_prompt= override in session creation and D-Bus CreateSession
- Agent configs no longer need to reference system/session prompt files
2026-07-21 13:06:55 +02:00