getcursor / cursor

The AI-powered code editor
https://cursor.sh
20.57k stars 1.38k forks source link

The codebase context is not working. #1461

Open mhnikravan-trilogy opened 1 month ago

mhnikravan-trilogy commented 1 month ago

The codebase context is not working for me. I am a Cursor Pro subscriber and this feature seems to be the biggest advantage of Cursor AI to me (vs copilot, etc). So I appreciate your feedback on it.

1) If you can, please include a screenshot of your problem: image and the indexing is on and has been done on my code: image

Even if I change the include to be something like *.* or *.md still nothing, while I know the information is there: image

2) Please include the name of your operating system I am using "Microsoft Windows 11 Home", and running cursor on WSL. image image

3) If you can, steps to reproduce are super helpful.

On another note: By using the codebase context, is it supposed to use all the indexed codebases (i.e., whatever codebases I have ever indexed) or just the codebase in the current workspace? If it's the first one, how can I change the behavior to focus on the codebase in my current workspace? I work with lots of repositories, and using everything that has been indexed can easily misguide the AI.

zzecool commented 1 month ago

The problem is bigger and not only in th codebase that never works as expected.

Even when you point a @folder and ask it to searching for specific code, if you check for context it is using all shorts of files out of this folder.

This is a serius security issue, especially for a project that decided to be closed source.

Ivan-Dokuchaev commented 1 month ago

Have absolutely the same problem here. Before i was able to get the context of the codebase, i was connecting through ssh to my remote server from the windows machine.

mennovergeer commented 3 weeks ago

I have exactly the same issue. I am also on WSL2. It appears to index the codebase (takes about a minute to get to 100%, it is showing all the filenames while doing it). But when it gets to 100%, a chat @codebase does not give any context (not using @codebase, not using the button). Removing the sync, resyncing - none of it helps.

I figured I'd go through the output to find any error messages. Hopefully they can be of assistance in fixing the issue.

Main:

2024-06-12 10:47:13.403 [info] update#setState disabled
2024-06-12 10:47:13.404 [info] update#ctor - updates are disabled as there is no update URL
2024-06-12 10:47:13.417 [error] [storage state.vscdb] error checking size of src.vs.platform.reactivestorage.browser.reactiveStorageServiceImpl.persistentStorage.workspaceUser: Error: Unexpected number of rows - 0
2024-06-12 10:47:13.418 [error] [storage state.vscdb] error checking size of workbench.panel.aichat.view.aichat.chatdata: Error: Unexpected number of rows - 0

Search++:

2024-06-12 10:47:18.061 [info] Backend URL: https://api2.cursor.sh
2024-06-12 10:47:18.202 [info] created the client
2024-06-12 10:47:18.202 [info] Is file sync enabled: false

Cursor indexing and retrieval:

2024-06-12 10:47:18.061 [info] Repo client: syncing embeddings with backend:  https://repo42.cursor.sh
2024-06-12 10:47:18.254 [info] Creating merkle client.
2024-06-12 10:47:18.254 [info] Done creating merkle client.
2024-06-12 10:47:18.254 [info] Doing a startup handshake.
2024-06-12 10:47:18.329 [info] Finished initializing merkle tree in 75.51348500000313 ms.
2024-06-12 10:47:18.330 [info] Doing the initial handshake with hash: a02072e70d79ad963dc22918155e825032c132971b4ff2364aee28c80bfbaef2
2024-06-12 10:47:18.347 [info] Handshake start
2024-06-12 10:47:18.776 [info] Handshake timing: 445.28441199986264
2024-06-12 10:47:18.776 [info] Handshake result:
2024-06-12 10:47:18.776 [info] Starting fast remote sync.
2024-06-12 10:47:18.777 [info] Total num embeddable files: 464
2024-06-12 10:47:18.779 [info] Root hash: a02072e70d79ad963dc22918155e825032c132971b4ff2364aee28c80bfbaef2
2024-06-12 10:47:18.779 [info] Finished indexing repository.
2024-06-12 10:47:18.779 [info] Indexing job successfully done or aborted.
2024-06-12 10:57:18.255 [info] Creating merkle client.
2024-06-12 10:57:18.255 [info] Done creating merkle client.
2024-06-12 10:57:18.255 [info] Doing a startup handshake.
2024-06-12 10:57:18.320 [info] Finished initializing merkle tree in 65.53679799987003 ms.
2024-06-12 10:57:18.321 [info] Doing the initial handshake with hash: a02072e70d79ad963dc22918155e825032c132971b4ff2364aee28c80bfbaef2
2024-06-12 10:57:18.328 [info] Handshake start
2024-06-12 10:57:18.742 [info] Handshake timing: 420.773186000064
2024-06-12 10:57:18.742 [info] Handshake result:
2024-06-12 10:57:18.742 [info] Starting fast remote sync.
2024-06-12 10:57:18.743 [info] Total num embeddable files: 464
2024-06-12 10:57:18.743 [info] Root hash: a02072e70d79ad963dc22918155e825032c132971b4ff2364aee28c80bfbaef2
2024-06-12 10:57:18.743 [info] Finished indexing repository.
2024-06-12 10:57:18.743 [info] Indexing job successfully done or aborted.

Upon asking chat a question about the codebase, I simply get: Gathering chunks using conversation history (... keeps spinning, shows no output) Reranking chunks (... keeps spinning, shows no output) To provide an accurate response, I need to see the code in question. Could you please share the relevant code snippet?

mhnikravan-trilogy commented 2 weeks ago

I am going to cancel my subscription as I do not get the value without being able to use the codebase context.

jeremykoerber commented 1 week ago

Same problem here. Works fine if I copy the repo over to my Windows file system and open it there, but @codebase context is completely broken with a WSL:Ubuntu workspace. It seems to be able to evaluate the file I have focus on, and that's it unless I go through all the other files and do ctrl-shift-L to add them to the chat. Also, the apply button for suggested changes doesn't work like 90% of the time. It just opens a new file tab. Seems like I used to see it work occasionally before, but seems totally broken now. This sucks, and I will totally cancel my pro subscription and warn others about it rather vocally. Cursor folks - please respond.