OpenAgents 是一个开源的协作操作系统,专为AI Agent提供统一的工作空间管理、多Agent协调和网络集成能力。它的设计灵感来自操作系统概念——将每个Agent视为"进程",通过统一调度器分配资源,通过消息总线实现Agent间通信。开发者可以在OpenAgents上构建自主Agent、对话Agent、工具Agent等多种类型,并让它们协作完成复杂任务。
对于想要了解Agent工作空间管理的开发者,推荐阅读 HolaOS Agent工作空间教程 了解另一种工作空间架构。
| 模块 | 功能描述 | 技术实现 |
|---|---|---|
| Agent Runtime | Agent生命周期管理 | 沙箱隔离、资源限制、状态追踪 |
| Message Bus | Agent间异步通信 | 发布订阅模式、事件驱动 |
| Scheduler | Agent调度与并发控制 | 优先级队列、公平调度 |
| Workspace | 共享文件与状态空间 | 虚拟文件系统、权限控制 |
| Tool Registry | 工具注册与发现 | 动态加载、能力声明 |
| Network Layer | 外部API与Web集成 | HTTP/gRPC、认证代理 |
| Observer | 运行时可观测性 | 日志聚合、指标采集、追踪 |
通过npm或Docker快速部署OpenAgents:
# 方式一:npm安装
npm install -g @openagents/cli
openagents init my-agent-workspace
cd my-agent-workspace
openagents start
# 方式二:Docker部署
docker pull openagents/server:latest
docker run -d -p 3000:3000 \
-e AGENT_MAX_CONCURRENT=10 \
-e WORKSPACE_DIR=/data \
-v ./data:/data \
openagents/server:latest
# 方式三:源码编译
git clone https://github.com/openagents-org/openagents.git
cd openagents
npm install
npm run build
npm run dev
以下展示如何创建多个协作Agent完成内容生产任务:
// agents/researcher.ts
import { Agent, Tool } from "@openagents/core";
const webSearch: Tool = {
name: "webSearch",
description: "搜索网络获取信息",
schema: { query: "string", maxResults: "number?" },
handler: async (input) => {
const results = await fetch(
`https://api.search.io/q=${input.query}`
).then(r => r.json());
return results.items.slice(0, input.maxResults || 5);
},
};
export const researcher = new Agent({
name: "researcher",
description: "研究Agent,负责信息检索和事实核查",
model: "gpt-4",
tools: [webSearch],
systemPrompt: "你是研究助手,提供准确、有来源的信息",
});
// agents/writer.ts - 写作Agent
export const writer = new Agent({
name: "writer",
description: "写作Agent,基于研究结果生成内容",
model: "claude-3-opus",
systemPrompt: "你是专业写手,将研究要点转化为流畅文章",
});
// agents/orchestrator.ts - 编排Agent
export const pipeline = new Agent({
name: "content-pipeline",
description: "协调研究和写作Agent的内容生产管线",
agents: [researcher, writer],
workflow: async (topic) => {
const research = await researcher.run({ input: topic });
const article = await writer.run({
input: `基于以下研究写文章:\n${research.output}`,
});
return { topic, research, article };
},
});
// 启动
pipeline.run({ input: "2026年AI Agent发展趋势" });
| 特性 | OpenAgents | OpenFang | HolaOS |
|---|---|---|---|
| 架构模型 | OS式(进程/调度) | 插件式 | 工作空间式 |
| Agent通信 | 消息总线 | 直接调用 | 共享内存 |
| 沙箱隔离 | 原生支持 | 部分 | 有限 |
| 多模型支持 | OpenAI/Claude/Gemini | OpenAI为主 | 多模型 |
| 部署方式 | Docker/NPM | Docker | 本地/Docker |
| 适用规模 | 中小型团队 | 个人/小团队 | 个人 |
OpenAgents 是一个开源的协作操作系统,专为AI Agent提供统一的工作空间管理、多Agent协调和网络集成能力。它的设计灵感来自操作系统概念——将每个Agent视为"进程",通过统一调度器分配资源,通过消息总线实现Agent间通信。开发者可以在OpenAgents上构建自主Agent、对话Agent、工具A