Repository navigation
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Description
Validate thinking in VSCode
Attempt to get thinking in opencode
opencode.jsonc
{
"$schema": "https://opencode.ai/config.json",
"theme": "aura",
"autoupdate": true,
"provider": {
"github-copilot": {
"models": {
"[Custom] Opus 4.5 Thinking": {
"id": "claude-opus-4.5",
"reasoning": true,
"options": {
"thinking": {
"type": "enabled",
"budgetTokens": 32000,
},
}
},
}
}
}
}A conversation example:
opencode export
{
"info": {
"id": "ses_4753afc9affenaSxWVHstiDVAN",
"version": "1.1.1",
"projectID": "e53faf218247b17967230b742668df6addde9727",
"directory": "/home/jcarlens/Development/sesm",
"title": "Checking assistant reasoning",
"time": {
"created": 1767559725925,
"updated": 1767559730475
},
"summary": {
"additions": 0,
"deletions": 0,
"files": 0
}
},
"messages": [
{
"info": {
"id": "msg_b8ac50368001zOrnH6Xk5rnVK3",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"role": "user",
"time": {
"created": 1767559725933
},
"summary": {
"title": "Asking about reasoning",
"diffs": []
},
"agent": "build",
"model": {
"providerID": "github-copilot",
"modelID": "[Custom] Opus 4.5 Thinking"
}
},
"parts": [
{
"id": "prt_b8ac50368002yxYgBf1OX3yO1R",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"messageID": "msg_b8ac50368001zOrnH6Xk5rnVK3",
"type": "text",
"text": "Are you reasoning?"
}
]
},
{
"info": {
"id": "msg_b8ac503730018iRxad0NY14TX9",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"role": "assistant",
"time": {
"created": 1767559725939,
"completed": 1767559730467
},
"parentID": "msg_b8ac50368001zOrnH6Xk5rnVK3",
"modelID": "[Custom] Opus 4.5 Thinking",
"providerID": "github-copilot",
"mode": "build",
"agent": "build",
"path": {
"cwd": "/home/jcarlens/Development/sesm",
"root": "/home/jcarlens/Development/sesm"
},
"cost": 0,
"tokens": {
"input": 327,
"output": 77,
"reasoning": 0,
"cache": {
"read": 10534,
"write": 0
}
},
"finish": "stop"
},
"parts": [
{
"id": "prt_b8ac5101b001lc4JrFFJfRMDvj",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"messageID": "msg_b8ac503730018iRxad0NY14TX9",
"type": "step-start",
"snapshot": "e0066eb511d26f679f2ba4739f14047f10f435aa"
},
{
"id": "prt_b8ac5101c001ZUyiAP75JVK2pe",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"messageID": "msg_b8ac503730018iRxad0NY14TX9",
"type": "text",
"text": "No, I'm not using an extended reasoning or \"thinking\" mode. I'm a standard Claude model responding directly to your messages. I process your input and generate responses, but I don't have a separate visible chain-of-thought or reasoning trace that I'm working through before answering.\n\nIs there something specific you'd like help with in your project?",
"time": {
"start": 1767559730442,
"end": 1767559730442
}
},
{
"id": "prt_b8ac5150c001FbC86cMHHQDIoA",
"sessionID": "ses_4753afc9affenaSxWVHstiDVAN",
"messageID": "msg_b8ac503730018iRxad0NY14TX9",
"type": "step-finish",
"reason": "stop",
"snapshot": "e0066eb511d26f679f2ba4739f14047f10f435aa",
"cost": 0,
"tokens": {
"input": 327,
"output": 77,
"reasoning": 0,
"cache": {
"read": 10534,
"write": 0
}
}
}
]
}
]
}I also tried to put any value in the reasoning, nothing seems to break the API. Maybe the options are ignored?
Thanks for your hardwork!
Plugins
No response
OpenCode version
1.1.1
Steps to reproduce
- Connect to github copilot provider
- Either use built-in Opus 4.5 with any built-in variants, or try to configure a custom model
- Ask anything to see a chain of thougth
Screenshot and/or share link
No response
Operating System
Ubuntu 24.04
Terminal
Ghostty
Reacted by Isaac Scarrott, Buck, Ilya Murashov, Nicolai Birkmose Oksen, JYbill, Aaron Weisberg, Aaron Weisberg, aaronweisberg, Boris Naidis, Eduard and 10 more
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Activity
Coruscant11 commentedon Jan 4, 2026
Note: I did the same kind of exercice with GPT 5.2 (with the reasoning effort settings), same issue.
Coruscant11 commentedon Jan 4, 2026
I tried to run
mitmproxyto see VSCode requests body.Here is a snippet:
{ "messages": [ { "role": "system", "content": "You are an expert AI...", "copilot_cache_control": { "type": "ephemeral" } } ], "model": "claude-opus-4.5", "temperature": 0, "top_p": 1, "max_tokens": 16000, "tools": [], "n": 1, "stream": true, "thinking_budget": 15999 }I removed some useless details.
It seems like it defines a
thinking_budgetfield in the root of the JSON payload the the/completionsendpoint. Interesting.Coruscant11 commentedon Jan 4, 2026
GPT 5.2 through copilot:
{ "model": "gpt-5.2", "input": [ { "role": "system", "content": [] } ], "stream": true, "tools": [], "max_output_tokens": 64000, "store": false, "truncation": "disabled", "reasoning": { "effort": "high", "summary": "detailed" }, "include": [ "reasoning.encrypted_content" ]We can see the
reasoningandincludeat the root too.From what I understood, this is because it uses the Responses API. While opencode use the completions one for my test prompts. OpenCode is apparently using Respones API only for codex according to my opencode thread.
[-]No reasoning at all with Opus 4.5 through Github Copilot provider[/-][+]No reasoning at all through Github Copilot provider[/+]NicolaiOksen commentedon Jan 7, 2026
I'm seeing the same issue. Would love to be able to configure thinking/reasoning for Copilot models.
jbuckmccready commentedon Jan 9, 2026
This is a critical bug if wanting to use copilot provider as there is a huge difference for models like gpt 5.2 with reasoning on/off.
pushad commentedon Jan 12, 2026
Also would like to know if this is getting implemented.
dreambit commentedon Jan 12, 2026
same for me
iamim commentedon Jan 13, 2026
Would be very helpful to have it since Anthropic subscription is not an option anymore.
hazrid93 commentedon Jan 16, 2026
so is it actually reasoning but we dont see the thinking block or its not reasoning at all?
Coruscant11 commentedon Jan 16, 2026
@hazrid93 no reasoning at all.
doriuf commentedon Jan 16, 2026
Hope this gets fixed
hazrid93 commentedon Jan 16, 2026
@thdxr hope this get priority
8 remaining items
rekram1-node commentedon Jan 19, 2026
Responses reasoning fixed, next we need to do completions
hjnnjh commentedon Jan 21, 2026
Has this issue been resolved?
MichaelYochpaz commentedon Jan 21, 2026
I'm getting the same issue, but with GCP Vertex as a provider for Opus 4.5. Is anyone else experiencing that?
rekram1-node commentedon Jan 21, 2026
@MichaelYochpaz that would be separate and specific to gcp, same thing happens even w/ ctrl+t?
MichaelYochpaz commentedon Jan 21, 2026
@rekram1-node Thanks for the response. Yep, I tried switching modes, it didn't make a difference.
I asked here because that's the only related issue I could find, and the fact that no one else opened an issue about this made me doubt that maybe it's just me doing something wrong (I'm a new OpenCode user).
But regardless, I opened a new issue specifically for Vertex - #9894
jbuckmccready commentedon Jan 21, 2026
Tested and reasoning is working with GPT-5.2 but unsure how to configure reasoning/thinking for Opus 4.5 through Github copilot.
rekram1-node commentedon Jan 21, 2026
@jbuckmccready that's because completions hasn't been fixed yet, see here
rekram1-node commentedon Jan 21, 2026
@MichaelYochpaz mind opening a separate issue then?
hjnnjh commentedon Jan 22, 2026
I've been using
copilot-apifor quite some time now. this branch maybe helpful for fixing this issue.Coruscant11 commentedon Jan 22, 2026
#10092 seems interesting
amat27 commentedon Jan 23, 2026
looks like gemini 3 pro and opus still don't show thinking?
rekram1-node commentedon Jan 26, 2026
anthropic models should all work in next release, now just need to merge in that linked pr to get the google models working, but openai and anthropic shoudl both work fine w/ reasoning (in next release)
rekram1-node commentedon Jan 29, 2026
Unfortunately the messages api wasn't ready for us, going to fix it on completions api instead for now, people were getting 429s due to this change^ had to revert
rekram1-node commentedon Jan 31, 2026
Merging the pr tonight, also I learned that gemini models are expected not to have variants, so really it's just the anthropic models (cause openai ones work already)