Agent Network
Multi-Agent group chat collaboration system inspired by DingTalk/Lark. Enables AI agents to chat in groups, @mention each other, assign tasks, make decisions via voting, and collaborate. Use when building multi-agent systems that need structured communication, task delegation, decision making, or group coordination.
技能说明
name: agent-network description: Multi-Agent group chat collaboration system inspired by DingTalk/Lark. Enables AI agents to chat in groups, @mention each other, assign tasks, make decisions via voting, and collaborate. Use when building multi-agent systems that need structured communication, task delegation, decision making, or group coordination.
Agent Network - Multi-Agent Collaboration System
A complete multi-agent group chat and collaboration platform that allows AI agents to communicate, coordinate, and collaborate in a structured environment similar to enterprise chat platforms like DingTalk or Lark.
What This Skill Provides
- Group Chat System - Multiple agents can chat in groups with message history
- @Mentions - Agents can @mention each other to trigger notifications
- Task Management - Create, assign, track, and complete tasks
- Decision Voting - Propose decisions and vote (for/against/abstain)
- Inbox Notifications - Unread message tracking and notification center
- Online Status - Real-time agent online/offline status
- Central Coordinator - Message routing and agent lifecycle management
Quick Start
from agent_network import AgentManager, GroupManager, MessageManager, TaskManager, DecisionManager, get_coordinator
# Initialize default agents
from agent_network import init_default_agents
init_default_agents()
# Get the coordinator
coordinator = get_coordinator()
# Register agents
coordinator.register_agent(agent_id=1)
coordinator.register_agent(agent_id=2)
# Create a group
group = GroupManager.create("Dev Team", owner_id=1, description="Development team chat")
GroupManager.add_member(group.id, agent_id=2)
# Send a message with @mention
MessageManager.send_message(
from_agent_id=1,
content="@小邢 Please check the server status",
group_id=group.id
)
# Assign a task
task = TaskManager.create(
title="Fix login bug",
assigner_id=1,
assignee_id=2,
description="Users can't login with SSO",
priority="high"
)
# Create a decision
decision = DecisionManager.create(
title="Adopt new database?",
description="Should we migrate to distributed database?",
proposer_id=1,
group_id=group.id
)
# Vote on decision
DecisionManager.vote(decision.id, agent_id=2, vote="for", comment="Agreed, better performance")
Core Components
1. Agent Management (agent_manager.py)
Register and manage agents with online/offline status:
from agent_network import AgentManager
# Register new agent
agent = AgentManager.register("NewAgent", "Developer", "Backend specialist")
# Set status
AgentManager.go_online(agent.id)
AgentManager.go_offline(agent.id)
# Get online agents
online = AgentManager.get_online_agents()
2. Group Management (group_manager.py)
Create groups and manage membership:
from agent_network import GroupManager
# Create group
group = GroupManager.create("Project Alpha", owner_id=1)
# Add members
GroupManager.add_member(group.id, agent_id=2)
GroupManager.add_member(group.id, agent_id=3)
# List members
members = GroupManager.get_members(group.id)
online_members = GroupManager.list_online_members(group.id)
3. Message System (message_manager.py)
Send messages with @mention support:
from agent_network import MessageManager
# Send message
msg = MessageManager.send_message(
from_agent_id=1,
content="Hello team!",
group_id=1
)
# @mention automatically detected
msg = MessageManager.send_message(
from_agent_id=1,
content="@Alice @Bob Please review this",
group_id=1
)
# Get message history
messages = MessageManager.get_group_messages(group_id=1, limit=50)
# Search messages
results = MessageManager.search_messages("keyword", group_id=1)
# Get unread count
unread = MessageManager.get_unread_count(agent_id=1)
inbox = MessageManager.get_agent_inbox(agent_id=1, only_unread=True)
4. Task Management (task_manager.py)
Full task lifecycle:
from agent_network import TaskManager
# Create task
task = TaskManager.create(
title="Implement API",
assigner_id=1,
assignee_id=2,
description="Build REST endpoints",
priority="high", # low/normal/high/urgent
due_date="2026-02-15"
)
# Update status
TaskManager.start_task(task.id, agent_id=2)
TaskManager.complete_task(task.id, agent_id=2, result="All tests passed")
# Add comments
TaskManager.add_comment(task.id, agent_id=2, "50% complete")
# List tasks
all_tasks = TaskManager.get_all()
my_tasks = TaskManager.get_agent_tasks(agent_id=2, status="pending")
5. Decision Voting (decision_manager.py)
Collaborative decision making:
from agent_network import DecisionManager
# Create proposal
decision = DecisionManager.create(
title="Use microservices?",
description="Should we refactor to microservices?",
proposer_id=1,
group_id=1
)
# Vote
DecisionManager.vote(decision.id, agent_id=2, vote="for", comment="Better scalability")
DecisionManager.vote(decision.id, agent_id=3, vote="against")
# Update status
DecisionManager.update_status(decision.id, "approved", updater_id=1)
# Check results
decision = DecisionManager.get_by_id(decision.id)
print(f"Pass rate: {decision.pass_rate}%")
6. Central Coordinator (coordinator.py)
High-level coordination with automatic message routing:
from agent_network import get_coordinator
coord = get_coordinator()
# Register with message handler
def my_handler(msg_dict):
print(f"Received: {msg_dict['content']}")
coord.register_agent(agent_id=1, message_handler=my_handler)
# Send through coordinator (auto-routes to handlers)
coord.send_message(from_agent_id=1, content="Hello", group_id=1)
# Task coordination
task = coord.assign_task(
title="Deploy app",
description="Deploy to production",
assigner_id=1,
assignee_id=2
)
# Decision coordination
decision = coord.propose_decision(
title="Release v2.0?",
description="Ready for release?",
proposer_id=1
)
coord.vote_decision(decision['id'], agent_id=2, vote="for")
CLI Usage
Interactive CLI for testing:
# Run demo
python demo.py
# Interactive CLI
python cli.py
# Commands in CLI:
# - Select agent to login
# - Enter groups to chat
# - Type /task to create tasks
# - Type /decision to create votes
# - Type @AgentName to mention
Default Agents
Six pre-configured agents:
| Agent | Role | Description |
|---|---|---|
| 老邢 (Lao Xing) | Manager | Overall coordination |
| 小邢 (Xiao Xing) | DevOps | Development and operations |
| 小金 (Xiao Jin) | Finance Analyst | Market analysis |
| 小陈 (Xiao Chen) | Trader | Trading execution |
| 小影 (Xiao Ying) | Designer | Design and content |
| 小视频 (Xiao Shipin) | Video | Video production |
Database Schema
SQLite database with tables:
agents- Agent profiles and statusgroups- Group definitionsgroup_members- Membership relationsmessages- Chat messages with typestasks- Task trackingtask_comments- Task discussionsdecisions- Decision proposalsdecision_votes- Voting recordsagent_inbox- Notification inbox
Integration with OpenClaw
Use with sessions_spawn for true multi-agent workflows:
# When a task is assigned, spawn a sub-agent
if new_task:
sessions_spawn(
agentId="xiaoxing",
task=new_task.description,
label=f"task-{new_task.task_id}"
)
Files Reference
scripts/agent_network/- Python modules__init__.py- Package exportsdatabase.py- SQLite managementagent_manager.py- Agent CRUDgroup_manager.py- Group managementmessage_manager.py- Messaging systemtask_manager.py- Task managementdecision_manager.py- Voting systemcoordinator.py- Central coordinator
scripts/cli.py- Interactive CLIscripts/demo.py- Demo scriptreferences/schema.sql- Database schemaassets/- Templates (optional)
Advanced Usage
See references/ADVANCED.md for:
- Custom agent handlers
- Webhook integrations
- Message filtering
- Custom workflows
如何使用「Agent Network」?
- 打开小龙虾AI(Web 或 iOS App)
- 点击上方「立即使用」按钮,或在对话框中输入任务描述
- 小龙虾AI 会自动匹配并调用「Agent Network」技能完成任务
- 结果即时呈现,支持继续对话优化