Long-term "Feature" worktrees - disable the 'Worktree Typescript' language detection

Feature request for product/service

Cursor IDE

Describe the request

Hello!

My team has large repo and recently started leveraging worktrees to make it easier for individuals to multitask on long-lived features (examples: PR reviews that need back-and-forth; building out separate features at the same time). We use bitbucket so cloud agents aren’t accessible to us. The worktrees.json setup-worktree is perfect for fully bootstrapping an interactive instance of the codebase with a free http port and isolated database namespace.

Worktrees seem like the perfect fit. But unfortunately, Cursor’s worktree focus is on short-lived per-agent (or subagent) trees. This is confirmed by Mohit’s response on this forum post: Working with Worktrees in Cursor - #3 by mohitjain.

To use a worktree long-term, we’ve been opening a new cursor window for each worktree. This should work great, but there are problems with this use-case:

  • Cursor selects “Worktree Typescript” as the language for all our ts/x files. There is no language server.
  • Additionally document formatting is broken (e.g. using prettier or biome on save).

Is it possible, when opening a worktree as a project, to disable the worktree typescript language detection and instead use the default? These are only problems when cursor uses /worktree to create it in ~/.cursor/worktrees/.

We can manually create worktrees, and even prompt an agent to manually create a worktree, thereby bypassing this issue. But it would be ideal for us if /worktree would also work for this usecase.

@Andy_Altepeter I don’t like that feature either! You can filter extensions for @builtin and disable “Worktree TextMate Syntax” under the “Programming Languages” section. That seems to work.

Would be nice to have this as a Cursor configuration setting instead.

Hi @danielfinke what an awesome suggestion!

We ended up moving away from cursor’s internal worktrees. I have a bin/worktree that creates and boostraps them, which cursor can also be instructed to use instead.