个人记录(7月)——主流 AI 编程 Agent 的上下文压缩机制与单会话记忆机制调研

1. 文档范围

本文记录主流 AI 编程 Agent / 通用任务 Agent 在单次对话 / 单个 session 内的上下文压缩机制与单会话记忆机制。

本文重点包括:

  1. 各类 Agent 如何处理长对话上下文;
  2. 各类 Agent 如何压缩历史消息、工具调用结果、代码片段或任务轨迹;
  3. 各类 Agent 如何在单个会话内维护用户目标、任务状态、工具结果和当前上下文;
  4. 各类机制之间的差异、优劣与适用场景对比。

本文不展开讨论跨会话长期记忆、用户画像长期沉淀、历史会话检索、项目级持久化记忆等内容。


2. 单会话上下文与记忆的基本概念

AI Agent 在单个会话中通常需要处理以下几类上下文:

类型说明
用户当前输入用户最新一轮请求,是当前推理的直接入口
最近对话历史最近若干轮用户与 Agent 的交互内容
历史摘要对较早对话内容进行压缩后的摘要
工具调用结果搜索、文件读取、代码执行、测试、检索等工具返回内容
当前任务状态当前目标、执行进度、待解决问题、下一步动作
当前工作对象当前文件、代码片段、业务对象、问题对象或任务对象
用户约束用户在本轮会话中明确提出的限制、偏好或修正
Agent 行动轨迹Agent 已经执行过的步骤、尝试过的方法和失败原因

单会话上下文压缩通常要解决的问题是:

问题说明
上下文窗口有限长对话、代码片段、日志、工具结果会快速消耗 token
历史信息丢失早期用户目标、约束或决策可能被截断
工具结果冗长原始日志、检索结果、终端输出通常不适合全文保留
摘要可能失真简单摘要可能遗漏关键事实或改变原始含义
当前状态不明确Agent 可能不知道当前应继续执行、追问用户还是结束任务
指代消解困难用户后续说“这个”“刚才那个”时,需要依赖前文上下文

3. 主流 Agent 机制分析


3.1 OpenAI Codex / Codex CLI

3.1.1 上下文压缩机制

OpenAI Codex / Codex CLI 的上下文压缩机制通常被描述为一种 handoff summary / memento 式压缩。

其核心不是简单截断旧消息,而是在上下文变长时,将此前会话压缩成一份可供后续继续执行任务的任务交接摘要。

这类摘要通常包含:

  • 用户原始目标;
  • 当前任务进度;
  • 已完成的操作;
  • 已读取或修改的文件;
  • 已尝试过的方案;
  • 失败原因;
  • 当前错误或测试结果;
  • 用户明确提出的约束;
  • 后续应继续执行的方向。

其上下文结构可以抽象为:

System / Developer Instructions
+ 项目或环境指令
+ 历史压缩摘要
+ 最近若干轮原始对话
+ 当前相关文件或工具结果
+ 当前用户请求

3.1.2 单会话记忆机制

Codex 在单个会话中主要依赖以下内容维持短期记忆:

  1. 当前 session 的对话历史;
  2. 最近若干轮原始消息;
  3. 压缩后的任务交接摘要;
  4. 工具调用结果;
  5. 当前工作目录和文件上下文;
  6. 项目指令文件,例如 AGENTS.md。

在单会话中,Codex 的记忆更多围绕当前任务推进过程组织,而不是围绕用户画像或长期偏好组织。

3.1.3 机制特点

维度说明
压缩方式任务交接式摘要
压缩对象早期对话、工具调用过程、任务探索过程
保留重点当前任务目标、进度、失败尝试、下一步
单会话记忆来源对话历史、工具结果、文件上下文、压缩摘要
风险摘要可能遗漏关键细节,多次压缩后可能出现信息漂移

3.2 Anthropic Claude Code

3.2.1 上下文压缩机制

