Comment by crisbal_
8 days ago
I use the following for feeding into AI
find . -print -exec cat {} \; -exec echo \;
Which will return for each file (and subfolders) the filename and then the content of the file.
Then `| pbcopy` to copy to clipboard and paste it into ChatGPT or similar.
I guess this only works for very small codebase?
Correct, but it's the same as what OP shared.
You should use Aider/Cursor for proper indexing/intelligent codebase referencing
Cramming thousands of tokens of potentially irrelevant context through unclear indexing paths isn't "proper".
The best results come from feeding precisely targeted context directly into the prompt, where you know exactly what the model sees and how it processes it. The prompt receives the most accurate use of attention—whereas god knows what the pipeline is for cursor or what extra layers and context restrictions they add on top of base Claude.
Giving the model a clean project hierarchy accomplishes a lot efficiently in terms of context tokens. The key is ensuring it only sees what's relevant, without diluting its attention.
Tools like reopmix and OP's version, feeding targeted context straight into models like Claude or Google's offerings, outperform Copilot and Cursor in my experience, even though they use the same base models. Use the highest-quality attention (the prompt context) directly, rather than layers of uncertainty and "proper indexing".
I'm still puzzled how come people are convinced by Cursor, while my experience was meh at best. Can it index your stuff? okay it can. Can it refactor a simple function? No it cannot, it can't even rename a damn Java class. How can I trust it to generate then code based on my codebase? So, what is your use case then? Or can anybody point me to some blog/articles/videos showing some real use cases for Cursor? Real as in, something that it provenly can do?
6 replies →
not sure if it's cursor's fault, but very often it doesn't give me the real or complete code of my codebase when auto editing/auto completing.
any tips?
Or, for a lazier approach:
yek makes it a bit quicker and you can do all your piping with it:
https://github.com/bodo-run/yek
That's very nice and compact. I do the same with a short bash script, but wrap each file in triple-backticks and attempt to put the correct language label on each eg:
Filename: demo.py
```python
```
Seconded because just having something autowrapped like that and putting the clipboard would save me time: release the snyder cut, er, bash script!
Mind sharing the script?
I have something similar.
https://github.com/jzombie/globcat.sh
Nothing fancy, but gets the job done.