Skip to content

AgentRunState

AgentRunState 是内置 Step 驱动 ReAct 策略的语义级 step 运行状态。 它存在于工作流之外,在 AgentLoopState.run_state 与策略之间共享(同一实例, 由 AGENT_ENTRY 桥接)。

python
from amrita_core.builtins.agent.state import AgentRunState

state = AgentRunState()
state.begin_step("execute")

字段

字段类型含义
step_indexint全局 step 计数器(从 1 开始)
current_phasestr | None当前阶段——DAG 节点 id(simple 模式为 "execute")
planlist[DAGNode] | None任务 DAG(None = 未分解)
simple_modeboolLLM 决定直接运行时为 True
current_step_idstr | None正在执行的 DAG 节点 id
completed_step_idslist[str]已完成的 DAG 节点 id(依赖检查)
plan_revisionintupdate_step 修订计数器
step_tool_signatureslist[str]当前 Step 内的工具签名(停滞窗口)
stall_injectedboolgive-up prompt 已注入(每 Step 一次)
last_summaryStepSummary | None前一个 Step 的主谓摘要
tokensTokenBudget真实 API token 统计
exec_finishedbool策略完成工具调用 → 迭代循环结束

方法

方法用途
begin_step(phase)进入新 Step:推进计数器、重置 per-Step 状态
begin_node(node)begin_step(node.id) + 跟踪 current_step_id
record_tool_call(signature)在当前 Step 记录工具签名
is_stalled(threshold)最后 N 个签名相同时为 True
would_stall(signature, threshold)记录该签名是否会触发检测(执行前取消)
next_ready_node()拓扑序的下一个 DAG 节点(graphlib.TopologicalSorter;环降级)
complete_current_node()标记当前节点完成
all_plan_done()所有 DAG 节点完成时为 True

相关

Apache 2.0 许可证(一些内容可能没有完全翻译成中文,请以英文文档为准。)