Commit Graph

1286 Commits

Author SHA1 Message Date
Armin Ronacher
64882c6a51 chore(deps): remove unused dependencies (#4453) 2026-05-12 23:35:41 +02:00
Mario Zechner
f6b6b1f052 Merge pull request #4354 from haoqixu/fix-bun-ws-proxy
fix(ai): respect proxy envs in bun's websocket
2026-05-10 18:03:48 +02:00
Mario Zechner
cb3c42ecf5 Merge pull request #4358 from yanirz/fix/fireworks-session-affinity-cache
fix(ai): add session affinity and compat fixes for Fireworks provider caching
2026-05-10 18:00:52 +02:00
Mario Zechner
533d37305c fix(ai): align copilot claude adaptive test 2026-05-10 17:51:08 +02:00
Mario Zechner
cf7f2e3dbb fix(ai): update copilot claude test model 2026-05-10 17:47:45 +02:00
yanirz
99dc6fcec8 fix(ai): add session affinity and compat fixes for Fireworks provider caching
Fireworks prompt caching is enabled by default (automatic prefix matching),
but on serverless infrastructure, requests hit random replicas. Without
session affinity, the per-replica cache misses, negating cache hit rates
and the discounted cacheRead pricing.

Changes:

- Add sendSessionAffinityHeaders and supportsCacheControlOnTools
  to AnthropicMessagesCompat interface
- Send x-session-affinity header for Fireworks (and Cloudflare AI
  Gateway Anthropic) when sessionId is available and caching is enabled
- Omit cache_control on tool definitions for Fireworks (unsupported
  per https://docs.fireworks.ai/tools-sdks/anthropic-compatibility)
- Default supportsEagerToolInputStreaming to false for Fireworks
  (unsupported field)
- Default supportsLongCacheRetention to false for Fireworks
  (cache_control.ttl not supported)
- Add compat settings to Fireworks models in generate-models.ts
- Update generated models with Fireworks compat settings
- Add integration tests for session affinity and tool compat

Refs: https://docs.fireworks.ai/guides/prompt-caching
Refs: https://docs.fireworks.ai/tools-sdks/anthropic-compatibility
2026-05-10 00:11:36 +02:00
haoqixu
8c2e3eddec fix(ai): respect proxy envs in bun's websocket
fixes #4346
2026-05-10 03:43:07 +08:00
Mario Zechner
7adb8e7634 feat(ai): add Together AI provider 2026-05-08 16:44:18 +02:00
Mario Zechner
9751057be9 Merge pull request #3887 from cristinaponcela/feat/image-outputs
feat: image content
2026-05-08 15:57:06 +02:00
Cristina Poncela Cubeiro
8fa1194c23 fix: no fallback for apiKey 2026-05-08 11:23:15 +02:00
Cristina Poncela Cubeiro
0e4f845cf4 fix: lazy loading 2026-05-08 11:08:04 +02:00
Mario Zechner
783e96a144 fix(ai): disable OpenAI reasoning where supported 2026-05-07 22:52:54 +02:00
Mario Zechner
b38bd49be1 Add [Unreleased] section for next cycle 2026-05-07 18:02:17 +02:00
Mario Zechner
1eee081e29 Release v0.74.0 2026-05-07 17:15:00 +02:00
Mario Zechner
551385e409 chore: migrate packages to earendil works scope 2026-05-07 17:13:48 +02:00
Cristina Poncela Cubeiro
ffdf426e33 Merge remote-tracking branch 'upstream/main' into feat/image-outputs 2026-05-07 16:46:17 +02:00
Mario Zechner
147f815802 Add [Unreleased] section for next cycle 2026-05-07 16:45:27 +02:00
Mario Zechner
781152fc24 Release v0.73.1 2026-05-07 16:44:28 +02:00
Mario Zechner
7fa924b77b docs: audit unreleased changelog entries 2026-05-07 16:43:26 +02:00
Cristina Poncela Cubeiro
32b2cd0720 delete: images() 2026-05-07 16:21:50 +02:00
Mario Zechner
3e5ad67e0f chore: migrate pi packages to earendil works scope 2026-05-07 15:59:42 +02:00
Mario Zechner
9eb126e7b2 docs(ai): document interleaved stream events 2026-05-07 11:42:35 +02:00
Armin Ronacher
6b271842e2 fix(ai): handle mixed chat completion deltas
Fixes #4228
2026-05-07 00:12:19 +02:00
Armin Ronacher
ace3fd7e30 fix(ai): normalize kimi k2p6 alias to kimi-for-coding closes #4218 2026-05-06 11:34:49 +02:00
Mario Zechner
3029836894 fix(ai): stop Codex OAuth stderr writes
closes #4141
2026-05-06 00:14:40 +02:00
Mario Zechner
31f5c23271 fix(ai): handle OpenAI Responses reasoning text deltas 2026-05-06 00:08:26 +02:00
Mario Zechner
15aa313501 Closes #4184, codex needs a non-empty system prompt 2026-05-05 14:50:27 +02:00
Armin Ronacher
b5755fd27d feat(oauth): support interactive login selection (#4190) 2026-05-05 13:16:56 +02:00
Cristina Poncela Cubeiro
074747c687 docs: readme image section 2026-05-05 10:06:27 +02:00
Cristina Poncela Cubeiro
3728e4b9e6 e2e: add images test 2026-05-05 09:47:33 +02:00
Cristina Poncela Cubeiro
0d96b9be7f rename: generateImages 2026-05-05 09:30:44 +02:00
Cristina Poncela Cubeiro
60e885f985 refactor: image providers into subfolder 2026-05-05 09:30:15 +02:00
Armin Ronacher
3c9c54d51b Add [Unreleased] section for next cycle 2026-05-04 20:33:08 +02:00
Armin Ronacher
dbcb473d6f Release v0.73.0 2026-05-04 20:32:03 +02:00
Armin Ronacher
299dc70abe docs(changelog): audit unreleased entries 2026-05-04 20:27:27 +02:00
Cristina Poncela Cubeiro
5731e13a61 Merge branch 'main' into feat/image-outputs 2026-05-04 16:42:51 +01:00
Cristina Poncela Cubeiro
ab14238f1d dog 2026-05-04 17:26:50 +02:00
Cristina Poncela Cubeiro
b9c19135d9 cleanup 2026-05-04 17:10:44 +02:00
Cristina Poncela Cubeiro
63c61aac6f feat: image models 2026-05-04 17:07:02 +02:00
Cristina Poncela Cubeiro
d9adc536f5 feat: openrouter images 2026-05-04 17:00:58 +02:00
Cristina Poncela Cubeiro
e9b0af0a11 feat: images stream 2026-05-04 16:46:20 +02:00
Cristina Poncela Cubeiro
62d9132648 feat: images registry 2026-05-04 16:43:51 +02:00
Cristina Poncela Cubeiro
e3d066daa0 feat: images api types 2026-05-04 16:39:38 +02:00
Cristina Poncela Cubeiro
cbf3c333ef revert 2026-05-04 15:43:45 +02:00
Mario Zechner
23420012ab fix(coding-agent): decouple codex session cleanup 2026-05-04 00:45:56 +02:00
Armin Ronacher
370fdae6fa fix(ai): fall back from codex websocket to sse (#4133) 2026-05-03 22:51:42 +02:00
Jake Jia
693888ac47 feat(ai): switch xiaomi default to api billing, add per-region token plan providers (#4112)
Built-in `xiaomi` provider now targets the API billing endpoint (https://api.xiaomimimo.com/anthropic) — a single stable URL for keys issued at platform.xiaomimimo.com. The Token Plan endpoints are exposed as three sibling providers, each with its own env var:

- xiaomi-token-plan-cn: XIAOMI_TOKEN_PLAN_CN_API_KEY
- xiaomi-token-plan-ams: XIAOMI_TOKEN_PLAN_AMS_API_KEY
- xiaomi-token-plan-sgp: XIAOMI_TOKEN_PLAN_SGP_API_KEY

BREAKING CHANGE: users who previously set XIAOMI_API_KEY against the Token Plan AMS endpoint must move to xiaomi-token-plan-ams and set XIAOMI_TOKEN_PLAN_AMS_API_KEY. This also resolves the 401 reported by on #4005, where a platform.xiaomimimo.com key fails against the Token Plan endpoint.

closes #4082
2026-05-03 12:57:11 +02:00
myu003
7c5ef0b70e test(ai,coding-agent): stabilize env-sensitive test cases (#4119) 2026-05-03 12:55:23 +02:00
Jakub Synowiec
c8edb256b9 fix(ai): fix mismatch between models.dev and OpenCode Go (Qwen3.5/3.6, MiniMax M2.7) (#4110) 2026-05-03 00:41:55 +02:00
Armin Ronacher
b9efafc535 fix(ci): repair failing test expectations 2026-05-03 00:04:27 +02:00