最近在折腾一个方向:把网页端 AI 和本地开发环境打通。
我有个网站,因为有些顶级模型只能在网页端免费使用(比如 GPT6 、Fable5 ),所以我写了一个 VS Code 插件,通过 MCP 让网页里的 AI 可以直接操作本地项目。
目前已经能做到:
- 读取本地项目文件
- 修改代码
- 运行任务
- 调用 MCP
- 使用 Skills
- 让网页 AI 直接参与本地开发流程
这部分基本已经跑通了,实际用起来也比较顺。
但最近有一个问题一直没想明白。
我发现有些网页端 AI 的同一个会话可以连续使用很多天。
比如前几天聊过的内容,过了很久以后继续聊,它似乎还是能接得上之前的上下文。
按我的理解,模型本身应该还是会受到 Context Window 限制,不太可能每次请求都把几天甚至更久的完整聊天记录重新塞进去。
所以比较好奇:
这类网页 AI 的长会话 / 长期记忆,一般到底是怎么实现的?
我目前能想到的方案有:
- 历史消息滚动摘要
- 最近 N 轮对话 + 历史摘要
- 向量数据库 / RAG 按需找回旧消息
- 服务端单独维护长期 Memory
- 根据当前问题动态压缩、重组历史上下文
但如果是代码项目场景,我感觉这里还有个问题:
如果不断做摘要,时间长了以后,一些关键的代码细节、文件关系、之前做过的技术决策,会不会逐渐丢失?
尤其是这种:
网页 AI
↓
MCP
↓
VS Code
↓
本地项目
AI 可能需要持续记住:
- 项目目录结构
- 各模块职责
- 之前修改过哪些代码
- 做过哪些架构决策
- 用户的一些长期开发习惯
- 当前项目进行到哪个阶段
所以想请教一下做过类似系统的大佬:
长会话一般是怎么做上下文管理的?
如果是面向代码项目的 AI Agent ,大家更倾向于:
- 摘要
- RAG
- Memory
- 项目状态持久化
- 还是几种方案混合?
感觉这个问题比单纯把 MCP 接通更有意思。
求大佬指点一下。