Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
Regression on Remote SSH (Linux): Cursor indexed my workspace normally before on the same Ubuntu 22.04 VPS without needing git init at the workspace root. After updating to Cursor 3.13.10, indexing broke.
Root cause: Cursor 3.13.10 ships crepectl (Instant Grep indexer) linked against GLIBC 2.39. Ubuntu 22.04 LTS only has GLIBC 2.35. The binary fails immediately:
crepectl: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.39' not found
Cursor shows a misleading error instead:
index build failed: miniserde error
index failed to bootstrap: no indexes available on disk
Without git at workspace root:
cannot index repository without Git
With git init + commit at apps/ root: GrepClient starts but crepectl still crashes (GLIBC) until we applied a local wrapper script.
Cloud semantic indexing also never starts:
Not creating an indexing watcher: no queryable index to build (indexing off or kill switch engaged)
View included files in Cursor Settings fails — embeddable_files.txt is never created.
Current situation after our unofficial fix (cursor_fix_crepectl_glibc.sh):
- Instant Grep: WORKING (index OK in Cursor Grep Service logs)
- Cloud semantic index: STILL BROKEN (no embeddable_files.txt, no indexing watcher)
- Index only covers 6 files (0 documents in commit, 6 in worktree) — full Frappe bench not indexed
- workspaceStorage is NOT where the index lives (~16 KB session data only)
Instant Grep index location (after fix):
/home/frappe/frappe-bench-15/apps/.git/cursor/crepe/8a9d2b673e339a90dbab081a0ac34e6046eeaf0e/
index.bin, postings.bin, metadata.json (~24 KB total)
All production servers are Ubuntu 22.04 LTS by choice. Cursor must ship a compatible crepectl or restore the simpler pre-3.13.10 indexing — not require OS upgrades or user-maintained GLIBC wrappers.
Steps to Reproduce
-
Use SSH host with Ubuntu 22.04 LTS (GLIBC 2.35):
lsb_release -a
/lib/x86_64-linux-gnu/libc.so.6 | head -1 -
Connect from Cursor IDE 3.13.10 via Remote SSH (Windows client).
-
Open workspace:
/home/frappe/frappe-bench-15/apps
-
Enable Cursor Settings → Indexing & Docs → Index Repositories for Instant Grep (ON).
-
Privacy → Share Data (not Privacy Mode).
-
Reload window.
-
Output → Cursor Grep Service — observe miniserde error (before any fix):
GrepClient initialized successfully
starting index build …
index build failed: miniserde error -
On SSH host, confirm GLIBC failure:
CREPE=$(find ~/.cursor-server/bin/linux-x64 -name crepectl 2>/dev/null | head -1)
“$CREPE” 2>&1GLIBC_2.39 not found; exit 1
-
Output → Cursor Indexing & Retrieval — cloud index never starts:
Not creating an indexing watcher: no queryable index to build (indexing off or kill switch engaged)
-
Settings → View included files — file not found:
…/workspaceStorage/6b186c96…/anysphere.cursor-retrieval/embeddable_files.txt
-
Optional — git init at workspace root (new in 3.13.x, not required before):
cd /home/frappe/frappe-bench-15/apps
git init -b master && git add .gitignore && git commit -m “workspace root for indexing” -
Optional — our unofficial fix (Instant Grep only):
bash /home/frappe/frappe-bench-15/apps/cursor_fix_crepectl_glibc.sh
Reload window → Grep Service shows: index OK in ~10–35ms
Expected Behavior
- crepectl runs on Ubuntu 22.04 LTS without GLIBC 2.39 (ship GLIBC 2.35-compatible or statically linked binary).
- Or fall back to the simpler pre-3.13.10 indexing (file walk + rg) when crepectl cannot start.
- Do not require git init at every opened folder root (subfolder repos were enough before).
- Instant Grep index builds into /.git/cursor/crepe/
- Cloud semantic indexing starts independently; embeddable_files.txt is created; View included files works.
- Show real error (GLIBC 2.39 required, host has 2.35) instead of miniserde error.
- Do not require upgrading all VPS hosts to Ubuntu 24.04+.
Operating System
Windows 10/11
Version Information
IDE (local — Menu → About Cursor → Copy):
Version: 3.13.10 (system setup)
VS Code Version: 1.128.0
Commit: 4f02290ccd9304f0e6bf8ee85f6e9106f02ac1f0
Date: 2026-07-23T21:41:07.333Z
Electron: 40.10.3
Chromium: 144.0.7559.236
Node.js: 24.15.0
V8: 14.4.258.32-electron.0
OS: Windows_NT x64 10.0.26200
Remote SSH server:
Cursor server: 3.13.10 (commit 4f02290ccd9304f0e6bf8ee85f6e9106f02ac1f0, x64)
OS: Ubuntu 22.04.5 LTS
GLIBC: 2.35-0ubuntu3.13
Git: 2.34.1
Host: vps.contaboserver.net (Contabo VPS)
Workspace: /home/frappe/frappe-bench-15/apps
crepectl: ~/.cursor-server/bin/linux-x64/4f02290ccd9304f0e6bf8ee85f6e9106f02ac1f0/resources/helpers/crepectl
crepectl: 6274216 bytes, 2026-07-24, requires GLIBC_2.39
For AI issues: which model did you use?
N/A — infrastructure / indexing bug, not model-specific.
For AI issues: add Request ID with privacy disabled
N/A — infrastructure / indexing bug, not model-specific.
Additional Information
Workspace: /home/frappe/frappe-bench-15/apps (Frappe ERPNext bench — multiple separate git repos under one opened folder)
Production: All Remote SSH servers are Ubuntu 22.04 LTS intentionally (LTS stability). Fix belongs in Cursor’s crepectl binary, not mass OS upgrades.
TROUBLESHOOTING WE TRIED:
- Opened apps/ with no root .git → cannot index repository without Git
- git init at apps/ root → failed to open git excludes index (no commits)
- git init + commit + .gitignore → GrepClient started; miniserde error (GLIBC 2.39)
- Fixed .gitignore (stopped ignoring */ ) → still miniserde until GLIBC wrapper
- Enabled Index Repositories for Instant Grep (Indexing & Docs) → required for GrepClient
- Privacy → Share Data enabled → cloud indexing still does not start
- Ran cursor_fix_crepectl_glibc.sh → Instant Grep WORKS (index OK)
- View included files → file not found (cloud index never ran)
UNOFFICIAL FIX SCRIPT (Instant Grep only — not acceptable as permanent solution):
/home/frappe/frappe-bench-15/apps/cursor_fix_crepectl_glibc.sh
- Downloads Ubuntu 24.04 libc6 2.39 to ~/.local/share/cursor-glibc239/ (no OS upgrade)
- Backs up crepectl → crepectl.orig
- Replaces helpers/crepectl with bash wrapper using GLIBC 2.39
- Re-run after Cursor server updates
Run:
bash /home/frappe/frappe-bench-15/apps/cursor_fix_crepectl_glibc.sh
# then: Developer → Reload Window
INDEX STORAGE (current):
Instant Grep index (WORKS after script):
/home/frappe/frappe-bench-15/apps/.git/cursor/crepe/8a9d2b673e339a90dbab081a0ac34e6046eeaf0e/
index.bin (~4 KB), postings.bin (~1.5 KB), metadata.json
Total ~24 KB. Only 6 files indexed (0 in commit, 6 in worktree).
NOT the index — session storage only (~16 KB):
/home/frappe/.cursor-server/data/User/workspaceStorage/6b186c96adb42c014ba32119cf7a0f3b/
vscode.lock, ms-python.python/pythonrc.py
MISSING — cloud index (View included files):
/home/frappe/.cursor-server/data/User/workspaceStorage/6b186c96adb42c014ba32119cf7a0f3b/anysphere.cursor-retrieval/embeddable_files.txt
Directory anysphere.cursor-retrieval/ does not exist.
CURRENT STATUS (2026-07-25):
Instant Grep / crepectl: Working (via wrapper script)
GrepClient: index OK in 10–35ms
Cloud semantic index: Not running
View included files: Broken (file not found)
Privacy Share Data: Enabled — does not fix cloud
Index size: Too small (6 files only)
LOG EXCERPTS:
Log dir: ~/.cursor-server/data/logs/20260725T030507/
Before fix — Cursor Grep Service:
index build failed: miniserde error
After fix — Cursor Grep Service (exthost10/11):
GrepClient initialized successfully
loading index for commit 8a9d2b673e339a90dbab081a0ac34e6046eeaf0e
reset index to head: 0 documents in commit, 6 in worktree
index OK in 10.818568ms
Still broken — Cursor Indexing & Retrieval:
Creating Indexing Repo client: https://repo42.cursor.sh
Not creating an indexing watcher: no queryable index to build (indexing off or kill switch engaged)
strace (original crepectl):
crepectl: version `GLIBC_2.39' not found
+++ exited with 1 +++
SUGGESTED FIX (Cursor team):
Preferred: Fall back to pre-3.13.10 simpler indexing (rg/file walk) when crepectl fails. Cursor-server already ships rg under resources/helpers/.
Also acceptable: Ship crepectl for GLIBC 2.35 or statically linked for linux-x64.
Requirements: Do not require Ubuntu 24.04 upgrades. Show real GLIBC error not miniserde. Decouple cloud indexing from crepectl success.
Related: same host also hit universal ms-python.python missing PET binary on Remote SSH (separate report).
Does this stop you from using Cursor
Yes - Cursor is unusable