cache-keeper · git:20260818.665dd31 · 2026-08-18 · sha256 82537d022feb7ed5
cache-keeper git:20260818.665dd31A
Immutable. This exact content never changes and is served at /api/v1/blob/82537d022feb7ed5.
--- name: cache-keeper description: 通过定时发送轻量保活消息,维持当前会话的服务端 prompt 缓存,降低输入 token 成本 type: prompt whenToUse: 当用户想要维持 Kimi Code 会话缓存、减少缓存过期导致的重复输入计费,或管理缓存保活定时任务时 arguments: - action - interval --- # Cache Keeper — 会话缓存保活管理 你在**当前会话**中直接操作 cron 工具完成任务。**禁止派子代理**——缓存绑定主会话前缀,子代理是独立上下文,派子代理执行本 skill 完全无效。 用户意图由参数给出:`action` = `$action`(on / off / status / refresh,省略时视为 status),`interval` = `$interval`(分钟,仅 on 时使用,默认 15)。 ## 保活消息文本(逐字使用,不得修改) 创建 cron 时,prompt 参数必须逐字使用下面这一行,一个字都不要改: ``` 缓存维护消息:不用思考,直接回复"收到"两个字即可,不要做任何其他事情。 ``` ## 各 action 的操作步骤 ### on — 开启保活 1. 先调用 `CronList`。如果已存在 prompt 含"缓存维护消息"的任务,告知用户已在运行(报告其 id、下次触发时间),不要重复创建,直接结束。 2. 确定间隔:`$interval` 若为数字则使用,否则用 15。若小于 5 或大于 60,向用户确认后再继续。 3. 调用 `CronCreate`: - `cron`: 间隔 N 分钟时填 `*/N * * * *`(例如 15 分钟填 `*/15 * * * *`) - `prompt`: 上面的保活消息文本,逐字 - `recurring`: true 4. 完成后告知用户:任务 id、间隔、下次触发时间,并明确提醒两点—— - 该任务只绑定**当前会话**,新开会话需重新执行 `/cache-keeper on` - 循环任务 **7 天后自动过期**,届时用 `/cache-keeper refresh` 重建 ### off — 关闭保活 1. 调用 `CronList`,找到 prompt 含"缓存维护消息"的任务。 2. 对其 id 调用 `CronDelete`,向用户确认已删除。 3. 找不到就明说"当前没有运行中的保活任务",不要删除其他任务。 ### status — 查看状态(默认) 1. 调用 `CronList`,筛出 prompt 含"缓存维护消息"的任务。 2. 报告:是否存在、任务 id、cron 表达式、下次触发时间、已运行天数(ageDays)、是否临近 7 天过期(ageDays ≥ 6 时建议 refresh)。 ### refresh — 续期重建(应对 7 天过期) 1. 调用 `CronList`,若存在 prompt 含"缓存维护消息"的任务,记录其 cron 表达式后对其执行 `CronDelete`。 2. 用原间隔(找不到旧任务则用 `$interval` 或 15)按 on 的步骤重新创建。 3. 告知用户新任务 id 与新的 7 天周期起点。 ## 说明与边界(用户问起时如实回答) - 保活只在会话**空闲**时触发;正在执行长任务时会顺延并合并,不会打断工作。 - CLI 关闭期间不触发;恢复同一会话(resume)后自动继续。 - 缓存窗口是服务端行为(约 20 分钟以上,随负载波动),本 skill 无法保证命中率,效果以用量明细为准。 - 保活本身有极小开销:每次触发是一次微型请求。