Skip to content

Repository files navigation

Zen logo

Zen

Your coding agents, wherever you are.

Zen keeps coding agents running on your own computer and gives you Chat, live Terminal, Sessions, and persistent Brain on your phone. The daemon owns execution and stored credentials; paired devices receive the conversation and files you open, and AI providers receive requests.

GitHub release Release build TestFlight Preview License: Apache-2.0

Zen mobile app showing an active structured coding-agent chat, session list, persistent Brain workspace, and usage stats

What you can do

  • Continue in Chat — follow structured agent messages, tool calls, plans, and progress.
  • Take over in Terminal — open the live tmux session when you need the raw interface.
  • Manage Sessions — see what is running, finished, or waiting for input across projects.
  • Keep work moving in Brain — preserve useful context, organize ongoing work, and pick it up later.
Structured Zen Chat with a fictional agent task, tool progress, and a completed result Zen Sessions overview containing only fictional projects and agent activity
Structured Chat
Stay with the agent without losing its working context.
Sessions
See active, completed, and attention-needed work at a glance.
Zen Brain orchestrating fictional work with a persistent workspace Zen Stats showing fictional usage and activity data
Brain
Stay oriented across chats while Brain plans and advances ongoing work.
Stats
Understand agent activity and usage from your own daemon.

Brain keeps work moving

Brain keeps objectives, decisions, open threads, and next steps together across chats, devices, and restarts.

A Zen Worker is the execution unit managed by Zen. Brain owns objectives, scheduling, review, and acceptance; Workers execute scoped work. Workers appear as execution sessions in the mobile app and are managed with zen worker on the command line. A Codex subagent belongs to Codex internally and is not a Zen Worker or a separate Brain scheduling owner.

Quick start

Install the daemon on Linux (amd64/arm64), WSL, or an Apple Silicon Mac:

curl -fsSL https://raw.githubusercontent.com/daoleno/zen/main/install.sh | sh

For other install options, see Install the daemon.

Then, on the computer that has tmux and an authenticated coding-agent CLI:

zen doctor
zen --lan

Use the normal self-managed path: zen --lan on trusted Wi-Fi/Tailnet and run the exact pairing command it prints, or run zen pair https://your-origin.example for a Cloudflare Tunnel or reverse-proxy origin.

Zen Link is optional source capability for operators who explicitly configure link.json; only then does bare zen pair create a Link pairing code. This repository does not configure, start, deploy, or claim a live Link service.

Get the mobile app from the Android guide or public TestFlight, then open it and scan or import the pairing code.

First actions

After pairing, open Brain for a persistent conversation, or Sessions to open an existing agent or launch a terminal. Chat and Terminal are two views of the same session. Git Diff reviews that session's repository without changing it.

Settings > Servers selects the single current server used throughout the app. Providers > Models and accounts configures Codex/Claude model access; the Brain executor control selects the CLI that runs work. They are different settings. Channels > Telegram opens bot setup for the current server.

Stats refreshes reference prices automatically after discovery and observed usage. Missing catalog prices remain unknown, not free. Reference estimates and reported charges are identified separately; see Usage and pricing.

If pairing fails, check the endpoint with zen doctor, then use Retry or generate a new one-time pairing code. An offline server does not silently switch to another computer. See Troubleshooting and Telegram setup.

For Link, LAN, Tailscale, Cloudflare Tunnel, and reverse proxy options, see Connect and pair. Relay operators start with Zen Link Relay operations.

How it works

The Zen daemon runs beside your repositories, authenticated agent CLIs, and tmux sessions on your Linux computer or Apple Silicon Mac. Android and iOS normally connect through your self-managed full origin. An explicitly configured Zen Link can instead use an opaque relay with daemon-terminated pinned TLS. Zen handles one-time enrollment and signed device requests; relay infrastructure does not receive application plaintext.

Read Security and privacy for the trust model and Architecture for protocol details.

Learn more

Start with the documentation guide. Contributions are welcome—see CONTRIBUTING.md.

Zen is licensed under the Apache License 2.0. Attribution and brand guidance are in NOTICE and TRADEMARKS.md.

About

Your coding agents, wherever you are.

Topics

Resources

Contributing

Security policy

Stars

13 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages