Skip to content

fix: explain that Amazon Q is unavailable in browser-only VS Code - #202

Open
laileni-aws wants to merge 3 commits into
Amazon-Q-Developer:mainfrom
laileni-aws:fix/web-mode-unsupported-notice
Open

fix: explain that Amazon Q is unavailable in browser-only VS Code#202
laileni-aws wants to merge 3 commits into
Amazon-Q-Developer:mainfrom
laileni-aws:fix/web-mode-unsupported-notice

Conversation

@laileni-aws

Copy link
Copy Markdown
Collaborator

Problem

When the Amazon Q extension is installed in the browser-only version of VS Code (for example vscode.dev or github.dev opened without a remote environment such as a codespace), the extension appears to be installed and shows a "Sign in" entry, but clicking it does nothing. On activation users also see an error notification:

Failed to launch Amazon Q language server: g.spawn is not a function

and the log contains:

[warning] amazonqLsp: Failed to start downloaded LSP, falling back to bundled LSP: Unable to find a language server that satifies one or more of these conditions: version in range [>=1.0.0-0 <2.0.0-0], matching system's architecture and platform
[error] focusAmazonQPanel failed: Error: command 'aws.amazonq.focusChat' not found

Amazon Q depends on the Amazon Q language server, which runs as a Node.js child process. The browser-only extension host cannot spawn processes, so Amazon Q cannot work there. Today nothing tells the user this; the extension just looks broken.

Solution

  • On web activation (extensionWeb.ts), show a one-time informational notification explaining that Amazon Q is not available in the browser-only version of VS Code and that they should use desktop VS Code or connect the browser editor to a remote environment.
  • Skip language server activation in web mode instead of attempting to spawn it and surfacing the confusing "Failed to launch Amazon Q language server" error.
  • Skip the first-use focusAmazonQPanel call in web mode, since the chat view is intentionally hidden there (!aws.isWebExtHost) and the command is never registered.
  • The status bar "Sign in to get started" entry in web mode now shows the same explanation instead of kicking off an auth flow that never leads anywhere.

New helper: packages/core/src/amazonq/webMode.ts (showWebModeUnsupportedMessage, showWebModeUnsupportedMessageOnce).

Testing

  • Added packages/core/src/test/amazonq/webMode.test.ts (3 tests): the notification is shown as info, the web-mode sign-in entry shows it, and it is not shown outside web mode. All pass.
  • Existing codewhisperer/commands/basicCommands.test.ts (40 tests, exercises createSignIn) passes.
  • npm run testWeb -w packages/amazonq (46 tests) passes; the web extension host log now shows amazonqLsp: skipping language server activation: not supported in the web extension host and no longer reports the language server launch failure.
  • npm run compileDev -w packages/amazonq builds both the Node and web bundles; eslint/prettier clean on changed files.

  • Treat all work as PUBLIC. Private feature/x branches will not be squash-merged at release time.
  • Your code changes must meet the guidelines in CONTRIBUTING.md.
  • License: I confirm that my contribution is made under the terms of the Apache 2.0 license.

… Code

In the browser-only extension host (vscode.dev / github.dev without a
remote environment) the Amazon Q language server cannot be spawned, so
the extension appeared installed but 'Sign in' did nothing and a
'Failed to launch Amazon Q language server' error was shown.

- Show a one-time notification on web activation explaining that Amazon Q
  requires desktop VS Code or a browser editor connected to a remote
  environment.
- Skip language server activation and the first-use chat panel focus in
  web mode, since neither can work there.
- Make the status bar 'Sign in' entry show the same explanation instead
  of starting an auth flow that never completes.
@laileni-aws laileni-aws changed the title fix(amazonq): explain that Amazon Q is unavailable in browser-only VS Code fix: explain that Amazon Q is unavailable in browser-only VS Code Sep 8, 2026
@laileni-aws laileni-aws closed this Sep 8, 2026
@laileni-aws laileni-aws reopened this Sep 8, 2026
@laileni-aws
laileni-aws marked this pull request as ready for review September 8, 2026 23:33
@laileni-aws
laileni-aws requested a review from a team as a code owner September 8, 2026 23:33
@laileni-aws
laileni-aws enabled auto-merge (squash) September 8, 2026 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants