SuperAPI AI 工具集

smart-compaction

通用与其它

查看项目

更新于 10-16 03:10

技能介绍

用途:管理 duoduo 频道会话的闲置自动压缩。当 LIVE 会话空闲超过 auto_compact_idle_minutes 且上下文超过 auto_compact_min_context_tokens 时,守护进程会静默执行 /compact,避免缓存 TTL 过期后整段上下文以高价重写。默认在所有环境关闭,由代理作为策略层按会话开启和调参。

主要能力:按会话或按 kind 读取合并配置、来源与实测统计;设置/取消两个旋钮;compaction 后输出 compact notice,包含压缩前后上下文与历史大小、阈值不匹配提示、以及压缩前完整 transcript 的磁盘路径。提供实测字段如 post_total、history_post、p_estimate、suggested_min_context_tokens、g_gt1h_since_prev_compact、g_5m1h_since_prev_compact、idle_ms、threshold_at_fire,并给出盈亏平衡公式 C* = (5·O + 1.25·G·S) / (1.25·G − w)。

使用方式:常用命令包括 duoduo session config <session|alias> get、set auto_compact_idle_minutes=50 auto_compact_min_context_tokens=100000、unset、以及 duoduo session config --kind <kind> set ...。关闭即设 auto_compact_idle_minutes=0,且会保留已校准阈值;真正重置需显式 unset。set/unset 在下次 drain 或 60 秒扫描生效,无需重启;get 不改变任何状态。推荐起点为 idle_minutes=50、min_context_tokens=100000。

适用场景与限制:运行时支持 Claude、Grok、Pi,Codex 是唯一被排除的运行时。Grok 与 Pi 不上报压缩后总量,因此 fuse 不会自动校准,首个 Grok 闲置压缩不应视为校准。阈值不得低于实测 post_total 的 1.2 倍;计量或短 TTL 后端需按实测 G 判断;仅当用户明确要求“kind/所有会话”时才用 --kind,且应在安装频道后配置。缓存 TTL 需自行确认或询问,内核不保存该事实。首次压缩提示到达时应据 suggested_min_context_tokens 重调;用户声明会话珍贵时设为 0 并确认。