agent-Specialization/static
JOJO 811974d6e7 feat(multi-agent): 在现有架构上直接实现多智能体模式实验功能
放弃完全隔离策略,改为在现有 MainTerminal/SubAgentManager/SubAgentTask 主链路
按对话级开关 metadata.multi_agent_mode=true 增加多智能体分支。

新增模块:
- modules/multi_agent/__init__.py: 模块入口
- modules/multi_agent/role_store.py: 角色 Markdown Frontmatter 解析与归档
- modules/multi_agent/state.py: 多智能体会话状态机与消息格式化
- modules/multi_agent/prompts.py: 主智能体(Team Leader) + 子智能体提示词
- modules/multi_agent/tools.py: 9 个主智能体工具 + 4 个子智能体工具定义
- server/multi_agent.py: /multiagent/new 页面 + /api/multiagent/* 蓝图

现有代码改动:
- modules/sub_agent/task.py: 扩展 multi_agent_mode/multi_agent_state/display_name 字段,
  增加 ask_master/ask_other_agent/answer_other_agent/list_active_sub_agents 工具处理逻辑,
  子智能体自然结束 assistant 输出即本轮结束(不调用 finish_task),上下文保留。
- modules/sub_agent/manager.py: create_sub_agent 增加 multi_agent_mode/role_id/display_name 参数,
  增加 get_or_create_multi_agent_state/get_multi_agent_state/inject_message_to_sub_agent/_on_multi_agent_task_done 方法。
- core/main_terminal_parts/tools_definition/agent_tools.py: 多智能体模式下用 modules.multi_agent.tools 替换旧版工具集。
- core/main_terminal_parts/context/messages.py: 多智能体模式下追加 Team Leader 系统提示词。
- core/main_terminal_parts/tools_execution.py: create_sub_agent handler 增加多智能体分支,新增 send_message_to_sub_agent/ask_sub_agent/answer_sub_agent_question/create_custom_agent/list_agents/list_active_sub_agents handler。
- core/web_terminal.py: load_conversation 时检测 metadata.multi_agent_mode 设置 self.multi_agent_mode。
- server/app_legacy.py: 注册 multi_agent_bp 蓝图。

前端改动:
- static/src/auth/LoginApp.vue: 登录页增加'多智能体模式(beta)'按钮
- static/src/app/methods/ui/route.ts: 识别 /multiagent/new 和 /multiagent/conv_xxx 路径,进入多智能体模式并创建带 metadata.multi_agent_mode=true 的对话
- static/src/app/state.ts: 增加 multiAgentMode 状态字段

数据:
- ~/.astrion/astrion/host/mutiagents/agents/: 4 个预置角色 ui-operator / full-stack-engineer / code-reviewer / researcher
- ~/.astrion/astrion/host/mutiagents/conversations/: 会话数据

验证:所有 Python 文件语法检查通过;冒烟测试 test.test_server_refactor_smoke 6 项全通过;前端构建通过(6.04s);模块导入与功能断言测试全部通过。
2026-07-12 03:26:02 +08:00
..
admin_api feat: add api admin ui and container status fix 2026-01-25 10:49:52 +08:00
admin_dashboard fix: repair admin monitor auth and add invite CRUD 2026-04-07 18:23:09 +08:00
admin_policy feat: polish admin policy UI and tool selection 2026-01-05 13:34:00 +08:00
custom_tools feat: add custom tools guide and id validation 2026-01-05 21:46:55 +08:00
demo feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
easter-eggs feat: modularize easter egg effects 2025-11-22 13:07:54 +08:00
file_manager chore: snapshot before usage menu update 2025-11-24 00:47:17 +08:00
icons Add fold/expand and hover actions to user message bubbles 2026-06-28 00:15:07 +08:00
liquid-glass-demo feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
logo feat: 整合test/agents功能并更新配置 2026-04-13 17:47:19 +08:00
old_version_backup feat: modularize frontend layout 2025-11-25 22:41:15 +08:00
src feat(multi-agent): 在现有架构上直接实现多智能体模式实验功能 2026-07-12 03:26:02 +08:00
vendor chore: initial import 2025-11-14 16:44:12 +08:00
debug-theme.html chore: snapshot current changes 2026-03-10 23:48:40 +08:00
index.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
liquid-glass-demo.html feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
liquid-glass-kube.html feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
login.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
mobile-overlay-demo.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
mobile-overlay-fab.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
register.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
resource_busy.html feat: containerize terminals and add resource controls 2025-11-23 18:49:35 +08:00
security.js chore: snapshot before usage menu update 2025-11-24 00:47:17 +08:00
style.css chore: drop legacy css fallback 2025-11-25 21:15:32 +08:00
terminal.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
voice_test.html feat: 添加语音输入按钮,位于发送按钮左侧 2026-06-08 14:14:19 +08:00