doc: add /generate and /route to README features and examples

This commit is contained in:
Ollie Agent 2026-07-18 17:25:13 +02:00
parent e6a6f8af66
commit b7f9171251
1 changed files with 12 additions and 3 deletions

View File

@ -72,9 +72,11 @@ Monorepo with Git submodules. Each submodule has its own Go module (except `el`
- **Monitor** — list running processes, read their output (64KB ring buffer), check status
- **Signal and dismiss** — send TERM/KILL to a detached process; remove finished processes from the list
### Code completion
### Stateless endpoints
- **Stateless completion endpoint** — write a JSON request (language, code, position), read back completions; works from any editor or script
- **Code completion** — write cursor context (prefix, suffix, file path), read back code to insert; works from any editor or script
- **One-shot generation** — write a prompt, read back a full LLM response; no session, no agent loop, no tools; scriptable from any language
- **Task routing** — write a task description, the system classifies complexity against all available models and returns the best backend+model for the job
### Frontends
@ -130,6 +132,13 @@ echo "signal 12345 TERM" > /mnt/ollie/s/worker/ctl
# Get completions
echo '{"language":"go","code":"func he"}' > /mnt/ollie/s/worker/complete
cat /mnt/ollie/s/worker/complete
# One-shot generation (no session needed)
exec 3<>/mnt/ollie/generate; echo 'explain monads in one sentence' >&3; cat <&3; exec 3>&-
# Route a task to the best model
exec 3<>/mnt/ollie/route; echo 'redesign the auth system' >&3; cat <&3; exec 3>&-
# → backend=kiro model=claude-sonnet-4-20250514
```
### Network transparency
@ -174,7 +183,7 @@ Multiple clients — terminals, editors, scripts, other agents — can mount the
The design follows Plan 9 conventions directly:
- **`/net/dns` pattern** — the `/complete` file is stateless per-fid: write a request, read back the result, like a DNS lookup
- **`/net/dns` pattern** — `/complete`, `/generate`, and `/route` are stateless per-fid: write a request, read back the result, like a DNS lookup
- **`ctl` files** — control operations (stop, kill, rename, compact) are writes to a control file, not method calls
- **Blocking reads** — `statewait` blocks until state changes, replacing event subscriptions with a simple `cat`