subagent(子代理)使用与定义说明
2026年3月29日 下午9:53:32
Subagent(子代理)是 SolonCode 的核心能力,支持将复杂任务委派给具备特定专业技能的专家代理(可以串行,或并行),实现"让专业的人做专业的事"或者“同时多人干活”。
1、核心架构
┌─────────────────────────────────────────────────────────┐
│ 用户交互入口 │
│ ↓ │
│ 主代理 (ReActAgent) │
│ - 接收指令、分析任务 │
│ - 任务分解、委派调度 │
│ - 结果汇总、响应输出 │
└─────────────────────────────────────────────────────────┘
│
┌─────────────┼───────────────────┐
↓ ↓ ↓
┌────────────┐ ┌─────────────────┐ ┌──────────┐
│ Architect │ │ Development │ │ Tester │
└────────────┘ └─────────────────┘ └──────────┘
工作流程:
用户指令 → 主代理分析 → 任务分解 → 子代理执行 → 结果汇总 → 响应用户
2、预置的几个子代理
子代理存放位置:
~/.soloncode/agents/全局子代理配置.soloncoce/agents/工作区子代理配置
预置的几个子代理:(通过资源文件自带,可补同名替换)
| 子代理 | 描述 | 工具权限 |
|---|---|---|
bash | 命令执行子代理 | ["list", "read", "bash"] |
explore | 全域信息探索专家 | ["list", "read", "grep", "glob", "skill", "webfetch", "websearch", "codesearch"] |
general | 通用全能子代理 | ["*"] |
plan | 规划与计划子代理 | ["list", "read", "grep", "glob", "skill", "webfetch", "websearch", "codesearch"] |
子代理的定义示例(general.md):
---
name: "general"
description: "通用全能子代理。可以处理任何问题(其它子代理不能用时,优先选我!)"
tools: ["*"]
---
您是一位全能型执行专家(尤其尚长使用 **专家技能** 解决问题)。
输出规范:
- 专业克制:逻辑高度严密,严禁使用表情符号。
- 最终交付物:提供完整的、逻辑严密的解决方案。
3、什么时候会触发子代理?
以 explore 为例,(可能的)触发分析说明:
| 任务示例 | 是否触发(较大可能) |
|---|---|
简单分析下这个项目:/data/demo1/ | 不会 |
用子代理,简单分析下这个项目:/data/demo1/ | 会 |
深度分析下这个项目:/data/demo1/ | 会 |
不要用子代理,深度分析下这个项目:/data/demo1/ | 不会 |
4、什么时候分触发 agent-team ?
使用 agent-team 时,如果现有的子代理满足需要。一般会触发 generate_agent 动态他是建子代理。
(由自然语言控制)任务示例:
我想开发一个经典的权限管理系统(项目名为 demo1-web,里面再建两个目录分为前端与后端),后端基于 solon v3.10.0,java8,前端基于 vue3 开发,界面要清爽好看。
先帮我设计一个 agent team (至少要有架构师,前端开发,后端开发,测试员四个角色,如果有需要每个模块可以安排一个角色并行开发,当然架构师要把好关)分工去做这个事,团队设计案保存为 demo1-team.md(经常要看下,避免忘记)。
然后驱动团队去完成开发,单元测试,界面测试(用无头浏览器去测试)。
全好了后,运行起来,让我检查效果。
或者自己编写团队配置文件(例:demo-team.md,提示词要求使用这个团队文件即可):
# Demo 项目团队配置
## 成员定义
### architect(架构师)
职责:系统架构、数据库设计、API 规范
输出:架构文档、数据库设计、API 文档
### backend-dev(后端开发)
职责:Solon 后端开发、JWT 认证、ORM 操作
技术:Solon v3.10.0、wood-solon-plugin、Java 8
### frontend-dev(前端开发)
职责:Vue3 界面开发、Element Plus 组件
技术:Vue3、Pinia、Vue Router、Axios
### tester(测试工程师)
职责:单元测试、集成测试
技术:JUnit5、Vitest、Playwright
## 协作模式
Phase 1(串行): architect 设计
Phase 2(并行): backend-dev + frontend-dev 开发
Phase 3(串行): tester 测试