Why @codebase Context Disappears in Cursor Agent Mode
@codebase is not missing from Cursor's agent mode because of a bug. Cursor removed it. A forum member offered the likely reason on the forum thread that first reported it gone: "Agent has the ability to grab its own context, based on what you ask it, so the @codebase function is redundant." That's a community read, not an official Cursor statement, but the manual mention was replaced with an agent that decides for itself what to search.
That answer holds up against Cursor's current docs. The context and search page describes Instant Grep, a search engine Cursor built to outrun ripgrep on large repos, running automatically whenever Agent references a symbol, plus an Explore subagent that kicks in for broader questions. Cursor's own mentions reference no longer lists @Codebase among the available @ options at all, and states the replacement philosophy directly: if you're not sure which files matter, skip the mention, because Agent finds relevant files through its own search. The feature didn't break. It was retired in favor of search Cursor runs for you.
That's why the confusion never fully died down. If the change had shipped as a clean swap, one forum thread would have closed the question. Instead, later threads like this one reported @codebase still working in agent mode via keyboard shortcut months after the "redundant" explanation, while missing from Ask and Manual modes, and a separate thread tied a version bump to context feeling worse, not better, and asked Cursor to bring the old mention back. The rollout was staggered across modes and versions, which is a reasonable way to read three complaint threads about the same feature spread across several months rather than one.
What changed, mode by mode
The short version, reconciled from the threads and the current docs:
- Agent mode dropped the manual
@codebasemention first, on the reasoning that the agent already decides what to search as it works. - Ask and Manual modes kept losing it later and less consistently, which is what produced the second and third wave of forum reports.
- Today, there's no
@Codebasemention type in any mode. Agent uses Instant Grep for symbol lookups and an Explore subagent for open-ended questions, both automatic, with the combinedFiles & Foldersmention still available for anyone who wants to point at a specific file or folder by hand.
If you're on an older Cursor version and still see @codebase behave inconsistently between modes, that's the transition window the threads describe, not a local misconfiguration.
The part automatic search still can't answer
Automatic search fixed the redundant-keystroke complaint. It didn't fix a different one, which shows up once a team actually starts relying on Cursor agent mode for real work. Grep and an Explore subagent can find where a symbol lives and how it's used. Neither can tell you why it was built that way, because that reasoning was never written into the code. It lived in a Slack thread, a support ticket, or a call three months ago.
Cordage Software ships invoicing infrastructure; the backend team is six engineers, and Renata Sillman has been on it longest. Today she's in Cursor's agent mode chasing a bug in the retry logic on failed webhook deliveries, and the fix she has in mind would cut the retry window from six attempts to three.
Renata, in the Cursor chat: Why does this retry loop go up to six attempts instead of the default three? Is it safe to shorten it?
Agent: I don't see documentation or comments explaining the choice of six attempts. The code doesn't reference an external requirement. I'd recommend checking with whoever owns this module before changing the retry count.
Agent searched the right files. It found the number six and confirmed there was no comment attached to it. What it couldn't find is that six attempts exists because a customer, Fenwick Logistics, is on a flaky VPN that drops outbound calls for 20 to 40 seconds at a stretch, and three retries wasn't enough to survive that gap when they escalated it during onboarding. That context sat in a support ticket and a Slack thread from four months ago, neither of which Cursor indexes. Renata has to go find both by hand, if she remembers to look at all, before she ships the "obviously safe" cleanup that reopens the exact bug the retry count was written to prevent.
The boundary automatic search can't cross
For code-shaped questions, agent mode's automatic search is a real improvement over manually typing @codebase every time. It runs by default, and it's faster than embeddings-based indexing was. The honest limit is what kind of question it answers. Grep and an Explore subagent search the repository. They cannot search a Slack channel, a support tool, or a sales call transcript, because none of that lives in the codebase, and Cursor's context system was never built to reach outside it.
Two options close that gap once it starts costing real time:
.cursor/rules, the markdown files Cursor loads automatically, can hold a standing note like "retry count is 6, not 3, because of Fenwick Logistics's network, see ticket #2214." It costs nothing to set up and needs a person to write and maintain every entry by hand, which works for a handful of stable facts and stops working once the list of "things that look like bugs but aren't" grows past what anyone updates reliably.- An MCP server that reads where the context actually lives. Cursor connects to MCP servers, managed from Customize in the sidebar, and a server that watches Slack, support tickets, and calls can answer "why is this six" the same way a teammate who was in that Slack thread would, without anyone having transcribed it into a rules file first.
Closing that gap with Modem
This is the gap Modem is built to close. It reads Slack, Discord, support tools, email, and sales calls, clusters what it finds into topics with the original quotes attached, and exposes that as an MCP server any MCP client can query, Cursor included. Point Cursor's agent mode at it through Modem's Cursor integration and a question like Renata's gets answered from the actual ticket and Slack thread, with the customer name attached, instead of "I don't see documentation for this." Modem is what we build, so read this recommendation with that in mind. The tradeoff against .cursor/rules, Linear's MCP server, and other single-source options is laid out directly in the six best tools to give Cursor customer context.
Below the point where this kind of "why is this weird thing here" question comes up a few times a month, a well-kept .cursor/rules file is genuinely enough. Past that, the cost isn't Cursor's search, it's the fact that the answer was never in the repo to begin with.
The one habit worth starting today
Don't wait for a context layer to fix this. Next time an agent in Cursor tells you it can't find documentation for a strange-looking piece of code, stop and ask around before you "clean it up." If the answer turns out to matter, write one line into .cursor/rules right then: what the code does, why, and a link to the ticket or thread that explains it. That single habit catches most of what automatic search will never see, and it's the same information a connected MCP server would have surfaced for you automatically.
