Emdash:并行 AI 编码代理桌面端
并行运行多个 AI 编码代理,每个任务隔离在独立 Git worktree 中,从一处审阅并合并。
- Star 数
- ★ 6k
- 最近更新
- 1 天前
- License
- Apache-2.0
- 主语言
- TypeScript
- FA 评分
- 45/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台ChatGPT · Codex · Claude Code
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 一名全栈开发者需要同时尝试两个不同的 bug 修复方案,不希望手动切换 Git 分支或终端。
- 不适合
- 需要无界面/服务器端运行的团队,Emdash 只能作为桌面客户端安装
- 不愿在每台机器上单独配置各代理 CLI 与 API 凭据的用户
- 低配机器上想同时跑多个代理的人,并行运行会明显占用资源
- 源码审查
- 45/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Emdash 是一款桌面应用,专为并行运行多个 AI 编码代理而设计,解决终端切换与任务冲突问题。它利用 Git worktree 为每个任务创建独立的工作副本和分支,使您能同时探索多个修复或功能,审阅差异并合并满意的结果。该工具支持本地项目以及通过 SSH 连接的远程机器,兼容 Claude Code、Codex、OpenCode、Amp 等命令行代理。Emdash 能从 Linear、GitHub、Jira、GitLab 等平台导入 issue 和工单,并在单一界面完成差异审阅、创建 PR、查看 CI 状态与合并操作。应用采用本地优先模式,状态存储于本地 SQLite 数据库,不上传代码或对话至自有服务器。它支持 macOS、Windows、Linux 三平台,采用 Apache-2.0 许可证。
Emdash 提供图形界面以管理并行 AI 编码代理生命周期。它自动检测已安装的代理 CLI,包括 Claude Code、Codex、Cursor、OpenCode 等,并为每个任务创建独立的 Git worktree 和分支,确保隔离工作。用户可将来自 Linear、GitHub、Jira、GitLab 等系统的 issue 导入为任务,随后在统一界面查看各代理的差异输出、创建 Pull Request、检查 CI 结果并执行合并。远程项目通过 SSH/SFTP 连接,支持三种认证方式(SSH agent、密钥、密码)。应用状态持久化在本地 SQLite 数据库中,可选遥测功能可通过环境变量 TELEMETRY_ENABLED=false 或设置菜单关闭。
- 一名全栈开发者需要同时尝试两个不同的 bug 修复方案,不希望手动切换 Git 分支或终端。
- 技术负责人希望将 Linear 上的多个 issue 自动分配给不同的编码代理并行实现,并统一审阅生成的 PR。
- 远程团队的成员维护一个部署在云端虚拟机上的代码库,希望通过 SSH 在远程环境运行并行代理,免去本地同步。
- 一位独立开发者使用 Claude Code 进行日常编码,但希望同时测试 Codex 和 OpenCode 对该任务的响应,以对比选择最佳实现。
- 一个开源项目维护者需要快速评估来自多个贡献者的不同功能实现,通过 Emdash 并行为每个功能运行代理,并审阅各自的差异。
如何安装或部署这个 Agent?
Emdash 提供各平台安装方式:macOS 使用 brew install --cask emdash 或下载 .dmg 文件;Windows 下载 .msi 或便携 .exe;Linux 下载 AppImage 或 .deb 包。所有安装包均通过 GitHub Releases 提供。
如何使用这个 Agent?
安装后启动 Emdash,它会自动检测系统已安装的代理 CLI(如 Claude Code、Codex)。创建任务时选择目标代理,并可从 Linear、GitHub 等导入 issue。每个任务运行于独立 Git worktree,您可在界面中查看差异、创建 PR、检查 CI 并合并。远程项目需通过 SSH/SFTP 添加,支持三种认证方式。如要禁用遥测,请设置环境变量 TELEMETRY_ENABLED=false。
这个 Agent 有哪些优点和局限?
- 并行运行多个代理,每个任务独立 Git worktree,避免分支冲突,大幅提升探索效率。
- 集成多款主流编码代理(Claude Code、Codex、OpenCode 等),无需学习新代理,沿用已有工具。
- 支持从 Linear、GitHub、Jira 等直接导入 issue,衔接现有项目管理工作流。
- 提供本地或 SSH 远程项目的统一管理,审阅差异、PR、CI 和合并操作一站式完成。
- 本地优先架构,数据保留在本地 SQLite,不上传代码或聊天记录,隐私保护性强。
- 作为桌面应用,需要安装对应操作系统客户端,无法直接在无图形界面的服务器环境使用。
- 依赖用户已安装的代理 CLI(如 Claude Code、Codex),自身不提供基础模型,需分别配置各代理的 API 凭据。
- 并行运行多个代理可能消耗大量计算资源,在某些低配机器上可能卡顿。
- 远程项目依赖 SSH/SFTP,需要额外配置网络和认证,可能受防火墙或网络策略限制。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Emdash:并行 AI 编码代理桌面端 当前 | 45 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 6k | 1 天前 | TypeScript | ChatGPT · Codex · Claude Code |
| Cezar — AI 编码代理编排器 | 63 · 存在缺口 | 命令行工具免费 | ★ 722 | 今天 | TypeScript | Codex · Claude Code |
| Vicoa | 52 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 519 | 8 天前 | Python | Codex · Claude Code |
| Maestro:AI 代理编曲指挥中心 | 43 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 3.5k | 今天 | TypeScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:README 声明本地优先、数据存储在本地 SQLite、遥测可选且可禁用,但未提供代码级验证。扣分:未提供权限最小化、用户确认、敏感数据处理的具体实现细节;依赖安全仅列出构建依赖,无安全审计;外部影响(如 SSH 连接、Git 操作)未明确说明用户确认机制;回滚仅提及 Git worktree,未说明应用级回滚;来源归属仅提及 General Action, Inc.,但发布者未验证。
证据显示:存在多个数据库迁移测试,表明内部一致性;但依赖可用性未验证,失败消息未在源码中体现。扣分:依赖可用性仅依赖包管理器,无冗余或镜像;失败消息未在提供的文件中展示。
证据显示:README 描述了多种使用场景(本地、远程、多代理),支持多种代理和平台;能力边界在文档中提及,但未详细说明;触发精度未明确;环境适配涵盖 macOS、Windows、Linux。扣分:触发精度未在源码中体现;能力边界仅文档断言,无代码验证。
证据显示:README 结构清晰,包含安装、使用、隐私等章节;安装说明详细;许可证为 Apache-2.0;但命名稳定性、示例/FAQ、已知限制、版本变更日志、维护责任未充分体现。扣分:命名稳定性未在源码中体现;示例和 FAQ 仅链接外部文档;已知限制未列出;版本变更日志未提供;维护责任仅提及贡献指南,无明确维护者。
证据显示:输出可用性通过 diff 审查、PR 创建等功能体现;边际价值在于并行代理和集成;成本效益未量化。扣分:成本效益未提供定价或资源消耗信息。
证据显示:README 中的声明部分可追溯至文档链接,但未提供代码级验证;跨来源佐证不足;事实与推断未明确区分。扣分:声明多基于文档,无独立验证;事实与推断混合。
- 发布者身份未验证,需谨慎对待。
- 依赖安全未审计,存在供应链风险。
- 远程 SSH 和 Git 操作可能带来外部影响,需确认用户确认机制。
- 遥测虽可禁用,但默认状态未明确。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
This release adds language intelligence to the editor, subscription usage meters, and YouTrack integration. It also brings diff comments to chat and improves file browsing, agent status, and desktop integration. Highlights - The editor adds hover information, definitions, type definitions, references, and diagnostics for local and SSH workspaces. JavaScript, TypeScript, and Python language servers are bundled; additional servers support Bash, Go, Rust, C/C++, JSON, YAML, HTML, and CSS dialects. Language service status and restart controls are available in the file tab menu. …在 GitHub 查看 ↗ -
发布说明摘录
This release remembers agent settings across tasks, adds native provider controls to the chat composer, and improves session recovery. It also makes update downloads, project opening, and conversation navigation more reliable. Highlights - Chat remembers your model, effort, access mode, and other provider settings across tasks and projects, with separate preferences for each agent and machine. New automations inherit these preferences and retain their own saved settings for scheduled runs. …在 GitHub 查看 ↗