如果你同时开着 ChatGPT、Claude Code、Codex,还有几个本地 AI 项目在来回切窗口,Ekko Studio 补的就是这一层。
一句话说清它是什么
Ekko Studio 是 Hermes Agent 的桌面应用 + 本地运行时 + Web 控制台。Agent 对话、可视化工作流、模型和 Profile 管理、网页浏览、编码 Agent、本地运行环境——全在一个界面里完成。
先把名字理清楚,省得你找错包:
| 你看到的 | 实际是什么 |
|---|---|
GitHub 仓库 EKKOLearnAI/hermes-studio | 源码仓库 |
| Ekko Studio | 桌面安装包的产品名(Windows / macOS / Linux) |
hermes-web-ui | npm 包名,也是 Web 版 CLI 命令 |
hermes-studio 命令 | 桌面版装好后给自己加的 wrapper |
项目在 GitHub 上 10.5k star、1.3k fork,BSL-1.1 许可。

五个核心模块
| 模块 | 能做什么 |
|---|---|
| Agent 聊天 | 跑 Hermes Agent 对话,流式回复、工具调用轨迹、生成文件预览、本地持久化会话、桌面独立聊天窗口 |
| 本地控制台 | 一个仪表盘管 Profile、Provider、模型、凭证、记忆、技能、插件、日志和运行时设置 |
| 自动化 | 可视化工作流 + 平台渠道 + Cron + Kanban + 群聊房间 + MCP Server,共用同一套 Profile 配置 |
| 工作区工具 | 文件浏览器、Web 终端、桌面 Agent 浏览器、语音输入输出、Coding Agent、设备发现、学习轨迹 |
| 分发形态 | 桌面应用、npm CLI 包、Docker 镜像 |
值得单独拎出来讲的几个能力
1. 十个平台渠道,一张页面配完
Telegram、Discord、Slack、WhatsApp、Matrix、飞书、钉钉、QQBot、微信、企业微信。
- 凭证写进
~/.hermes/.env,渠道行为写进~/.hermes/config.yaml - 每个平台直接显示"已配置 / 未配置"
- 微信是浏览器扫码登录,登录后自动保存凭证
2. 可视化工作流:真能跑的那种
基于 Vue Flow 的画布,节点支持 Hermes、Codex、Claude Code,可以挂文件/图片附件。
画布支持有向连线、结构化条件、成功/失败路由、循环和审批门;有运行预算和截止时间,能停止、重跑、看持久化的执行历史。最实用的是执行回放:冻结的运行快照、节点对话、路径选择、执行证据都能在画布上重看一遍。
3. 模型管理:凭证池直接变成可选列表
- 从
~/.hermes/auth.json自动发现模型 - 从每个 Provider 的
/v1/models拉可用模型 - 添加、更新、删除 Provider(预设 + 自定义 OpenAI 兼容)
- 支持 OpenAI Codex、Nous Portal、xAI、Claude、GitHub Copilot 的 OAuth / 设备授权
- Provider URL 自动识别非 v1 版本(比如
/v4) - Provider 级模型分组、可见性控制、别名、默认模型切换
- STT 和 TTS 单独管理,不再挤在设置页里
4. 多 Profile:一个账号管几套身份
创建、重命名、切换、克隆、导出 .tar.gz 备份、从归档导入。配置、缓存、上传、会话、任务、用量、记忆、技能、插件、Provider 可见性——全部按 Profile 隔离。超级管理员管全部分身,普通管理员只能看分配给自己的。
5. Coding Agents:把 Claude Code / Codex 收进仪表盘
安装、配置、启动、监控都在一个页面里,带内置终端、会话历史、工作区选择、图片输入和文件 Diff。每个编码对话可以单独指定 provider/model(scoped 模式),也能走全局路由。
我本地就是在这个页面里把 Codex 和 DeepSeek Harness(@deepseek-ai/dsh) 装上的。
6. 桌面 Agent 浏览器
桌面端多标签浏览器,Agent 通过托管的 MCP Server 自己导航、点击,支持可访问性快照、截图、控制台日志和页面标注。带隔离 Profile、标签控制租约、代理、下载、Cookie 和权限管理。
7. 技能与记忆 + 学习轨迹
浏览搜索已装技能、看技能详情和附件、装 Skill Bundles、按 Profile 看技能使用统计;用户笔记和持久记忆分开管;学习轨迹关系图能把技能和记忆的关系画出来。
8. 用量、日志、MCP 管理器
Token 用量(输入 / 输出)、会话数与日均、预估费用和缓存命中率、模型使用分布、30 天趋势;Agent / Server / Error 三类日志按级别和关键词过滤;MCP 管理器管托管的 hermes-studio Server 和 api / browser / devices / use 四个工具集。
怎么装:三条路
方式一:桌面应用(推荐)
去 GitHub Releases 下对应系统的安装包,Windows 有独立的 x64 版本。装完 Hermes 数据仍然保存到原生目录:
Windows: %LOCALAPPDATA%\hermes
macOS/Linux: ~/.hermes
桌面壳自己的状态另外放在 ~/.hermes-web-ui,跟你的 Hermes 配置互不覆盖。
方式二:npm
npm install -g hermes-web-ui
hermes-web-ui start
# 打开 http://localhost:8648
方式三:Docker Compose
WEBUI_IMAGE=ekkoye8888/hermes-web-ui docker compose up -d
# 打开 http://localhost:6060
# Hermes 数据目录:./hermes_data
# 认证 token:./hermes_data/hermes-web-ui/.token
装好桌面版后,它会给你几个 wrapper 命令,避免跟内置 CLI 打架:
hermes-studio # 打开桌面应用
hermes-studio cli ... # 运行内置 Hermes Agent CLI
hermes-studio web ... # 运行内置 hermes-web-ui 命令
hermes-studio-mcp api # 运行指定的托管 MCP 工具集
装完之后我注意到的四个细节
一、它不动你的 Hermes 家底。 Hermes 的配置和数据还在 %LOCALAPPDATA%\hermes,Studio 自己的库、日志、会话库、上传目录在 ~/.hermes-web-ui。你原来调好的 provider、凭证池、技能全都直接可见,等于换了个方向盘,没换发动机。
二、它会自动往 Hermes 配置里注入四个 MCP 工具集。 装完桌面版,config.yaml 里会多出 ekko-studio-api、ekko-studio-browser、ekko-studio-devices、ekko-studio-use 四个 MCP server,指向 Ekko Studio.exe 以 node 模式启动。也就是说你的 Agent 自己多出一组操作控制台的能力。不想让它自动注入,设一个 HERMES_WEB_UI_DISABLE_MCP_AUTOINJECT 就行。
三、端口和登录。 README 里 PORT 默认写的是 8648,桌面版在我这台机器上起在 127.0.0.1:8748。默认账号 admin / 123456,登录后会提示尽快改;API token 落在 ~/.hermes-web-ui/.token。
四、Coding Agent 的 scoped 模式很好用。 每个编码对话能单独绑一套 provider + 模型,跟主界面的模型选择互不干扰。我直接把 Codex 挂到自建的 OpenAI 兼容反代上跑通了一轮,会话记录 120 多条。