Claude Code 支持 /compact 以及自动压缩相关机制。

其基本逻辑是:当当前会话上下文变长后,将较早对话和工具使用过程压缩成更短的上下文状态,以便继续当前任务。

Claude Code 文档中明确提到,compact 后部分稳定上下文会重新加载。例如项目根目录中的 CLAUDE.md 会在压缩后重新注入当前会话上下文。

其压缩后的上下文可抽象为:

System Prompt
+ 重新加载的项目级指令
+ compact summary
+ 最近对话
+ 当前用户输入

3.2.2 单会话记忆机制

Claude Code 在单会话内主要维护:

  • 当前用户请求;
  • 最近对话内容;
  • compact 后生成的摘要;
  • 已加载的项目说明文件;
  • 当前文件上下文;
  • 工具调用结果;
  • 当前任务状态。

Claude Code 的记忆体系中还包含 CLAUDE.md、rules、auto memory 等机制,但其中 auto memory 更偏跨会话记忆,不属于本文重点。

3.2.3 机制特点

维度说明
压缩方式/compact / auto-compact
压缩对象长对话历史、工具调用过程、冗余上下文
保留重点当前任务状态、最近对话、项目级指令
单会话记忆来源最近对话、compact summary、文件上下文、工具结果
风险仅存在于对话中的临时约束可能在压缩后丢失

3.3 OpenCode

3.3.1 上下文压缩机制

OpenCode 是开源 AI 编程 Agent,其上下文压缩机制通常围绕 compaction agent / continuation summary 展开。

当上下文接近窗口限制时,OpenCode 可以通过专门的压缩提示词或压缩流程,将已有 session 转换为一份 continuation prompt,用于后续继续任务。

压缩内容通常包括:

  • 当前用户目标;
  • 已完成事项;
  • 已修改或读取的文件;
  • 当前错误;
  • 已做出的决策;
  • 用户约束;
  • 后续步骤。

3.3.2 单会话记忆机制

OpenCode 在单会话内通常维护:

  • session messages;
  • 工具调用历史;
  • continuation summary;
  • 当前文件上下文;
  • 项目指令文件;
  • 插件注入的上下文。

由于 OpenCode 开源且插件化程度较高,其上下文压缩和记忆机制可以根据具体实现进行调整。

3.3.3 机制特点

维度说明
压缩方式continuation summary / compaction agent
压缩对象session 历史、工具调用轨迹、任务执行过程
保留重点当前任务目标、已完成事项、下一步
单会话记忆来源session messages、工具结果、summary、项目上下文
风险具体行为取决于配置和插件实现,一致性可能不如闭源产品固定

3.4 Cursor Agent

3.4.1 上下文压缩机制

Cursor 是 IDE 场景下的 AI 编程 Agent。其上下文管理重点不是保留完整对话历史,而是动态选择当前代码工作区中最相关的信息。

Cursor 的上下文通常包括:

  • 当前打开文件;
  • 当前选中代码;
  • 最近编辑区域;
  • 用户当前请求;
  • 最近对话;
  • 相关代码片段;
  • 检索到的上下文。

其压缩或上下文控制方式更偏向“相关上下文选择”,即让当前文件、当前选区和最近编辑内容优先进入上下文。

3.4.2 单会话记忆机制

Cursor 在单会话中主要维护:

  • 用户当前正在处理的文件;
  • 当前选中的代码片段;
  • 最近编辑内容;
  • 当前错误或诊断信息;
  • 最近对话内容;
  • 当前代码任务目标。

3.4.3 机制特点

维度说明
压缩方式动态上下文选择、相关文件片段选择
压缩对象非当前文件、非相关代码片段、较早对话
保留重点当前文件、当前选区、最近编辑、当前请求
单会话记忆来源IDE 状态、最近对话、文件上下文、诊断信息
风险如果相关上下文选择不准确,可能遗漏必要文件或历史信息

3.5 Windsurf / Cascade

