DeepSeek Harness+herdr 多路复用,调用多个Agent
-
dsh (DeepSeek Harness):这是由深度求索(DeepSeek)公司开发的一个开源AI Agent(人工智能智能体)基础框架。它的核心理念是“万物皆插件”,开发者可以通过组合不同的“profile”、“bundle”和“patch”来高度定制化自己的工作流。你可以把它看作一个用于组装和运行AI Agent的“操作系统”或“乐高平台”。
-
herdr:这是一个终端(命令行)里的AI Agent“多路复用器”(Multiplexer)。它的作用像“AI版的tmux”,让你能在一个终端窗口里同时运行和管理多个AI编程Agent(比如 Claude Code、OpenCode)。它的特点是会话会持久化在服务器端,你断开连接后,Agent们仍在后台运行,之后可以从任何设备(甚至通过SSH)重新连接上去。
简单来说:
- dsh 关注的是 “如何构建和扩展AI Agent的能力”。
- herdr 关注的是 “如何在操作层面同时运行和管理多个AI Agent”。
结合搜索到的社区生态来看,确实有开发者社区在为dsh开发各种桌面客户端(如dsh-ui)和插件市场,也有项目(如pi-herdr-sidetrack)展示了如何在herdr的环境中管理不同的AI会话。
因此,“dsh-herdr”可能是在描述一个使用 herdr 来运行和管理多个 dsh 实例或基于 dsh 构建的Agent的技术组合场景。
如果你想深入了解这两个项目,可以访问它们的官网或GitHub仓库:
- dsh:GitHub上的
deepseek-ai/deepseek-harness - herdr:官网 herdr.dev
根据官方文档和社区信息,herdr 的安装和使用都比较直观,主要分为安装、启动和基础操作三步。它支持 Linux、macOS,Windows 目前还是预览版。
💾 安装
你可以根据你的系统和包管理器选择最方便的一种方式:
- macOS/Linux (推荐):使用官方安装脚本,这也是最通用的方法。
curl -fsSL https://herdr.dev/install.sh | sh - macOS (使用 Homebrew):如果你在使用 Homebrew,这是最简洁的方式。
brew install herdr - Windows (预览版):使用 PowerShell 脚本进行安装。
powershell -ExecutionPolicy Bypass -c "irm https://herdr.dev/install.ps1 | iex" - 其他方法:
mise用户可以使用mise use -g herdr安装;Nix用户可以使用其提供的 flake 从源码构建。
▶️ 启动
安装完成后,使用非常简单。在你的项目目录下,直接运行 herdr 命令就可以启动它:
herdr
⌨️ 基础操作
herdr 的快捷键和功能类似 tmux,但它专为 AI 智能体(Agent)设计。
- 核心快捷键:默认使用
Ctrl+b作为前缀键。先按下Ctrl+b并释放,再按功能键。Ctrl+b→q:分离 (Detach)。让所有 Agent 在后台继续运行,然后你可以关闭终端。之后再次运行herdr即可重新连接。Ctrl+b→c:创建新标签页 (Tab)。Ctrl+b→v或-:垂直或水平分屏 (Split panes)。Ctrl+b→?:查看所有快捷键。
🌟 核心功能与状态管理
herdr 最大的特色是能直观地展示每个 AI 编程助手(如 Claude Code, Codex 等)的运行状态。
-
一目了然的状态:在每个面板(Pane)旁边,你会看到代表不同状态的颜色标记,让你一眼就能知道谁在忙、谁卡住了。
- 🔴 Blocked (阻塞):Agent 需要你的输入或操作。
- 🟡 Working (工作中):Agent 正在思考或编辑代码。
- 🔵 Done (完成):Agent 已完成当前任务。
- 🟢 Idle (空闲):面板已打开,但没有活跃的 Agent。
-
和你的 AI 智能体并肩工作:启动 herdr 后,在任意面板(Pane)中直接运行你习惯的 AI 编程助手命令即可,herdr 会自动识别它。例如,在一个面板中运行
claude,在另一个面板中运行codex,herdr 会分别管理它们的状态。
💡 进阶使用与特性
- 后台常驻:这是 herdr 非常实用的功能。正如前面提到的,按下
Ctrl+b→q分离会话后,所有 Agent 会在后台服务器中持续运行,即使你断开网络或关闭电脑,它们也不会停止。 - 可编写脚本 (Scriptable):herdr 提供了 Socket API 和 CLI,高级用户可以让 Agent 自己调用 herdr 来新建面板或与其他 Agent 协作。
如果想了解更详细的配置或特定功能,可以查阅其官方文档 herdr.dev/docs。
Multiplexer(多路复用器) 这个概念源自电子工程和通信领域,但在计算机科学中被赋予了更广泛和强大的含义。为了让你更清楚地理解,我把它分成三个层次来解释:
1. 最底层的物理概念(字面意思)
在硬件和数字电路中,多路复用器(MUX) 是一个组合逻辑电路。它的核心功能是:从多个输入信号中选择一个,并通过单个输出线路发送出去。
- 类比:就像一个手动旋转的开关。你有 8 条不同的水管(输入)和 1 条总水管(输出),你拧动旋钮,选择让哪一条水管的水流到总管道里。
- 作用:节省物理线路资源,用一条线传输多路信号。
2. 中级抽象(通信和网络)
在网络通信中,多路复用是指将多个独立的会话或数据流,合并成一条单一的物理链路进行传输,并在接收端再分拆开来。
- 例子:你的电脑同时打开浏览器看视频、开着微信聊天、后台还运行着系统更新。这三个程序的数据包在网卡上被复用成一条比特流发送给路由器,路由器再把它们解复用,分别发给视频服务器、微信服务器和更新服务器。
- 作用:提高资源利用率,让一个通道同时服务多个连接。
3. 软件和终端领域(你和 herdr 相关的概念)
在命令行(CLI)和现代 AI 工具语境下,Multiplexer(通常指“终端多路复用器”,Terminal Multiplexer) 指的是在一个单一的终端窗口(SSH 会话)中,同时运行、切换和管理多个独立的子会话(进程)的工具。
这是你理解 herdr 的关键。它不再是“选择一条路”,而是**“在一个房间里隔出多个独立的隔间,让多个工人同时工作,并且你可以在隔间之间自由走动,互相观察”**。
在这种语境下的核心能力:
- 会话持久化(最核心):启动一个多路复用器(如
tmux、screen或herdr),你运行的程序会挂载在一个**守护进程(后台服务)**上。即使你关闭了终端窗口、断开 SSH 连接甚至电脑断网,里面的程序(比如正在训练的 AI 模型或长时间的代码生成)依然在服务器后台照常运行。等你重新连接,界面和进度完全恢复。 - 分屏(Pane/Tab):在一个终端窗口里,你可以横向或纵向切割出多个小窗口。左边运行
herdr管理 AI,右边运行vim改代码,下面运行top查看性能,全部显示在同一屏幕。 - 进程分组:你可以把一组相关的任务放进一个 Session(会话)里,命名后随时切换。
4. 为什么 herdr 要强调自己是“AI Agent 多路复用器”?
传统的多路复用器(如 tmux)只管“运行进程”,它看不懂进程在干嘛,它只知道进程在跑还是死掉了。
而 herdr 作为“AI 多路复用器” 的升级之处在于:
- 传统的 MUX 是“盲人”,但 herdr 会监听 AI Agent 的标准输出(stdout)。
- 它能通过分析 AI 的输出日志,理解这个 AI 当前是卡住了(Blocked/红色)、正在疯狂写代码(Working/黄色)、还是已结束(Done/蓝色)。
- 它让你像导演一样,在一个屏幕上同时盯着多个 AI 演员(Claude Code, Codex 等)的实时状态,谁卡住了就切过去帮一把,谁完成了就切过去看成果。
一句话总结:
如果说 dsh(DeepSeek Harness) 是在教 AI 如何“思考和调用工具”,那么 herdr 就是一个隔音玻璃房,让你能把多个 AI 关在里面同时工作,而你坐在外面透过玻璃(状态指示灯)监控它们的进度,随时推门进去干预。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)