@Preview(value="3.8.1") public class TeamTrace extends java.lang.Object implements AgentTrace
核心职责:记录任务在 Agent 团队内部流转的全生命周期状态,充当协作“黑匣子”与“状态总线”。
| 限定符和类型 | 类和说明 |
|---|---|
static class |
TeamTrace.TeamRecord
协作足迹详情
|
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
activeSkills() |
void |
addRecord(ChatRole role,
java.lang.String source,
java.lang.String content,
long duration)
记录执行足迹
|
java.lang.String |
getAgentName() |
TeamAgentConfig |
getConfig() |
org.noear.solon.flow.FlowContext |
getContext() |
static TeamTrace |
getCurrent(org.noear.solon.flow.FlowContext context) |
java.lang.Object |
getExtra(java.lang.String key) |
<T> T |
getExtraAs(java.lang.String key) |
java.util.Map<java.lang.String,java.lang.Object> |
getExtras() |
java.lang.String |
getFinalAnswer() |
java.lang.String |
getFormattedHistory()
获取全量格式化历史
|
java.lang.String |
getFormattedHistory(int windowSize) |
java.lang.String |
getFormattedHistory(int windowSize,
boolean includeSystem)
渲染协作历史(Markdown 格式)
|
java.lang.String |
getLastAgentContent()
提取最近一位专家 Agent(非 Supervisor)的内容
|
long |
getLastAgentDuration() |
java.lang.String |
getLastAgentName() |
java.lang.String |
getLastDecision() |
Metrics |
getMetrics() |
TeamOptions |
getOptions() |
Prompt |
getOriginalPrompt() |
@Nullable java.lang.String |
getPendingReason()
获取挂起的原因或提示信息
|
TeamProtocol |
getProtocol() |
java.util.Map<java.lang.String,java.lang.Object> |
getProtocolContext()
获取协议私有上下文
|
<T> T |
getProtocolContextAs(java.lang.String key) |
java.lang.String |
getProtocolDashboardSnapshot()
获取协议状态快照(JSON 格式,供 Agent 感知全局进度)
|
int |
getRecordCount() |
java.util.List<TeamTrace.TeamRecord> |
getRecords() |
java.lang.String |
getRoute() |
AgentSession |
getSession() |
int |
getTurnCount() |
Prompt |
getWorkingMemory() |
boolean |
isInitial()
是否为初始状态
|
boolean |
isPending()
判定当前任务是否正在挂起等待
|
int |
nextTurn() |
void |
pending(java.lang.String reason)
触发协作流挂起
|
protected void |
prepare(TeamAgentConfig config,
TeamOptions options,
AgentSession session,
java.lang.String agentName)
运行时环境准备
|
protected void |
reset(Prompt originalPrompt) |
void |
resetProtocolContext() |
void |
resetTurnCount() |
void |
setExtra(java.lang.String key,
java.lang.Object val) |
void |
setFinalAnswer(java.lang.String finalAnswer) |
void |
setLastAgentName(java.lang.String agentName) |
void |
setLastDecision(java.lang.String decision) |
void |
setOriginalPrompt(Prompt originalPrompt) |
void |
setRoute(java.lang.String route) |
public TeamTrace()
public TeamTrace(Prompt originalPrompt)
public java.util.Map<java.lang.String,java.lang.Object> getExtras()
public java.lang.Object getExtra(java.lang.String key)
public <T> T getExtraAs(java.lang.String key)
public void setExtra(java.lang.String key,
java.lang.Object val)
public static TeamTrace getCurrent(org.noear.solon.flow.FlowContext context)
protected void prepare(TeamAgentConfig config, TeamOptions options, AgentSession session, java.lang.String agentName)
protected void activeSkills()
protected void reset(Prompt originalPrompt)
public void pending(java.lang.String reason)
reason - 挂起原因或需要人工确认的提示词public boolean isPending()
public @Nullable java.lang.String getPendingReason()
public boolean isInitial()
public java.lang.String getLastAgentContent()
public long getLastAgentDuration()
public Metrics getMetrics()
getMetrics 在接口中 AgentTracepublic java.lang.String getAgentName()
public TeamAgentConfig getConfig()
public TeamOptions getOptions()
public AgentSession getSession()
public org.noear.solon.flow.FlowContext getContext()
public TeamProtocol getProtocol()
public Prompt getOriginalPrompt()
public void setOriginalPrompt(Prompt originalPrompt)
public Prompt getWorkingMemory()
public java.lang.String getRoute()
public void setRoute(java.lang.String route)
public java.lang.String getLastDecision()
public void setLastDecision(java.lang.String decision)
public java.lang.String getLastAgentName()
public void setLastAgentName(java.lang.String agentName)
public int getTurnCount()
public void resetTurnCount()
public int nextTurn()
public java.util.Map<java.lang.String,java.lang.Object> getProtocolContext()
public void resetProtocolContext()
public java.lang.String getProtocolDashboardSnapshot()
public <T> T getProtocolContextAs(java.lang.String key)
public int getRecordCount()
public void addRecord(ChatRole role, java.lang.String source, java.lang.String content, long duration)
public java.lang.String getFormattedHistory()
public java.lang.String getFormattedHistory(int windowSize)
public java.lang.String getFormattedHistory(int windowSize,
boolean includeSystem)
windowSize - 限制返回的步数(0 为不限)includeSystem - 是否包含调度器决策逻辑public java.util.List<TeamTrace.TeamRecord> getRecords()
public java.lang.String getFinalAnswer()
public void setFinalAnswer(java.lang.String finalAnswer)