qwen-code/packages/vscode-ide-companion
ChiGao c62b34433d
feat(cli): VP mode — inline thought expand on click + auto-hiding scrollbar (#6079)
* feat(cli): VP mode — inline thought expand on click + auto-hiding scrollbar

Two VP-mode (ui.useTerminalBuffer) UX improvements:

1. Thinking: clicking a thought now expands it inline, in place, instead of
   opening a full-screen modal. The expanded thought becomes part of the
   conversation and scrolls with it, matching the lighter inline pattern.
   A thought spans the `gemini_thought` head plus its trailing
   `gemini_thought_content` continuations, so expansion is keyed by the head
   id (buildThoughtHeadIdMap) and one click expands/collapses the whole group.
   Alt+T still toggles all thoughts at once.

   The full-screen ThinkingViewer modal (and its context) is removed: it only
   ever opened in VP, where an inline-expanded thought is already scrollable
   via the viewport, so it was redundant. Drops ThinkingViewer.tsx,
   ThinkingViewerContext.tsx, and the now-dead thinkingFullText plumbing.

2. Scrollbar: the VP scrollbar now auto-hides — it renders as blank cells while
   idle (keeping width 1 so the viewport never reflows) and pops in only while
   scrolling, then fades out. Adds `ui.showScrollbar` (default true) to hide it
   entirely.

Generated with AI

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* feat(cli): advertise click in the collapsed thought hint (VP only)

The collapsed thinking line only hinted "option+t to expand", so the new
click-to-expand affordance was undiscoverable. Show "(click or option+t to
expand)" when the click handler is actually active — i.e. VP mode
(ui.useTerminalBuffer) — and keep the plain "(option+t to expand)" in non-VP,
where clicking does nothing (native scrollback is preserved).

Generated with AI

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

---------

Co-authored-by: 秦奇 <gary.gq@alibaba-inc.com>
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-07-09 12:27:29 +00:00
..
.vscode pre-release commit 2025-07-22 23:26:01 +08:00
assets feat(vscode): add tab dot indicator and notification system (#3106) (#3661) 2026-04-27 20:28:16 +08:00
schemas feat(cli): VP mode — inline thought expand on click + auto-hiding scrollbar (#6079) 2026-07-09 12:27:29 +00:00
scripts fix(vscode-ide-companion): exclude workspace packages from NOTICES.txt generation (#4455) 2026-05-27 11:24:38 +08:00
src fix(core): default context windows to 200k (#6387) 2026-07-06 12:43:13 +00:00
.vscodeignore feat: add JSON Schema validation for VS Code settings 2026-02-13 17:32:18 +08:00
development.md chore(vscode): run dev cli from source (#4283) 2026-05-19 06:56:16 +08:00
esbuild.js feat(vscode-companion): support /export session command (#2592) 2026-04-24 17:55:26 +08:00
eslint.config.mjs fix: align vscode-ide-companion curly rule with root config (#6221) 2026-07-03 07:15:23 +00:00
LICENSE Upload VSIX of companion VS Code extension (#4241) 2025-07-15 18:44:03 +00:00
NOTICES.txt fix(scheduler): add opt-in per-tool-call execution timeout (#6136) 2026-07-03 02:04:11 +00:00
package.json chore(release): v0.19.8 (#6549) 2026-07-08 15:51:03 +00:00
package.nls.json feat(vscode): add native context menu copy actions for webview chat (#3477) 2026-04-24 20:26:56 +08:00
package.nls.zh-cn.json feat(vscode): add native context menu copy actions for webview chat (#3477) 2026-04-24 20:26:56 +08:00
postcss.config.js refactor(vscode): 重构消息排序和展示逻辑 2025-11-28 22:35:31 +08:00
README.md fix: update TOS link in VS Code extension README 2026-03-19 17:36:32 +08:00
tailwind.config.js feat(webui): add webview container and isolate styles for VSCode integration 2026-01-17 10:53:32 +08:00
tsconfig.json feat(vscode-companion): support /export session command (#2592) 2026-04-24 17:55:26 +08:00
vitest.config.ts feat(vscode-companion): support /export session command (#2592) 2026-04-24 17:55:26 +08:00

Qwen Code Companion

Version VS Code Installs Open VSX Downloads Rating

Seamlessly integrate Qwen Code into Visual Studio Code with native IDE features and an intuitive chat interface. This extension bundles everything you need — no additional installation required.

Demo

Features

  • Native IDE experience: Dedicated Qwen Code Chat panel accessed via the Qwen icon in the editor title bar
  • Native diffing: Review, edit, and accept changes in VS Code's diff view
  • Auto-accept edits mode: Automatically apply Qwen's changes as they're made
  • File management: @-mention files or attach files and images using the system file picker
  • Conversation history & multiple sessions: Access past conversations and run multiple sessions simultaneously
  • Open file & selection context: Share active files, cursor position, and selections for more precise help

Requirements

  • Visual Studio Code 1.85.0 or newer (also works with Cursor, Windsurf, and other VS Code-based editors)

Quick Start

  1. Install from the VS Code Marketplace or Open VSX Registry

  2. Open the Chat panel using one of these methods:

    • Click the Qwen icon in the top-right corner of the editor
    • Run Qwen Code: Open from the Command Palette (Cmd+Shift+P / Ctrl+Shift+P)
  3. Start chatting — Ask Qwen to help with coding tasks, explain code, fix bugs, or write new features

Commands

Command Description
Qwen Code: Open Open the Qwen Code Chat panel
Qwen Code: Run Launch a classic terminal session with the bundled CLI
Qwen Code: Accept Current Diff Accept the currently displayed diff
Qwen Code: Close Diff Editor Close/reject the current diff

Feedback & Issues

Contributing

We welcome contributions! See our Contributing Guide for details on:

  • Setting up the development environment
  • Building and debugging the extension locally
  • Submitting pull requests

Terms of Service and Privacy Notice

By installing this extension, you agree to the Terms of Service.

License

Apache-2.0