Sonnet 3.7 – A Promising Model That Still Needs Fine-Tuning

I’ve been working with Sonnet 3.7 since last week. At first, I was impressed by how well it understood my project, which made me really happy. However, over time, I started feeling disappointed.

I believe the Cursor team will fix these issues soon. The main problem lies in the agent mode. When the codebase grows, issues start to arise. Of course, this is a common problem for all models, but Sonnet 3.5, in my experience, currently handles large files better.

Issues with Sonnet 3.7 on Large Projects

I started a project from scratch using Sonnet 3.7. Initially, everything was going great—I structured the tasks with it, created .md files, and in the early stages, it followed my instructions exceptionally well. It generated exactly what I needed almost on the first try.

However, as more files were created and the amount of code increased, my disappointment grew. Sonnet 3.7 started getting confused, generating duplicate code in the same files.

When I tried to split the main file into multiple files by functionality to make it easier for the model to manage, it entered a loop and the connection was interrupted. Each attempt to fix the files took a significant amount of time.

In the end, after splitting the files, Sonnet 3.7 didn’t clean up the original file properly, causing a mess, and nothing worked.

Finally, I switched to Sonnet 3.5, and that’s when I was able to properly split, clean up, and fix everything.

Conclusion

Sonnet 3.7 demonstrates impressive capabilities in understanding project structures and following instructions accurately in the early stages of development. However, when dealing with larger codebases, it struggles with duplication, confusion, and handling multiple files efficiently.

While Sonnet 3.5 currently performs better in managing large-scale projects, Sonnet 3.7 shows great potential. With further fine-tuning, particularly in agent mode, it could become an even more powerful tool.

I’m eagerly waiting for the Cursor team to refine Sonnet 3.7, combining the structured reliability of Sonnet 3.5 with the advanced reasoning and capabilities of Sonnet 3.7.

What Do You Think?

I’m curious to hear your thoughts!
For those who have worked with Sonnet 3.7, how has your experience been? What are your impressions?
Have you encountered similar issues when working with this model on larger projects and extended sessions? Let me know your thoughts!

6 Likes

The problem you have is that you don’t manage your context window, and instead, you throw everything into agent mode. That’s pretty bad.

2 Likes

I had similar experience with my current code base. I switched to 3.7 while the whole project has been developed using 3.5 and I noticed that 3.7 starts looping for ever following his own mind ignoring the cursorrules and duplicating files and code within files. Not very impressed.

What would you recommend as a better approach? I’m only 8 months into coding so still rely heavily on agent but want to be better.

I don’t think its specifically a 3.7 problem, 3.5 does exactly the same once you get to a certain size of app. It’s probably also unrealistic that this is within cursors control. I think we’re just hitting the limit of the models and context windows at this point. They just aren’t as capable as we would like them to be yet.

Duplicating code, going around in circles, quick fixes that cause more problems, that’s just the level the models are at.

3.7 felt far superior initially because it could race off and do so much on its own. But it can also gut a project and mess everything up just as quickly. 3.5 did the same just less enthusiastically.

You need to get better at prompt engineering, also maybe use images with arrows. Context window is at least as far as I know 200k lines give or take, I am seeing more grepped things appear, and automated lint checking.

I’d suggest a few things that could really help.

1. Customize Your .cursorrules File

This is super important. Take the time to configure it for your needs—it’ll make a huge difference in how the model helps you. You can check out dotcursorrules.com for ready-made setups, but it’s always better to tweak them to fit your workflow.

2. Keep a tasks.md File

Before diving into development, create a tasks.md file. Use the AI to help you break down project tasks, make sure everything looks structured and clear, and that the objectives are well-defined. This keeps you on track and ensures the AI understands what you’re working on.

3. Document as You Go (project.md)

As your project progresses, take pauses and let the model review your entire project. Write down what each file and function does in a project.md file. This helps prevent the model from getting lost and ensures it actually provides useful help rather than getting confused.

I personally work like this with Cursor. Of course, it’s not perfect—once the codebase grows large, issues start appearing. Models tend to loop or get stuck, which can slow things down.

From my experience:

  • Sonnet 3.7 is great for planning, structuring, and setting up the project.
  • Sonnet 3.5 works better for large codebases. Sonnet 3.7 tends to slow down, get stuck in loops, or make mistakes that take time to fix. So, when the project gets bigger, I often switch back to Sonnet 3.5.

I really hope they improve Sonnet 3.7’s handling of large codebases soon. And yeah, I’m also curious to try Grok 3 when they release its API! :grinning_face_with_big_eyes:

2 Likes

Thanks for your reply! I’d love to hear a more detailed answer. How do you currently work with Cursor? Not through agent mode? :blush:

This is immensely helpful - thank you! If you ever need help moving a couch, I got you.

1 Like