@Preview(value="3.8.1") public abstract class TeamProtocolBase extends java.lang.Object implements TeamProtocol
核心职责:提供拓扑构建工具、Prompt 结构化封装、以及 SOP 执行完备性检查。
| 限定符和类型 | 字段和说明 |
|---|---|
protected TeamAgentConfig |
config |
| 构造器和说明 |
|---|
TeamProtocolBase(TeamAgentConfig config) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected java.util.List<java.lang.String> |
getCandidateAgents(TeamTrace trace)
获取持有 Profile 定义的候选 Agent 列表
|
void |
injectAgentInstruction(org.noear.solon.flow.FlowContext context,
Agent agent,
java.util.Locale locale,
java.lang.StringBuilder sb)
注入 Agent 行为约束指令(定义角色规范)
|
void |
injectSupervisorInstruction(java.util.Locale locale,
java.lang.StringBuilder sb)
注入 Supervisor 静态系统指令(定义全局调度准则)
|
protected boolean |
isLastNAgentsParticipated(TeamTrace trace,
int n)
检查末尾 N 个 Agent 是否已参与协作
|
protected boolean |
isLogicFinished(TeamTrace trace)
SOP 完备性检查:默认保护最后一位 Agent 必须参与过(防止跳步)
|
protected void |
linkAgents(org.noear.solon.flow.NodeSpec ns)
自动构建 Flow 节点间的动态链接
|
java.lang.String |
resolveSupervisorRoute(org.noear.solon.flow.FlowContext context,
TeamTrace trace,
java.lang.String decision)
解析路由目标(将决策文本语义化为节点 ID)
|
boolean |
shouldSupervisorRoute(org.noear.solon.flow.FlowContext context,
TeamTrace trace,
java.lang.String decision)
路由守卫:拦截过早的结束信号,确保流程满足 SOP 完备性
|
protected org.noear.snack4.ONode |
sniffJson(java.lang.String content)
从文本内容中提取第一个 JSON 对象(常用于解析结构化输出)
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbuildGraph, injectAgentTools, injectSupervisorTools, name, onAgentEnd, onSupervisorRouting, onTeamFinished, prepareAgentPrompt, prepareSupervisorContext, prepareSupervisorInstruction, resolveAgentOutput, shouldSupervisorExecuteprotected final TeamAgentConfig config
public TeamProtocolBase(TeamAgentConfig config)
protected void linkAgents(org.noear.solon.flow.NodeSpec ns)
protected org.noear.snack4.ONode sniffJson(java.lang.String content)
protected java.util.List<java.lang.String> getCandidateAgents(TeamTrace trace)
protected boolean isLogicFinished(TeamTrace trace)
protected boolean isLastNAgentsParticipated(TeamTrace trace, int n)
public void injectAgentInstruction(org.noear.solon.flow.FlowContext context,
Agent agent,
java.util.Locale locale,
java.lang.StringBuilder sb)
TeamProtocolinjectAgentInstruction 在接口中 TeamProtocolpublic boolean shouldSupervisorRoute(org.noear.solon.flow.FlowContext context,
TeamTrace trace,
java.lang.String decision)
shouldSupervisorRoute 在接口中 TeamProtocolpublic void injectSupervisorInstruction(java.util.Locale locale,
java.lang.StringBuilder sb)
TeamProtocolinjectSupervisorInstruction 在接口中 TeamProtocolpublic java.lang.String resolveSupervisorRoute(org.noear.solon.flow.FlowContext context,
TeamTrace trace,
java.lang.String decision)
TeamProtocolresolveSupervisorRoute 在接口中 TeamProtocol