MoonshotAI / MoonshotAI/kimi-code

VS Code Responses adapter ignores response.reasoning_text events

Open Beginner friendly
#3,248 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
7.5k
Forks
1.2k
Avg merge
11h 53m
Merged PRs (30d)
350

Description

What version of Kimi Code is running?

VS Code extension 0.7.0

Which open platform/subscription were you using?

OpenAI Responses-compatible third-party endpoint

Which model were you using?

Qwen served by vLLM

What platform is your computer?

Windows x64

What issue are you seeing?

When using Kimi Code VS Code extension 0.7.0 with a vLLM-served Qwen model through an OpenAI Responses-compatible endpoint, the final assistant answer renders, but raw reasoning does not.

GPT reasoning summaries render correctly because the adapter handles response.reasoning_summary_text.delta / response.reasoning_summary_text.done. However, the OpenAI Responses standard raw-reasoning events response.reasoning_text.delta / response.reasoning_text.done are ignored, so no thinking (think) content reaches the UI.

Actual behavior: GPT summary reasoning is visible; vLLM/Qwen raw reasoning is not displayed.

Root cause: the Responses event adapter appears to branch only on the reasoning_summary_text event pair and has no equivalent mapping for the reasoning_text pair.

What steps can reproduce the bug?
  1. Use VS Code extension 0.7.0 with a Qwen model served by vLLM through an OpenAI Responses-compatible endpoint.
    1. Send a prompt that produces raw reasoning.
    1. Have the endpoint stream this representative minimal event sequence:
data: {"type":"response.reasoning_text.delta","item_id":"rs_1","output_index":0,"content_index":0,"delta":"We need to inspect the request."}

data: {"type":"response.reasoning_text.done","item_id":"rs_1","output_index":0,"content_index":0,"text":"We need to inspect the request."}
  1. Observe that the final answer renders, but the reasoning text never appears.
    For comparison, replacing those event types with response.reasoning_summary_text.delta / response.reasoning_summary_text.done allows GPT-style reasoning summaries to display.
What is the expected behavior?

response.reasoning_text.delta should be mapped to the same internal think stream used for reasoning summaries. response.reasoning_text.done should correctly finalize/close that thinking block without dropping or duplicating content.

Both GPT summary reasoning and vLLM/Qwen raw reasoning should therefore render in the VS Code UI.

Additional information

Suggested fix: add explicit handling for response.reasoning_text.delta and response.reasoning_text.done alongside the existing reasoning_summary_text handlers, with tests covering incremental mapping to think and correct completion of the thinking stream.

Contribution
  • I am willing to submit a PR for this bug fix myself (please wait for maintainer approval in this issue first)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the Responses event adapter's existing reasoning_summary_text handlers and compare their behavior with the minimal reasoning_text event sequence in this issue. Add coverage for both raw reasoning events and verify that incremental text reaches the think stream and completion closes it without duplication.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
api, desktop, frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
78/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.