Skip to content

[Cursor] Unable to activate extension in Cursor (Cannot find package 'vscode') - possibly related to ESM build #118

@paulmelero

Description

@paulmelero

Describe the bug

Activation error

The extension is not working in Cursor.

  • I noticed the icons were not visible (whereas the same config in VS Code works fine).
  • Then I saw that running the commands result in an error (command 'iconify.clear-cache' not found).
  • And then I discovered in Output > Extension Host's log that the extension is not activated:
026-01-16 00:14:09.292 [error] Activating extension antfu.iconify failed due to an error:
2026-01-16 00:14:09.292 [error] Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'vscode' imported from /Users/paul.melero/.cursor/extensions/antfu.iconify-1.0.0-universal/dist/index.js
    at Object.getPackageJSONURL (node:internal/modules/package_json_reader:266:9)
    at packageResolve (node:internal/modules/esm/resolve:779:81)
> Cannot find package 'vscode'

I wonder why, though. At first I thought that it was because the extension is being packed with --no-dependencies, but I guess it's not a good lead, since most extensions depend on vscode (i.e, https://github.com/slidevjs/slidev/blob/main/packages/vscode does the same and it is activated correctly).

vscode as external

Then, comparing both extensions, I saw that both declare 'vscode' as external dependency. So, this might not be an issue either.

Previous versions

I could verify that the activation issue is present in versions >0.12.0, but not in 0.3.4. For some reason, I cannot test the versions in between (were they not published?).

Image

Cursor limitation

Anyway, if this is just a limitation of Curor' plugin API, I understand. In that case, there's not much we can do.

Edit: I found that Prettier v12 had a similar issue, and it was because Cursor does not fully support ESM (wow): prettier/prettier-vscode#3887

Reproduction

Install the extension in VS Code on a project with icons and properly configured (it works), run the same project in Cursor (it does not work). Inspect the Extension Host output to see

System Info

## Extension version
1.0.0

## Cursor info

Version: 2.3.34 (Universal)
VSCode Version: 1.105.1
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Darwin arm64 25.1.0

## VSCode

Version: 1.108.0 (Universal)

Used Package Manager

npm

Validations

  • Follow our Code of Conduct
  • Read the Contributing Guide.
  • Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
  • Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
  • The provided reproduction is a minimal reproducible of the bug.

Contributions

  • I am willing to submit a PR to fix this issue
  • I am willing to submit a PR with failing tests (actually just go ahead and do it, thanks!)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions