mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-08-06 15:22:12 +03:00
When Claude Code routes through OmniRoute (Claude → OmniRoute → Claude), OmniRoute was stripping all cache_control markers and replacing them with its own generic caching strategy. This broke Claude Code's carefully placed cache breakpoints for plans and other features. Changes: - Add preserveCacheControl parameter to prepareClaudeRequest() - Detect Claude passthrough mode (sourceFormat === targetFormat === CLAUDE) - Skip cache_control normalization when preserveCacheControl=true - Preserve client's cache_control markers in system, messages, and tools This ensures Claude Code's prompt caching optimization works correctly while maintaining OmniRoute's caching strategy for translation scenarios. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>