David Brailovsky
3524cd4c85
Merge remote-tracking branch 'origin/main' into add-kimi-deferred-tools
2026-07-16 17:30:50 +02:00
David Brailovsky
6a884b4a75
add kimi-k3
2026-07-16 15:29:32 +00:00
David Brailovsky
e022eec37d
Add [Unreleased] section for next cycle
2026-07-16 16:35:19 +02:00
David Brailovsky
fae7176cb9
Release v0.80.8
2026-07-16 16:35:16 +02:00
Armin Ronacher
6442536b1e
fix(coding-agent): bundle OAuth flows in Bun binaries
2026-07-16 15:36:16 +02:00
David Brailovsky
f16b4e0cda
add deferred tools support for kimi in openai-completions api
2026-07-16 12:26:56 +00:00
Armin Ronacher
eb793510ad
docs: audit unreleased changelogs
2026-07-16 13:58:56 +02:00
Armin Ronacher
97f9978fa6
feat(coding-agent): add model catalog refresh flag
2026-07-16 12:46:49 +02:00
Armin Ronacher
2be9efa19c
feat(ai): publish generated model catalogs to R2 ( #6720 )
2026-07-16 11:43:47 +02:00
Milosz Jankiewicz
5220aba619
feat(ai): add xAI device OAuth and route grok-4.5 through Responses ( #6651 )
...
* feat(ai): add xAI device OAuth and route grok-4.5 through Responses
Add xAI device-code OAuth alongside XAI_API_KEY. Route only grok-4.5
through Responses with low/medium/high reasoning; other xAI models stay
on Completions.
* fix(ai): tolerate xAI device-code interval 0 and correct token poll error label
---------
Co-authored-by: Jaaneek <Jaaneek@users.noreply.github.com >
2026-07-16 09:58:24 +02:00
Mario Zechner
5e336cfa80
Merge origin/main into model runtime changes
2026-07-15 13:00:45 +02:00
Mario Zechner
bd9e09db44
feat(coding-agent): expose dynamic provider refresh
2026-07-15 12:56:50 +02:00
Mario Zechner
cd7cad4ee2
feat(coding-agent): merge origin/main into model runtime facade
2026-07-15 12:25:36 +02:00
David Brailovsky
dcfe36c797
clamp session-id to 64 chars for openai-codex ( #6653 )
...
fixes #6630
2026-07-14 21:09:29 +02:00
Armin Ronacher
9d09075c53
Add [Unreleased] section for next cycle
2026-07-14 18:36:49 +02:00
Armin Ronacher
818d67457c
Release v0.80.7
2026-07-14 18:36:46 +02:00
Armin Ronacher
53a087fe82
docs: audit unreleased changelogs
2026-07-14 18:18:05 +02:00
Mario Zechner
9993c96907
feat(coding-agent): replace model registry with model runtime
...
Move provider auth and OAuth flows onto pi-ai Models, compose models.json and extension overlays through ModelRuntime, and retain ModelRegistry as an extension compatibility facade.
2026-07-14 17:48:45 +02:00
David Brailovsky
1f9e846c84
don't send session-id header to opencode openai-responses models ( #6645 )
...
fixes #6625
2026-07-14 15:57:01 +02:00
Armin Ronacher
92ffae5228
fix(ai): type Anthropic probes by catalog providers
2026-07-14 12:29:38 +02:00
Armin Ronacher
961fa6c142
feat(ai): add Radius gateway support
2026-07-14 11:01:21 +02:00
David Brailovsky
0e6909f050
anthropic-messages: skip usage fields if empty ( #6611 )
...
fixes : #6567
2026-07-13 18:07:59 +02:00
David Brailovsky
1f0dbc008c
backfill encrypted_content from response.completed for missing reasoning blocks ( #6608 )
...
fixes #6409
2026-07-13 17:27:36 +02:00
David Brailovsky
f8f75544b6
pass bedrock unhandled stop reasons to error message ( #6598 )
...
fixes #6485
2026-07-13 11:39:28 +02:00
Petr Houška
298665cfb9
fix(ai): support OpenRouter session affinity ( #6496 )
...
Fixes #6366
2026-07-13 09:57:53 +02:00
Petr Houška
f7b78e2a42
fix(ai): route GitHub Copilot MAI-Code models through /responses endpoint ( #6544 )
...
mai-code-1-flash-picker is not accessible via /chat/completions and
must use the Copilot /responses endpoint. Update generate-models.ts to
send mai-* models to the responses API and regenerate the affected
model entry.
2026-07-13 09:56:40 +02:00
Alexey Zaytsev
eacaa130ab
ai: OpenAI and Codex forced tool calls ( #6588 )
...
* feat(ai): support forced OpenAI Codex tool calls
* feat(ai): support OpenAI Responses tool choice
2026-07-13 09:48:33 +02:00
Mark Phelps
bdd5c53bcd
fix(ai): fall back to ambient Cloudflare account id for key-only credentials ( #6292 )
...
Cloudflare Workers AI / AI Gateway resolved provider config from the
credential only, never consulting ambient env for a field the credential
omitted. The coding-agent /login flow stores just the API key, so
CLOUDFLARE_ACCOUNT_ID lives only in the environment; the key-only credential
short-circuited the env lookup, the account id stayed unresolved, and requests
hit the literal {CLOUDFLARE_ACCOUNT_ID} base URL -> 404.
resolveValue now merges per field: prefer the credential value, fall back to
ctx.env(name).
closes #6021
Signed-off-by: Mark Phelps <209477+markphelps@users.noreply.github.com >
Co-authored-by: Mario Zechner <badlogicgames@gmail.com >
2026-07-11 14:30:40 +02:00
Armin Ronacher
850c210b77
fix(ai): filter ambient auth markers in compat dispatch
2026-07-11 13:38:48 +02:00
Rafał Krzyważnia
19fe0e01c5
fix(ai): preserve ambient AWS auth for Bedrock
...
Do not treat Pi’s internal ambient-auth marker as a Bedrock bearer token. This preserves SigV4 signing for AWS profiles, IAM credentials, and roles while retaining bearer authentication for real Bedrock API keys.\n\nFixes #6531
2026-07-11 13:12:23 +02:00
Armin Ronacher
4c1861033b
docs: audit unreleased changelogs
2026-07-11 00:01:31 +02:00
Armin Ronacher
3d8f74357c
feat(ai): support message-anchored tool loading ( #6474 )
...
This adds cache-friendly dynamic tool loading anchored to tool results. Purely additive active-tool changes are recorded with `addedToolNames`, allowing supported Anthropic and OpenAI Responses models to load tool definitions at the point they become available instead of placing them in the cached prompt prefix.
It retains safe fallback behavior for unsupported models and non-additive changes but it will wipe caches.
2026-07-10 23:52:54 +02:00
Armin Ronacher
3ea064ea2a
fix: support Bedrock API key login
2026-07-10 19:34:11 +02:00
David Brailovsky
bc469b0338
add xhigh and max to all fable-5 providers ( #6490 )
...
related to #6374
2026-07-10 11:42:53 +02:00
David Brailovsky
46145bef07
fix openrouter models: use context length from top provider ( #6481 )
...
fixes #6378
2026-07-10 09:51:53 +02:00
Armin Ronacher
34582ef34b
Add [Unreleased] section for next cycle
2026-07-10 01:16:58 +02:00
Armin Ronacher
2b3fda9921
Release v0.80.6
2026-07-10 01:16:55 +02:00
Armin Ronacher
5b4bda305e
fix(ai): refresh generated model catalogs
2026-07-10 01:16:27 +02:00
Armin Ronacher
1775fe4c52
docs: audit unreleased changelogs
2026-07-10 01:13:38 +02:00
Armin Ronacher
338746596b
fix(ai): isolate service-tier pricing test
2026-07-10 01:02:55 +02:00
David Brailovsky
6731a0ba9e
fix: send anthropic thinking blocks also when thinking text is empty ( #6457 )
...
fixes : #6376
2026-07-09 23:25:22 +02:00
Armin Ronacher
3664806f2f
fix(ai): add GPT-5.4 and GPT-5.5 long-context pricing
2026-07-09 23:13:58 +02:00
Armin Ronacher
a9ecf301fb
feat(ai): add input-based pricing tiers
2026-07-09 22:44:29 +02:00
Armin Ronacher
6c735db060
fix(ai): exclude nonexistent GPT-5.6 alias
2026-07-09 22:44:08 +02:00
Mario Zechner
fbdd46389c
feat(ai): add max thinking level
2026-07-09 22:30:53 +02:00
Mario Zechner
8973ae28ab
fix(ai): ignore stale usage after compaction
...
closes #6464
2026-07-09 21:44:53 +02:00
Armin Ronacher
e3513193bf
Add [Unreleased] section for next cycle
2026-07-09 21:04:09 +02:00
Armin Ronacher
cc62baa442
Release v0.80.5
2026-07-09 21:04:06 +02:00
Armin Ronacher
ef793a983b
Add [Unreleased] section for next cycle
2026-07-09 20:53:01 +02:00
Armin Ronacher
912d0953f6
Release v0.80.4
2026-07-09 20:52:57 +02:00