doc: update usage.md and architecture-kde.md

- Document colon separator for session:agent
- Document agent-level bypass/approve/deny filtering
- Document !a !d !b shortcuts in prompt REPL
- Update tmux session naming to include agent
- Add Procs and Peers buttons to KDE GUI features
This commit is contained in:
Levi Neely 2026-10-09 13:09:13 +02:00
parent 8793202ef5
commit c8897b8251
2 changed files with 14 additions and 2 deletions

View File

@ -27,6 +27,8 @@ The KDE clients do not embed provider selection, prompt assembly, tool execution
- Prompt entry with slash-command support.
- Session and agent creation dialogs.
- Model, backend, profile, stop, kill, compact, and help actions.
- Background processes manager (Procs button).
- Peer connections manager (Peers button) — canvas-based graph visualization.
- KDE Plasma palette detection with a Qt Quick Basic fallback outside Plasma.
The application communicates through 9P and the event stream. It does not need a running desktop daemon beyond `olliesrv` and the 9P client/socket environment.

View File

@ -73,9 +73,13 @@ Context is determined by the first argument — not by environment variables:
o <cmd> Root level (no context)
o <session> <cmd> Session level
o <session>/<agent> <cmd> Agent level
o <session>:<agent> <cmd> Agent level (colon separator)
```
The slash in `<session>/<agent>` disambiguates session-only from session+agent.
Slash is the primary separator. Agent names may contain colons (e.g., `src:ollie`).
Use colon separator only when session names contain slashes.
`o ls` lists the root of the ollie namespace; `o` with no arguments prints help.
### Commands
@ -90,6 +94,9 @@ The slash in `<session>/<agent>` disambiguates session-only from session+agent.
| `o <sess> bypass` | session | Show pending bypass request details |
| `o <sess> approve [id]` | session | Approve pending bypass request |
| `o <sess> deny [id]` | session | Deny pending bypass request |
| `o <sess>/<agent> bypass` | agent | Show pending bypass requests for this agent |
| `o <sess>/<agent> approve [id]` | agent | Approve first pending request for this agent |
| `o <sess>/<agent> deny [id]` | agent | Deny first pending request for this agent |
| `o <sess>/<agent> prompt` | agent | Interactive multi-line prompt REPL |
| `o <sess>/<agent> tui` | agent | Launch tmux TUI |
| `o <sess>/<agent> ctl <cmd>` | agent | Agent control (stop, compact, model, etc.) |
@ -130,7 +137,7 @@ $ o myproj/coding prompt
[myproj/coding]
Type . on a blank line to send, Ctrl+D to exit.
/ prefix runs ctl: /stop, /compact, /model X, /inject X
!q exits the TUI.
! prefix: !a approve, !d deny, !b bypass, !q quit
> write a fibonacci function in python
and include a test case
@ -160,6 +167,9 @@ and the rest is sent to `ctl`:
| `/peeradd X` | Add a bidirectional peer link |
| `/peerdel X` | Remove a bidirectional peer link |
| `/peers` | List current peers |
| `!a` | Approve first pending bypass request for this agent |
| `!d` | Deny first pending bypass request for this agent |
| `!b` | List pending bypass requests for this agent |
| `!q` | Kill the tmux TUI session and exit |
Piped input is also supported:
@ -197,7 +207,7 @@ status bar:
o myproj/coding tui
```
1. Creates a tmux session named `o-<session>`.
1. Creates a tmux session named `o-<session>-<agent>` (special chars replaced with `-`).
2. Two panes:
- **Pane 0** (top, 80%): streams chat output (log tail + live `read chat`).
- **Pane 1** (bottom, 20%): `o prompt` — multi-line REPL (`/` prefix runs ctl commands).