diff --git a/package-lock.json b/package-lock.json index 7c3d65f3..302d8a92 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,8 @@ "packages/web-ui/example", "packages/coding-agent/examples/extensions/with-deps", "packages/coding-agent/examples/extensions/custom-provider-anthropic", - "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo" + "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo", + "packages/coding-agent/examples/extensions/custom-provider-qwen-cli" ], "dependencies": { "@mariozechner/jiti": "^2.6.5", @@ -7136,6 +7137,10 @@ "resolved": "packages/coding-agent/examples/extensions/custom-provider-gitlab-duo", "link": true }, + "node_modules/pi-extension-custom-provider-qwen-cli": { + "resolved": "packages/coding-agent/examples/extensions/custom-provider-qwen-cli", + "link": true + }, "node_modules/pi-extension-with-deps": { "resolved": "packages/coding-agent/examples/extensions/with-deps", "link": true @@ -9020,6 +9025,10 @@ "name": "pi-extension-custom-provider-gitlab-duo", "version": "1.1.7" }, + "packages/coding-agent/examples/extensions/custom-provider-qwen-cli": { + "name": "pi-extension-custom-provider-qwen-cli", + "version": "1.0.0" + }, "packages/coding-agent/examples/extensions/with-deps": { "name": "pi-extension-with-deps", "version": "1.14.7", diff --git a/packages/ai/CHANGELOG.md b/packages/ai/CHANGELOG.md index 9c725217..075a9fd5 100644 --- a/packages/ai/CHANGELOG.md +++ b/packages/ai/CHANGELOG.md @@ -5,6 +5,7 @@ ### Added - Added `maxRetryDelayMs` option to `StreamOptions` to cap server-requested retry delays. When a provider (e.g., Google Gemini CLI) requests a delay longer than this value, the request fails immediately with an informative error instead of waiting silently. Default: 60000ms (60 seconds). Set to 0 to disable the cap. ([#1123](https://github.com/badlogic/pi-mono/issues/1123)) +- Added Qwen thinking format support for OpenAI-compatible completions via `enable_thinking`. ([#940](https://github.com/badlogic/pi-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) ## [0.50.7] - 2026-01-31 diff --git a/packages/coding-agent/CHANGELOG.md b/packages/coding-agent/CHANGELOG.md index fafbdd01..3440df29 100644 --- a/packages/coding-agent/CHANGELOG.md +++ b/packages/coding-agent/CHANGELOG.md @@ -7,6 +7,8 @@ - Added `newSession`, `tree`, and `fork` keybinding actions for `/new`, `/tree`, and `/fork` commands. All unbound by default. ([#1114](https://github.com/badlogic/pi-mono/pull/1114) by [@juanibiapina](https://github.com/juanibiapina)) - Added `retry.maxDelayMs` setting to cap maximum server-requested retry delay. When a provider requests a longer delay (e.g., Google's "quota will reset after 5h"), the request fails immediately with an informative error instead of waiting silently. Default: 60000ms (60 seconds). ([#1123](https://github.com/badlogic/pi-mono/issues/1123)) - `/resume` session picker: new "Threaded" sort mode (now default) displays sessions in a tree structure based on fork relationships. Compact one-line format with message count and age on the right. ([#1124](https://github.com/badlogic/pi-mono/pull/1124) by [@pasky](https://github.com/pasky)) +- Added Qwen CLI OAuth provider extension example. ([#940](https://github.com/badlogic/pi-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) +- Added OAuth `modifyModels` hook support for extension-registered providers at registration time. ([#940](https://github.com/badlogic/pi-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) ### Fixed diff --git a/packages/coding-agent/docs/custom-provider.md b/packages/coding-agent/docs/custom-provider.md index 4cf12609..ab05417c 100644 --- a/packages/coding-agent/docs/custom-provider.md +++ b/packages/coding-agent/docs/custom-provider.md @@ -135,6 +135,7 @@ models: [{ maxTokensField: "max_tokens", // instead of "max_completion_tokens" requiresToolResultName: true, // tool results need name field requiresMistralToolIds: true // tool IDs must be 9 alphanumeric chars + thinkingFormat: "qwen" // uses enable_thinking: true } }] ``` @@ -532,7 +533,7 @@ interface ProviderModelConfig { requiresAssistantAfterToolResult?: boolean; requiresThinkingAsText?: boolean; requiresMistralToolIds?: boolean; - thinkingFormat?: "openai" | "zai"; + thinkingFormat?: "openai" | "zai" | "qwen"; }; } ```