OpenClaw 龙虾之父教你省钱:开源 Skill 给你的 Skill 减肥

艾奇百科 百科资讯 1

Skill 水平参差不齐,龙虾之父 Peter 看不下去了。

各位:别把 Skill 描述写得像本书一样,乱七八糟的东西都塞进上下文。

为了解决这个问题,他写了一个给所有 Skill 做体检的 Skill,给大伙开源出来。

这个观点在评论区引发网友共鸣。

有人提到,写了 90 多词的描述 Agent 都不能好好调用技能。砍到 40 词以内后,Agent 反而一次选对了技能。

那么,你的 Skill 是不是也该做一次“体检”了?

龙虾之父给 Skill 做大扫除

Skill 提示词的问题,表面看是文案长短,实际影响运行时成本。多加一句描述,Agent 每次调用就要多付一笔 token 账单。

Agent 看到的信息越多,选择时的噪声也越多。延迟、成本、注意力,全都在里面。

龙虾之父主张 Skill 要像路标。目的是要让 Agent 找到路,不该把整本说明挂在路标上。

他开源的 skill-cleaner 就用这种风格打了个样。

Skill.md 只有 56 行提示词。

调用的脚本足足近千行代码。

再体会一下,Skill.md 是路标,代码才是说明书。

这个 skill 有 5 个核心功能。

  • 1、技能提示词预算审计计算

技能占用的上下文令牌空间,分析预算占用比例,给出预算优化方案,避免技能占用过多上下文资源。

  • 2、重复技能检测

跨 Codex 内置库、插件缓存、代码库、个人技能根目录,扫描同名技能、描述 / 内容高度相似的重复技能,标记冗余项。

  • 3、未使用技能筛查

基于历史日志,识别长期未被调用、未被提及、无使用痕迹的闲置技能,提供清理候选清单。

  • 4、技能根目录审计

统计所有技能的来源根目录,标注已启用 / 禁用状态,梳理技能加载链路。

  • 5、描述精简优化

找出冗长的技能描述,推荐通过简化语法压缩长度,节省提示词预算。

测试运行一下,结果大概这样:

每个功能的工作流程分为三步。

  • 1、执行分析脚本

在技能目录 / 仓库根目录运行 Node.js 脚本(支持自定义参数:时间范围、日志深度、预算阈值、自定义根目录等)。

  • 2、查看审计报告

按顺序阅读核心报告:技能预算 → 描述优化项 → 重复技能 → 未使用技能 → 根目录汇总。

  • 3、安全清理 / 编辑

优先保留 Codex 内置技能,删除本地 / 重复副本;保留仓库核心运维技能;不删除未确认的无关目录,修改前验证保留文件有效性。

脚本里值得分析的细节还有几个。

脚本用了 Codex 官方源码同款提示词预算核算逻辑。优先读取本地模型缓存配置获取 GPT-5.5 上下文窗口参数,默认 272ktoken。

严格遵循 Codex 计费规则(UTF8 字节数 / 4 向上取整),以模型上下文 2% 为默认技能预算基数,结合技能优先级排序规则(系统技能>内置技能>插件技能>仓库自定义技能),核算全量技能原始占用令牌、最小渲染令牌、预算内可用令牌。

同时可模拟真实运行场景,计算预算不足时的技能描述截断字符数、被省略技能数量,精准输出预算使用率、剩余预算、上下文占用比例等核心指标,直观展示技能体系的资源负载情况。

具体到精简 Skill 描述,也是分为三步

  • 文本预处理,统一格式,全部小写、剔除标点符号等。

  • 内置预设场景关键词词库,识别技能所属业务领域

  • 匹配到场景后调用预设的标准化短动作词组替换原有冗长描述

如,调试类 → debug, inspect, fix

部署发布类 → deploy, release, verify

检索归档类 → search, sync, summarize

最后看起来就是这样的。

甚至 Peter 本人在帖子评论区也开始用这种“穴居人”风格说话:

真是把省 token 刻到骨子里了。

install skill

agent smart

user happy

GitHub:

https://github.com/steipete/agent-scripts/tree/main/skills/skill-cleaner