Which version of LM Studio?
Example: LM Studio 0.3.5, 0.3.9
LM Studio 0.3.9 (or latest applicable Local Server)
Which operating system?
macOS
What is the bug?
(Feature Request) Currently, when using "high-reasoning" or distilled local models (like DeepSeek-R1 distills, GLM-4.7 high-reasoning, etc.), they output their thinking process wrapped in <think>...</think> tags directly into the standard content text stream.
This makes it difficult for modern AI clients (like Claude Code, Cline, Cursor, Oh My OpenCode) to differentiate between the thinking process and the actual response, resulting in the raw <think> tags cluttering the UI.
Feature Request:
Could you add an option (or default behavior for known reasoning models) in the Local Server to automatically parse text enclosed in <think>...</think> tags and stream them as reasoning_content in the API payload (following the new OpenAI API spec for "o1"-like models) instead of plain content?
This would allow external coding agents to natively fold and style the reasoning process in their UI, leading to a much cleaner UX.
Screenshots
(None)
Logs
(None applicable)
To Reproduce
- Start LM Studio Local Server.
- Load a high-reasoning model that outputs
<think> tags (e.g., qwen/qwen3-4b-thinking, glm-4.7-high-reasoning-distill, etc).
- Query the
/v1/chat/completions endpoint.
- Observe that the payload returns
<think> inside content rather than as structured reasoning_content.
Which version of LM Studio?
Example: LM Studio 0.3.5, 0.3.9
LM Studio 0.3.9 (or latest applicable Local Server)
Which operating system?
macOS
What is the bug?
(Feature Request) Currently, when using "high-reasoning" or distilled local models (like DeepSeek-R1 distills, GLM-4.7 high-reasoning, etc.), they output their thinking process wrapped in
<think>...</think>tags directly into the standardcontenttext stream.This makes it difficult for modern AI clients (like Claude Code, Cline, Cursor, Oh My OpenCode) to differentiate between the thinking process and the actual response, resulting in the raw
<think>tags cluttering the UI.Feature Request:
Could you add an option (or default behavior for known reasoning models) in the Local Server to automatically parse text enclosed in
<think>...</think>tags and stream them asreasoning_contentin the API payload (following the new OpenAI API spec for "o1"-like models) instead of plaincontent?This would allow external coding agents to natively fold and style the reasoning process in their UI, leading to a much cleaner UX.
Screenshots
(None)
Logs
(None applicable)
To Reproduce
<think>tags (e.g., qwen/qwen3-4b-thinking, glm-4.7-high-reasoning-distill, etc)./v1/chat/completionsendpoint.<think>insidecontentrather than as structuredreasoning_content.