All posts
CursorRulesDX

Project rules that keep Cursor honest

Abstract blueprint visual for Cursor project rules

Cursor’s worst habit is enthusiasm. You ask for a contact SLA block and it also “improves” the header, invents a purple accent, and adds a dependency you did not request.

Rules fixed most of that for me — but only when they read like engineering standards, not inspirational posters.

I keep a short list: match existing components, do not add packages without asking, do not retheme, prefer content JSON over hard-coded copy, keep the steel-blue system. I ban drive-by refactors in the same breath as the feature request.

Length matters. A three-page rules file gets ignored mid-run. A tight must / must-not list gets followed. When something goes wrong twice, I add one line — not a paragraph.

Pointing at real files works better than abstract taste. “Follow components/site/Reveal.tsx and the existing eyebrow styles” beats “make it premium.” Agents copy what they can see.

On RazaStack.com work I am especially strict about brand. Hybrid copy: RazaStack is the product, Hassan is the builder. No 20+ years claims. No fake testimonials with invented names. Those lines live in rules because I got tired of correcting them.

I also spell out ICP in rules now: dental practices and home-service contractors. Otherwise the model drifts back into generic “SaaS platform” homepage language that does not match who I am selling to.

Treat rules as living notes from scars. Every painful agent run should leave one clearer sentence behind. That is how the tool gets honest over time.

Next step

Ready for a site that books patients or wins jobs?

Dental practices and home-service contractors — tell me your services, area, and timeline. I’ll reply with a practical plan.

Project rules that keep Cursor honest | RazaStack