session-health
Installation
SKILL.md
会话健康度评估(Session Health)
在长会话中评估「继续 vs 新开」的得失,判断是否该新开会话。只评估不修改任何会话文件。 核心原则:压缩比例高 ≠ 该切换;窗口占比低 ≠ 经济无忧。决策 = 继续成本(容量 + 质量 + 每轮 token 经济)vs 切换成本(丢失早期精确细节 + 交接轮次)的权衡。
何时使用
- 被动:用户提到「压缩 / 新开会话 / 上下文开销 / context」时,立即完整评估。
- 主动:长会话中用户持续推进(go / 继续 / 按计划推进)时,顺带检查一次;仅在状态明显恶化或达到阈值时提醒,否则一句「会话健康(压缩 x%)」带过。
硬约束
- 只读评估——不得修改任何工具的会话存储(Deep Code:
~/.deepcode/projects/;Cursor:~/.cursor/;其他工具按适配层定位)。会话 JSONL / SQLite / 索引 / 快照一律只读。 - 不夸大、不虚构——数字来自实际文件统计;查不到就说明查不到,不猜。
- 不机械建议切换——必须评估工作性质与可恢复性;依赖早期内容的工作(重构/优化)即使压缩高也未必该切换。
- 未达阈值不展开——健康时一句话确认即可,完整报告只在达到阈值或用户要求时给。
- 信号缺失走降级,不装精确——工具适配层声明「能测什么、不能测什么」;缺失维度按降级规则处理(见「信号缺失降级规则」),不因缺数据默认健康或默认不健康。
工具适配层(数据来源入口)
本技能不硬编码任何工具的数据格式——每工具的读取方式集中在 工具适配层:
references/tool-data-sources.md——已实现的工具适配节(Deep Code / Cursor):会话目录定位、各信号读取命令、恢复能力入口。references/tool-adapter-template.md——新工具接入模板:按模板 + 探测流程为新工具生成适配节。
防双源:SKILL.md 不写具体数据命令(命令会随工具版本漂移——见刷新机制);命令一律只存在于
references/tool-data-sources.md。本页只留稳定方法论。
工具探测(确定当前跑在哪个工具上)
按以下优先级确认,取第一个可行的:
- 会话上下文/环境变量已显式说明当前工具(如 agent 自知所在工具)→ 直接用。