One Linux desktop for your coding agents.
Keep provider sessions, code changes, terminals, and reviews in one workspace.
- Download the latest AppImage.
- Install the Arch Linux AUR package.
- Set up Linux and troubleshoot dependencies.
- Build MonoCode from source.
- Read the contribution guide.
- Report a bug.
- Report a security issue privately.
Use MonoCode Linux when you want one desktop workspace for coding-agent CLIs. This guide helps you install, configure, and build the app. MonoCode connects to your existing provider accounts and does not sell tokens.
The app, continuous integration (CI), releases, and packaging target Linux x86_64. Releases ship as AppImages. This fork does not support macOS or Windows.
- Run independent agent sessions in tabs.
- Attach files, mention project paths, and use skills in one composer.
- Drive OpenCode on both its V1 and V2 wire formats.
- Explore projects, edit files, and review side-by-side changes.
- Use integrated terminals, Git workflows, worktrees, and a GitHub inbox.
- Coordinate helper agents in isolated project directories.
- Keep session history, project groups, and inbox activity together.
- Configure terminal and WebKit acceleration, appearance, sounds, and themes.
- Receive update notices from GitHub Releases.
- Use the interface in English or Brazilian Portuguese.
MonoCode hosts a single agent: OpenCode.
| Provider | Install or activate | Sign in |
|---|---|---|
| OpenCode | Install guide | opencode auth login |
It is required, not optional. MonoCode looks for the binary at startup and tells you how to install it if it is missing.
This fork began with eleven provider adapters. The other ten — Claude Code, Codex, Cursor, Grok Build, Pi, omp, fx, Hermes Agent, MiniMax Code, and Antigravity — were removed along with their login flows, catalog probes, usage plumbing, and settings. Sessions written before the removal still open and run on OpenCode. Skills and project instructions authored for those agents are still read: CLAUDE.md, .cursor/, and the rest are loaded as configuration, not as adapters.
Download the latest AppImage from GitHub Releases, then run:
chmod +x MonoCode_*.AppImage
./MonoCode_*.AppImageThe AppImage runs on x86_64 Linux distributions. For system dependencies, diagnostics, and WebKit troubleshooting, see the Linux guide.
Arch Linux users can also install
monocode-bin from the AUR.
See the AUR guide for setup and update details.
Before you begin, install:
- Node.js 20 or newer
- The stable Rust toolchain
- Tauri 2 system dependencies for Linux
On Debian or Ubuntu, install the native packages with:
npm run setup:linuxOn other distributions, install the equivalent WebKitGTK, GTK 3, Soup 3, and JavaScriptCoreGTK packages. The complete list appears in docs/linux.md.
Install project dependencies:
npm ciStart MonoCode with hot reload:
npm run tauri devBuild the distributable AppImage:
npm run build:linuxThe output is written to target/release/bundle/appimage/.
Build and install the release binary under ~/.local/bin, then create a
launcher under $XDG_DATA_HOME (~/.local/share when unset):
npm run install:linux:desktopRemove only those per-user files:
npm run uninstall:linux:desktopThis command does not modify system directories or the packages under
packaging/.
Run the same validation used by CI:
npm run check
cargo check
npm run test:linux:installerUse focused checks while developing:
| Scope | Command |
|---|---|
| Frontend tests and type checking | npm run check:web |
| Test-file type checking | npm run check:web:tests |
| Rust formatting, linting, and tests | npm run check:rust |
| Frontend lint | npm run lint |
| Unused files and dependencies | npm run knip |
.
├── .github/
│ ├── ISSUE_TEMPLATE/
│ └── workflows/
├── docs/
├── packaging/
│ ├── archlinux/
│ └── aur/
├── public/
├── scripts/
├── src/
│ ├── app/
│ ├── assets/
│ ├── chrome/
│ ├── components/
│ ├── hooks/
│ ├── instructions/
│ ├── lib/
│ │ └── harness/
│ └── surfaces/
└── src-tauri/
├── capabilities/
├── icons/
└── src/
| Command | Purpose |
|---|---|
npm run dev |
Start the Vite frontend |
npm run dev:stable |
Start the Vite frontend in stable mode |
npm run build |
Type-check and build the frontend |
npm run preview |
Preview the frontend production build |
npm test |
Run the Vitest suite once |
npm run test:watch |
Run Vitest in watch mode |
npm run check |
Run frontend and Rust project checks |
npm run check:web |
Run frontend tests and TypeScript checks |
npm run check:web:tests |
Type-check test files |
npm run check:rust |
Run Rust formatting, Clippy, and tests |
npm run lint |
Run ESLint on frontend source |
npm run knip |
Find unused files and dependencies |
npm run tauri dev |
Start the desktop app in development mode |
npm run tauri:stable |
Start Tauri with the stable configuration |
npm run build:linux |
Build the release AppImage |
npm run test:linux:installer |
Test the per-user desktop installer |
npm run setup:linux |
Install native Linux build dependencies |
npm run install:linux:desktop |
Install a per-user desktop build |
npm run uninstall:linux:desktop |
Remove the per-user desktop build |
npm run set-version -- VERSION |
Synchronize versions across release manifests |
For npm run set-version -- VERSION, replace VERSION with a semantic version
such as 0.3.0. This command is for release maintainers.
- Linux setup and troubleshooting
- Arch Linux AUR installation
- Frontend architecture
- Motion and interaction rules
- Security policy
- Code of conduct
- Changelog
Read the contribution guide before opening a pull request. Keep changes focused, add or update tests, and run the required checks.
Report vulnerabilities through GitHub Security Advisories. Do not open a public issue for a suspected vulnerability.
MonoCode Linux is available under the MIT License. Provider names and logos remain the property of their respective owners. See NOTICE.
