feat(llm): add OpenAI Responses provider with GPT-5.6 models - #587
Open
aalhadxx wants to merge 5 commits into
Open
feat(llm): add OpenAI Responses provider with GPT-5.6 models#587aalhadxx wants to merge 5 commits into
aalhadxx wants to merge 5 commits into
Conversation
On Windows, npm is shipped as npm.cmd. Without shell: true, Node's spawn fails to execute batch files, causing the VS Code extension to falsely report 'npm not detected' even when it is installed. The install() method already used this flag; apply the same fix to probeCommand (environment detection) and runRaw (CLI execution). Fixes alibaba#453
Contributor
|
🔍 OpenCodeReview found 3 issue(s) in this PR.
|
Reverts shell: true in runRaw to address security feedback: runRaw args may include user-controlled values (opts.from, opts.to, opts.customPrompt), and shell mode could interpret cmd.exe metacharacters. Keep shell: true only in probeCommand where args are known-safe (--version). The original bug (alibaba#453) was specifically about environment detection failing on Windows, so this targeted fix is sufficient.
…ive provider When a provider is active, llm.* settings are discarded at runtime because the resolver checks cfg.Provider first and invokes tryProviderConfig, leaving tryLegacyLlmConfig as the fallback path. - runConfigSet: issue a stderr warning when llm.* values are written while a provider is present. - runConfigUnset: enable unsetting the provider and model fields. Fixes alibaba#583
GPT-5.6 models (luna, terra, sol) require the OpenAI Responses API (/v1/responses) instead of the legacy Chat Completions endpoint. Using these models with the standard openai provider causes 400 errors because the Responses API is the only endpoint that supports reasoning_effort with these models. Add a dedicated openai-responses preset that uses ProtocolOpenAIResponses so users can select these models without manual protocol configuration. Fixes alibaba#573 Closes alibaba#559
- Improve warning wording: clarify that llm.* values are saved but will have no effect while a provider is active. - Fix unset model: when a provider is active, clear the model from the provider entry (not just cfg.Model), matching the set logic. - Add warning when unsetting provider also clears the model.
aalhadxx
force-pushed
the
feat-openai-responses-573
branch
from
July 29, 2026 18:27
cb71a68 to
e4eb1eb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
GPT-5.6 models (gpt-5.6-luna, gpt-5.6-terra, gpt-5.6-sol) require the OpenAI Responses API (/v1/responses). When these models are used with the standard
openaiprovider (which uses/v1/chat/completions), the platform returns:Fix
Add a dedicated
openai-responsespreset provider that usesProtocolOpenAIResponsesand includes the GPT-5.6 model family. Users can now select this provider to use these models without manual protocol configuration.Test
TestListProviders_Orderto include the new provider.TestLookupProvider_OpenAIResponsesModelsto verify the provider exists, uses the correct protocol, and lists the expected models.Fixes #573
Closes #559