Emdash is a free, open source ai assisted coding project written in TypeScript and released under Apache-2.0. It has 5,763 GitHub stars, 592 forks and 95 open issues, and was last pushed 8 hours ago. On this registry it ranks #18 of 24 tracked projects in AI Assisted Coding, with 5 head-to-head comparisons available. It gained 33 stars over the last 6 tracked days.

What is Emdash?

Emdash is an open-source desktop app and agentic development environment for developers who want to run several AI coding agents in parallel, each isolated in its own Git worktree, against local projects or remote machines over SSH.

What it is

Emdash is a desktop application written in TypeScript and released under the Apache-2.0 licence, described by its maintainers as the Open-Source Agentic Development Environment. It lives in the AI-assisted coding and developer tooling ecosystem, where command-line coding agents such as Claude Code, Codex, Cursor, OpenCode, Amp, Devin, Qwen Code, Droid, and GitHub Copilot are already the working interface for many developers. Emdash detects the provider CLIs already installed on a machine rather than shipping its own model or agent, and it serves as the environment those agents run inside.

The concrete problem it solves is parallel work without terminal sprawl. Running more than one agent at a time normally means juggling terminals, hand-creating branches, and manually separating one agent's edits from another's. Emdash replaces that manual juggling: each task runs in its own Git worktree and branch, so multiple fixes or features can be explored at once, the diffs reviewed in one place, and only the work that succeeds merged. It goes further than a terminal multiplexer by also carrying tickets in from trackers and pulling pull requests, CI checks, and merges into the same surface.

Key capabilities

  • Runs multiple coding agents concurrently, each isolated in its own Git worktree and branch, so parallel explorations do not collide.
  • Auto-detects installed provider CLIs and supports Claude Code, Codex, Cursor, OpenCode, Amp, Devin, Qwen Code, Droid, and GitHub Copilot.
  • Installs marker-tagged entries in an agent's user-level config for agents with lifecycle-hook support, enabling status tracking, notifications, and resumable sessions; those hooks silently do nothing when the agent runs outside an Emdash session.
  • Sends issues and tickets from Linear, GitHub, Jira, GitLab, Asana, Featurebase, Monday.com, Forgejo, and Plain directly into an agent.
  • Reviews diffs, creates pull requests, inspects CI checks, and merges from a single interface.
  • Works with local projects or remote machines over SSH and SFTP.
  • Ships native desktop builds: brew install --cask emdash on macOS, an MSI and portable EXE on Windows, and AppImage, DEB, and RPM packages for Linux on x64 and ARM64.

Who uses it and how

  • Individual developers exploring several candidate fixes for one bug at a time, keeping each attempt on its own branch and merging only the version that holds up.
  • Teams whose work originates in Linear, Jira, GitHub, or GitLab issues, who push tickets into an agent rather than restating the problem in a prompt.
  • Developers running agents against their own remote machines over SSH/SFTP, keeping heavy work off the local laptop.
  • Anyone already committed to a particular CLI agent who wants a dashboard over it instead of changing tools, since Emdash uses the providers already installed.
  • Contributors and maintainers on a repository that sees regular activity — the project carries roughly 5,757 stars, 594 forks, and 95 open issues, and its commits are current.

Getting started

Install the desktop build for the platform in use — on macOS, brew install --cask emdash, with DMG, MSI, AppImage, DEB, and RPM builds published on the releases page. Documentation and provider setup live at emdash.sh/docs.

How it compares

Emdash stands alone in this registry: the facts provided name no paid products it replaces and no directly comparable alternative, so no head-to-head contrast can honestly be drawn. The tools named alongside it — Claude Code, Codex, Cursor, and the rest — are providers it hosts rather than competitors, and the closest point of comparison a reader can act on is the Apache-2.0 licence, which permits inspection, modification, and self-directed use.

When to use it — and when not to

Choose Emdash if the work already involves CLI coding agents, Git, and a tracker, and the friction is coordination rather than capability. Skip it if the workflow is a single agent on a single branch on one machine, since the worktree isolation and dashboard add nothing there, or if a browser-based or centrally hosted tool is required — Emdash is a per-machine desktop app, and the documentation for provider setup and hooks sits off-site at emdash.sh/docs rather than in the repository itself. Note also that the actual behaviour of each agent comes from the CLI installed on the host, so Emdash cannot be evaluated independently of those providers.

project readme (upstream, from github) — read inline
Emdash

Download · Docs · Releases · Discord · Contributing


Apache 2.0 License Downloads GitHub Stars Last Commit Commit Activity

Discord Y Combinator W26 Follow @emdashsh on X

Emdash is a desktop app for running AI coding agents in parallel. Each task runs in its own Git worktree, so you can explore multiple fixes or features at once, review the diffs, and merge what works.

It works with local projects and remote machines over SSH. Bring the CLI agents you already use: Claude Code, Codex, OpenCode, Amp, and more.

Emdash product screenshot

What You Can Do

  • Run multiple coding agents at once without juggling terminals.
  • Keep every agent isolated in its own Git worktree and branch.
  • Send issues and tickets from Linear, GitHub, Jira, GitLab, Asana, Featurebase, Monday.com, Forgejo, or Plain into an agent.
  • Review diffs, create pull requests, inspect CI checks, and merge from one place.
  • Work locally or on your own remote machines over SSH/SFTP.

A Poem for Parallel Exploration

Multiple paths wind through the forest deep,
Each trail diverging where the wild things creep,
Isolated journeys through the woods they roam,
Discoveries blooming far away from home.

What thrives persists, what withers falls away,
Parallel futures guide us day by day,
Merge the best pathways where the sunlight flows,
A symphony of nature where the river goes.

Installation

Platform Install
macOS brew install --cask emdash · Apple Silicon · Intel
Windows Installer · Portable
Linux x64 AppImage · DEB · RPM
Linux ARM64 AppImage · DEB · RPM

See the latest release for all desktop builds.

Agents

Emdash detects installed provider CLIs automatically. It supports agents like Claude Code, Codex, Cursor, OpenCode, Amp, Devin, Qwen Code, Droid, and GitHub Copilot.

For agents with lifecycle-hook support, Emdash installs marker-tagged entries in the agent's user-level config. These hooks let Emdash track status, notifications, and resumable sessions, and silently do nothing when the agent runs outside an Emdash session.

See Providers for the full list, setup commands, and provider-specific behavior.

Remote Projects

Connect to remote machines with SSH/SFTP and run the same parallel workflow on remote codebases. Emdash supports SSH agent, key, and password authentication, with credentials stored in your OS keychain.

See Remote Projects for setup details.

Privacy

Emdash is local-first. App state is stored in a local SQLite database, and Emdash does not send your code or chats to Emdash servers.

Agent CLIs may send code, prompts, and context to their own providers. Their data handling depends on the provider you choose.

Telemetry is optional and can be disabled in Settings or by launching with:

TELEMETRY_ENABLED=false

See Telemetry for details.

Contributing

Contributions are welcome. Read the Contributing Guide, open an issue, or join the Discord.

License

Licensed under the Apache-2.0 license.

Frequently asked questions

Is Emdash free to use?

Emdash is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Emdash do?

Dashboard for running multiple coding agents in parallel

What is Emdash written in?

Emdash is primarily written in TypeScript. Its source is publicly available at https://github.com/generalaction/emdash, and it has 5,763 GitHub stars.