跳到主要内容

Agent 概念地图

这页是 ai4j 的概念 GPS——20 个 agent 核心概念,按 7 个能力簇组织,每簇标出概念间的关系,每条给一句话定位 + 直达详细页。

为什么需要这页

ai4j 的文档按子系统组织(Core SDK / Agent Runtime / Coding Agent / MCP / FlowGram…),每个子系统都有自己的概念入口页。但 agent 概念横跨多个子系统——Function Call 在 Core SDK、Hooks 在 Agent Runtime、Compaction 在 Agent + Coding Agent——读者容易在多个 section 间迷路。

这页不重复各详细页的内容,只负责:告诉你 20 个概念分别是什么、在哪个层、彼此怎么关联、从哪页开始读。

概念全景图

┌─────────────────────────────────────────────────────────────┐
│ 能力三角(模型怎么做事) │
│ Function Calling ←──→ MCP ←──→ Skill │
│ 写代码执行 连外部工具 给方法论 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 记忆与上下文链(状态怎么管) │
│ Memory → Context Window → Compaction → Checkpoint │
│ 记事实 管窗口 压缩 存档恢复 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 执行核心层级(工作怎么分配) │
│ Agent Loop → DAG/Workflow → Subagents → Agent Teams │
│ 单步循环 编排有向图 分派子任务 多 agent 协作 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 安全边界(什么能做什么不能) │
│ Sandbox + Hooks + Plugin + Workspace Trust │
│ 隔离执行 事件拦截 贡献能力 信任门禁 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 可观测性(发生了什么) │
│ Trace → Replay / Audit │
│ 实时追踪 重放恢复 + 防篡改 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 对外协议与知识增强(怎么跟外部交互) │
│ A2A + ACP + MCP Server + RAG │
│ agent互连 IDE协议 暴露工具 知识增强 │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ 工程化(怎么上生产) │
│ Session + Prompt + Harness │
│ 会话管理 提示组装 coding agent 宿主 │
└─────────────────────────────────────────────────────────────┘

1. 能力三角:Function Calling ↔ MCP ↔ Skill

这是 ai4j 最核心的概念关系——三者都让模型"做事",但机制完全不同。先理解这个三角,再深入任何一个。

概念一句话所在层详细页
Function Calling模型调用你声明的 Java 方法(@FunctionCall / built-in / SPI),在宿主进程内执行Core SDKTools 总览
MCP标准协议连接外部工具服务器(本地 stdio / 远程 HTTP),工具不在你的进程里Core SDK → 顶层 MCPMCP 总览
Skill不是执行动作,而是给模型按需读取的方法论指导(SKILL.md),控制的是"怎么做"的认知Core SDKSkills 总览
三者怎么选

三者不互斥,可以同时用。核心区分:

  • Function Calling = 模型→你的代码(in-process)
  • MCP = 模型→外部工具服务器(cross-process)
  • Skill = 模型→方法论文档(no execution, just knowledge)

详细的对比表和决策框架见 Skill、Tool 与 MCP 对比


2. 记忆与上下文链

状态从"记住"到"压缩"到"恢复"的完整链路。 这 4 个概念是递进的——后面的概念依赖前面的。

概念一句话所在层详细页
Memory / Chat Memorysession 级事实存储(system/user/assistant/tool-call/tool-output/summary),存储与保留策略分离Core SDKMemory 总览
Context Window Management管理进入模型的上下文窗口大小(ContextBudget 限制条目/字符/pinned prefix)Agent Runtime上下文窗口管理
Compaction压缩上下文(ContextProjector 按策略裁剪/microcompact 工具结果/auto-compact 熔断)Agent + Coding AgentMemory Compact Context · Compact & Checkpoint
Checkpoint / Resume结构化存档 + 崩溃恢复(ResumeCache 跳过已完成副作用 + hash-chained 防篡改审计)Agent + Coding Agent重放、恢复与审计 · Compact & Checkpoint
跨层注意

Compaction 和 Checkpoint 在 Agent Runtime 和 Coding Agent 两个层都有实现,各层关注点不同:

  • Agent 层:ContextProjector + ResumeCache(通用 agent 的上下文/恢复)
  • Coding Agent 层:CodingSessionCompactor + CodingSessionCheckpoint(coding session 专用管线)

从 Agent 层的概念页开始读,再跳到 Coding Agent 层看工程化实现。


3. 执行核心层级

从"单 agent 单步循环"到"多 agent 协作"的 4 级递进。 每一级是前一级的超集。

