OpenClawSkills
GitHub
参考 • 5 分钟阅读

转录卫生

参考:特定于提供商的转录清理和修复规则

本文档描述了在运行之前应用于转录的特定于提供商的修复

(building model context). These are in-memory adjustments used to satisfy strict

提供商要求的内存中调整。它们不会重写磁盘上存储的 JSONL 转录。

范围包括:

- 工具调用 ID 清理

- 工具结果配对修复

轮次验证/排序

思维签名清理

- 图像负载清理

如果您需要转录存储详细信息,请参阅:

- ''/reference/session-management-compaction''

Tutorial.step

全局规则:图像清理

图像负载始终被清理,以防止由于大小

限制而导致的提供商端拒绝(缩小/重新压缩过大的 base64 图像)。

实现:

- ''sanitizeSessionMessagesImages'' 在 ''src/agents/pi-embedded-helpers/images.ts'' 中

- ''sanitizeContentBlocksImages'' 在 ''src/agents/tool-images.ts'' 中

Tutorial.step

历史行为(2026.1.22 之前)

在 2026.1.22 版本之前,OpenClaw 应用了多层转录卫生:

- 一个transcript-sanitize 扩展在每次上下文构建时运行,并且可以:

- 修复工具使用/结果配对。

- 清理工具调用 ID(包括一个保留 ''_''/''-'' 的非严格模式)。

- 运行器还执行了特定于提供商的清理,这重复了工作。

- 在提供商策略之外发生了额外的变异,包括:

- Stripping ''<final>'' tags from assistant text before persistence.

- 删除空的助手错误轮次。

这种复杂性导致了跨提供商回归(特别是 ''openai-responses'' ''call_id|fc_id'' 配对)。2026.1.22 清理删除了扩展,在运行器中集中了逻辑,并使 OpenAI 在图像清理之外''不触摸''。