A very long time in the past, in a galaxy far, distant, I used to be a CTO of a giant, fast-growing public firm. Nicely, I used to be a Quasi CTO in the identical approach the US and the First French Republic had a Quasi Struggle between 1798 and 1800 (mainly, kind of a conflict; kind of a CTO … however probably not.)
As I rediscover my second love (my old flame is Amy), I’ve relied on a number of mentors to assist information me. One in all them is Michael Natkin, who has been serving to me with Cursor within the background at a couple of key moments.
He not too long ago despatched me his most up-to-date Vibecoding immediate for Cursor, which builds on a tweet by @vasumanmoza.
Given all of the issues I’ve discovered about what works and doesn’t work, typically by means of trial and error (and rolling again issues when Cursor+Claude go off the rails), Michael’s strategy was a pleasant enchancment over the place I had gotten to. So – sharing it beneath (with Michael’s permission).
I like to recommend utilizing Claude Sonnet 4, and you are able to do all of this totally in Cursor. This is applicable whether or not you’re making a greenfield mission or making a considerable change to an current one. You possibly can repeat the method with architecture2.md, tasks2.md as wanted, don’t throw them away.
Remember to set up the Puppeteer MCP so it could possibly check within the browser.
Overview
- Do the structure step, see beneath
- Evaluation structure.md, and make any modifications you need – both by hand modifying, asking for modifications, or beginning over. Notably be aware whether it is overcomplicating issues, and ask for the simplifications you need.
- Do the duty planning step, see beneath
- Evaluation duties.md, and make any modifications you need – both by hand modifying, asking for modifications, or beginning over. It is best to find yourself with, sa,y no less than 10 steps, and sometimes 25 or extra. It can sometimes prepare them in phases, which is good. Once more, search for and proper extra complication.
- Begin a brand new chat
- Give it the coding step immediate. It ought to execute the primary activity very cheerfully.
- After it’s carried out, evaluation it after which say “go” to get the following step. If it screwed up, you’ll be able to both inform it to repair no matter it did flawed, or extra often restore checkpoint in cursor, and inform it one thing like “go, however use litellm for that” or no matter you might want to be totally different.
- Rinse and repeat!
- Optionally, esp. If you’re going to be away for some time, you’ll be able to sa,y “I’m going to be afk for a bit. You possibly can preserve occurring steps with out ready for me so long as each the guide and automatic assessments go.” It can nonetheless cease after 25 steps or if it ignores you and runs one thing interactive, however it typically makes a whole lot of progress.
- Extremely advisable: run /Generate Cursor Guidelines after every step
One thing I haven’t tried but, however ought to work effectively – inform it to mark what’s full in duties.md, so you can begin recent chats periodically and never preserve such an enormous message historical past.
Structure Step – Greenfield
I’m constructing a [description of your product – the more detailed the better].
[Any tech requirements, i.e. use Python for backend and React + Material-UI for the frontend. The more the better.]
Put the complete structure in structure.md
– File + folder construction
– What every half does
– The place the state lives, how companies join
Format this whole doc in Markdown.
Structure Step – Present Codebase
I need to modify this codebase in order that it performs [whatever].
Do your whole work constantly with the present model and structure.
Put the complete structure in structure.md
– File + folder construction
– What every half does
– The place the state lives, how companies join
Format this whole doc in Markdown.
Job Planning Step
Utilizing that structure, write a granular step-by-step plan to construct the MVP.
Every activity ought to:
– Be extremely small + testable – it ought to each have unit assessments which you could run, and likewise a guide check which you could run from the command line or utilizing the browser device
– Have a transparent begin + finish
– Deal with one concern
I’ll be passing this off to an engineering LLM that’ll be instructed to finish one activity at a time, permitting me to check in between.
Reserve it as duties.md.
Coding Step
You’re an engineer constructing this codebase.
You’ve been given @duties.md and @structure.md
– Learn each rigorously. There needs to be no ambiguity about what we’re constructing.
– Observe duties.md and full one activity at a time, then run the automated assessments you’ve written and use the command line or browser device to manually check
– After every activity is accomplished, cease. I’ll check it and evaluation your code. If it really works, decide to git and transfer to the following one.”
You might be already within the right listing. Construct the mission right here. DO NOT CREATE A SUBDIRECTORY.
You might have my permission to delete recordsdata IN THIS DIRECTORY with out asking for approval.
BE VERY CAREFUL by no means to run any interactive instructions within the foreground, since you’ll be caught. For instance, you should definitely run the event server as soon as, within the background with scorching reloading.