先分流:忘前文、截断、额度与读文件不是同一类问题
OpeClaw 忘记上下文或不记得前文时,先确认现象属于哪一类:新开会话完全没有上一聊内容;同一会话里越聊越「忘开头」;回答写到一半停下;还是明确报了 401、429、额度或读不到本地文件。
本文只处理「模型上下文窗口有限 + 会话管理」:如何组织提示、拆分任务、保留关键约束。被截断在输出层请看回复截断专题;配额报错走 API Key 专题;工作区文件读取走本地文件夹专题。
不要根据感觉编造具体 token 上限,也不要假定存在某个固定名称的官方「长期记忆」功能。上下文容量与会话能力,一律以当前模型说明与客户端可见提示为准。
- 新开会话无记忆:按会话边界处理,重申关键约束。
- 同会话忘开头:优先怀疑上下文被挤出,缩短与置顶。
- 写到一半停下:转到回复截断与输出中断。
- 401/429 或读文件失败:转到对应专题,不混在本文。
新开会话没记忆:按边界重申,不要假设自动继承
新开会话通常是一条新的对话边界。若你期望它记得上一聊的角色、禁区或项目约定,应在开头主动写入,而不是默认「换个窗口还能接着记」。
把必须遵守的约束整理成可复制的短段落:目标、禁止事项、输出格式、术语表。每次新会话先贴这段,再写当前任务。是否另有跨会话机制、入口叫什么,以当前客户端为准。
需要长期复用的材料(规范、样例、目录说明)优先放进工作区文件,在对话里引用路径,而不是把整份文档反复粘贴进历史消息。接入与读不到文件时,使用本地文件夹专题。
聊到后面忘开头:上下文被挤出时的组织方法
同一会话里,模型只能在有限上下文窗口内工作。对话变长后,较早的指令、约束和细节可能不再处于当前可用上下文中,表现就像「忘了开头」。这不等于程序故障,也不等于你需要猜测一个固定 token 数字。
先做三件事:把仍有效的关键约束重新置顶发送;删减或归档已无用的长历史;把大段材料改成「先结论、再按需展开」,避免一次塞入整章原文。容量与截断策略以当前模型说明为准。
若现象是回答中途停止、半句截断或代码围栏未闭合,那是输出层问题,请改走回复截断专题,不要只在本文里加大提示词。
- 关键约束短清单:每次任务开头重贴。
- 长材料外置到工作区,对话只引用必要片段。
- 一次一事:完成后再开下一段任务。
- 仍出现中途停止时,核对输出中断专题。
如何保留关键信息:提示结构、任务拆分与 Skills 边界
保留关键信息,优先靠结构,而不是指望模型「自己一直记得」。推荐顺序:不可变规则 → 当前任务目标 → 仅本次需要的材料 → 输出格式。规则越短、越靠前,越不容易在长对话里被挤掉。
任务拆分:先列提纲或验收标准,再逐段执行;每段完成后再带上「已确认结论」进入下一段。这样即使用窗口有限,也能用你确认过的摘要接力,而不是让模型从零回忆整段历史。
Skills 适合封装重复流程与工具能力,不能替代你对安全边界、事实边界和输出格式的每次确认。Skills 安装与启用请看 Skills 专题;已启用但仍调用失败(没权限、路径找不到、执行报错)请看工具/Skill 调用失败专题。本文不展开安装或运行时排错步骤。
上下文被截断 vs 会话无记忆:对照表与下一步
下表用于快速分流。具体窗口大小、会话控件名称与是否提供跨会话能力,均以当前模型说明和客户端为准。
| 现象 | 优先判断 | 下一步 |
|---|---|---|
| 新开会话完全不记得上一聊 | 会话边界,非同会话上下文 | 新会话开头重贴关键约束;材料放工作区 |
| 同会话越聊越忘开头 | 上下文窗口挤出较早内容 | 置顶约束、缩短历史、拆分任务 |
| 回答写到一半停下 | 输出中断 / 长度或连接 | 回复截断与输出中断专题 |
| 401、429、quota 提示 | 认证或额度 | API Key 与额度专题 |
| 说已读文件但内容对不上 | 工作区路径或权限 | 本地文件夹与工作区专题 |
不编造固定 token 上限或官方「长期记忆」功能名;以当前模型说明与客户端可见提示为准。
最小验证:用短约束确认是会话问题还是别的故障
用一条极短规则做验证:新开会话只写「之后所有回答第一行必须是 OK」,再问一个无关问题。若第一行稳定出现 OK,说明新会话能接收当前提示;若你未重贴规则就指望上一会话的 OK,通常会失败——这符合会话边界,而不是「坏了」。
在长会话里先贴同样规则,再连续追问多轮与规则无关的细节。若后半段开始忽略第一行约定,优先按上下文挤出处理:重新置顶规则并缩短历史。
验证时若弹出额度、密钥或代理错误,立刻改走对应专题。需要安装入口或发布状态时,回到下载页;通用产品问题可对照 FAQ。
上下文与会话管理常见问题
OpeClaw 新开会话为什么没有上一聊的记忆?
多数情况下,新会话不会自动继承上一会话的完整对话。关键约束、角色设定和必须遵守的规则应在新会话开头重新写入,或放到你可持续引用的工作区说明文件中。是否提供跨会话能力,以当前客户端与模型说明为准,本站不编造固定「长期记忆」功能名。
聊到后面忘了开头,是不是模型坏了?
更常见的原因是上下文窗口有限:较早内容被挤出当前可用上下文,而不是程序「突然失忆」。先缩短历史、把关键约束置顶重申,再拆分任务。若回答写到一半停下,请改走回复截断与输出中断专题。
怎样保留关键信息才不容易丢?
把不可变规则写成短清单,每次新任务开头粘贴;长材料放进工作区文件按需引用,而不是整段塞进对话。Skills 适合固定流程,不适合替代你每次重申的安全边界。具体上下文容量以当前模型说明为准。
看到 401、429 或读不到本地文件还按本文排查吗?
不要混在一起。明确 401/429 或额度提示走 API Key 与额度专题;工作区路径、权限、读不到文件走本地文件夹专题;回答中途被截断走输出中断专题;工具/Skill 已启用仍报错走调用失败专题。本文只处理「还在聊,但像忘了前文」的会话与上下文组织问题。