完整实现 Swarm 多智能体协作系统
- 新增 CLIPluginAdapter 统一接口 (backend/app/core/agent_adapter.py) - 新增 LLM 服务层,支持 Anthropic/OpenAI/DeepSeek/Ollama (backend/app/services/llm_service.py) - 新增 Agent 执行引擎,支持文件锁自动管理 (backend/app/services/agent_executor.py) - 新增 NativeLLMAgent 原生 LLM 适配器 (backend/app/adapters/native_llm_agent.py) - 新增进程管理器 (backend/app/services/process_manager.py) - 新增 Agent 控制 API (backend/app/routers/agents_control.py) - 新增 WebSocket 实时通信 (backend/app/routers/websocket.py) - 更新前端 AgentsPage,支持启动/停止 Agent - 测试通过:Agent 启动、批量操作、栅栏同步 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1
.doc/cache/file_locks.json
vendored
Normal file
1
.doc/cache/file_locks.json
vendored
Normal file
@@ -0,0 +1 @@
|
||||
{}
|
||||
51
.doc/cache/heartbeats.json
vendored
Normal file
51
.doc/cache/heartbeats.json
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"claude-001": {
|
||||
"agent_id": "claude-001",
|
||||
"last_heartbeat": "2026-03-05T10:31:09.197892",
|
||||
"status": "idle",
|
||||
"current_task": "",
|
||||
"progress": 100
|
||||
},
|
||||
"kimi-002": {
|
||||
"agent_id": "kimi-002",
|
||||
"last_heartbeat": "2026-03-05T10:16:03.435209",
|
||||
"status": "waiting",
|
||||
"current_task": "waiting for meeting",
|
||||
"progress": 0
|
||||
},
|
||||
"agent-001": {
|
||||
"agent_id": "agent-001",
|
||||
"last_heartbeat": "2026-03-09T09:28:05.259883",
|
||||
"status": "working",
|
||||
"current_task": "测试任务",
|
||||
"progress": 50
|
||||
},
|
||||
"test-001": {
|
||||
"agent_id": "test-001",
|
||||
"last_heartbeat": "2026-03-09T17:23:02.120192",
|
||||
"status": "offline",
|
||||
"current_task": "",
|
||||
"progress": 0
|
||||
},
|
||||
"arch-001": {
|
||||
"agent_id": "arch-001",
|
||||
"last_heartbeat": "2026-03-09T17:23:43.464396",
|
||||
"status": "waiting",
|
||||
"current_task": "等待会议: meeting-002",
|
||||
"progress": 0
|
||||
},
|
||||
"dev-001": {
|
||||
"agent_id": "dev-001",
|
||||
"last_heartbeat": "2026-03-09T17:23:43.476403",
|
||||
"status": "waiting",
|
||||
"current_task": "等待会议: meeting-002",
|
||||
"progress": 0
|
||||
},
|
||||
"qa-001": {
|
||||
"agent_id": "qa-001",
|
||||
"last_heartbeat": "2026-03-09T17:23:43.485633",
|
||||
"status": "waiting",
|
||||
"current_task": "等待会议: meeting-002",
|
||||
"progress": 0
|
||||
}
|
||||
}
|
||||
84
.doc/cache/meeting_queue.json
vendored
Normal file
84
.doc/cache/meeting_queue.json
vendored
Normal file
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"design-review": {
|
||||
"meeting_id": "design-review",
|
||||
"title": "Design Review",
|
||||
"expected_attendees": [
|
||||
"claude-001",
|
||||
"kimi-002",
|
||||
"opencode-003"
|
||||
],
|
||||
"arrived_attendees": [
|
||||
"claude-001",
|
||||
"kimi-002",
|
||||
"opencode-003"
|
||||
],
|
||||
"status": "waiting",
|
||||
"created_at": "2026-03-05T10:18:10.717613",
|
||||
"started_at": "",
|
||||
"min_required": 3
|
||||
},
|
||||
"quick-test": {
|
||||
"meeting_id": "quick-test",
|
||||
"title": "Quick Test",
|
||||
"expected_attendees": [
|
||||
"agent-1"
|
||||
],
|
||||
"arrived_attendees": [
|
||||
"agent-1"
|
||||
],
|
||||
"status": "ready",
|
||||
"created_at": "2026-03-05T10:23:53.403438",
|
||||
"started_at": "2026-03-05T10:23:53.430888",
|
||||
"min_required": 1
|
||||
},
|
||||
"test-meeting-001": {
|
||||
"meeting_id": "test-meeting-001",
|
||||
"title": "测试会议",
|
||||
"expected_attendees": [
|
||||
"agent-001",
|
||||
"agent-002"
|
||||
],
|
||||
"arrived_attendees": [
|
||||
"agent-001",
|
||||
"agent-002"
|
||||
],
|
||||
"status": "ended",
|
||||
"created_at": "2026-03-09T09:28:05.309297",
|
||||
"started_at": "2026-03-09T09:28:05.357846",
|
||||
"min_required": 2
|
||||
},
|
||||
"meeting-001": {
|
||||
"meeting_id": "meeting-001",
|
||||
"title": "项目设计讨论",
|
||||
"expected_attendees": [
|
||||
"arch-001",
|
||||
"dev-001",
|
||||
"qa-001"
|
||||
],
|
||||
"arrived_attendees": [
|
||||
"arch-001"
|
||||
],
|
||||
"status": "waiting",
|
||||
"created_at": "2026-03-09T17:23:17.393649",
|
||||
"started_at": "",
|
||||
"min_required": 3
|
||||
},
|
||||
"meeting-002": {
|
||||
"meeting_id": "meeting-002",
|
||||
"title": "测试会议",
|
||||
"expected_attendees": [
|
||||
"arch-001",
|
||||
"dev-001",
|
||||
"qa-001"
|
||||
],
|
||||
"arrived_attendees": [
|
||||
"arch-001",
|
||||
"dev-001",
|
||||
"qa-001"
|
||||
],
|
||||
"status": "ready",
|
||||
"created_at": "2026-03-09T17:23:43.445453",
|
||||
"started_at": "2026-03-09T17:23:43.501216",
|
||||
"min_required": 3
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user