✨✨ Orchestrate Claude Code, Codex, OpenCode, Cursor, and more in parallel worktrees, with terminals, diffs, scratchpads, and pull requests in one native app. Use on mobile with Pragma Go. ✨✨
See the codeRun Claude Code, Codex, OpenCode, Cursor and more each in their own worktree.
Agents, terminals, diffs, and pull requests in one workspace.
Website · Documentation · Download · Plugins · Contributing
You can start five agents in a normal terminal window but it becomes hard to see which agent is doing what. Worse if you are running multipile agents in the same project their changes may collide.
Pragma is an open-source agentic development environment for people running many agents in parallel. Projects, worktrees, terminals, files, diffs, pull requests, and agent status live in one workspace — while every coding agent keeps running through its own native TUI, exactly as its authors shipped it.
There are many tools like Pragma so here is a comparison:
| Capability | Pragma | Emdash | Orca | Superset |
|---|---|---|---|---|
| Native shell Rust host + the OS webview, not a bundled browser | Tauri + Rust | Electron | Electron | Electron |
| Agents as plugins Each integration a versioned package with official branding | ✅ | 🟡 | 🟡 | 🟡 |
| Public plugin API Third-party sidebar tabs, cards, web views, and commands | ✅ | ❌ | ❌ | ❌ |
| Programmable automations Your TypeScript on host events, not just a schedule | ✅ | 🟡 | 🟡 | 🟡 |
| Interactive scratchpads Agents write MDX with live React you can edit and comment on | ✅ | ❌ | ❌ | ❌ |
| Agent board Prompt to review to pull request as tracked cards | ✅ | ❌ | ❌ | ✅ |
| Fanout + comparison view One prompt into N attempts, compared side by side | ✅ | ❌ | ✅ | 🟡 |
| Editing suite Code, markdown WYSIWYG, PDF, image, video, and audio | ✅ | 🟡 | 🟡 | 🟡 |
| Built-in AI, your key Inline ⌘K edits, one-click PR drafting, ask from the palette | ✅ | ❌ | 🟡 | ❌ |
| Mobile and web client What ships, and how you reach it off your LAN | iOS, Android, Web your own tunnel | ❌ | iOS, Android needs Tailscale/VPS | iOS only, Pro hosted relay |
| Persistent host server Sessions, tunnels, headless launches survive quitting | ✅ | 🟡 | 🟡 | 🟡 |
| Remote projects SSH hosts as first-class remote projects | SSH | SSH | SSH + WSL | ❌ |
| User themes Editable colour tokens per project, not a fixed preset list | ✅ | 🟡 | 🟡 | 🟡 |
| License What you may do with the source | AGPL-3.0 | Apache-2.0 | MIT | Elastic 2.0 |
✅ yes · 🟡 partial · ❌ no
Checked against the generalaction/emdash, stablyai/orca, and superset-sh/superset repositories as of 2026-08-29. These projects ship fast — if something here is out of date, open an issue and we will correct it. On the mobile row: Pragma's tunnel is a command you supply and control (ngrok, cloudflared, a Tailscale funnel — whatever you already run), not a vendor relay you depend on. Orca has no tunnel of its own; remote access means installing Tailscale yourself or running Orca's full server on a VPS. Superset's reaches your machine through Superset's own hosted relay, and the iOS app is Pro-plan only.
The quick start guide walks through the full loop from first prompt to merged pull request.
Launch Claude Code, Codex, OpenCode, Cursor, and friends in separate branches and worktrees. No collisions, no stashing, no "wait, which agent touched this file?"
Send a single prompt to several isolated attempts, compare their terminals, diffs, and scratchpads side by side, then keep the strongest result and throw the rest away.
Terminals and scrollback live on the host, not in the window. Close the app, drop the network, move to another machine — the agent keeps working and the scrollback is still there.
Inspect diffs, stage files, commit, push branches, and manage GitHub pull requests beside the agent that wrote the code.
Run on your machine, over SSH, or inside WSL. Desktop app on macOS, Linux, and Windows, with companion access from iOS, Android, and the browser.
Plugins add UI, commands, agents, and themes. Automations run scheduled and event-driven host tasks. The CLI and the typed @pragma-sh/sdk drive all of it from scripts.
Every agent runs through its own native CLI. Pragma adds a plugin so it reports status and shows up in the launcher.
Missing yours? Agent plugins are ordinary TypeScript packages — see the plugin guide.
Signed installers for every platform are attached to each GitHub Release. The links below always fetch the newest one.
| Platform | Download |
|---|---|
| macOS | Apple silicon (.dmg) · Intel (.dmg) |
| Windows | x64 installer (.exe) |
| Linux | x64: .deb · .rpm — ARM64: .deb · .rpm |
Pragma updates itself in place once installed. Release notes and older builds are on the releases page.
Pragma Go pairs with your desktop so you can launch agents, watch sessions, and answer their questions from your phone — see the mobile guide.
Obtainium installs Android apps straight from their GitHub releases and keeps them updated.
https://github.com/pragma-sh/pragma as the source URL.^pragma-go\.apk$The Android install guide explains each option and why it is needed.
| Resource | What it covers |
|---|---|
| Website | Product overview and feature tour |
| Documentation | Main documentation hub |
| User guide | Projects, worktrees, agents, review, and settings |
| CLI reference | Control Pragma and report agent status from a terminal |
| TypeScript SDK | Build typed integrations with @pragma-sh/sdk |
| Plugin development | Add UI, commands, agents, themes, and integrations |
| Plugin gallery | Browse available Pragma plugins |
| Automations | Run scheduled and event-driven host tasks |
| Architecture wiki | Desktop, server, gateway, and protocol layers |
| Issue tracker | Report bugs and request features |
Prerequisites:
git clone https://github.com/pragma-sh/pragma.git
cd pragma
bun install
bun run dev
See CONTRIBUTING.md for mobile, web, and docs dev workflows.
Read CONTRIBUTING.md first — it covers the contribution policy, prerequisites, running the desktop app and Pragma Go, the project tour, style guidelines, commit style, and how to open a pull request.
Policy in short: we only accept small features. Bug fixes and other small, focused changes are the most likely to be merged; large features and sweeping refactors will almost certainly be declined. Open an issue before building anything non-trivial.
Before opening a pull request:
bun run check
bun run test
bun run rust:test
Use Conventional Commits and include focused tests with behavior changes. AGENTS.md (and the per-package AGENTS.md files) hold the deeper architecture and platform rules for human and AI contributors alike. Bugs and ideas start in the issue tracker.
GNU Affero General Public License v3.0.
If Pragma saves you a tab, give it a star. ⭐
Built with Tauri, Rust, React, and Bun.
TypeScript
64.9%
Rust
29.5%
MDX
2.3%
Shell
2.2%
✨✨ Orchestrate Claude Code, Codex, OpenCode, Cursor, and more in parallel worktrees, with terminals, diffs, scratchpads, and pull requests in one native app. Use on mobile with Pragma Go. ✨✨
See the codeRun Claude Code, Codex, OpenCode, Cursor and more each in their own worktree.
Agents, terminals, diffs, and pull requests in one workspace.
Website · Documentation · Download · Plugins · Contributing
You can start five agents in a normal terminal window but it becomes hard to see which agent is doing what. Worse if you are running multipile agents in the same project their changes may collide.
Pragma is an open-source agentic development environment for people running many agents in parallel. Projects, worktrees, terminals, files, diffs, pull requests, and agent status live in one workspace — while every coding agent keeps running through its own native TUI, exactly as its authors shipped it.
There are many tools like Pragma so here is a comparison:
| Capability | Pragma | Emdash | Orca | Superset |
|---|---|---|---|---|
| Native shell Rust host + the OS webview, not a bundled browser | Tauri + Rust | Electron | Electron | Electron |
| Agents as plugins Each integration a versioned package with official branding | ✅ | 🟡 | 🟡 | 🟡 |
| Public plugin API Third-party sidebar tabs, cards, web views, and commands | ✅ | ❌ | ❌ | ❌ |
| Programmable automations Your TypeScript on host events, not just a schedule | ✅ | 🟡 | 🟡 | 🟡 |
| Interactive scratchpads Agents write MDX with live React you can edit and comment on | ✅ | ❌ | ❌ | ❌ |
| Agent board Prompt to review to pull request as tracked cards | ✅ | ❌ | ❌ | ✅ |
| Fanout + comparison view One prompt into N attempts, compared side by side | ✅ | ❌ | ✅ | 🟡 |
| Editing suite Code, markdown WYSIWYG, PDF, image, video, and audio | ✅ | 🟡 | 🟡 | 🟡 |
| Built-in AI, your key Inline ⌘K edits, one-click PR drafting, ask from the palette | ✅ | ❌ | 🟡 | ❌ |
| Mobile and web client What ships, and how you reach it off your LAN | iOS, Android, Web your own tunnel | ❌ | iOS, Android needs Tailscale/VPS | iOS only, Pro hosted relay |
| Persistent host server Sessions, tunnels, headless launches survive quitting | ✅ | 🟡 | 🟡 | 🟡 |
| Remote projects SSH hosts as first-class remote projects | SSH | SSH | SSH + WSL | ❌ |
| User themes Editable colour tokens per project, not a fixed preset list | ✅ | 🟡 | 🟡 | 🟡 |
| License What you may do with the source | AGPL-3.0 | Apache-2.0 | MIT | Elastic 2.0 |
✅ yes · 🟡 partial · ❌ no
Checked against the generalaction/emdash, stablyai/orca, and superset-sh/superset repositories as of 2026-08-29. These projects ship fast — if something here is out of date, open an issue and we will correct it. On the mobile row: Pragma's tunnel is a command you supply and control (ngrok, cloudflared, a Tailscale funnel — whatever you already run), not a vendor relay you depend on. Orca has no tunnel of its own; remote access means installing Tailscale yourself or running Orca's full server on a VPS. Superset's reaches your machine through Superset's own hosted relay, and the iOS app is Pro-plan only.
The quick start guide walks through the full loop from first prompt to merged pull request.
Launch Claude Code, Codex, OpenCode, Cursor, and friends in separate branches and worktrees. No collisions, no stashing, no "wait, which agent touched this file?"
Send a single prompt to several isolated attempts, compare their terminals, diffs, and scratchpads side by side, then keep the strongest result and throw the rest away.
Terminals and scrollback live on the host, not in the window. Close the app, drop the network, move to another machine — the agent keeps working and the scrollback is still there.
Inspect diffs, stage files, commit, push branches, and manage GitHub pull requests beside the agent that wrote the code.
Run on your machine, over SSH, or inside WSL. Desktop app on macOS, Linux, and Windows, with companion access from iOS, Android, and the browser.
Plugins add UI, commands, agents, and themes. Automations run scheduled and event-driven host tasks. The CLI and the typed @pragma-sh/sdk drive all of it from scripts.
Every agent runs through its own native CLI. Pragma adds a plugin so it reports status and shows up in the launcher.
Missing yours? Agent plugins are ordinary TypeScript packages — see the plugin guide.
Signed installers for every platform are attached to each GitHub Release. The links below always fetch the newest one.
| Platform | Download |
|---|---|
| macOS | Apple silicon (.dmg) · Intel (.dmg) |
| Windows | x64 installer (.exe) |
| Linux | x64: .deb · .rpm — ARM64: .deb · .rpm |
Pragma updates itself in place once installed. Release notes and older builds are on the releases page.
Pragma Go pairs with your desktop so you can launch agents, watch sessions, and answer their questions from your phone — see the mobile guide.
Obtainium installs Android apps straight from their GitHub releases and keeps them updated.
https://github.com/pragma-sh/pragma as the source URL.^pragma-go\.apk$The Android install guide explains each option and why it is needed.
| Resource | What it covers |
|---|---|
| Website | Product overview and feature tour |
| Documentation | Main documentation hub |
| User guide | Projects, worktrees, agents, review, and settings |
| CLI reference | Control Pragma and report agent status from a terminal |
| TypeScript SDK | Build typed integrations with @pragma-sh/sdk |
| Plugin development | Add UI, commands, agents, themes, and integrations |
| Plugin gallery | Browse available Pragma plugins |
| Automations | Run scheduled and event-driven host tasks |
| Architecture wiki | Desktop, server, gateway, and protocol layers |
| Issue tracker | Report bugs and request features |
Prerequisites:
git clone https://github.com/pragma-sh/pragma.git
cd pragma
bun install
bun run dev
See CONTRIBUTING.md for mobile, web, and docs dev workflows.
Read CONTRIBUTING.md first — it covers the contribution policy, prerequisites, running the desktop app and Pragma Go, the project tour, style guidelines, commit style, and how to open a pull request.
Policy in short: we only accept small features. Bug fixes and other small, focused changes are the most likely to be merged; large features and sweeping refactors will almost certainly be declined. Open an issue before building anything non-trivial.
Before opening a pull request:
bun run check
bun run test
bun run rust:test
Use Conventional Commits and include focused tests with behavior changes. AGENTS.md (and the per-package AGENTS.md files) hold the deeper architecture and platform rules for human and AI contributors alike. Bugs and ideas start in the issue tracker.
GNU Affero General Public License v3.0.
If Pragma saves you a tab, give it a star. ⭐
Built with Tauri, Rust, React, and Bun.
TypeScript
64.9%
Rust
29.5%
MDX
2.3%
Shell
2.2%