欢迎光临
我们一直在努力

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

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

1. 文档范围

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

本文重点包括:

  • 各类 Agent 如何处理长对话上下文;
  • 各类 Agent 如何压缩历史消息、工具调用结果、代码片段或任务轨迹;
  • 各类 Agent 如何在单个会话内维护用户目标、任务状态、工具结果和当前上下文;
  • 各类机制之间的差异、优劣与适用场景对比。
  • 本文不展开讨论跨会话长期记忆、用户画像长期沉淀、历史会话检索、项目级持久化记忆等内容。


    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 在单个会话中主要依赖以下内容维持短期记忆:

  • 当前 session 的对话历史;
  • 最近若干轮原始消息;
  • 压缩后的任务交接摘要;
  • 工具调用结果;
  • 当前工作目录和文件上下文;
  • 项目指令文件,例如 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 CLI handoff summary / memento,将历史压缩为任务交接摘要 当前 session、工具结果、文件上下文、压缩摘要 用户目标、任务进度、失败尝试、下一步 适合长编程任务连续推进 摘要可能遗漏关键细节或发生漂移
    Claude Code /compact / auto-compact,压缩后重新加载部分稳定上下文 最近对话、compact summary、工具结果、文件上下文 当前任务状态、最近对话、项目级指令 compact 机制产品化较强 对话内临时约束可能压缩后丢失
    OpenCode compaction agent / continuation summary session messages、工具历史、summary、项目上下文 当前目标、已完成事项、下一步 开源、可配置、可插件化 机制一致性依赖具体实现
    Cursor Agent 动态选择当前文件、选区、最近编辑和相关代码片段 IDE 状态、最近对话、文件上下文 当前文件、当前选区、最近编辑 当前工作对象相关性强 可能遗漏跨文件或早期对话信息
    Windsurf / Cascade flow-aware 上下文管理,保留任务流程状态 当前目标、当前步骤、最近动作、下一步 当前流程状态、最近动作 适合连续开发流程 公开细节有限
    Devin 长任务状态摘要、执行进度摘要 plan、progress、environment state、tool observations 任务计划、进度、阻塞点 适合复杂长任务 闭源,机制不完全透明
    SWE-agent action-observation trajectory summary 工具调用轨迹、失败原因、代码状态 issue 状态、已尝试动作、失败原因 工程任务链路清晰 偏 issue 修复场景
    Aider repo 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 Mode IDE 上下文选择、代码片段选择、最近历史保留 IDE 状态、GitHub 上下文、最近对话、工具结果 当前文件、当前任务、诊断信息 与 GitHub / IDE 场景结合紧密 可能漏掉跨文件依赖
    JetBrains AI Assistant IDE 结构化上下文选择、当前符号/文件优先 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、Cody repo map、定义、引用、搜索结果
    工具调用轨迹 SWE-agent、Devin、Manus、Replit Agent 已执行动作、工具结果、失败原因
    用户会话偏好 PI Agent / Personal Agent 用户当前目标、偏好、约束、修正
    任务计划与进度 Devin、Manus、Replit Agent plan、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 的单会话上下文压缩与记忆机制大体可以分为六类:

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

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

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

    • 是否偏代码工作区;
    • 是否偏长任务执行;
    • 是否偏用户意图连续性;
    • 是否依赖 IDE 状态;
    • 是否依赖代码搜索或 repo map;
    • 是否使用显式任务状态;
    • 是否支持自动 compact 或手动 compact;
    • 是否将工具轨迹作为核心上下文。
    赞(0)
    未经允许不得转载:171主机测评 » 个人记录(7月)——主流 AI 编程 Agent 的上下文压缩机制与单会话记忆机制调研
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址