Token Saving
核心目标
把上下文当作预算:先明确目标,再按证据逐层拿信息,只保留会影响下一步决策的内容。
何时触发
仅当任务明显属于“高上下文成本”时使用,满足任一条件:
- 需要阅读 3 个以上文件、网页、日志或接口文档。
- 工具输出可能超过 200 行。
- 任务跨越多个阶段、多个窗口或多个子代理。
- 任务已拆成多个相对独立的子任务,且确实需要新子智能体分别实现;此时可接入
subagent-driven-development,本技能只负责压缩上下文和控制 token。 - 用户要求总结、压缩、减少 token、节省上下文或避免污染会话。
- 需要写技能、改技能、测试技能、写代码、思考方案,且任务需要跨文件或跨轮次推进。
- 当前对话很长,需要继续推进但必须保留关键事实。
不适用:单句问答、简单计算、单文件小修、单处报错定位、单一函数/变量/文案调整、用户明确要求完整逐字输出。
HARD-GATE
以下规则无例外,即使用户说“直接改”“先做”“这个很简单”“不用管 token”“先手动试试”:
- 任务能在单文件、单轮读取、单次定位内完成时,不触发本技能。
- 单个 import 报错、单处代码错误、单一文案修正、单一参数调整,不触发本技能。
- 如果当前问题不涉及多文件搜索、日志分析、多轮协作或长对话状态保留,不触发本技能。
- 不能把“我只想快速试一下”伪装成“这是复杂任务”;只有明确的多上下文证据才允许触发。
优先级规则
- 如果任务是完整页面或功能模块开发,优先
page-development-workflow。 - 如果任务已拆成独立子任务且需要完整的多代理实现交接,可使用
subagent-driven-development;仅并行调查使用dispatching-parallel-agents。 - 本技能只在上述两个维度成立时,负责上下文压缩、分层读取和 token 控制。
意思是:本技能不决定“做什么”,只决定“怎么用最小上下文推进任务”。
工作流
1. 先设预算
在开始前用一句话写清:
- 当前目标是什么。
- 必须保真的信息是什么。
- 可以压缩或丢弃的信息是什么。
如果目标不清,先问一个选择题,不要先读大量材料。
2. 分层获取上下文
按这个顺序拿信息,够用就停:
- 文件名、目录结构、标题、目录和摘要。
- 当前项目已有清单、AGENTS/README 里的约束摘要。
- 精确搜索命中的片段。
- 相关文件的大段读取。
- 只有在必要时读取完整文件或完整网页。
避免“先全量读再筛选”。每次读之前说明要验证哪个假设。
3. 控制工具输出
- 搜索时优先用具体关键词、路径范围和结果上限。
- 读文件时按章节或相关行段读取,不连续小段不要反复读。
- 多项目 workspace 只读取当前上下文明确涉及的项目。
- 终端命令用项目脚本验证,不打印无关依赖树、完整构建日志或完整锁文件。
- 网页资料只摘取与当前决策有关的事实,保留来源链接。
- 日志分析先定位错误关键词、时间点和堆栈顶部,再扩展上下文。
4. 压缩并替换上下文
每完成一个阶段,立即把上下文压缩成「目标、决策、证据、风险、下一步」5 类事实,替代之前的原始材料;只有在用户要求或需要引用精确文本时,才再展开原始材料。
5. 上下文过大时提醒用户手动压缩
/compact 是宿主内置斜杠命令,Skill 无法调用;上下文过大时只能提醒用户手动执行,不要声称已经执行。
大量文件读取场景优先用子代理(runSubagent)承载;如果任务已经拆成多个相对独立且可交付的子任务,再接入 subagent-driven-development,按任务边界分派和收口验证。
6. 回复要短,优先省输出 token
默认输出结构:
- 结论或当前决策,一句话。
- 关键证据,最多 3 条,每条不超过一行。
- 下一步,最多 1-2 个。
硬规则:
- 不要输出完整思考过程、完整工具日志、无关背景、重复的文件内容。
- 不要输出情绪价值和过渡句。
- 能用结构化 JSON 回答的,不要用 prose。
- 用户没问原因,不要主动解释。
红线
- 不要为了省 token 跳过必要验证。
- 不要压缩掉用户明确要求保留的细节。
- 不要把不确定事实写成确定结论。
- 不要用“节省 token”为理由省略安全、测试、影响面或来源证据。
- 不要在一个回复里同时解决多个未确认的大范围问题;先收敛范围。
- 当任务已经拆成独立且可交付的子任务,并确实需要多代理实现时,才接入
subagent-driven-development;不要用伪装式的 fork 方案替代真实子代理隔离。 - 不要读取未命中的技术栈模块、无关 workspace 项目或完整模板,只因为它们“可能有用”。
- 不要声称调用或执行了
/compact,它只能由用户手动触发。 - 不要在不需要时触发本技能;如果任务是单文件、单次定位、单点修改,直接走常规流程,不要为“节省 token”制造额外上下文。
完成检查
结束前确认:
- 当前回答只包含推进任务所需信息。
- 证据足够支撑结论。
- 未读取或粘贴无关大段内容。
- 下一步明确且数量不超过 3 个。