3.5.1 上下文压缩机制

Windsurf / Cascade 类 Agent 强调 flow-aware 的开发体验,即围绕当前开发流程持续推进任务。

其上下文管理通常关注:

  • 当前任务目标;
  • 当前代码状态;
  • 最近操作;
  • 工具执行结果;
  • 多步骤任务进度;
  • 用户当前意图。

其上下文压缩更偏向保留当前流程状态,而不是保留完整原始聊天记录。

3.5.2 单会话记忆机制

Windsurf / Cascade 在单会话中通常维护:

  • 当前目标;
  • 当前步骤;
  • 已执行动作;
  • 当前结果;
  • 下一步动作;
  • 最近用户反馈。

3.5.3 机制特点

维度说明
压缩方式flow-aware 上下文维护、任务流程摘要
压缩对象较早对话、无关操作记录、重复工具输出
保留重点当前流程状态、最近动作、下一步
单会话记忆来源当前任务流、编辑器状态、工具结果、用户反馈
风险公开实现细节有限,具体机制较难完整验证

3.6 Devin

3.6.1 上下文压缩机制

Devin 是偏自主软件工程任务的 Agent,主要面向长周期、多步骤开发任务。

其公开底层细节有限,但从产品形态看,它需要在长任务中持续维护:

  • 任务计划;
  • 当前进度;
  • 已完成步骤;
  • 已尝试方法;
  • 失败原因;
  • 环境状态;
  • 代码修改状态;
  • 测试结果;
  • 后续 todo。

因此其上下文压缩通常需要围绕任务状态和执行轨迹展开。

3.6.2 单会话记忆机制

Devin 类 Agent 的单会话记忆可以抽象为:

Plan
+ Progress
+ Environment State
+ Tool Observations
+ Next Action

它需要在一个持续任务中记住当前计划、已完成工作、环境反馈和下一步操作。

3.6.3 机制特点

维度说明
压缩方式任务状态摘要、执行进度摘要
压缩对象长任务历史、工具输出、尝试过程
保留重点plan、progress、blocking issue、next action
单会话记忆来源任务计划、执行轨迹、工具结果、环境状态
风险闭源产品,公开机制有限,部分结论依赖产品行为推断

3.7 SWE-agent

3.7.1 上下文压缩机制

SWE-agent 面向软件工程 issue 修复任务,其运行过程通常是 action-observation 轨迹:

observation → thought/action → tool execution → observation → next action

上下文变长时,需要管理 Agent 的 trajectory,即已经观察到什么、执行了什么、得到了什么结果。

压缩重点通常包括:

  • 当前 issue;
  • 已查看文件;
  • 已执行命令;
  • 命令输出;
  • 错误反馈;
  • 已尝试 patch;
  • 当前失败原因。

3.7.2 单会话记忆机制

SWE-agent 的单会话记忆主要是 action-observation 轨迹记忆。

它需要保留:

  • 任务目标;
  • 观察结果;
  • 已执行动作;
  • 工具返回;
  • 当前代码状态;
  • 失败尝试;
  • 下一步操作。

3.7.3 机制特点

维度说明
压缩方式trajectory summary、工具轨迹压缩
压缩对象命令输出、观察历史、patch 尝试过程
保留重点issue 状态、失败原因、已尝试动作、下一步
单会话记忆来源action-observation 轨迹、工具结果、代码状态
风险偏软件工程 issue 修复,对通用对话适配性有限

3.8 Aider

3.8.1 上下文压缩机制

Aider 是命令行代码修改 Agent。其上下文管理机制包括:

  • chat history;
  • repo map;
  • 当前加入上下文的文件;
  • 用户请求;
  • 代码 diff;
  • 最近编辑结果。

Aider 的 repo map 机制会构造代码库结构摘要,而不是把整个仓库全文放入上下文。

