diff --git a/README.md b/README.md index 5e6d830..d3b776f 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,6 @@ # ollie -What happens if agent primitives are exposed as an ordinary filesystem? How much can be subtracted from AI agent implementations without reducing their usefulness? These are some of the motivating questions behind `ollie`. - -- The [core system](https://github.com/lneely/ollie-core) provides a public library of AI agent primitives. -- The [9p filesystem server (Go)](https://github.com/lneely/ollie-9p) creates a virtual filesystem exposing the important state and behaviors as ordinary files and operations. -- A reference [TUI](https://github.com/lneely/ollie-tui) implementation proves that it is possible to build a functioning and user-friendly terminal front-end using only the Go standard library. -- And, just because I like my Emacs friends, a reference [Emacs interface](https://github.com/lneely/ollie-el) front-end implementation. - -## Project Structure - -- `core/`: -- `tui/`: -- `9p/`: -- `el/`: -- `scripts/`: shell scripts organized by hosted namespace (`s/`, `b/`, `u/`) and exposed via the ollie filesystem without `$PATH` changes +Ollie starts from a simple, slightly silly question: *What might an AI agent look like in [Plan 9](https://www.usenix.org/legacy/publications/compsystems/1995/sum_pike.pdf)?* From there follow two more: *What happens if agent primitives are exposed as an ordinary filesystem?* and *How much can we subtract from agent implementations while still being useful?* The result is not a conventional "agent framework" but a small Go runtime and 9P‑backed filesystem surface that defines what an agent is, then exposes its state and behaviors as regular files and I/O streams, so that the surrounding environment (shell scripts, TUIs, web apps, cron, containers, and other OS facilities) can handle orchestration, scheduling, workflows, and interfaces instead. Features like conductor agents, complex workflow engines, or fancy editors are optional layers you build yourself by composing ordinary file reads, writes, and processes: a tiny `s/sh` CLI, an `optimize | b/q` pipeline, or a Claude‑Code‑style UI talking to the same filesystem namespace. ## Getting Started