Request for official tool for Cursor to cleanup itself for its really hard burden and slow speed nowadays

Feature request for product/service

Cursor IDE

Describe the request

Cursor stores all chat, agent, and composer state in a single SQLite
database (state.vscdb). This database grows without bound — there is no
automatic pruning, no VACUUM, no lifecycle management. After weeks of
normal use, the file balloons to multiple GB.

The impact is brutal:

  • Every read/write traverses massive B-trees
  • WAL grows unchecked (checkpoint deferred for large DBs)
  • The main process writes GB/min to the WAL file
  • I/O storms cause CPU spikes, UI freezes, and terminal lag
  • ‘Taking longer than expected’ on every AI request
  • Eventually the editor becomes unusable — frozen for 10+ seconds between
    keystrokes

This is not a niche issue. It hits every heavy user. The fix is mechanical:
prune stale agentKv:blob:, composer., bubbleId:* rows from cursorDiskKV,
then VACUUM. This reduces a 5+ GB database to ~50 MB in seconds.

REQUEST:

  1. Automatic state.vscdb maintenance — prune stale entries and VACUUM
    periodically (or on startup)
  2. Configurable retention — let users set how long chat/agent history is
    kept
  3. At minimum, expose a manual ‘Clean Database’ command in the command
    palette

Until this is built in, I wrote cursor-clean — a Python toolkit that
diagnoses, cleans, and repairs the problem from the terminal:

It works. But users should not need a third-party tool to keep their editor
functional.

WHAT PROBLEM DOES THIS SOLVE:

Cursor becomes unusable after extended use due to unbounded state.vscdb
growth. Users on remote VMs, VNC setups, or machines without dedicated GPUs
are hit hardest — the software rendering already pushes CPU, and the I/O
storms from the bloated database make it unrecoverable without manual
intervention.

Operating System (if it applies)

Linux

hey, my solution to this was to create a copy, then directly ask cursor to check what was inside and go through with me and delete stuff that was safe.. when I had something I liked, just tell cursor to check if the file is still safe, if yes just put in back in the original file, and keep the old one just in case