repo map 通常包含:

  • 文件结构;
  • 关键符号;
  • 函数 / 类定义;
  • 相关引用;
  • 代码库整体结构线索。

3.8.2 单会话记忆机制

Aider 在单会话中主要维护:

  • 当前用户请求;
  • 当前聊天历史;
  • 已加入上下文的文件;
  • repo map;
  • 当前 diff;
  • 最近修改结果。

3.8.3 机制特点

维度说明
压缩方式repo map、文件上下文选择、聊天历史控制
压缩对象全仓库代码、无关文件、较早对话
保留重点当前文件、代码结构摘要、diff、用户请求
单会话记忆来源chat history、repo map、文件上下文、diff
风险repo map 质量会影响模型对代码库的理解

3.9 Continue.dev

3.9.1 上下文压缩机制

Continue.dev 是开源 IDE Agent,其上下文主要来自用户显式选择和 IDE 当前状态。

常见上下文来源包括:

  • 当前文件;
  • 选中代码;
  • 用户手动添加的上下文;
  • 检索到的代码片段;
  • 最近对话;
  • IDE 诊断信息。

其上下文控制方式强调上下文来源的显式性和可控性。

3.9.2 单会话记忆机制

Continue.dev 在单会话中主要维护:

  • 当前用户选择的上下文;
  • 当前文件;
  • 当前选区;
  • 最近对话;
  • 检索片段;
  • 当前编辑任务。

3.9.3 机制特点

维度说明
压缩方式用户显式上下文选择、文件片段选择、检索片段注入
压缩对象未选择文件、无关片段、较早对话
保留重点用户指定上下文、当前文件、当前选区
单会话记忆来源IDE 状态、用户选择上下文、最近对话
风险上下文质量依赖用户选择和检索准确性

3.10 PI Agent / Personal Agent 类

3.10.1 上下文压缩机制

PI Agent / Personal Agent 类产品更偏个人助理场景,其上下文管理重点通常不是代码库,而是用户当前会话中的意图连续性。

其单会话上下文通常关注:

  • 用户当前目标;
  • 用户当前语境;
  • 用户反复强调的信息;
  • 用户临时偏好;
  • 用户对回答方向的修正;
  • 当前对话主题。

当对话变长时,这类 Agent 通常需要压缩早期对话,同时保留用户在当前会话中表达出的关键事实、情绪、约束或目标。

3.10.2 单会话记忆机制

PI Agent / Personal Agent 类单会话记忆通常包括:

  • 当前对话主题;
  • 用户当前目标;
  • 用户临时偏好;
  • 用户反复强调的限制;
  • 上下文中的人物、事件或对象;
  • 当前回答风格要求。

例如用户在同一会话中多次强调:

不要展开长期记忆。
只讨论单对话内机制。
不要只覆盖三家 Agent。

这类信息通常会被作为当前会话约束保留。

3.10.3 机制特点

维度说明
压缩方式当前会话语境摘要、用户目标和偏好提取
压缩对象早期闲聊、重复表达、非关键语境
保留重点用户目标、临时偏好、反复强调的信息
单会话记忆来源用户表达、对话主题、当前语境
风险可能把临时偏好过度固化,或误判用户真实意图

3.11 Manus / 通用任务 Agent

3.11.1 上下文压缩机制

Manus 等通用任务 Agent 通常面向多步骤任务执行。

其上下文管理重点包括:

  • 用户目标;
  • 当前计划;
  • 已执行步骤;
  • 工具调用结果;
  • 当前产物;
  • 失败原因;
  • 下一步动作。

当上下文变长时,这类 Agent 通常需要将长任务过程压缩为任务状态摘要。

3.11.2 单会话记忆机制

Manus / 通用任务 Agent 的单会话记忆可以抽象为:

Goal
+ Plan
+ Steps Done
+ Current Artifacts
+ Tool Results
+ Next Step

它需要维护当前任务是否完成、已经生成了哪些产物、还有哪些步骤未完成。

