möbius is an open-source runtime for coding agents, with terminal and native Apple clients. Create Bots with their own models, instructions, tools, and approval policies. Work with those Bots across devices, schedule recurring jobs, or assemble a team to collaborate. Your gateway runs the agents and keeps their workspaces and saved conversations together.
Underneath the apps is a small, modular Rust framework you can embed in your own software.
What you can do
- Pick up work across devices. Open the same conversation from your terminal, iPhone, or iPad. Work continues while the gateway is running, even after you close a client.
- Give each Bot a job. Configure a builder, reviewer, or researcher with its own model, capabilities, instructions, and permissions. Each chat keeps its own transcript and workspace selection.
- Put repeat work on a schedule. Run a task once, at an interval, daily, weekly, or on a cron schedule. Each routine run starts a fresh conversation and keeps its results in run history.
- Let Bots collaborate. Swarms bring opted-in Bots together around a leader and a shared chat. Within a task, subagents can take on bounded parallel work.
- Keep long tasks moving. Durable checkpoints, context compaction, and searchable history let agents resume work and recover earlier details.
- Choose the tools and boundaries. Enable capabilities per Bot, add skills, review plugin hooks, and decide which actions require your approval.
Get started
1. Install the terminal client and gateway
Download a mobius-cli release from GitHub Releases.
Choose the mobius-<version>-<target>.tar.gz archive for your machine:
| Platform | Archive target |
|---|---|
| macOS, Apple Silicon | aarch64-apple-darwin |
| Linux, Intel / AMD 64-bit | x86_64-unknown-linux-gnu |
Verify the archive with shasum -a 256 -c FILE.sha256 using its accompanying checksum file,
then extract it and put the included
mobius, mobius-gateway, and cloudflared executables together in a directory on your PATH.
The archive also includes the licenses and terminal manual pages.
Rust 1.98 or newer is required. Install cloudflared separately for Quick Connect;
the Cargo package installs the two möbius commands only.
From a checkout of this repository:
See the CLI guide for installation and remote connection options.
2. Open a workspace and connect a model
First launch starts your local gateway in the background and opens provider setup. Connect a
provider, choose a model, and start a conversation with the default @mobius Bot. You can add
more Bots and change their models and capabilities later.
Built-in providers include OpenAI, Codex, Anthropic, DeepSeek, Kimi, and OpenRouter, plus
configurable endpoints that implement the OpenAI Responses API. Authentication and available
features depend on the provider. Use /login to configure one and /bot to edit your Bot.
On Linux, protected command execution requires Bubblewrap. Default Quick Connect uses
cloudflared, which is included in the downloadable archives.
3. Connect your other devices
The gateway displays an address and a single-use pairing code. In the Apple app, choose
Use your own gateway and enter those details. Another terminal can connect with the
mobius pair command shown by the gateway. Once paired, each client can open saved
conversations or work independently.
Quick Connect creates an account-free Cloudflare tunnel. Its public address changes when the gateway restarts; the gateway guide covers stable addresses and direct TLS setup. Keep your gateway machine awake and reachable for remote access and scheduled work.
Apple app: the iPhone and iPad client is currently in TestFlight beta. The Apple guide explains how to build it from source.
Prefer a hosted gateway? möbius Cloud runs the same open-source gateway in a dedicated microVM. Cloud is currently in beta and is optional.
How it fits together
flowchart LR
Terminal["Terminal · mobius"] <--> Gateway["Your gateway"]
Apple["iPhone & iPad"] <--> Gateway
Gateway --> Agents["Bots · routines · swarms"]
Gateway --> Work["Workspaces · Git · saved conversations"]
Gateway --> Models["Your model providers"]
The gateway is where files, commands, provider configuration, and agent sessions live. Clients send requests and render the same event stream. Model requests go to the provider you configure; changing clients preserves the agent's runtime and saved work.
| Concept | What it means |
|---|---|
| Gateway | The runtime on your Mac, Linux machine, or cloud host. It serves all your paired clients. |
| Bot | A reusable agent profile: purpose, model, tools, instructions, and approval policy. |
| Chat | A conversation with one Bot, a selected workspace, and its own durable transcript. |
| Routine | A scheduled task owned by a Bot. Each run gets a fresh conversation. |
| Swarm | A group of collaborating Bots with a leader and shared chat; each Bot keeps its own context. |
Protected execution uses Seatbelt on macOS and Bubblewrap on Linux and fails closed if the selected sandbox is unavailable. Approval policy belongs to the Bot. Full access allows shell commands to use everything available to the gateway account; file tools remain workspace-scoped. The gateway guide explains these boundaries in detail.
Build on möbius
The mobius crate is the embeddable core:
[]
= "0.15"
Compose an AgentConfig with a model router, sandbox, checkpoint store, and ordered
middleware stack. The core owns one linear session and model/tool loop. Your application
supplies the dependencies and consumes frontend-neutral events.
- Bring a model: implement
Model, or register an existing provider withModelRouter. - Add a capability: implement
Middlewareto own its tools, lifecycle hooks, state, commands, and presentation contributions. - Build a frontend: submit
protocol::Opvalues and render the agent's events and capability catalog. - Choose storage and execution: inject a
CheckpointStoreandSandboxBackend.
Start with the compile-checked composition example and API documentation. The gateway is the shipped composition root; the CLI and Apple app contain client behavior and presentation.
Extensions support standalone Agent Skills and OpenAI-format plugins with skills and command hooks. Installed packages are inactive until selected for a Bot or its creation template, and executable hooks require review of the installed package digest. MCP and app connectors are not yet supported.
| Package | Role |
|---|---|
mobius |
Embeddable Rust agent framework. |
mobius-gateway |
Headless runtime library: authentication, Bots, chats, routines, and swarms. |
mobius-cli |
Installs the mobius terminal client and mobius-gateway executable. |
| Apple app | Native SwiftUI client for iPhone and iPad. |
Documentation and contributing
| Start here | For |
|---|---|
| User guide | Setup, everyday workflows, Bots, and settings. |
| Terminal manual | Command reference and manual pages. |
| CLI guide | Installation, provider setup, and terminal controls. |
| Gateway guide | Hosting, pairing, authentication, and sandbox policy. |
| Bots and context | Routines, swarms, subagents, and memory boundaries. |
| Apple guide | Building and testing the iPhone and iPad app. |
Contributions and issue reports are welcome. Read AGENTS.md for module ownership, design rules, and required checks.
The Rust packages have separate versions and release workflows. See release instructions and the release workflow.
License
Apache-2.0. See NOTICE for third-party attributions.