When working on large projects with Opus 4.5, the relatively limited context window (~200k tokens) often gets exhausted during the planning phase or while reviewing the overall project architecture—sometimes even before real implementation starts.
This raises a broader question about handling large-scale projects under context limitations:
What are the best strategies to manage context efficiently?
How do you structure planning, architecture reviews, and implementation to avoid losing important information?
Are there effective workflows or tools (summaries, checkpoints, memory files, etc.) that help preserve continuity?
On the other hand, Sonnet 4.5 Max offers a much larger context window (up to 1 million tokens).
Does this make it a better choice for large or long-running projects?
Or does a larger context introduce other trade-offs (cost, focus, reasoning quality), making a hybrid approach—using Opus for deep reasoning and Sonnet Max for context-heavy tasks—more effective?
I’m curious to hear how others choose between Opus 4.5 and Sonnet 4.5 Max when working on complex projects in Cursor, and what real-world workflows have proven successful.
Hey, great request! Here are a few proven strategies:
Core approaches to context management
Phased approach (from your linked topic): Research → Plan → Execute. Split each feature into smaller tasks with separate cycles. Save the results of each phase in markdown for the next step.
Use the right mode for the job:
Plan Mode Shift+Tab for complex features, it creates a detailed plan before coding
Ask Mode for exploring the codebase without making changes
I’ve worked on a few large(ish) legacy monoliths with Cursor.
One of the tricks I have is to create a few markdown buckets for common tasks.
For instance I worked on a large .NET React Monolith with lots of spread out code and coupled services and repositories.
To add a new email template I had to change about 10 different things.
Adding a markdown template that I can just tag in really helped me out a lot - once I’d done the task myself with Cursor I’d ask it to create a new markdown file with what it learned. This helps the model not forget stuff and limit the context window somewhat