智能体运行时Agent runtime
智能体的核心执行层:定义 Agent 抽象、ReAct 推理循环、运行时上下文、中间件、钩子与权限控制。理解这一层,就理解了 AgentScope 的执行主线。The execution core: agent abstractions, the ReAct loop, runtime context, middleware, hooks and permissions.
心智模型Mental model
Agent 是「模型 + 工具 + 上下文 + 状态」的执行器;ReAct 循环把推理、工具调用和观察串成一个可中断、可流式、可持久化的会话。An agent is a model-plus-tools-plus-context executor; the ReAct loop turns reasoning, tool calls and observations into an interruptible, streamable, persistent conversation.
先学什么What to learn first
- 先掌握 `Agent.reply` / `reply_stream` / `observe` 的主流程,再看中间件的拦截点。Start with `reply`, `reply_stream` and `observe`, then follow middleware interception points.
- `RuntimeContext` 决定本次调用的用户、会话、权限和追踪信息。`RuntimeContext` carries user, session, permission and tracing information for one call.
- 状态通过 `AgentState` 与状态存储在外部分离,进程重启不丢会话。Conversation state lives outside the agent in `AgentState` stores, so restarts do not lose it.
生产常见坑Production pitfalls
- 把业务状态放在 Agent 实例字段里,水平扩容后状态不一致。Keeping business state in agent fields breaks horizontal scaling.
- 在工具里阻塞等待流式回复,导致事件循环饥饿。Blocking inside a tool while streaming starves the event loop.
域内图谱Domain map
点击节点打开 API 页面;拖拽平移,滚轮缩放。Click a node to open its API page. Drag to pan, scroll to zoom.
Python API 集Python API set 27
归入本功能域的全部 Python 公开类型,按所属包分组。Every public Python type classified into this domain, grouped by owning package.
agentscope.middleware12
AgenticMemoryMiddleware | class | Agentic 记忆中间件,在智能体执行流程中提供横切扩展。 |
AgenticMemoryMiddleware.Parameters | class | 参数,驱动智能体的推理、工具调用与会话执行。 |
ChatModelCandidate | class | 聊天模型 Candidate,驱动智能体的推理、工具调用与会话执行。 |
Mem0Middleware | class | Mem 0 中间件,在智能体执行流程中提供横切扩展。 |
MiddlewareBase | class | 中间件钩子基类 |
ModelRouterMiddleware | class | 模型路由器中间件,在智能体执行流程中提供横切扩展。 |
RAGMiddleware | class | RAG 中间件,在智能体执行流程中提供横切扩展。 |
RAGMiddleware.Parameters | class | 参数,驱动智能体的推理、工具调用与会话执行。 |
ReMeMiddleware | class | Re Me 中间件,在智能体执行流程中提供横切扩展。 |
ReMeMiddleware.Parameters | class | 参数,驱动智能体的推理、工具调用与会话执行。 |
ReplyBudgetControlMiddleware | class | 回复预算 Control 中间件,在智能体执行流程中提供横切扩展。 |
TTSMiddleware | class | TTS 中间件,在智能体执行流程中提供横切扩展。 |
agentscope.agent8
Agent | class | 状态化 ReAct 智能体 |
ContextConfig | class | AgentScope 的上下文相关配置。 |
InjectionConfig | class | AgentScope 的运行时状态注入相关配置。 |
ModelConfig | class | 模型相关配置。 |
ReActConfig | class | ReAct 循环配置 |
RealtimeAgent | class | 实时智能体,驱动智能体的推理、工具调用与会话执行。 |
TurnAggregator | class | 轮次聚合器,驱动智能体的推理、工具调用与会话执行。 |
TurnMetrics | class | 轮次指标,驱动智能体的推理、工具调用与会话执行。 |
agentscope.permission7
AdditionalWorkingDirectory | class | Additional Working 目录,驱动智能体的推理、工具调用与会话执行。 |
PermissionBehavior | class | 权限的行为。 |
PermissionContext | class | 权限上下文 |
PermissionDecision | class | 权限决策,驱动智能体的推理、工具调用与会话执行。 |
PermissionEngine | class | 权限引擎,驱动智能体的推理、工具调用与会话执行。 |
PermissionMode | class | 权限的模式。 |
PermissionRule | class | 用于工具用量的权限规则。 |
Java API 集Java API set 74
归入本功能域的全部 Java 公开类型,按包分组并标注构件。Every public Java type classified into this domain, grouped by package with its artifact.
io.agentscope.core.hook19
ActingChunkEvent | class | agentscope-core | 执行分块事件,描述执行过程中的事件。 |
ActingEvent | class | agentscope-core | 执行事件,描述执行过程中的事件。 |
ErrorEvent | class | agentscope-core | 错误事件,描述执行过程中的事件。 |
Hook | interface | agentscope-core | 定义钩子契约的接口。 |
HookEvent | class | agentscope-core | 所有钩子事件的基类。 |
HookEventType | enum | agentscope-core | 定义钩子事件类型的枚举。 |
LegacyHookDispatcher | class | agentscope-core | Legacy 钩子调度器,驱动智能体的推理、工具调用与会话执行。 |
PostActingEvent | class | agentscope-core | 后置执行事件,描述执行过程中的事件。 |
PostCallEvent | class | agentscope-core | 后置调用事件,描述执行过程中的事件。 |
PostReasoningEvent | class | agentscope-core | 后置推理事件,描述执行过程中的事件。 |
PostSummaryEvent | class | agentscope-core | 后置摘要事件,描述执行过程中的事件。 |
PreActingEvent | class | agentscope-core | 前置执行事件,描述执行过程中的事件。 |
PreCallEvent | class | agentscope-core | 前置调用事件,描述执行过程中的事件。 |
PreReasoningEvent | class | agentscope-core | 前置推理事件,描述执行过程中的事件。 |
PreSummaryEvent | class | agentscope-core | 前置摘要事件,描述执行过程中的事件。 |
ReasoningChunkEvent | class | agentscope-core | 推理分块事件,描述执行过程中的事件。 |
ReasoningEvent | class | agentscope-core | 推理事件,描述执行过程中的事件。 |
SummaryChunkEvent | class | agentscope-core | 摘要分块事件,描述执行过程中的事件。 |
SummaryEvent | class | agentscope-core | 摘要事件,描述执行过程中的事件。 |
io.agentscope.core.agent18
Agent | interface | agentscope-core | 定义智能体契约的接口。 |
AgentBase | class | agentscope-core | 智能体生命周期基类 |
AgentRun | class | agentscope-core | 智能体运行,驱动智能体的推理、工具调用与会话执行。 |
Builder | class | agentscope-core | `EventSource`的构建器。 |
Builder | class | agentscope-core | 构建器,用于构建并配置目标实例。 |
Builder | class | agentscope-core | `StreamOptions`的构建器。 |
CallableAgent | interface | agentscope-core | 定义 Callable 智能体契约的接口。 |
Event | class | agentscope-core | 事件,描述执行过程中的事件。 |
EventSource | class | agentscope-core | 事件来源,驱动智能体的推理、工具调用与会话执行。 |
EventType | enum | agentscope-core | 定义事件类型的枚举。 |
ObservableAgent | interface | agentscope-core | 定义 Observable 智能体契约的接口。 |
RunControl | class | agentscope-core | 运行 Control,驱动智能体的推理、工具调用与会话执行。 |
RuntimeContext | class | agentscope-core | 单次调用上下文 |
Status | enum | agentscope-core | 定义状态的枚举。 |
StreamableAgent | interface | agentscope-core | 定义 Streamable 智能体契约的接口。 |
StreamingHook | class | agentscope-core | 流式钩子,驱动智能体的推理、工具调用与会话执行。 |
StreamOptions | class | agentscope-core | 用于`Agent#stream`API的配置选项。 |
SubagentEventBus | interface | agentscope-core | 定义子智能体事件总线契约的接口。 |
io.agentscope.core.middleware9
ActingInput | record | agentscope-core | 用于`MiddlewareBase#onActing`的输入上下文。 |
AgentInput | record | agentscope-core | 用于`MiddlewareBase#onAgent`的输入上下文。 |
FinalAnswerFilterMiddleware | class | agentscope-core | 最终答案过滤中间件,在智能体执行流程中提供横切扩展。 |
MiddlewareBase | interface | agentscope-core | 响应式中间件接口 |
MiddlewareChain | class | agentscope-core | 中间件 Chain,驱动智能体的推理、工具调用与会话执行。 |
MiddlewareMethod | interface | agentscope-core | 定义中间件方法契约的接口。 |
ModelCallInput | record | agentscope-core | 用于`MiddlewareBase#onModelCall`的输入上下文。 |
ReasoningInput | record | agentscope-core | 用于`MiddlewareBase#onReasoning`的输入上下文。 |
TaskReminderMiddleware | class | agentscope-core | 任务 Reminder 中间件,在智能体执行流程中提供横切扩展。 |
io.agentscope.core.permission9
AdditionalWorkingDirectory | record | agentscope-core | 承载 Additional Working 目录数据的记录类型。 |
Builder | class | agentscope-core | 构建器,用于构建并配置目标实例。 |
Builder | class | agentscope-core | 构建器,用于构建并配置目标实例。 |
PermissionBehavior | enum | agentscope-core | 定义权限行为相关取值的枚举。 |
PermissionContextState | class | agentscope-core | 权限上下文状态,驱动智能体的推理、工具调用与会话执行。 |
PermissionDecision | class | agentscope-core | 权限决策,驱动智能体的推理、工具调用与会话执行。 |
PermissionEngine | class | agentscope-core | 权限引擎,驱动智能体的推理、工具调用与会话执行。 |
PermissionMode | enum | agentscope-core | 定义权限模式相关取值的枚举。 |
PermissionRule | record | agentscope-core | 承载权限规则数据的记录类型。 |
io.agentscope.core.agent.user6
Builder | class | agentscope-core | StreamUserInput的构建器。 |
Builder | class | agentscope-core | UserAgent的构建器。 |
StreamUserInput | class | agentscope-core | 流用户输入,驱动智能体的推理、工具调用与会话执行。 |
UserAgent | class | agentscope-core | 用户智能体,驱动智能体的推理、工具调用与会话执行。 |
UserInputBase | interface | agentscope-core | 定义用户输入基类契约的接口。 |
UserInputData | class | agentscope-core | 用户输入数据,驱动智能体的推理、工具调用与会话执行。 |
io.agentscope.core.agent.accumulator5
ContentAccumulator | interface | agentscope-core | 定义内容 Accumulator契约的接口。 |
ReasoningContext | class | agentscope-core | 推理上下文,驱动智能体的推理、工具调用与会话执行。 |
TextAccumulator | class | agentscope-core | 文本 Accumulator,驱动智能体的推理、工具调用与会话执行。 |
ThinkingAccumulator | class | agentscope-core | Thinking Accumulator,驱动智能体的推理、工具调用与会话执行。 |
ToolCallsAccumulator | class | agentscope-core | 工具调用 Accumulator,驱动智能体的推理、工具调用与会话执行。 |
io.agentscope.core3
Builder | class | agentscope-core | ReActAgent 构建器 |
ReActAgent | class | agentscope-core | 响应式 ReAct 智能体 |
Version | class | agentscope-core | 版本,驱动智能体的推理、工具调用与会话执行。 |
io.agentscope.core.agent.config3
FailoverListener | interface | agentscope-core | 定义故障转移监听器契约的接口。 |
ModelConfig | record | agentscope-core | 承载模型配置数据的记录类型。 |
ReactConfig | record | agentscope-core | 承载 ReAct 配置数据的记录类型。 |
io.agentscope.core.hook.recorder2
Builder | class | agentscope-core | 构建器,用于构建并配置目标实例。 |
JsonlTraceExporter | class | agentscope-core | Jsonl 追踪导出器,驱动智能体的推理、工具调用与会话执行。 |
Python ↔ Java 对照Python ↔ Java
两套实现共享同一概念模型,但在并发(async/await 与 Reactor)、打包(wheel 模块与 Maven 构件)和生命周期 API 上存在差异。需要精确签名时请使用 API 全景。The two implementations follow the same conceptual model but differ in concurrency (async/await vs Reactor), packaging (wheel modules vs Maven artifacts) and lifecycle APIs. Use the full API map to locate exact signatures.