continuedev / continuedev/continue
Cannot disable thinking
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 36k
- Forks
- 5.4k
- PR merge metrics
- No merged PRs in 30d
Description
Before submitting your bug report
- I've tried finding an answer on the Continue docs site
- I'm not able to find an open issue that reports the same bug
- I've seen the troubleshooting guide on the Continue Docs
Relevant environment info
- OS: Linux
- Continue version: 2.0.0
- IDE version: VSCode 1.135.0
- Model: Qwen3.6-35B-A3B, Aliased as "Coder" (both tested)
- config:
models:
- name: Cerval Coder Thinking
provider: llama.cpp
model: Coder
apiBase: https://<llama-server>
roles:
- chat
- edit
- apply
defaultCompletionOptions:
reasoning: true
reasoningBudgetTokens: 2048
- name: Cerval Coder Quick
provider: llama.cpp
model: Coder
apiBase: https://<llama-server>
roles:
- chat
- edit
- apply
defaultCompletionOptions:
reasoning: false
requestOptions:
extraBodyProperties:
reasoning_budget: 0
Description
The OpenAI provider pipeline in the VS Code extension automatically intercepts the model name and injects reasoning parameters/wrappers into the payload under the hood. If a user sets up a local llama-server instance where reasoning/thinking is explicitly turned off globally, and adds directive in config.yaml to disable thinking in the request payload, Continue overrides this behavior, perhaps because it detects the string "Qwen" or "DeepSeek" in the models configuration.
Setting defaultCompletionOptions: { reasoning: false } is completely ignored.
To reproduce
- Run a local
llama-serverwith--alias "Coder,Qwen3.6-35B"and thinking disabled. - Verify via raw
curlthat the endpoint returns clean text with NO reasoning fields or tags. - Configure
config.yamlto useprovider: openai,model: Coder, andreasoning: falseas illustrated below. - Observe that the model responds with blocks despite user directive to explicitly disable thinking.
Log output
{
"reasoning": false,
"model": "Qwen3.6-35B",
"maxTokens": 4096
}
<think>
Here's a thinking process:
1. **Analyze User Input:** ...
*** Output from curl http://llama-server/models
{
"models": [
{
"name": "Coder",
"model": "Coder",
"modified_at": "",
"size": "",
"digest": "",
"type": "model",
"description": "",
"tags": [
""
],
"capabilities": [
"completion",
"multimodal"
],
"parameters": "",
"details": {
"parent_model": "",
"format": "gguf",
"family": "",
"families": [
""
],
"parameter_size": "",
"quantization_level": ""
}
}
],
"object": "list",
"data": [
{
"id": "Coder",
"aliases": [
"Coder",
"Qwen3.6-35B"
],
"tags": [],
"object": "model",
"created": 1788340597,
"owned_by": "llamacpp",
"meta": {
...
}
}
]
}
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the VS Code extension's OpenAI provider pipeline and the handling of defaultCompletionOptions in the config.yaml example. Reproduce the request against the local llama-server with reasoning set to false, then trace where model-name detection adds reasoning parameters. Done means an explicit reasoning: false setting is preserved and the response has no unexpected thinking blocks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript, vscode
- Domain
- ai, devtools
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100