关于 token-efficiency
面向编码 Agent 的技能,旨在减少冗长输出、不必要的工具调用和反复迭代,并提供输出规则、任务调用预算及单次完成流程。
主要功能
- 01删除客套话和重复提示
- 02按任务设置工具调用预算
- 03遵循单次编码流程
- 04采用编码、分析和 Agent 配置
- 05跟踪令牌效率指标
适用场景
- 01精简 Agent 的冗长回复
- 02规划编码任务的工具调用
- 03减少重复读取文件和修改
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ rohitg00/ pro-workflow --skill token-efficiency安装后在 Claude Code 中输入/token-efficiency确认已加载。
详细介绍
Token 效率
减少输出中的 token 浪费,避免消耗上下文的迭代周期。
触发条件
适用于以下情况:
- 会话感觉成本高或速度慢
- 输出冗长,包含填充文字
- Claude 反复读取文件或进行不必要的迭代
- 为高效使用 token 的工作设置新项目
反迎合规则
以下模式会浪费 30-60% 的输出 token:
| 模式 | 示例 | 修正方法 |
|---|---|---|
| 迎合式开场白 | "当然!好问题!" | 删除。直接给出答案。 |
| 重述提示词 | "你在问关于 X 的问题……" | 删除。直接回答。 |
| 多余的结束语 | "如果你还需要帮助,随时告诉我!" | 删除。回答完就停止。 |
| 未经请求的建议 | "你可能还想……" | 除非对方提出要求,否则删除。 |
| AI 免责声明 | "作为 AI 模型……" | 全部删除。 |
| 冗长的前言 | "我来帮你处理……" | 删除。直接开始行动。 |
工具调用预算
根据任务复杂度设置明确的预算:
| 任务类型 | 工具调用预算 | 收尾阈值 |
|---|---|---|
| 快速修复 / 查询 | 20 次调用 | 15 次 |
| Bug 修复 | 30 次调用 | 25 次 |
| 功能(小型) | 50 次调用 | 40 次 |
| 功能(大型) | 80 次调用 | 65 次 |
| 重构 | 50 次调用 | 40 次 |
| 探索 / 研究 | 30 次调用 | 25 次 |
达到收尾阈值时:提交进展,评估剩余工作,决定是继续还是重新开始。
一次完成编码规范
对于简单到中等的任务:
- 先阅读所有相关文件,包括测试
- 编码前先理解测试的断言内容
- 一次性写出完整解决方案——不要逐步修改
- 运行一次测试——如果通过,立即停止
- 如果失败:阅读错误信息,修复一次,然后重新测试
- 同一失败绝不迭代超过两次——重新思考解决方法
- 通过的代码绝不重构、改进或润色
任务配置
根据正在执行的工作切换配置:
编码配置
- 先返回代码,之后再解释(仅在不明显时)
- 采用最简单的可行方案,不要过度设计
- 修改前先读取文件——始终如此
- 不要为未修改的代码添加文档字符串
- 不要为不可能发生的情况添加错误处理
- 说明 Bug,展示修复,然后停止
Agent / 流水线配置
- 仅输出结构化内容:JSON、项目符号、表格
- 面向人类读者时才使用散文
- 所有输出都必须无需后处理即可解析
- 执行任务,不要叙述操作过程
- 绝不编造文件路径、API 端点或函数名
- 如果未知:返回 null 或 "UNKNOWN",绝不猜测
分析配置
- 先给出发现,之后再补充背景和方法
- 优先使用表格和项目符号,而非散文
- 数字必须注明单位
- 绝不捏造数据点
- 先总结(最多 3 条),最后列出注意事项
读后再写强制规则
硬性规则:
- 本次会话中未读取过的文件,绝不写入
- 已读取且未修改的文件,绝不重新读取
- 编码前先读取测试——写代码前先了解哪些测试应当通过
- 尝试修复前仔细阅读错误输出
仅限 ASCII 的输出
所有输出只能使用 ASCII 字符:
- 使用
--,不要使用—(破折号) - 使用
",不要使用弯引号"" - 使用
',不要使用弯撇号'' - 不要使用表情符号,除非明确要求
- 不要使用 Unicode 装饰符或特殊字符
这样可以确保内容便于干净地复制粘贴,并兼容下游系统。
衡量影响
跟踪以下指标,衡量 token 节省情况:
- 输出长度:每次响应的平均字数(目标:减少 30-50%)
- 每项任务的工具调用次数:应处于对应预算等级内
- 重复读取次数:应接近零
- 未读先写次数:应为零
- 迭代周期:测试应在 1-2 次尝试内通过,而不是 5 次以上
署名
token 效率模式改编自 drona23/claude-token-efficient(MIT)。
评论
支持 Markdown