3.11.3 机制特点

维度说明
压缩方式多步骤任务摘要、计划进度摘要
压缩对象任务执行过程、工具输出、历史中间步骤
保留重点goal、plan、steps done、artifacts、next step
单会话记忆来源任务计划、工具调用结果、当前产物、执行轨迹
风险如果任务状态维护不准,可能导致重复执行或遗漏步骤

3.12 GitHub Copilot Chat / Agent Mode

3.12.1 上下文压缩机制

GitHub Copilot Chat / Agent Mode 主要运行在 IDE 和 GitHub 开发环境中,其上下文来源通常包括:

  • 当前打开文件;
  • 当前选中代码;
  • 工作区相关文件;
  • GitHub issue / pull request 上下文;
  • 终端或测试输出;
  • 最近聊天历史。

其上下文压缩方式通常体现为相关代码上下文选择、最近历史保留和工具结果摘要。

3.12.2 单会话记忆机制

Copilot Chat / Agent Mode 在单会话中主要维护:

  • 当前代码任务;
  • 当前文件上下文;
  • 最近用户指令;
  • 当前诊断信息;
  • 最近工具执行结果;
  • issue 或 PR 相关上下文。

3.12.3 机制特点

维度说明
压缩方式IDE 上下文选择、代码片段选择、最近历史保留
压缩对象无关文件、较早聊天历史、冗长日志
保留重点当前文件、当前任务、诊断信息、GitHub 上下文
单会话记忆来源IDE 状态、GitHub 上下文、最近对话、工具结果
风险上下文选择不准确时可能漏掉跨文件依赖

3.13 JetBrains AI Assistant

3.13.1 上下文压缩机制

JetBrains AI Assistant 集成在 JetBrains IDE 中,其上下文主要来自 IDE 对代码结构的理解。

常见上下文包括:

  • 当前文件;
  • 当前光标位置;
  • 当前选中代码;
  • 项目结构;
  • IDE 索引信息;
  • 错误诊断;
  • 最近对话。

其上下文压缩方式更偏向利用 IDE 结构化上下文,只选取与当前任务相关的代码和诊断信息。

3.13.2 单会话记忆机制

JetBrains AI Assistant 在单会话中主要维护:

  • 当前编辑位置;
  • 当前代码符号;
  • 当前问题或错误;
  • 最近对话;
  • IDE 提供的结构化项目信息。

3.13.3 机制特点

维度说明
压缩方式IDE 结构化上下文选择、当前符号/文件优先
压缩对象无关项目文件、旧对话、非当前诊断信息
保留重点当前文件、当前符号、错误诊断、项目结构
单会话记忆来源IDE 索引、当前编辑状态、最近对话
风险依赖 IDE 对项目结构和当前任务的理解

3.14 Sourcegraph Cody

3.14.1 上下文压缩机制

Sourcegraph Cody 面向代码搜索和代码理解场景,依托代码搜索和索引能力选择上下文。

其上下文通常包括:

  • 当前代码片段;
  • 代码搜索结果;
  • 相关定义和引用;
  • 仓库结构;
  • 当前问题;
  • 最近对话。

上下文压缩主要体现为代码检索结果筛选和相关片段选择。

3.14.2 单会话记忆机制

Cody 在单会话中主要维护:

  • 当前问题;
  • 相关代码片段;
  • 搜索结果;
  • 当前仓库上下文;
  • 最近对话。

3.14.3 机制特点

维度说明
压缩方式代码搜索结果筛选、相关片段注入
压缩对象无关搜索结果、无关文件、较早对话
保留重点相关定义、引用、当前代码片段、搜索证据
单会话记忆来源代码搜索、仓库索引、最近对话
风险检索召回不足时可能缺少关键上下文

3.15 Replit Agent

3.15.1 上下文压缩机制

