diff --git a/open-sse/executors/github.js b/open-sse/executors/github.js index 22feae3..9e2f654 100644 --- a/open-sse/executors/github.js +++ b/open-sse/executors/github.js @@ -114,6 +114,12 @@ export class GithubExecutor extends BaseExecutor { return !/gpt-5\.4/i.test(model); } + // GitHub Copilot /chat/completions doesn't support thinking/reasoning_effort. + // OpenClaw sends thinking: { type: "enabled" } for Claude models which causes 400. + supportsThinking() { + return false; + } + transformRequest(model, body, stream, credentials) { const transformed = { ...body }; if (this.requiresMaxCompletionTokens(model) && transformed.max_tokens !== undefined) { @@ -124,6 +130,11 @@ export class GithubExecutor extends BaseExecutor { if (!this.supportsTemperature(model) && transformed.temperature !== undefined) { delete transformed.temperature; } + // Strip thinking/reasoning_effort — unsupported on /chat/completions + if (!this.supportsThinking(model)) { + delete transformed.thinking; + delete transformed.reasoning_effort; + } return transformed; }