Commit graph

534 commits

Author SHA1 Message Date
a20a72cd2e models 2026-03-05 16:45:36 -08:00
Mario Zechner
b14c359289 Add [Unreleased] section for next cycle 2026-03-06 00:42:35 +01:00
Mario Zechner
863135d429 fix(ai): keep mistral browser-safe 2026-03-06 00:16:18 +01:00
Mario Zechner
a31065166d Merge branch 'feat/use-mistral-sdk' 2026-03-05 23:49:29 +01:00
Mario Zechner
4c175790b1 fix(ai): preserve mistral thinking replay 2026-03-05 23:49:18 +01:00
Mario Zechner
16ec7de29c fix(ai): cap gpt-5.4 context windows to 272k 2026-03-05 22:57:20 +01:00
Markus Ylisiurunen
f8d731a134 fix codex context window and add a few tests 2026-03-05 22:54:16 +01:00
Markus Ylisiurunen
8a6384a925 add support for gpt-5.4 2026-03-05 22:53:08 +01:00
Mario Zechner
a0d839ce84 fix(ai): use skip_thought_signature_validator for unsigned Gemini 3 tool calls
Replace text fallback with the official sentinel value so unsigned function
calls retain structured context in multi-turn conversations.

closes #1829
2026-03-05 22:04:00 +01:00
Mario Zechner
cfbb15876a fix(ai): antigravity endpoint cascade on 403/404, add autopush fallback, strip extra headers
closes #1830
2026-03-05 21:59:43 +01:00
Mario Zechner
8f2af2ae7e feat(ai): add github-copilot gpt-5.3-codex fallback closes #1853 2026-03-05 21:47:52 +01:00
Mario Zechner
8fc2b76827 fix(ai): omit empty OpenAI Responses thinking blocks on replay 2026-03-05 21:28:16 +01:00
Mario Zechner
87d71380e2 fix(ai): preserve OpenAI Responses assistant phase across turns closes #1819 2026-03-05 21:13:06 +01:00
Mario Zechner
708ce9d4ce Add [Unreleased] section for next cycle 2026-03-05 07:14:13 +01:00
Mario Zechner
668ebc0941 fix(ai): replace Function-based dynamic imports with module imports (fixes #1814) 2026-03-04 20:50:14 +01:00
Mario Zechner
0199abfd11 fix(binary): preload Bedrock provider module for Bun bundle
refs #1814
2026-03-04 20:47:41 +01:00
Mario Zechner
e0754fdbb3 fix(ai,coding-agent): make pi-ai browser-safe and move OAuth runtime exports
- add browser smoke bundling check to root check + pre-commit

- lazy-load Bedrock provider registration to avoid browser graph traversal

- remove top-level OAuth runtime exports from @mariozechner/pi-ai

- add @mariozechner/pi-ai/oauth subpath export and update coding-agent imports

- move proxy dispatcher init to coding-agent CLI (Node-only)

- document Bedrock/OAuth browser limitations

closes #1814
2026-03-04 20:21:25 +01:00
Mario Zechner
2af0c98b5f fix(ai): support gemini-3.1 flash-lite and thinking matching
closes #1785
2026-03-04 20:17:58 +01:00
Mario Zechner
8e157412a6 Update AGENTS.md 2026-03-04 18:06:26 +01:00
xu0o0
d4b473e298
fix(ai): respect region from profile config when AWS_PROFILE is set (#1800) 2026-03-04 08:56:06 +01:00
Abdeslam Yassine Agmar
eb9f1183ad
refactor(ai): migrate mistral provider to conversations sdk 2026-03-03 17:25:50 +00:00
Mario Zechner
7b96041068 fix(ai): map groq qwen3 reasoning effort values closes #1745 2026-03-03 16:44:42 +01:00
Mario Zechner
42579dd923 feat(ai,coding-agent): add OpenCode Go provider support closes #1757 2026-03-03 16:02:29 +01:00
Mario Zechner
7bd4c45d81 fix(ai,coding-agent): update antigravity gemini 3.1 models and headers
fixes #1761
2026-03-03 14:54:43 +01:00
Mario Zechner
c65de34e11 Add [Unreleased] section for next cycle 2026-03-02 23:25:10 +01:00
Mario Zechner
105e296b69 chore(ai): update generated models data 2026-03-02 19:41:38 +01:00
Mario Zechner
edca5dd769 Add [Unreleased] section for next cycle 2026-02-27 22:26:46 +01:00
Mario Zechner
9825c13f5f fix(ai): handle redacted_thinking blocks, skip interleaved beta for adaptive models, drop temperature with thinking
- Map redacted_thinking to ThinkingContent with redacted: true instead of
  adding a new content type. The opaque payload goes in thinkingSignature,
  thinking text is set to "[Reasoning redacted]" so it renders naturally
  everywhere. Cross-model transform drops redacted blocks.
- Skip interleaved-thinking-2025-05-14 beta header for Opus 4.6 / Sonnet 4.6
  where adaptive thinking makes it deprecated/redundant.
- Do not send temperature when thinkingEnabled is true (incompatible with
  both adaptive and budget-based thinking).

Based on #1665 by @tctev
2026-02-27 21:53:25 +01:00
Mario Zechner
afe9ae06e8 Closes #1671, switch to GLM-5 for tests 2026-02-27 21:35:40 +01:00
Yoshiaki Okuyama
22b3be834e
fix(ai): use enable_thinking for Z.ai instead of thinking param (#1674)
Z.ai uses the same enable_thinking: boolean parameter as Qwen to control reasoning, not thinking: { type: "enabled" | "disabled" }.

The wrong parameter name means Z.ai ignores the disable request and always runs with thinking enabled, wasting tokens and adding latency.

Merge the Z.ai and Qwen branches since they use the same format.

PR by @okuyam2y
2026-02-27 21:33:14 +01:00
Mario Zechner
8880cd3cb8 Manual merge of #1677 2026-02-27 21:27:55 +01:00
Mario Zechner
3dcb3c1c77 Merge branch 'pr-1669-fixes'
# Conflicts:
#	package-lock.json
#	packages/ai/CHANGELOG.md
#	packages/coding-agent/CHANGELOG.md
2026-02-27 21:04:00 +01:00
Mario Zechner
2f55890452 fix(coding-agent,ai): finalize provider unregister lifecycle and dependency security updates fixes #1669 2026-02-27 21:00:25 +01:00
Mario Zechner
9a0a8d7ccb Add [Unreleased] section for next cycle 2026-02-26 01:10:55 +01:00
tctev
e9d0074fa6
fix(ai): enable adaptive thinking for sonnet 4.6 and clamp xhigh effort (#1548)
* fix(ai): enable adaptive thinking for sonnet 4.6 and clamp xhigh effort

* chore(ai): drop changelog edit from contribution

---------

Co-authored-by: tctev <224793535+tctev@users.noreply.github.com>
2026-02-26 00:34:06 +01:00
jeremiahgaylord-web
cf656c169c
fix(ai): don't cache false for Vertex ADC credentials during async import race (#1550)
`hasVertexAdcCredentials()` uses dynamic imports to load `node:fs`,
`node:os`, and `node:path` to avoid breaking browser/Vite builds. These
imports are fired eagerly but resolve asynchronously. If the function is
called during gateway startup before those promises resolve, `_existsSync`,
`_homedir`, and `_join` are still null — causing the function to cache
`false` permanently and never re-evaluate.

This means users with valid `GOOGLE_APPLICATION_CREDENTIALS`,
`GOOGLE_CLOUD_PROJECT`, and `GOOGLE_CLOUD_LOCATION` configured are silently
treated as unauthenticated for Vertex AI. Calls fall back to the AI Studio
endpoint (generativelanguage.googleapis.com) which has much stricter rate
limits, causing unexpected 429 errors even though Vertex credentials are
correctly configured.

Fix: in Node.js/Bun environments, return false without caching when the
async modules aren't loaded yet, so the next call retries. Only cache false
permanently in browser environments where `fs` is genuinely unavailable.

Co-authored-by: Jeremiah Gaylord <jeremiahgaylord-web@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-26 00:31:16 +01:00
audichuang
96cf7425ca
feat(ai): add gemini-3.1-pro-preview to google-gemini-cli provider (#1599)
Add Gemini 3.1 Pro Preview model to the Cloud Code Assist (google-gemini-cli)
provider for parity with the google and google-vertex providers that already
include this model.

Tested and confirmed working via the Cloud Code Assist API endpoint.
2026-02-26 00:18:03 +01:00
Mario Zechner
5c0ec26c28 Add [Unreleased] section for next cycle 2026-02-24 23:52:43 +01:00
Mario Zechner
380236a003 Add [Unreleased] section for next cycle 2026-02-23 01:57:06 +01:00
Mario Zechner
19c6f641cf chore(ai): update generated models 2026-02-22 14:33:51 +01:00
Mario Zechner
3a3e37d390 Add [Unreleased] section for next cycle 2026-02-20 00:18:31 +01:00
Mario Zechner
18c7ab8a47 chore(models): update Gemini 3.1 provider catalogs and antigravity opus 4.6 2026-02-19 20:33:27 +01:00
Mario Zechner
4ba3e5be22 Add [Unreleased] section for next cycle 2026-02-17 20:04:38 +01:00
Mario Zechner
6312fc2e42 Add [Unreleased] section for next cycle 2026-02-13 23:43:35 +01:00
Mario Zechner
a26a9cfabd feat: add configurable transport and codex websocket session caching 2026-02-13 23:41:49 +01:00
Mario Zechner
130c23e6c7 chore(models): add MiniMax M2.5 entries across providers 2026-02-13 21:57:21 +01:00
Mario Zechner
d0543d3c18 Add [Unreleased] section for next cycle 2026-02-12 22:19:30 +01:00
Mario Zechner
ed0cfcbda2 fix(ai): tolerate malformed trailing tool-call JSON in OpenAI streams closes #1424 2026-02-12 21:09:42 +01:00
Nate Smyth
2419412483 refactor(ai): fix inconsistencies, trim ai code+replace tests, remove unnceccessary tool_result check 2026-02-12 18:41:12 +01:00
Nate Smyth
0a132a30a1 feat(ai): route copilot claude via anthropic messages api 2026-02-12 18:41:12 +01:00