What's Changed
- refactor: Introduce pre-consume quota and unify relay handlers by @Calcium-Ion in #1594
- 手机客户端下拉菜单采用导航栏的样式 by @fatcat-ww in #1593
- fix: prevent OpenRouter cache calculation with custom model ratios by @yyhhyyyyyy in #1590
- Fix reasoning adaptor for openrouter by @nekohy in #1577
- feat(relay): add OpenAI gpt-4.1 o3 o4 gpt-image-1 models by @wzxjohn in #1597
- feat: use proxy HTTP client fetch models by @feitianbubu in #1584
- feats: the flexable params override and compatible format by @nekohy in #1603
- Feats: use the types of gjson,the error expection,the invert and the key missing process of the condition by @nekohy in #1605
- feat: imagen for vertex channel by @Sh1n3zZ in #1614
- 🤝 docs(README): Introduction to New Partners by @t0ng7u in #1627
- fix: prompt calculation by @funnycups in #1606
- fix: retry requeset body incorrect and fix rerank by @Calcium-Ion in #1642
- Pr/fix task info channel type by @feitianbubu in #1635
- Feats:Standardize ClaudeHandler, add Zhipu_4v Anthropic native channel support by @nekohy in #1611
- feat: query usage of token by @lollipopkit in #1161
- feats:add custom headers override by @nekohy in #1644
- fix: update channel.go fix #1641 by @aotsukiqx in #1647
- feat: When adding or editing channels, add the function of clicking the added model to copy its name by @AAEE86 in #1648
- feat: update openai websearch price by @creamlike1024 in #1549
- feat: adapt Volcengine adaptor for deepseek3.1 with thinking mode by @HynoR in #1652
- fix(adaptor): missing first text delta while convert OpenAI to Claude by @wzxjohn in #1579
- feat(channel): 添加2FA验证后查看渠道密钥功能 by @AAEE86 in #1653
- task_relay_info by @iszcz in #1656
- feat: init default vendor by @feitianbubu in #1564
- feat: add kling video new params support by @feitianbubu in #1688
- feat: add kling video text2Video when image is empty by @feitianbubu in #1399
- 新增"顶栏"、"侧边栏"管理功能 by @x-Ai in #1701
- fix: prevent loop auto-migrate with bool default false by @feitianbubu in #1672
- feat: add channel remark #1710 by @seefs001 in #1713
- feat: bark notification #1699 by @seefs001 in #1712
- fix: update model name filtering to be case-sensitive by @HynoR in #1680
- feat: use audio token usage if return by @feitianbubu in #1721
- openai v1/models 完全兼容 解决接入trae时候的字段校验 by @momomobinx in #1724
- fix: adjust column spans in JSONEditor for better layout #1719 by @seefs001 in #1733
- Feats negative number for override.go by @nekohy in #1749
- fix: ensure the BuiltInTools entry exists before incrementing CallCount by @HynoR in #1754
- feat: gemini-2.5-flash-image-preview 文本和图片输出计费 by @creamlike1024 in #1677
- feat: 改进Claude响应转OpenAI响应 by @creamlike1024 in #1761
- 修改claude system参数为数组,增加通用性 by @yunayj in #1692
- fix: claude header was not set correctly by @creamlike1024 in #1767
New Contributors
- @fatcat-ww made their first contribution in #1593
- @yyhhyyyyyy made their first contribution in #1590
- @funnycups made their first contribution in #1606
- @lollipopkit made their first contribution in #1161
- @aotsukiqx made their first contribution in #1647
- @AAEE86 made their first contribution in #1648
- @x-Ai made their first contribution in #1701
- @momomobinx made their first contribution in #1724
- @yunayj made their first contribution in #1692
Full Changelog: v0.8.9.3.1...v0.9.0