Skip to content

[Cursor] Jump-to-component via components.d.ts no longer working #5873

@JessicaSachs

Description

@JessicaSachs

Vue - Official extension or vue-tsc version

3.1.8 - 3.1.4

VSCode version

Cursor Version: 2.2.20 (latest), VSCode Version 1.105.1

Vue version

3.5.22

TypeScript version

5.8.3

System Info

System:
    OS: macOS 15.6.1
    CPU: (10) arm64 Apple M1 Max
    Memory: 11.68 GB / 64.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 22.17.1 - /Users/jess/.local/share/mise/installs/node/22.17.1/bin/node
    npm: 10.9.2 - /Users/jess/.local/share/mise/installs/node/22.17.1/bin/npm
    pnpm: 10.13.1 - /Users/jess/.local/share/mise/installs/pnpm/10.13.1/pnpm
  Browsers:
    Chrome: 143.0.7499.41
    Firefox: 109.0.1
    Safari: 18.6

package.json dependencies

{
  "dependencies": {
    "@apollo/client": "^4.0.9",
    "@iconify-json/lucide": "^1.2.57",
    "@iconify-json/simple-icons": "^1.2.43",
    "@internationalized/date": "^3.8.2",
    "@nuxt/content": "^3.7.1",
    "@nuxt/ui": "^4.2.1",
    "@pinia/colada": "^0.18.1",
    "@pinia/colada-nuxt": "0.2.4",
    "@pinia/nuxt": "^0.11.2",
    "@tanstack/table-core": "^8.21.3",
    "@vue/shared": "^3.5.20",
    "@vueuse/integrations": "^14.1.0",
    "@vueuse/nuxt": "^14.1.0",
    "date-fns": "^4.1.0",
    "date-fns-tz": "^3.2.0",
    "dequal": "^2.0.3",
    "focus-trap": "^7.6.5",
    "fuse.js": "^7.1.0",
    "graphql-tag": "^2.12.6",
    "jsonwebtoken": "^9.0.2",
    "maska": "^3.2.0",
    "nuxt": "^4.2.2",
    "nuxt-auth-utils": "^0.5.23",
    "packageurl-js": "^2.0.1",
    "pinia": "^3.0.3",
    "reka-ui": "^2.6.0",
    "vue": "^3.5.22",
    "zod": "^4.1.13"
  },
  "devDependencies": {
    "@commitlint/cli": "^20.1.0",
    "@commitlint/config-conventional": "^20.0.0",
    "@faker-js/faker": "^10.1.0",
    "@nuxt/eslint": "^1.5.2",
    "@nuxt/kit": "^4.2.2",
    "@nuxt/test-utils": "3.19.2",
    "@pinia/colada-devtools": "^0.1.9",
    "@playwright/test": "1.54.1",
    "@types/jsonwebtoken": "^9.0.10",
    "@types/lodash-es": "^4.17.12",
    "@vitejs/plugin-vue": "^6.0.1",
    "@vitest/browser": "^4.0.15",
    "@vitest/browser-playwright": "^4.0.15",
    "better-sqlite3": "11.10.0",
    "conventional-changelog-conventionalcommits": "^9.1.0",
    "defu": "^6.1.4",
    "eslint": "^9.31.0",
    "happy-dom": "^18.0.1",
    "husky": "^9.1.7",
    "lint-staged": "^16.2.7",
    "lodash-es": "^4.17.21",
    "msw": "^2.11.6",
    "npm-run-all": "^4.1.5",
    "playwright": "1.54.1",
    "rollup-plugin-natives": "^0.7.8",
    "tailwindcss": "^4.1.11",
    "typescript": "^5.8.3",
    "ufo": "^1.6.1",
    "unplugin-vue-router": "^0.19.0",
    "vitest": "^4.0.15",
    "vitest-browser-vue": "^2.0.1",
    "vue-component-type-helpers": "^3.0.6",
    "vue-tsc": "^3.1.8"
  },
  "resolutions": {
    "unimport": "4.1.1",
    "@internationalized/date": "3.10.0",
    "playwright": "1.54.1",
    "playwright-core": "1.54.1"
  },
  "pnpm": {
    "ignoredBuiltDependencies": [
      "@parcel/watcher",
      "esbuild",
      "maplibre-gl",
      "vue-demi"
    ],
    "onlyBuiltDependencies": [
      "@tailwindcss/oxide",
      "better-sqlite3",
      "unrs-resolver"
    ]
  }
}

Steps to reproduce

  1. Download a Zip of this Minimal Nuxt 4 project https://stackblitz.com/edit/github-joywuiwa?file=package.json
  2. Open project in VSCode
  3. npm install to generate .nuxt/components.d.ts via nuxt prepare
  4. Go to app/app.vue and Cmd + Click on <MyComponent/>

What is expected?

Goes to MyComponent.vue implementation

What is actually happening?

Goes to .nuxt/components.d.ts

Link to minimal reproduction

https://stackblitz.com/edit/github-joywuiwa?file=package.json

Any additional comments?

This issue exists on Cursor 2.2.20 (latest) and VSCode Version 1.105.1, but it does NOT exist on VSCode Version: 1.106.1 (Universal)

I tried a couple of versions of the Vue extension (3.1.8 - 3.1.4 as per #5733) but wasn't able to get it working with any combination on either my actual project or in the reproduction within Cursor.

I'm not sure what was changed (ostensibly) between VSCode 1.105.1 and 1.106.1. I also don't know when Cursor is going to re-up from VSCode. It's going to be at least a couple of weeks.

Here's the Cursor system output:

Version: 2.2.20
VSCode Version: 1.105.1
Commit: b3573281c4775bfc6bba466bf6563d3d498d1070
Date: 2025-12-12T06:29:26.017Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0

versus VSCode:

Version: 1.106.1 (Universal)
Commit: cb1933bbc38d329b3595673a600fab5c7368f0a7
Date: 2025-11-16T10:20:23.745Z
Electron: 37.7.0
ElectronBuildId: 12781156
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0

Workaround: antfu's extension works fine https://marketplace.cursorapi.com/items/?itemName=antfu.goto-alias

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggood reproduction ✨This issue provides a good reproduction, we will be able to investigate it first

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions