Releases: routatic/proxy
Release list
Release v0.2.7
This release introduces improvements to the proxy server's environment handling and conflict resolution. The new Claude Code integration now includes enhanced conflict checks and default configuration adjustments. Key updates include:
- Improved Claude Code environment validation
- Refined default config parsing
- Enhanced error handling for integration scenarios
Breaking Changes: Modify environment-specific logic to accommodate new validation rules.
New Features
- Claude Code integration for smarter conflict detection
- Updated environment configuration parsing
- Enhanced default settings management
Improvements
- Faster startup with optimized initialization
- Better performance in high-load scenarios
- More robust logging for debugging
Documentation
- Updated README with new configuration options
- Added comments explaining conflict resolution logic
- Refactored docs for clarity and consistency
Chores
- Refactored build scripts for compatibility
- Updated CI/CD pipeline with new validation steps
- Added dependency updates for stability
Let's ensure the project remains stable with these changes.
Release v0.2.6
Breaking Changes
ChatMessage.Contenttype changed fromstringtojson.RawMessage.
Existing code that marshals or unmarshalsChatMessagemust be updated to handle the new type.- Image content is now converted to OpenAI’s multimodal
image_urlformat.
Models without vision support ("vision": false) will receive a[Image]placeholder instead of an image URL.
Summary
This release adds full multimodal image support for Anthropic‑to‑OpenAI request conversion, introduces a vision flag in model configuration, and improves request/response handling for image data. The changes also include several bug fixes, performance tweaks, and documentation updates.
New Features
- Add support for image multimodal content in Anthropic‑to‑OpenAI conversion.
- Introduce
ChatContentPartandImageURLtypes for multimodal content arrays. - Add
visionfield toModelConfigto control image handling per model. - Convert Anthropic image sources to OpenAI
image_urlwith base64 data URLs. - Replace images with
[Image]placeholder for non‑vision models to avoid 400 errors. - Update response/stream transformers to use
ContentText()accessor.
Bug Fixes
- Fix image content blocks being discarded during request transformation.
- Fix code review comments: improve error handling and comments.
- Fix image handling for non‑vision models to prevent unwanted fallback.
- Fix formatting inconsistencies in request tests and OpenAI package.
Improvements
- Change
ChatMessage.Contenttojson.RawMessagefor dual‑format serialization (string or array). - Update request and response transformers for better type safety and clarity.
- Enhance test coverage for new multimodal content handling.
Documentation
- Update
config.example.jsonwith newvisionfield and example image handling. - Add comments and documentation for new types (
ChatContentPart,ImageURL).
Chores
- Refactor request and stream handling code for consistency.
- Update internal tests to reflect new content type and image handling logic.
- Minor code formatting fixes across repository.
Release v0.2.5
This release improves connectivity for users operating behind corporate proxies by ensuring the client respects standard proxy environment variables. The change enhances reliability in restricted network environments without altering existing functionality.
Bug Fixes
- Honor
HTTP_PROXYandHTTPS_PROXYenvironment variables by addingProxy: http.ProxyFromEnvironmentto the OpenCode API client transport.
Documentation
- (No documentation changes in this release)
Chores
- (No build, CI/CD, or dependency updates in this release)
Release v0.2.4
BreakingChanges
New Features
- No new features added in this release
Bug Fixes
- Strip
cache_controlfor Kimi models to prevent unintended caching - Use non-Kimi models in
cache_controltests for accurate validation - Add tests to skip and verify
cache_controlstripping for Kimi system messages
Improvements
- No performance, reliability, or code quality improvements in this release
Documentation
- No documentation updates in this release
Chores
- No build, CI/CD, or dependency updates in this release
Release v0.2.3
oc-go-cc Release Notes
This release focuses on enhancing model selection flexibility through per-request model overrides and improving stream reliability by ensuring proper termination handling. Key updates include robust configuration validation and stream cleanup improvements to prevent UI hangs.
New Features
- Add model_overrides for per-request model selection via request flags (e.g.
-m) - Implement validation and routing logic for model overrides with fallback safety nets
- Enhance routing behavior to prioritize overrides while maintaining scenario fallbacks
Bug Fixes
- Fix stream termination to always emit content_block_stop and message_delta on EOF
- Ensure atomic finished flag prevents heartbeat after message_stop
- Handle "tool_use" finish_reason consistently with upstream variations
- Return empty Usage struct instead of nil to prevent subagent crashes
- Initialize Fallbacks and ModelOverrides maps in config to avoid nil panics
Improvements
- Add atomic finished flag for cleaner stream state management
- Enhance routing safety with override fallbacks
- Improve configuration initialization reliability
Documentation
- Update CONFIGURATION.md with model_overrides details and example usage
- Add configuration example file updates for model override parameters
Chores
- (No changes in this release)
Release v0.2.2
This release focuses on expanding model support and refining authentication handling for Anthropic-native endpoints. The primary updates ensure correct routing for the Qwen 3.7-Max model and resolve header conflicts that caused authentication failures with specific providers.
New Features
- Add
qwen3.7-maxto Anthropic endpoint routing to ensure correct routing via the/v1/messagesendpoint.
Bug Fixes
- Remove redundant
Authorization: Bearerheader when sending Anthropic requests to prevent 401 errors with providers requiring onlyx-api-key.
Improvements
- Refine
IsAnthropicModel()logic to correctly categorize Qwen models for proper base URL selection.
Release v0.2.1
New Features
- Add Zen support for model identification and response transformation.
- Integrate Zen provider into OpenCode workflow with updated configuration options.
- Enhance response transformation logic for better accuracy and flexibility.
Improvements
- Refactor and format code consistently across Responses and Gemini API types.
- Optimize configuration loading and validation for smoother setup.
- Strengthen test coverage for OpenCode and Zen integrations.
Bug Fixes
- Resolve test flakiness in OpenCode client tests.
- Fix minor issues in configuration loader tests.
Documentation
- Update README with usage examples for Zen and OpenCode features.
- Expand CONFIGURATION.md and MODELS.md to reflect new provider options.
- Revise CONTRIBUTING.md to guide contributors on new workflows.
Chores
- Add and update dependency versions in go.mod. - Perform codebase refactoring for improved readability and maintainability.
- Clean up unused imports and redundant code.
Release v0.2.0
This release enhances Zen API integration with new configurations and optimized performance.
New Features
- Added Zen API support with updated configuration structures.
- Improved request handling for streaming and non-streaming endpoints.
Bug Fixes
- No critical fixes required; changes are non-breaking.
Improvements
- Enhanced code reliability and scalability.
Documentation
- Updated config documentation and README references.
Chores
- Updated CI/CD pipelines and dependency management.
Release v0.1.9
⚠️ Introduce Docker-based deployment; existing installation scripts may need migration to new Makefile targets.
New Features- Add Docker support with Dockerfile, Makefile targets (docker-up, docker-stop), and Docker-first quick‑start guide.
- Add
.dockerignoreto exclude unnecessary files from images. - Enhance Makefile for streamlined Docker build and run workflows.
Bug Fixes
- Clean up indirect Go dependencies and fix
go.modversion handling. - Remove unnecessary home directory creation for the
appuserin the Dockerfile. - Simplify config file handling by directly copying the example configuration.
Improvements
- Update Go version to 1.25 for latest language features and security patches.
- Refine Docker support documentation and installation instructions.
Documentation
- Expand
INSTALLATION.mdwith detailed Docker deployment steps. - Update
README.mdwith a Docker-first quick start guide and usage examples. - Add example
.envfile for configuration templating.
Chores
- Adjust Makefile to integrate new Docker targets while preserving existing functionality.
- Update version metadata and dependency lists in
go.mod.
Release v0.1.8
This release focuses on improving the reliability of Server-Sent Events (SSE) streaming and ensuring robust termination of message streams. These changes prevent client-side hangs and improve compatibility with various upstream provider response formats.
Bug Fixes
- Ensure complete SSE stream termination by emitting
content_block_stopandmessage_deltaon EOF - Prevent heartbeat keepalive comments from being sent after a message has already stopped
- Map upstream
tool_callsfinish reasons to the expectedtool_usestop reason - Return a zero-value
Usageobject instead ofnilwhen upstream provides no usage information to prevent subagent crashes
Improvements
- Enhance stream stability for clients like Claude Code by ensuring consistent event emission
Chores
- Run
gofmton stream termination tests