agent-fleet/openspec/changes/agent-fleet-platform/proposal.md
Zer4tul aabd52ed52 init: OpenSpec project scaffolding with proposal, design, specs, tasks
- 7 capabilities: agent-registry, task-router, receipt-protocol,
  forgejo-integration, matrix-chatops, agent-adapter, orchestrator-core
- Tech stack: Rust + axum + zigbuild (single binary)
- Forgejo as task source of truth
- Matrix as real-time ChatOps layer
- Adapter pattern for multi-agent type support
2026-05-11 14:37:43 +08:00

37 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Why
多台机器上运行着不同类型的 AI AgentOpenClaw、Claude Code、Codex、Hermes Agent 等目前缺乏统一的跨机任务编排与协同机制。Agent 之间只能靠人工传递上下文,无法自动分发任务、追踪进度、回写结果。需要一个 **agent-fleet platform**,让任意类型的 Agent 通过统一的协议加入舰队,接收任务、汇报状态、协同完成复杂工程。
## What Changes
- **引入 Git 仓库Forgejo作为任务事实来源**Issue = 任务单元PR = 交付物Label/Milestone = 分类与排期
- **引入实时协同层**Matrix 作为 ChatOps 通道Agent 状态变更、任务分配、完成通知等通过 Matrix 房间实时推送
- **建立 Agent Registry**:每台机器上的 Agent 启动时向 Registry 注册(类型、能力、负载),支持动态发现与路由
- **建立 Task Router**Orchestrator 根据 Issue 类型、Agent 能力、负载状态,自动将任务路由到合适的 Agent
- **建立结构化 Receipt 协议**Agent 完成工作后回写结构化 receiptIssue comment / PR / Matrix 通知),系统不信任模型口头声明
- **支持多 Agent 类型**OpenClaw、Claude Code、Codex CLI、Hermes Agent、任意 ACP-compatible agent只要能读写 Git repo 并发 Matrix 消息即可加入
- **支持 hooks/webhook**Forgejo webhook → 路由到编排层 → 触发 Agent 执行
## Capabilities
### New Capabilities
- `agent-registry`: Agent 注册、心跳、能力声明、动态发现。每台机器上的 Agent 启动时注册自身类型、hostname、能力标签、当前负载Orchestrator 据此做任务路由
- `task-router`: 任务解析与分发。从 Forgejo Issue/PR 事件中解析任务需求,匹配 Agent 能力与负载,生成执行指令并投递
- `receipt-protocol`: 结构化完成回执。Agent 完成工作后必须回写结构化 receiptIssue comment / PR / Matrix 通知),系统据此判定完成状态,不依赖模型口头声明
- `forgejo-integration`: 与 Forgejo 的双向集成。监听 Issue/PR webhook 事件Agent 执行完成后回写 comment、创建 PR、更新 label/milestone
- `matrix-chatops`: Matrix 实时协同层。Agent 状态变更、任务分配、完成通知、人类审批等通过 Matrix 房间流转;支持 slash command 触发编排操作
- `agent-adapter`: 多类型 Agent 适配层。定义统一 adapter 接口,各类型 AgentOpenClaw、Claude Code、Codex CLI、Hermes Agent、ACP agent实现自己的 adapter接入统一编排
- `orchestrator-core`: 编排核心。管理任务生命周期created → assigned → running → completed/failed调度 Agent处理超时/重试/升级,维护全局状态
### Modified Capabilities
(初始项目,无既有 capability 需修改)
## Impact
- **新系统**:需要部署 Forgejo 实例 + Matrix homeserver或复用现有
- **网络**:各机器需要能访问 Forgejo APIHTTP、Matrix federationHTTPS、Orchestrator APIHTTP/WebSocket
- **Agent 端**:每种 Agent 需要实现 adapter最小要求能读 Git repo、能调用 Forgejo API 写 comment/PR、能发 Matrix 消息
- **依赖**ForgejoGit + Issue + PR + webhook、Matrix实时消息、Node.js/PythonOrchestrator runtime
- **运维**:需要 monitor Agent 心跳、任务超时、Forgejo webhook 健康检查