# Donmai：开源多智能体工作流运行时，让本地AI代理舰队自主运行

> Donmai是RenseiAI开源的多智能体工作流运行时，支持在本地机器上运行、重试和审计多步骤代理任务。它采用三进程架构（编排器-调度器-工作器），提供完整的CLI工具链，支持Linear集成、日志分析和 fleet 管理。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-06-13T20:15:35.000Z
- 最近活动: 2026-06-13T20:20:32.868Z
- 热度: 163.9
- 关键词: AI代理, 工作流运行时, 多智能体系统, LLM编排, 开源工具, Go语言, Linear集成, 任务调度, 代理舰队管理, 本地AI基础设施
- 页面链接: https://www.zingnex.cn/forum/thread/donmai-ai
- Canonical: https://www.zingnex.cn/forum/thread/donmai-ai
- Markdown 来源: ingested_event

---

## 原作者与来源

- 原作者/维护者：RenseiAI
- 来源平台：github
- 原始标题：donmai
- 原始链接：https://github.com/RenseiAI/donmai
- 来源发布时间/更新时间：2026-06-13T20:15:35Z

## 项目背景与定位

随着大型语言模型（LLM）能力的不断提升，AI代理（Agent）正在从实验性工具逐步演变为生产级的基础设施。然而，在本地环境中管理和编排多个代理任务仍然是一个复杂的问题：如何确保任务可靠执行？如何处理失败和重试？如何监控代理舰队的健康状态？

Donmai正是为解决这些问题而生的开源工作流运行时。它由RenseiAI团队开发，采用MIT许可证，是Rensei生产环境所使用的同款二进制文件。Donmai将多智能体编排、任务调度、日志审计等功能整合到一个统一的CLI工具中，让用户能够在自己的机器上构建和运行可靠的AI代理工作流。

## 核心架构：三进程模型

Donmai的设计遵循清晰的责任分离原则，采用经典的三进程协作模型：

### 编排器（Orchestrator）

编排器是整个工作流的入口点，负责从外部系统（如Linear issue tracker）获取待处理任务，并将它们分派到内部工作队列。它不直接执行代理任务，而是专注于任务调度和分发。在SaaS环境中，编排器可以被平台级的Webhook驱动控制平面替代；在开源模式下，用户可以按需运行编排器或设置定时任务（cron job）来自动化处理积压的工作项。

### 调度器（Governor）

调度器是一个长期运行的扫描循环进程，持续监视Redis工作队列中的待处理任务。它负责强制执行并发限制，并在有可用容量时启动工作器进程来消费队列中的任务。调度器是OSS模式下保持工作器运行的核心组件，相当于SaaS模式中的协调服务（coordinator service）。

### 工作器（Worker）

工作器是实际执行代理任务的进程。每个工作器启动后会向协调器注册，通过HTTP轮询获取分配的任务，然后执行对应的会话（调用Claude、Codex等LLM运行时），最后将结果报告回协调器。多个工作器可以并行运行，由调度器控制并发上限。

```
┌──────────────────────────────────────────────────────────────────┐
│                        your machine                              │
│                                                                  │
│  ┌─────────────────┐    ┌─────────────────┐   ┌──────────────┐  │
│  │   orchestrator  │───▶│    governor     │──▶│   worker(s)  │  │
│  │  (donmai orche- │    │  (donmai govr.) │   │ (donmai wkr) │  │
│  │   ator)         │    │                 │   │              │  │
│  └─────────────────┘    └─────────────────┘   └──────────────┘  │
│           │                      │                    │          │
│     Linear API             Redis queue         coordinator HTTP  │
└──────────────────────────────────────────────────────────────────┘
```

## 守护进程（Daemon）：持久化服务层

除了三进程模型外，Donmai还提供了一个本地守护进程（`rensei-daemon`），作为系统服务运行（macOS上使用launchd，Linux上使用systemd）。守护进程具有以下关键特性：

- **持久化**：系统重启后自动恢复运行
- **工作区池管理**：维护代理会话的工作区池
- **自动更新**：支持带排空语义（drain semantics）的自动更新
- **健康检查**：提供`donmai daemon doctor`命令进行配置、凭证和磁盘空间检查

守护进程通过`donmai daemon install`命令安装，支持用户级（--user）或系统级（--system）安装。安装后会自动配置系统服务，确保Donmai在后台稳定运行。

## 命令体系与功能全景

Donmai提供了丰富的CLI命令，覆盖从开发调试到生产运维的全生命周期：

### 核心状态与监控

- `donmai status`：打印舰队级状态快照，支持JSON输出
- `donmai agent list`：列出所有代理会话
- `donmai agent status <session-id>`：查看特定会话状态
- `donmai agent chat <session-id>`：向运行中的代理转发提示词

### 会话管理

- `donmai session list`：按状态筛选会话
- `donmai session inspect <session-id>`：查看会话详情
- `donmai session stream <session-id>`：实时跟踪会话活动流
- `donmai session restore-workarea <session-id>`：恢复工作区到指定目录

### 守护进程操作

守护进程命令提供了完整的生命周期管理：

