ox
patient, grounded, immovably strong

An agentic AI framework where every capability is a filesystem path. Built on StructFS. Read a path to inspect state. Write a path to change it.

The namespace is the agent

System prompt, conversation history, tool definitions, and model config all live as paths in a virtual namespace. Read a path to inspect state. Write a path to change it.

The kernel reads /prompt, streams a completion, writes results back, and loops until the model stops calling tools. Tools are shell-provided, not baked in — every shell (browser, WASI, native) brings its own tools and transport. The ox carries what it needs and nothing extra.

// Read the assembled prompt from the namespace
namespace.read(&path!("prompt"))

// Append to conversation history
namespace.write(&path!("history/append"), record)

// Tools are shell-provided — register from JS, WASI, or native
agent.register_tool("search", search_tool)

Crates

Crate Role
ox-kernel core State machine, Tool/Transport traits, ToolRegistry, agentic loop, StructFS re-exports
ox-context namespace Namespace store router, providers (System, Tools, Model), prompt synthesis
ox-history memory HistoryProvider — conversation state as a StructFS store
ox-core agent Agent composition — wires kernel + namespace + stores, re-exports public types
ox-web browser Wasm shell, JS tool registration, theme picker, debug UI
ox-dev-server proxy Axum binary — Anthropic API proxy, serves the playground
ox-wasi stub WASI target shell
ox-emscripten stub Emscripten target shell