Cursor 2.1 seems to lack ESM extension support

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

It seems Cursor 2.1 (based on VSCode 1.105.1) doesn’t support ESM-based extensions yet.

Starting from VSCode 1.100, extensions can be authored using ESM. The official example extension (linked below) runs correctly when I debug it in VSCode 1.105:

Official ESM sample
VSCode announcement

However, when I try to run the same extension in Cursor 2.1, debugging fails with the following error:

Cannot find package 'vscode' imported from xxx

Steps to Reproduce

  1. Clone the VSCode ESM sample extension.
  2. Open it in Cursor 2.1.
  3. Press F5 to run the extension - this will open a new development window.
  4. In that window, run the “Hello World” command.
  5. Expected: a notification pops up.
  6. Actual: the command fails with the error above.

Expected Behavior

The sample extension should load normally, just like in VSCode.

Screenshots / Screen Recordings

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.1.39
Commit: 60d42bed27e5775c43ec0428d8c653c49e58e260
Date: 2025-11-27T02:30:49.286Z
Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Cursor/2.1.39 Chrome/138.0.7204.251 Electron/37.7.0 Safari/537.36

Does this stop you from using Cursor

No - Cursor works, but with this issue

3 Likes

Hey, thanks for the report. You’ve identified a real limitation.

Cursor 2.1 upgraded the Extension API to v1.105.1, but the underlying runtime is based on an earlier VSCode version. ESM support for extensions was introduced in VSCode 1.100 and requires runtime support beyond just the API compatibility layer.

This means that while most extensions targeting VSCode 1.105 will work, ESM-specific features requiring runtime support won’t function.

I’m escalating this to the team as it’s a valid compatibility gap for extension developers.

1 Like

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.