当前位置:首页 > 技术分享 > 正文内容

AGENTS.md 截断规则深度解析——中文用户如何避免规则丢失

Openclaw3周前 (06-22)技术分享111
AGENTS.md 截断规则深度解析

2026-06-22 · 技术分享 · #OpenClaw #AGENTS.md

一、问题的由来

很多 OpenClaw 用户发现,自己的 AGENTS.md 文件明明写了不少规则,但跑着跑着就「失忆」了——Agent 的行为开始偏离设定。这不是玄学,而是截断规则在作祟。

OpenClaw 的 bootstrap 文件(AGENTS.mdSOUL.mdMEMORY.md 等)都有总长度 60000 字符、单个文件 20000 字符的上限。一旦超限,就会触发截断。但 AGENTS.md 的截断方式与其他文件完全不同——而且这个差异,对中文用户尤其不友好。

本文将深入分析 AGENTS.md 的截断机制,并给出针对中文用户的优化方案。

二、截断规则对比

其他文件的截断策略

SOUL.md、MEMORY.md、TOOLS.md 等文件的截断规则是简单的「留头留尾」:

  • 头部 45% — 原样保留
  • 尾部 15% — 原样保留
  • 中间 40% — 全部丢弃

这个策略简单粗暴:重要的东西写在开头和结尾,中间的内容可能直接消失。

AGENTS.md 的特殊策略

AGENTS.md 的截断分配比例为:

AGENTS_POLICY_DIGEST_RATIO = 0.35(摘要配额 35%)
AGENTS_POLICY_HEAD_RATIO = 0.45(头部 45%)
AGENTS_POLICY_TAIL_RATIO = 0.15(尾部 15%)
换行预留 ≈ 5%

以 20000 字符上限为例:

  • headChars = 9000 — 头部 9000 字符原样保留
  • digestBudget = 7000 — 中间 7000 字符走摘要提取
  • tailChars = 3000 — 尾部 3000 字符原样保留

关键区别就在这里:其他文件中间部分直接丢弃,但 AGENTS.md 会给中间区域一个「抢救」机会——通过关键字匹配提取重要规则行。

三、240 字符红线

在进入摘要提取流程前,所有行会先经过标准化处理:

  • 删除行首行尾空白
  • 连续空白压缩成一个空格
  • 每行最多 240 字符,超长行保留前 239 字符加「…」

也就是说,如果你的规则行超过 240 字符,截断之后后半部分就没了。中文一个汉字占 2-3 字节,但按 Unicode 字符计数,240 字符大概相当于 80-100 个汉字的行长度。超过这个阈值,内容就会在摘要中被截断。

四、关键字匹配机制

标准化完成后,系统会从完整文件中扫描「候选行」,规则分为两类:

第一类:Markdown 结构行

任何以 Markdown 标题(###)或列表标记(-*1.)开头的行都会被识别为候选。

第二类:含关键字的普通行

包含以下关键字的行会被匹配(大小写不敏感):

高优先级:AGENTS.md scoped required must never do not security secret credential

普通优先级:test validation command commit push github pr

选取顺序

先扫描所有候选行,优先从高优先级关键字匹配行中选取,填满 7000 字符的摘要配额。如果还有剩余配额,再选普通候选行。

五、中文用户的大坑

注意上面的关键字列表——全是英文。这个匹配流程是纯字符串匹配,没有 LLM 参与理解语义。

这意味着:

  • - Never commit secrets — 会被匹配(命中 neversecret
  • - 私事不外传 — 不会匹配(仅命中 Markdown 列表格式)
  • - 必须:最大委派5轮 — 不会匹配(「必须」不是 required
  • ## 安全注意事项 — 仅靠 Markdown 标题格式匹配(##),不会命中 security

如果你完全用中文写 AGENTS.md,中间区域的内容能通过 Markdown 结构被保留一部分,但关键字匹配的优势完全享受不到。高优先级规则标记(如 requiredmust)对中文用户形同虚设。

六、优化建议

1. 核心规则中英双语写

每条重要规则加上英文关键词前缀,确保命中高优先级规则:

- must: 私事不外传。就这一条。
- required: 最大委派5轮,超限让用户拆分
- never: 半成品不往外发。
- scoped: 仅我(可亓)可调子Agent

2. 控制行长度

每行控制在 200 字符以内(约 60-80 个汉字)。长规则拆成多行 Markdown 列表,既保可读性又匹配列表格式。

3. 关键内容放头部或尾部

头部 45%(约 9000 字符)和尾部 15%(约 3000 字符)是原样保留的,最核心的规则放在这两个区域。

4. 善用 Markdown 结构

##- 等 Markdown 语法结构化你的规则,即使关键字没匹配,Markdown 结构行本身也能被保留。

5. 监控文件大小

定期检查 ~/.openclaw/agents/main/agent/AGENTS.md 或 workspace 中的 AGENTS.md 文件大小。超过 15000 字符就要开始精简,留出冗余空间。

总结

AGENTS.md 的截断机制是一把双刃剑。它比普通文件多了一道「摘要提取」,试图保留中间区域的重要规则。但关键字匹配完全基于英文,中文用户如果不了解这套规则,辛苦写下的中文配置随时可能被截断丢弃。

了解规则、适配规则——这是让 OpenClaw 稳定记住你设定的关键。


参见:OpenClaw 官方文档 · GitHub 源码

扫描二维码推送至手机访问。

版权声明:本文由点度点度金讯时代-BLOG发布,如需转载请注明出处。

本文链接:https://www.lmwmm.com/post/2567.html

分享给朋友:
返回列表

上一篇:在手机装龙虾openclaw

没有最新的文章了…

“AGENTS.md 截断规则深度解析——中文用户如何避免规则丢失” 的相关文章

抖音宣布全量开放帐号IP属地功能

抖音宣布全量开放帐号IP属地功能

       4月29日消息,稍早前,有用户发现,抖音也支持了IP属地功能,即作者、评论显示地理位置。今日晚间,“抖音安全中心”微信公众号宣布,抖音一直致力于维护真实有序的社区讨论氛围,确保平台传播内…

谷歌CEO要求全员测试Bard AI聊天机器人

谷歌CEO要求全员测试Bard AI聊天机器人

2月16日早间消息,据报道,当地时间周三,谷歌母公司Alphabet CEO桑达尔·皮查伊发送内部备忘录,要求谷歌员工贡献2至4个小时,帮助该公司改善其人工智能(AI)聊天机器人Bard。这封邮件称,谷歌目前急需采取行动,赢得下一代AI搜索…

网易有道吃了ChatGPT生态的第一个螃蟹

网易有道吃了ChatGPT生态的第一个螃蟹

ChatGPT正在飞速进化,吃瓜都跟不上速度。3月14日,OpenAI推出GPT-4,在各种专业和学术基准上达到“人类水平”,再次惊艳行业。3月16日,百度宣布正式内测“中国版”ChatGPT——文心一言。紧接着,微软也最新宣布,Micro…

ChatGPT生成精美Echarts图表

ChatGPT生成精美Echarts图表

【需求】:我想要用 echarts V5 来开发一个【柱状图表】 【输入文本】:我想用echarts开发一个【条形图】,目标帮我分析1-3天内每天访问我网站的用户数趋势,1-3天的用户数分别为20,50,60,请帮我…

Windows 12 系统概念版 iSO 镜像下载

Windows 12 系统概念版 iSO 镜像下载

[Download]资源名称:(不包含PE)Windows 12 by sun12文件大小:3.96G下载地址1:https://pan.baidu.com/s/1sWristlACMEpMcQz67zrww?pwd=szpv 下载地址2:…

bat 批处理-解放双手!

bat 批处理-解放双手!

bat 批处理脚本是 Windows 系统上用于批量执行任务的脚本,其后缀名为 .bat。利用批处理文件与“胶水语言” Python 相结合,能解决很多情况下程序的自动化运行问题,为学习、科研、工作上带来很大的便利。近来做科研项目…