Ghost User Rules still injected in Agent context — empty in Settings (User tab), not in aicontext.personalContext, logout/login did not fix

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Large User Rules blocks are injected into every new Agent chat (<user_rules> in system context, ~1,500–2,000 tokens), but none of them are visible or editable anywhere in Settings.

Settings state (verified):

User tab → Rules: empty (“No Rules Yet”)
User tab → Skills: only writing-great-skills (project skills duplicates already removed)
makadu.site tab → Rules: 12 project rules (project-base, api-services, etc.) — these match .cursor/rules/*.mdc on disk and are expected; not the problem
Toggle “Include third-party Plugins, Skills, and other configs”: OFF
Injected ghost rules (examples from Agent audit prompt — still present after logout/login):

— full git commit protocol (HEREDOC, amend rules, hooks…)
— full gh pr create workflow
Long communication/style rules (code citation format, prose guidelines…)
Code-writing principles (“minimize scope”, “avoid over-engineering”…)
“Real environment — MUST run commands…”
I never configured these in the current User Rules UI. They look like legacy rules/memories from an older Cursor version or cloud sync.

Local DB check (Windows, Cursor closed, read-only SQLite on state.vscdb):

Key aicontext.personalContext: empty (length 0)
No values containing committing-changes-with-git, creating-pull-requests, or Only create commits when requested
cursor/memoriesEnabled: true
Ghost rule text is not stored locally — appears to come from cloud account and/or legacy Memories without UI
Impact: ~1,500–2,000 wasted tokens on every chat start; duplicates project disclosure in .cursor/rules/project-base.mdc (~900 tokens). Total first-load context was ~11k tokens before cleanup efforts; target after cleanup ~4k.

Steps to Reproduce

Open Cursor Settings → Rules, Skills, Subagents → User tab → confirm Rules is empty
Open makadu.site tab → confirm project rules exist (expected — from .cursor/rules/)
Open a new Agent chat (no @codebase, no attachments)
Paste this audit prompt as the first message:
Auditoria de primeiro load — use APENAS o system context já injetado neste chat.
PROIBIDO: tools, arquivos, grep, terminal, MCP, web, skills, @codebase.
List user_rules block names and estimate tokens. Are committing-changes-with-git and creating-pull-requests present?
Agent reports user_rules ~1,500–2,000 tokens with named blocks committing-changes-with-git, creating-pull-requests, etc.
Return to Settings → User → Rules → still empty — cannot view, edit, or delete injected rules
Log out → Log in → repeat steps 3–6 → same ghost rules still injected

Expected Behavior

All content in <user_rules> should be visible and manageable in Settings → User → Rules (or Memories UI if applicable)
Deleted or never-created rules should not appear in Agent context
If rules are cloud-synced, UI should show them after login
Users should be able to reset/clear account-level rules without downgrade/reinstall

Operating System

Windows 10/11

Version Information

Version: 3.5.38 (system setup)
VSCode Version: 1.105.1
Commit: 009bb5a3600dd98fe1c1f25798f767f686e14750
Date: 2026-05-26T21:32:06.537Z
Layout: glass
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

For AI issues: which model did you use?

Composer 2.5 (Agent mode)

Additional Information

Workarounds already tried (did not fix ghost user_rules):

Logout / login
Removed duplicate global Skills from User tab
Removed Claude Code parity from repo (CLAUDE.md, .claude/)
Verified aicontext.personalContext is empty locally
Confirmed makadu.site tab rules = repo .cursor/rules/*.mdc (not duplicates)
Workarounds NOT tried (too destructive / unclear):

Downgrade to Cursor 2.0.77 to access Memories UI (forum thread)
DELETE FROM ItemTable WHERE key = ‘aicontext.personalContext’ — already empty, unlikely to help
Full reinstall / delete state.vscdb
Related forum threads:

User Rules Appearing in Context Not Visible in User Rules Interface
Can’t clear memories
Cursor hidden rules — staff note: some <user_rules> content may be product defaults; however committing-changes-with-git / creating-pull-requests appear user-specific, not product defaults
What I need from support:

Where are these ghost rules stored (cloud account ID / Memories / legacy sync)?
How can I list and delete them without downgrade or wiping state.vscdb?
Can your team clear orphaned User Rules / Memories on my account server-side?
Account: Ultra Plan · email: [email protected]

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hi Eros!
Good instinct that these aren’t coming from your account, but they’re also not orphaned or legacy rules. The blocks you’re seeing (committing-changes-with-git, creating-pull-requests, plus the communication, code-writing, and “real environment” ones) are Composer 2.5’s built-in session instructions. They’re baked into the model’s prompt, not stored as rules on disk, in Settings, in Memories, or synced to your account.

That answers your three questions directly:

  1. Where they live: in Composer 2.5’s built-in prompt, not on your account. There’s nothing account-side for you (or us) to point to or clear.
  2. How to “remove” them: you can’t delete them individually, and there’s nothing to clear server-side. Switching to a non-Composer model (Opus, Sonnet, GPT) drops this specific set. Those models just carry their own built-ins instead.
  3. No downgrade or state.vscdb wipe needed, and I’d avoid wiping state.vscdb regardless since it holds your chat history.

On the token math: these built-ins are a small, fixed cost. The levers that actually move your first-load token count are always-applied project/user rules, skills, MCP prompts, and long chat history, so trimming those will help more than chasing the built-ins.

Same finding was confirmed here if you want the extra context: Composer 2.5 always on injected rules.