| Implementation | Client | Host |
|---|---|---|
| iOS app (source) | On-device app | Embedded on the device |
| CLI | Terminal app for macOS and Linux | Connects to a running Ox Host |
Install the standalone terminal Client on macOS or Linux:
curl -fsSL https://raw.githubusercontent.com/ziyzhu/openox/main/apps/cli/install.sh | sh
ox --help
Standalone downloads require a published ox-cli-v<version> GitHub Release.
The installer verifies the download and installs into ~/.local/bin without
requiring Bun or Node.js. Run the same command to update.
Live commands connect to a running Ox Host; the reference control endpoint is provided by a DEBUG iOS Simulator app. See the CLI guide for Host connections, offline commands, and package-manager alternatives.
An Ox separates the interface, runtime, model, persistent state, and capabilities into seven components.
The Client and model remain replaceable around a Host that owns the Agent, Profile, VM, and service lifecycle.
Ox Client — An interface that connects to an Ox Host. A Client may be a mobile app, desktop app, web app, or command-line tool. The Host binds VM execution to the selected conversation, its permissions, attached services, and virtual filesystem view.
Ox Host — A process or device that opens an Ox Profile, runs the Ox VM, and supplies platform and service adapters. A Client can use an embedded Host or target a compatible Host elsewhere.
Ox Agent — The reasoning and tool-using process that pursues the user’s goals using the selected model, the state in an Ox Profile, and the capabilities exposed through the Ox VM.
Ox Model Provider — The language model selected by the user. OpenOx does not prescribe a model or provider; the Host adapts provider-specific APIs to the provider-neutral agent loop.
Ox Profile — A portable folder containing the Agent’s persistent state: its identity, memory, skills, artifacts, and conversation history. This keeps the Ox’s state independent of a particular Client or model.
Ox VM — The execution environment supplied by an Ox Host. The Agent writes and runs code inside the VM without direct access to the network, Host filesystem, or device. Instead, it uses explicit ox.* capabilities to interact with the Profile, services, websites, users, and device capabilities. The ox.fs virtual filesystem presents Profile content, skills, services, chats, and user-granted files while preserving each source’s permissions.
Ox Service Repository — A versioned collection of services described by a repository.json manifest. Each Ox Host manages an editable Local repository and can install compatible remote repositories. Each service exposes typed actions the Agent can invoke and may include reusable skills that teach the Agent when and how to use them.
Anyone can publish compatible web and MCP services in a public Git repository containing a repository.json manifest. Any compatible Host can install that repository. Device services remain part of the Host implementation.
Each Ox can self-evolve locally and, optionally, co-evolve with others. An Ox self-evolves through the VM, which lets it invoke an existing service while creating another one.
With an attached Browser capability, an Ox can navigate and inspect a website, perform approved interactions, and capture the evidence needed to create a reusable web service. That service becomes a set of actions the Ox can use again, combine with other services, or share through a repository.
ox.fs to write or revise the service manifest, actions, and optional skills in its Local Service Repository.ox.service.attach to load or reload the service for the chat.An Ox can therefore gain and apply a capability independently, without rebuilding or updating the Host or Client. Co-evolution is optional: an Ox can publish capabilities to shared repositories and install capabilities created by other Ox.
292 commits
Swift
63.2%
JavaScript
26.7%
TypeScript
9.7%
| Implementation | Client | Host |
|---|---|---|
| iOS app (source) | On-device app | Embedded on the device |
| CLI | Terminal app for macOS and Linux | Connects to a running Ox Host |
Install the standalone terminal Client on macOS or Linux:
curl -fsSL https://raw.githubusercontent.com/ziyzhu/openox/main/apps/cli/install.sh | sh
ox --help
Standalone downloads require a published ox-cli-v<version> GitHub Release.
The installer verifies the download and installs into ~/.local/bin without
requiring Bun or Node.js. Run the same command to update.
Live commands connect to a running Ox Host; the reference control endpoint is provided by a DEBUG iOS Simulator app. See the CLI guide for Host connections, offline commands, and package-manager alternatives.
An Ox separates the interface, runtime, model, persistent state, and capabilities into seven components.
The Client and model remain replaceable around a Host that owns the Agent, Profile, VM, and service lifecycle.
Ox Client — An interface that connects to an Ox Host. A Client may be a mobile app, desktop app, web app, or command-line tool. The Host binds VM execution to the selected conversation, its permissions, attached services, and virtual filesystem view.
Ox Host — A process or device that opens an Ox Profile, runs the Ox VM, and supplies platform and service adapters. A Client can use an embedded Host or target a compatible Host elsewhere.
Ox Agent — The reasoning and tool-using process that pursues the user’s goals using the selected model, the state in an Ox Profile, and the capabilities exposed through the Ox VM.
Ox Model Provider — The language model selected by the user. OpenOx does not prescribe a model or provider; the Host adapts provider-specific APIs to the provider-neutral agent loop.
Ox Profile — A portable folder containing the Agent’s persistent state: its identity, memory, skills, artifacts, and conversation history. This keeps the Ox’s state independent of a particular Client or model.
Ox VM — The execution environment supplied by an Ox Host. The Agent writes and runs code inside the VM without direct access to the network, Host filesystem, or device. Instead, it uses explicit ox.* capabilities to interact with the Profile, services, websites, users, and device capabilities. The ox.fs virtual filesystem presents Profile content, skills, services, chats, and user-granted files while preserving each source’s permissions.
Ox Service Repository — A versioned collection of services described by a repository.json manifest. Each Ox Host manages an editable Local repository and can install compatible remote repositories. Each service exposes typed actions the Agent can invoke and may include reusable skills that teach the Agent when and how to use them.
Anyone can publish compatible web and MCP services in a public Git repository containing a repository.json manifest. Any compatible Host can install that repository. Device services remain part of the Host implementation.
Each Ox can self-evolve locally and, optionally, co-evolve with others. An Ox self-evolves through the VM, which lets it invoke an existing service while creating another one.
With an attached Browser capability, an Ox can navigate and inspect a website, perform approved interactions, and capture the evidence needed to create a reusable web service. That service becomes a set of actions the Ox can use again, combine with other services, or share through a repository.
ox.fs to write or revise the service manifest, actions, and optional skills in its Local Service Repository.ox.service.attach to load or reload the service for the chat.An Ox can therefore gain and apply a capability independently, without rebuilding or updating the Host or Client. Co-evolution is optional: an Ox can publish capabilities to shared repositories and install capabilities created by other Ox.
292 commits
Swift
63.2%
JavaScript
26.7%
TypeScript
9.7%