Replit Agent 面向在线开发环境和应用构建任务,其上下文通常包括:

  • 当前项目文件;
  • 用户应用需求;
  • 运行结果;
  • 错误日志;
  • 修改历史;
  • 当前任务计划。

其上下文压缩需要处理长时间应用构建过程中的步骤、错误和代码修改记录。

3.15.2 单会话记忆机制

Replit Agent 在单会话中通常维护:

  • 当前应用目标;
  • 已创建或修改的文件;
  • 当前运行状态;
  • 错误日志;
  • 用户反馈;
  • 下一步构建动作。

3.15.3 机制特点

维度说明
压缩方式应用构建过程摘要、错误日志摘要、文件修改状态维护
压缩对象冗长运行日志、旧构建步骤、重复错误输出
保留重点应用目标、文件变更、运行状态、错误原因
单会话记忆来源项目文件、运行结果、用户反馈、构建计划
风险长任务中如果文件变更状态不准,可能导致重复修改或回退

4. 横向对比表

Agent上下文压缩机制单会话记忆机制保留重点主要优势主要风险
OpenAI Codex / Codex CLIhandoff summary / memento,将历史压缩为任务交接摘要当前 session、工具结果、文件上下文、压缩摘要用户目标、任务进度、失败尝试、下一步适合长编程任务连续推进摘要可能遗漏关键细节或发生漂移
Claude Code/compact / auto-compact,压缩后重新加载部分稳定上下文最近对话、compact summary、工具结果、文件上下文当前任务状态、最近对话、项目级指令compact 机制产品化较强对话内临时约束可能压缩后丢失
OpenCodecompaction agent / continuation summarysession messages、工具历史、summary、项目上下文当前目标、已完成事项、下一步开源、可配置、可插件化机制一致性依赖具体实现
Cursor Agent动态选择当前文件、选区、最近编辑和相关代码片段IDE 状态、最近对话、文件上下文当前文件、当前选区、最近编辑当前工作对象相关性强可能遗漏跨文件或早期对话信息
Windsurf / Cascadeflow-aware 上下文管理,保留任务流程状态当前目标、当前步骤、最近动作、下一步当前流程状态、最近动作适合连续开发流程公开细节有限
Devin长任务状态摘要、执行进度摘要plan、progress、environment state、tool observations任务计划、进度、阻塞点适合复杂长任务闭源,机制不完全透明
SWE-agentaction-observation trajectory summary工具调用轨迹、失败原因、代码状态issue 状态、已尝试动作、失败原因工程任务链路清晰偏 issue 修复场景
Aiderrepo map、文件上下文选择、chat history 控制chat history、repo map、当前文件、diff代码结构、当前文件、修改 diff不必全文加载代码库repo map 质量影响效果
Continue.dev用户显式上下文选择、文件片段选择、检索片段注入用户选择上下文、IDE 状态、最近对话当前文件、选区、用户指定上下文上下文来源可控依赖用户选择和检索质量
PI Agent / Personal Agent当前会话语境摘要、用户目标和偏好提取当前主题、用户目标、临时偏好、反复强调的信息用户意图、会话语境、偏好约束对用户意图连续性较强可能误判或过度固化临时偏好
Manus / 通用任务 Agent多步骤任务摘要、计划进度摘要goal、plan、steps done、artifacts、tool results任务计划、产物、下一步适合通用多步骤任务状态维护错误会影响任务推进
GitHub Copilot Chat / Agent ModeIDE 上下文选择、代码片段选择、最近历史保留IDE 状态、GitHub 上下文、最近对话、工具结果当前文件、当前任务、诊断信息与 GitHub / IDE 场景结合紧密可能漏掉跨文件依赖
JetBrains AI AssistantIDE 结构化上下文选择、当前符号/文件优先IDE 索引、当前编辑状态、最近对话当前符号、当前文件、错误诊断依托 IDE 结构化理解依赖 IDE 对任务相关性的判断
Sourcegraph Cody代码搜索结果筛选、相关片段注入代码搜索、仓库索引、最近对话相关定义、引用、搜索证据适合大型代码库检索检索召回不足会影响上下文完整性
Replit Agent应用构建过程摘要、错误日志摘要、文件修改状态维护项目文件、运行结果、用户反馈、构建计划应用目标、文件变更、运行状态适合在线应用构建长任务中文件状态维护复杂

