Markdown Preview causes "Cursor Helper (Renderer)" to spike to 100% CPU and crash

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Bug

Markdown Preview causes “Cursor Helper (Renderer)” to spike to 100% CPU and crash.

Minimal Reproduction

Create a file with this exact content and open Markdown Preview:

# Test

```go
type A struct {
    Options map[string]interface{} `json:"options" yaml:"options"`
}
```

Root Cause

The combination of interface{} (curly braces) followed by a backtick struct tag
containing a space (dual tag like json:"x" yaml:"y") triggers the crash.

These variations do NOT crash:

  • interface{} + single tag (no space): OK
  • any + dual tag (no curly braces): OK
  • string + dual tag (no curly braces): OK

Environment

  • Cursor: 2.6.13
  • OS: macOS arm64, Darwin 25.3.0
  • All Markdown extensions disabled (confirmed not extension-related)

Steps to Reproduce

Crash Test

type A struct {
    Options map[string]interface{} `json:"options" yaml:"options"`
}

Operating System

MacOS

Version Information

  • Cursor: 2.6.13
  • OS: macOS arm64, Darwin 25.3.0

Does this stop you from using Cursor

Yes - Cursor is unusable

Hey, great bug report. The minimal repro and the root cause analysis are really helpful.

This looks like a regex hang in the Markdown lexer. The combo of curly braces from interface{} followed by backtick struct tags with spaces likely triggers catastrophic backtracking in the renderer’s regex engine.

I’ve flagged this with the team. No ETA yet, but the detailed repro you shared will help a lot with prioritization.

As a workaround for now, you can use any instead of interface{} in Markdown code blocks, since you confirmed that doesn’t trigger the crash. Not ideal, but it should unblock you.

Let me know if you run into anything else.

Thanks for confirming! The any workaround works perfectly for us.

Cursor is hands down the best coding tool we’ve ever used — keep up the amazing work. Happy to provide more details if needed.

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

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor 3 hangs on certain Golang syntax in plan.md or chat markdown, likely related to interaction of “interface{}” and field tags.

Performance issue reproduced on Mac and Windows, the cursor IDE would hang indefinitely until force closed.

Steps to Reproduce

Enable plan mode, prompt: Create a Golang file containing this

type Sample struct {
	Params map[string]interface{} `json:"params,omitempty" yaml:"params,omitempty"`
}

Expected Behavior

Cursor should not hang.

Screenshots / Screen Recordings

Operating System

Windows 10/11
MacOS

Version Information

Version: 3.0.9 (system setup)
VSCode Version: 1.105.1
Commit: 93e276db8a03af947eafb2d10241e2de17806c20
Date: 2026-04-03T02:06:46.446Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.26200

Does this stop you from using Cursor

Yes - Cursor is unusable