踩坑记录:DSH 装上但一聊天就报错
这是我碰到的唯一一个硬坑,值得单独写。
现象:DeepSeek Harness 装完,在 Coding Agents 里新建对话,发任何一句话都返回:
Error: DSH ACP: Internal error
排查:日志里每次 DSH 运行都在 2 秒内 run.failed,说明 ACP 握手阶段就挂了。真实原因有两层——
- DSH 的
studio.patch.yml里硬编码了provider: ekko-studio,LLM 请求要走http://127.0.0.1:8748/api/codex-proxy/<base64-token>/v1。这个代理 token 一旦失效,就返回Invalid Codex proxy token。 - 更麻烦的是每次新建 DSH 对话,Studio 都会重新生成一遍
studio.patch.yml,你在 UI 上改的模型设置会被 patch 文件盖掉——于是就有了"我明明改了模型,怎么还报错"。
三条修复路径,从省事到治本:
| 顺序 | 做法 | 说明 |
|---|---|---|
| 1 | 完全退出 Ekko Studio(含后台进程)再启动 | 刷新 codex-proxy token,最快 |
| 2 | 删掉 DSH 的 run 目录再重启 | ~/.hermes-web-ui/coding-agent/model/<profile>/<provider>/dsh/runs/* |
| 3 | 改 @deepseek-ai/dsh-acp-app 包里的 provider 配置 | 治本,但会被 DSH 更新覆盖 |
结论:DSH 本身的安装没问题,卡点在 Studio 侧的代理 token 和自动生成的 patch 覆盖。同样从这个入口进去的 Codex 是能正常跑的,所以这不是"不能用",而是 DSH 这条链路还没磨合好。这类问题在早期版本里很常见,好在排查路径清楚,不用重装。
谁该装
建议装:
- 同时用多个 Agent(Hermes、Codex、Claude Code),需要一个统一入口
- 要给 Agent 配多渠道(Telegram / 微信 / 飞书 / 钉钉)
- 想在画布上编排多步工作流,并且留下可回看的执行证据
- 手上有几套模型 provider 和凭证,需要可视化管理和用量统计
可以先不装:
- 只用一个 CLI Agent、在终端里跑得很顺
- 完全不需要图形界面、用量统计和多人协作
总结
| 维度 | 情况 |
|---|---|
| 定位 | Hermes Agent 的桌面应用 + 本地运行时 + Web 控制台 |
| 热度 | 10.5k star / 1.3k fork,BSL-1.1 |
| 平台 | Windows 有独立 x64 安装包;macOS / Linux 也有构建 |
| 亮点 | 可视化工作流(Hermes / Codex / Claude Code 节点)、10 平台渠道、多 Profile 隔离、Coding Agents 集成、用量分析 |
| 门槛 | 桌面版最低,装完即用;npm / Docker 适合放服务器 |
| 已知坑 | DSH 走 codex-proxy 时的 token 失效 + patch 自动覆盖 |
| 数据 | 复用原有 Hermes 配置,数据不搬家,会话存本地 SQLite |
一个桌面壳把 Agent、模型、渠道、工作流、编码助手全收进来,这件事本身比任何单点功能都更值得试。
中国 AI 的位置:中美顶级模型差距约 2.7%(斯坦福 HAI 2026),论文和专利数量全球第一,工业机器人装机量是美国的 9 倍;差得最多的是投资,比例约 23:1。工具层的这种开源桌面包,恰恰是差距最小、迭代最快的一块。
如果觉得有帮助,点个「赞」和「在看」支持一下 👇