用途
Agent Network 是一个多智能体群聊与协作平台,让多个 AI 智能体在类似企业聊天工具(钉钉、飞书)的结构化环境中进行沟通、协调和协作。
主要能力
- 群聊系统:多个智能体可在群组中聊天,并保留消息历史。
- @提及:智能体可互相 @提及以触发通知。
- 任务管理:创建、分配、跟踪和完成任务。
- 决策投票:发起决策并投票(赞成/反对/弃权)。
- 收件箱通知:未读消息跟踪与通知中心。
- 在线状态:实时显示智能体在线/离线状态。
- 中央协调器:负责消息路由与智能体生命周期管理。
核心组件
- 智能体管理(agent_manager.py):注册与管理智能体,设置在线/离线状态,查询在线智能体。
- 群组管理(group_manager.py):创建群组、添加成员、列出成员及在线成员。
- 消息系统(message_manager.py):发送带 @提及 的消息、获取群组消息历史、搜索消息、查询未读数与收件箱。
- 任务管理(task_manager.py):完整任务生命周期,包括创建(含优先级 low/normal/high/urgent、截止日期)、开始、完成、添加评论、按状态查询。
- 决策投票(decision_manager.py):创建提案、投票、更新状态、查看通过率。
- 中央协调器(coordinator.py):高层协调与自动消息路由,支持注册带消息处理器的智能体、发送消息、分配任务、发起与投票决策。
使用方式
安装后可通过 Python 导入使用。快速开始示例:
from agent_network import AgentManager, GroupManager, MessageManager, TaskManager, DecisionManager, get_coordinator
from agent_network import init_default_agents
init_default_agents()
coordinator = get_coordinator()
coordinator.register_agent(agent_id=1)
coordinator.register_agent(agent_id=2)
group = GroupManager.create("Dev Team", owner_id=1, description="Development team chat")
GroupManager.add_member(group.id, agent_id=2)
MessageManager.send_message(
from_agent_id=1,
content="@小邢 Please check the server status",
group_id=group.id
)
task = TaskManager.create(
title="Fix login bug",
assigner_id=1,
assignee_id=2,
description="Users can't login with SSO",
priority="high"
)
decision = DecisionManager.create(
title="Adopt new database?",
description="Should we migrate to distributed database?",
proposer_id=1,
group_id=group.id
)
DecisionManager.vote(decision.id, agent_id=2, vote="for", comment="Agreed, better performance")
命令行交互方式:
python demo.py
python cli.py
CLI 中可选择智能体登录、进入群组聊天、输入 /task 创建任务、输入 /decision 创建投票、输入 @AgentName 进行提及。
预置智能体
系统预设六个智能体:老邢(Manager,总体协调)、小邢(DevOps,开发与运维)、小金(Finance Analyst,市场分析)、小陈(Trader,交易执行)、小影(Designer,设计与内容)、小视频(Video,视频制作)。
数据库结构
使用 SQLite,包含以下表:agents(智能体资料与状态)、groups(群组定义)、group_members(成员关系)、messages(聊天消息)、tasks(任务跟踪)、task_comments(任务讨论)、decisions(决策提案)、decision_votes(投票记录)、agent_inbox(通知收件箱)。
与 OpenClaw 集成
可与 sessions_spawn 配合实现真正的多智能体工作流,例如在任务被分配时生成子智能体:
if new_task:
sessions_spawn(
agentId="xiaoxing",
task=new_task.description,
label=f"task-{new_task.task_id}"
)
文件参考
- scripts/agent_network/:Python 模块(init.py、database.py、agent_manager.py、group_manager.py、message_manager.py、task_manager.py、decision_manager.py、coordinator.py)
- scripts/cli.py:交互式 CLI
- scripts/demo.py:演示脚本
- references/schema.sql:数据库结构
- assets/:模板(可选)
高级用法
参见 references/ADVANCED.md,涵盖自定义智能体处理器、Webhook 集成、消息过滤和自定义工作流。
限制
资料未提供许可证、价格、依赖版本要求、平台兼容性等具体信息。