- `donmai daemon install/uninstall`：安装或移除系统服务
- `donmai daemon start/stop/restart`：控制守护进程运行状态
- `donmai daemon pause/resume`：暂停或恢复接受新工作
- `donmai daemon drain`：等待进行中会话完成后停止
- `donmai daemon update`：强制拉取最新版本
- `donmai daemon logs`：跟踪守护进程日志
- `donmai daemon set <key> <value>`：修改配置项（如`capacity.maxConcurrentSessions`）

### 编排器与任务调度

- `donmai orchestrator --project <name>`：从Linear项目分派任务
- `donmai orchestrator --single <issue-id>`：处理单个指定issue
- `donmai orchestrator --project <name> --dry-run`：预览模式，不实际分派
- `donmai orchestrator --project <name> --max 5`：限制并发分派数量

### 日志分析

Donmai内置了智能日志分析功能，可以检测失败模式并可选地自动创建Linear issue：

- `donmai logs analyze --input /path/to/agent.log`：分析代理日志
- 支持管道输入：`cat agent.log | donmai logs analyze`
- 内置签名目录覆盖：工具误用、沙盒权限错误、审批阻塞、速率限制、环境故障等
- 支持通过`~/.config/af/log-signatures.yaml`自定义或扩展签名目录

### 代码与架构辅助

- `donmai code`：代码生成和重构辅助
- `donmai arch`：架构设计和文档生成
- `donmai linear`：Linear issue tracker集成
- `donmai github`：GitHub仓库操作

## 安装与快速开始

Donmai提供多种安装方式，适应不同用户需求：

### Homebrew（推荐）

```bash
brew install RenseiAI/homebrew-tap/donmai
```

### Go安装（需要Go 1.25+）

```bash
go install github.com/RenseiAI/donmai/cmd/donmai@latest
```

### 预构建二进制文件

GitHub Releases页面提供macOS（arm64、amd64）和Linux（arm64、amd64）的预构建二进制文件。

### 快速开始流程

```bash
# 1. 设置Linear API密钥
export LINEAR_API_KEY=lin_api_...

# 2. 安装并启动本地守护进程
donmai daemon install
donmai daemon status

# 3. 从Linear积压任务中选取并分派代理
donmai orchestrator --project MyProject

# 4. 监控舰队活动
donmai status
donmai agent list

# 5. 分析代理日志
donmai logs analyze --input ~/.rensei/logs/agent.log
```

## 凭证管理与安全

在独立模式（standalone OSS mode）下运行Donmai时，代理会从Donmai进程继承凭证。凭证来源按以下优先级顺序解析：

1. Donmai进程中已存在的环境变量
2. 工作目录根目录下的`.env.local`文件

第一个定义变量的来源将获胜。`.env.local`在Donmai启动时只读取一次，且不会被复制到工作树中。某些敏感变量（如守护进程自己的认证令牌）会被阻止转发，无论来源如何。

对于希望使用1Password等密码管理器而非平面文件存储密钥的用户，Donmai提供可选的`op` CLI集成（运行`donmai creds setup`获取设置向导）。

## 技术实现与生态集成

Donmai采用Go语言编写，充分利用了Go在并发处理、跨平台部署和静态二进制分发方面的优势。项目结构清晰，包含以下主要模块：

- **afcli**：CLI命令实现
- **afclient**：客户端库
- **afview**：视图层
- **agent**：代理核心逻辑
- **daemon**：守护进程实现
- **runner**：任务运行器
- **runtime**：运行时环境
- **worker**：工作器实现
- **prompt**：提示词模板
- **templates**：任务模板

Donmai与多个外部系统深度集成：

- **Linear**：作为主要的issue tracker和任务来源
- **GitHub**：代码仓库操作和PR管理
- **Redis**：工作队列和状态存储
- **LLM运行时**：Claude、Codex等

## 开源治理与贡献

Donmai采用MIT许可证，是RenseiAI对开源社区的重要贡献。项目目前处于alpha阶段，API和命令标志正在稳定中。

项目维护者提供了详细的贡献指南（CONTRIBUTING.md）和发布流程文档（RELEASING.md），确保社区贡献能够顺利集成。P1-SPEC.md文件包含了详细的技术规范，为深入理解系统架构提供了参考。

## 应用场景与实践意义

Donmai适合以下场景：

1. **本地AI代理开发**：开发者可以在本地机器上构建和测试多智能体工作流，无需依赖云服务
2. **小型团队自动化**：团队可以使用Donmai编排器自动处理Linear积压任务，提高开发效率
3. **代理舰队管理**：需要同时运行多个AI代理并监控其健康状态的场景
4. **任务审计与合规**：Donmai的完整日志记录和审计功能满足企业级合规要求
5. **边缘计算部署**：静态二进制文件和最小依赖使Donmai适合在边缘设备上部署

## 总结与展望

Donmai代表了AI代理基础设施向生产就绪方向演进的重要一步。它将多智能体编排、任务调度、日志审计等功能整合到一个统一的开源工具中，既保留了本地部署的灵活性和隐私性，又提供了企业级的可靠性和可观测性。

随着AI代理在软件开发、运维自动化、数据分析等领域的应用越来越广泛，像Donmai这样的工作流运行时将成为连接LLM能力与实际业务需求的关键桥梁。对于希望在自己的基础设施上构建AI代理系统的开发者和团队来说，Donmai提供了一个值得深入探索的解决方案。
