| name | session-safety |
| description | 会话输出安全控制。防止超长输出导致失败,必要时分段写入文件。 |
_session-safety
目标
控制输出长度,避免会话失败;必要时采用分段写入文件。
核心原则:预判优先,不事后补救
- 在生成内容前先评估大小,而不是等到生成完成或 API 失败后才考虑分段
- 若预计内容 > 5KB,直接采用分段策略
- 宁可过度分段,不可遗漏分段
适用范围
- 可能产生超长输出的任务
- 生成大文档/长列表/多文件内容
必须遵循的规则
- 优先写入文件而非直接大段输出。
- 分段写入同一文件,配合
_file-output-guard。
- 输出确认信息即可,不重复打印全文。
超长阈值参考
用以下参考值判断是否需要分段:
| 输出规模 | 处理方式 | 说明 |
|---|
| < 5KB | 直接输出 | 可在回复中直接显示,无安全风险 |
| 5KB - 20KB | 建议分段 | 输出量较大,建议分段写入文件;若内容结构清晰独立,可直接输出 |
| > 20KB | 必须分段 | 超过会话安全阈值,必须使用 create_file + apply_patch 分段写入 |
如何快速评估输出大小:
- 1KB ≈ 200 字(中文)或 400 字(英文)
- 10KB ≈ 2000 字(中文)或 4000 字(英文)
- 20KB ≈ 4000 字(中文)或 8000 字(英文)
决策流程:
- 预估输出大小
- 若 > 5KB,创建文件入口
- 在回复中输出 "已分段写入到 xxx 文件" 确认信息
- 若需追加,使用
_file-output-guard 的分段续写规则
检查清单