Desktop: Download for macOS, Windows or Linux — latest stable · All releases and release notes
Mobile: iPhone & iPad · Android
Website · Setup guide · Features
- Work with multiple agents and servers in one place.
- Review code, plots, images, and videos right in your chats.
- Browse files, use terminals, and schedule jobs.
- Continue your work from desktop or mobile.
See the website for screenshots and feature walkthroughs.
AgentsServer runs your agents on a computer you control. AgentsDock connects to it from your desktop or phone. The server and desktop app can run on the same computer.
-
Prepare your computer. Use Linux or an Apple silicon Mac with Node.js 22.14+,
uv, andtmux. Prerequisite instructions → -
Install the server. Run on that computer, without
sudo:npm install -g agentsdock
First installation automatically sets up and starts the server.
-
Connect the app. Download AgentsDock. Run
agentsdock listandagentsdock token defaulton the server, then add its URL and token in the app. For another device, use the listed LAN or Tailscale address. -
Start chatting. Install and sign in to your preferred agent CLI on the server, then choose an agent and workspace in the app.
Follow the full setup guide for connection help. Already have a server? npm leaves it unchanged; update through Settings → Updates in the desktop app.
Use Git, Node.js 24, and pnpm 11.9.0 (the version pinned by the project). Desktop and mobile are separate packages; install dependencies in the package you are working on. You also need a running AgentsServer to use the app.
git clone https://github.com/ZhengyiLuo/AgentsDock.git
cd AgentsDockThe current desktop app is built with Electron, React, and TypeScript. From the repository root:
cd electron
pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm devpnpm build compiles the app without packaging or publishing it. For desktop
architecture and platform-specific packaging, see
electron/README.md.
The current iPhone/iPad app lives in mobile-react/, using React Native
and Expo. Android source and native modules live in that same package. From
the repository root:
cd mobile-react
pnpm install --frozen-lockfile
pnpm typecheck
pnpm test:history
pnpm test:server-setupFor local iOS development on macOS with Xcode, continue in mobile-react/:
pnpm exec expo prebuild --platform ios
pnpm exec expo run:iosUse a simulator or your own signing configuration. Read the mobile development guide before installing on a device: using the existing bundle identifier can replace your installed app. Android development requires the Android toolchain.
| Directory | Purpose |
|---|---|
electron/ |
Current desktop client for macOS, Linux, and Windows |
mobile-react/ |
Current React Native mobile client, including native modules in modules/ |
website/ |
Product website and user guides |
team-hub/ |
Team Hub service code and tests |
docs/ |
Architecture, development notes, and release-channel documentation |
server/ |
Maintained AgentsServer runtime, installer, and server-only tests |
Sources/, Apps/, ZenithDock.xcodeproj |
Legacy Swift clients, not the current Electron or React Native apps |
The maintained backend lives in server/. Its Python dependencies and installer
are self-contained; server users do not need to build either client. See
the source migration notes before exporting
changes or preparing a coordinated release.
See CONTRIBUTING.md for checks and contribution guidelines. Keep changes scoped and add regression tests where appropriate. Use synthetic test data; do not commit credentials, private infrastructure details, chat transcripts, or screenshots containing user data.
The repository's CI verifies source. It does not publish desktop releases, upload mobile builds, or deploy servers. Official binaries and update feeds are managed separately; see release channels.
AgentsDock's original code is licensed under the Apache License 2.0, except where a component explicitly states another license. See NOTICE for attribution and separately licensed components. Existing third-party copyrights, licenses, and notices remain in effect.