在使用Comate处理长任务时,Token限制是常见瓶颈——一旦上下文被截断,关键信息便会丢失,模型可能反复询问之前的内容。这并非网络问题,而是大语言模型上下文窗口的物理上限。不过,你可以通过以下方法确认是否发生了压缩。

在Comate中进行跨多文件重构、生成大型文档或执行复杂逻辑推理时,对话上下文会迅速膨胀。一旦超出Token限制,模型将截断关键信息、遗漏步骤,甚至反复要求你重述背景。若不解决此问题,后续工作将难以推进。
如何判断消息是否已被压缩
在Comate侧边栏中,点击当前任务右上角的「⋯」菜单,选择「上下文摘要」。如果显示“已截断XX token”或“部分历史未加载”,则表示消息已被压缩。此时输入框上方会出现黄色提示条:“当前上下文较长,部分早期对话未参与本次推理”。
此步骤不可跳过——【若不主动查看上下文摘要就直接发送新指令,AI很可能基于残缺记忆执行,导致结果完全不可控】。
三种强制保留关键上下文的方法
方法一:用「锚点句」锁定核心约束
在任务初始描述的末尾,单独一行写入带方括号的强约束语句。例如:
[必须始终遵循:1. 所有API调用需添加try-catch并记录error_code;2. 返回JSON格式,字段名全小写加下划线]。
Comate的Rules引擎会将此句子识别为“持久化锚点”,即使后续上下文被压缩,它也会优先保留在推理上下文中。
方法二:启用Worktree环境隔离长任务
在Mission Mode输入框下方选择「Worktree」,Comate会自动创建独立的代码副本和专属对话空间。该环境中的所有交互不会与主工作区混杂,上下文全程独占,无压缩风险。
注意:此方法仅支持iCode托管仓库,若非iCode项目,请使用方法三。
方法三:手动切片+命名存档
第一步:将长任务拆解为逻辑闭环的子阶段,例如“1. 拆解需求→2. 生成接口定义→3. 实现Mock服务→4. 编写单元测试”。
第二步:每完成一个子阶段,在Comate中点击「保存为快照」,并命名为“搜索模块-接口定义-v1”等可检索的名称。
第三步:进入下一阶段前,输入「载入快照:搜索模块-接口定义-v1」,Comate将精准恢复该节点的完整上下文,跳过中间冗余对话。
避免触发压缩的硬性操作
不要连续粘贴超过300行代码到单次输入框——这会立即触发前端截断,且无法通过「继续」按钮补全。
不要在一次对话中混合5个以上不同技术栈的问题(例如同时询问React组件写法、Python爬虫异常处理、SQL索引优化),Comate会按Token权重自动丢弃低相关段落。
每次发送新指令前,快速查看左侧「消息流」的滚动条位置:如果已拉到顶部却仍显示“加载更多…”,说明历史消息正在后台被动态压缩。此时应暂停输入,先使用方法三存档。