5. 机制分类总结

5.1 按压缩方式分类

类型代表 Agent说明
任务交接式摘要Codex、OpenCode将历史压缩为后续 Agent 可继续执行的 handoff summary
compact 压缩Claude Code用户手动或系统自动触发上下文压缩
当前工作对象选择Cursor、Continue.dev、JetBrains AI Assistant优先保留当前文件、选区、符号、诊断信息
代码结构摘要Aider、Sourcegraph Cody使用 repo map、代码搜索、定义引用等构造结构化上下文
任务轨迹摘要Devin、SWE-agent、Manus、Replit Agent保留计划、步骤、工具结果、失败原因和下一步
用户语境摘要PI Agent / Personal Agent保留用户当前目标、偏好、约束和会话主题

5.2 按单会话记忆来源分类

记忆来源代表 Agent内容
最近对话几乎所有 Agent最近若干轮用户与 Agent 的交互
压缩摘要Codex、Claude Code、OpenCode、Manus较早历史的摘要或任务交接说明
IDE 状态Cursor、Continue.dev、Copilot、JetBrains当前文件、选区、诊断、编辑位置
代码库结构Aider、Codyrepo map、定义、引用、搜索结果
工具调用轨迹SWE-agent、Devin、Manus、Replit Agent已执行动作、工具结果、失败原因
用户会话偏好PI Agent / Personal Agent用户当前目标、偏好、约束、修正
任务计划与进度Devin、Manus、Replit Agentplan、progress、steps done、next action

5.3 按主要风险分类

风险类型相关 Agent说明
摘要遗漏Codex、OpenCode、Claude Code、Manus压缩时可能丢失关键事实
摘要漂移Codex、OpenCode多次压缩后事实可能被改写或弱化
上下文选择错误Cursor、Continue.dev、Copilot、JetBrains相关文件或片段选择不准确
检索召回不足Cody、Aider代码搜索或 repo map 未覆盖关键依赖
状态维护错误Devin、SWE-agent、Manus、Replit Agent计划、进度、工具结果记录错误会影响后续动作
临时偏好误固化PI Agent / Personal Agent将一次性偏好当成持续约束
公开机制不透明Devin、Windsurf、部分商业 Agent无法完全验证内部实现

6. 总结

主流 AI Agent 的单会话上下文压缩与记忆机制大体可以分为六类:

  1. 任务交接式摘要:以 Codex、OpenCode 为代表;
  2. compact 式压缩:以 Claude Code 为代表;
  3. 当前工作对象优先:以 Cursor、Continue.dev、JetBrains AI Assistant 为代表;
  4. 代码结构摘要 / 检索式上下文:以 Aider、Sourcegraph Cody 为代表;
  5. 任务轨迹与计划进度记忆:以 Devin、SWE-agent、Manus、Replit Agent 为代表;
  6. 用户当前会话语境记忆:以 PI Agent / Personal Agent 类产品为代表。

这些机制的共同目标是:

在上下文窗口有限的情况下,保留当前任务继续推进所必需的信息,同时减少无关历史、冗长工具输出和重复上下文对模型判断的干扰。

不同 Agent 的差异主要体现在:

  • 是否偏代码工作区;
  • 是否偏长任务执行;
  • 是否偏用户意图连续性;
  • 是否依赖 IDE 状态;
  • 是否依赖代码搜索或 repo map;
  • 是否使用显式任务状态;
  • 是否支持自动 compact 或手动 compact;
  • 是否将工具轨迹作为核心上下文。
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