· 2 MIN READ

Agent 的 Session 里到底装了什么?


很多人把 Agent 的 Session 当成"一段聊天记录",其实远不止。

一个 Session 是 Agent 一次连续工作的完整上下文容器,至少包含 5 类内容。

看懂它,你才能理解上下文压缩、断点续聊、Token 暴涨这些现象。

消息历史:最核心的主干

用户消息、Assistant 回复、工具调用和工具返回,按顺序排列。

它是 Session 的本体,决定了 Agent"记得"什么。


工具返回的原始输出往往比对话本身占更多 Token,这是上下文膨胀的主要来源。

系统提示词:隐形的开场白

角色设定、工具说明、环境信息、项目指令(比如 AGENTS.md),通常在 Session 开头就注入。

它不占对话条数,但每一轮都会被重复发送,是固定成本。


工具状态与副作用

文件读写记录、运行中的后台任务、TODO 列表、计划模式的计划文件。

这些内容有的存在磁盘上,有的存在运行时,Session 恢复时要能对得上。

元数据:让 Session 可管理

Session ID、创建时间、使用的模型、Token 用量统计、权限模式。

续聊、搜索历史、核算成本,靠的都是这层数据。


上下文被压缩后还剩什么?

上下文快满时,Agent 会把早期对话压缩成摘要,原文被替换。

所以 Session 里"看到的"和"真实发生活过的"可能不一致——摘要有损,细节会丢。

重要结论尽量落盘成文件或记忆,不要只留在对话里。

Meta(发布信息)

建议标题

  1. Agent 的 Session 里到底装了什么?
  2. 搞懂 Agent Session,就看这 5 块内容
  3. 为什么你的 Agent 越聊越"健忘"?
  4. Session ≠ 聊天记录,它比这复杂多了

正文描述

介绍 AI Agent 中 Session 的完整构成:消息历史、系统提示词、工具状态、元数据,以及上下文压缩后的变化。适合正在使用或开发 Coding Agent 的读者,帮助理解上下文膨胀、断点续聊和会话恢复的原理。内容为通用概念科普,不针对特定产品。

参考资料

  • Kimi Code CLI 官方文档中关于 Session 与上下文管理的说明
  • 各主流 Coding Agent(Claude Code、Codex 等)的会话与上下文压缩机制公开文档

话题标签

#AIAgent #CodingAgent #LLM #上下文管理 #Agent开发 #程序员 #人工智能 #提示工程

封面文件

cover.png(未生成:本机无可用的栅格生图后端——Codex CLI 已登录,但 baoyu-codex-imagegen wrapper 与 baoyu-image-gen 均未安装)