概念一句话所在层详细页
Agent Loop (ReAct / CodeAct)单 agent 的 think→act→observe 循环;ReAct 用 tool-call、CodeAct 用代码执行Agent RuntimeMinimal React Agent · CodeAct Runtime
DAG / Workflow Orchestration把多个 agent 步骤编排成有向无环图(StateGraph),声明节点 + 边 + 条件分支Agent RuntimeWorkflow StateGraph
Subagents主 agent 把子任务委派给隔离的子 agent(独立 memory + tool + session)Agent RuntimeSubagent Handoff Policy
Agent Teams多个 agent 组成团队,通过 TaskBoard 协调任务分配、并行执行、结果汇总Agent RuntimeAgent 团队

4. 安全边界

控制 agent 能做什么、不能做什么的 4 道闸门。 这些概念共同构成 ai4j 的安全防线。

概念一句话所在层详细页
Sandbox隔离代码执行环境(E2B / Daytona / CubeSandbox),agent 在远程沙箱里跑代码Agent RuntimeSandbox SPI · CubeSandbox
Lifecycle Hooks在 PreToolUse / PostToolUse / Stop 等事件点拦截、审批或观察 agent 行为Agent + Coding Agent插件生命周期钩子 · Lifecycle Hooks
Plugin / Extension第三方打 jar 贡献 tool/command/skill/prompt,经 discover→enable→expose 三段式门禁Core SDK (extension-api)Extension 总览 · 扩展 ai4j
Workspace Trust首次进入未信任目录时暂停问 y/n,~/.ai4j/trusted-dirs.txt 管理;ai4j cli trust 命令Coding AgentLifecycle Hooks & Trust
安全模型边界
  • Sandbox 控制的是执行隔离(代码在远端跑,不在你的机器上)
  • Hooks 控制的是行为拦截(在 agent 执行前/后检查 + 审批)
  • Plugin 控制的是能力贡献(不给就不暴露)
  • Workspace Trust 控制的是首次信任(不信任的目录不加载配置)

四者正交——一个 agent 可以同时被 sandbox 隔离 + hooks 拦截 + 只暴露白名单工具 + 只在信任目录运行。


5. 可观测性

agent 执行过程中发生了什么、能否回溯、能否恢复。

概念一句话所在层详细页
Agent Trace / Observabilityruntime 发布统一事件流(MODEL_REQUEST / TOOL_CALL / TOOL_RESULT),trace 消费并折叠成 span 导出到 OTel / Langfuse / JSONLAgent RuntimeTrace 与可观测性
Replay / Audit节点级 I/O 重放(live/mock)、崩溃续跑(ResumeCache)、防篡改 hash-chained 审计日志Agent Runtime重放、恢复与审计
事件流是基础

Trace 和 Replay 都是 runtime 事件流的消费者,不是埋点——事件已经发布了,trace/replay 只是决定怎么消费。这意味着你可以在不改动 agent 代码的前提下,随时加 trace 导出或 replay 恢复。


6. 对外协议与知识增强

agent 怎么跟外部世界交互——跟其他 agent、跟 IDE、跟工具服务器、跟知识库。

概念一句话所在层详细页
A2A (Agent-to-Agent)JSON-RPC + SSE 协议,让 ai4j agent 对外暴露为可被其他 agent 发现和调用的服务Agent RuntimeA2A
ACP (Agent Client Protocol)换行分隔 JSON-RPC(非 LSP framing),让 IDE / 桌面壳驱动 coding session(创建/加载/prompt/权限确认)Coding AgentACP 集成 · 编程式集成
MCP Server把 ai4j 的工具暴露为 MCP 服务端(streamable-HTTP / SSE / stdio),其他 MCP 客户端可以发现并调用MCP (顶层)Build Your MCP Server
RAG摄取→分块→嵌入→向量存储→检索→重排→引用,完整的知识增强管线Core SDKSearch and RAG 总览

7. 工程化

从 SDK 调用走到生产级 agent 应用的 3 个工程概念。

概念一句话所在层详细页
Session ManagementAgentSession 作为有状态长运行容器(sessionId + 独立 memory + event log + snapshot/restore)Agent + Coding AgentSession Runtime · Coding Session Runtime
Prompt / System PromptsystemPrompt(运行时指令合并)vs instructions(独立保留)的字段语义 + coding-agent 的 prompt 组装管线Agent + Coding Agent系统提示词与指令 · Prompt Assembly
Harness / Coding Agent完整的终端 coding agent 宿主(CLI/TUI + ACP + sandbox-routing + tools + approvals + compaction)Coding AgentCoding Agent 总览 · 编程式集成

怎么用这页

  1. 第一次了解 agent:从能力三角开始,理解模型怎么做事。
  2. 要管状态:走记忆与上下文链,从 Memory 到 Checkpoint。
  3. 要编排复杂任务:走执行核心层级,从 Agent Loop 到 Agent Teams。
  4. 要上生产:检查安全边界 + 可观测性 + 工程化
  5. 要跟外部对接:看对外协议

继续阅读