Home / Blog / Claude Code + Cursor + OpenS (English)

Claude Code + Cursor + OpenS (English)

By CaelLee | | 4 min read

Claude Code + Cursor + OpenS (English)

Generated: 2026-06-24 22:16:35

---

2025's AI Coding Power Combo: Claude Code + Cursor + OpenSpec – How I Started Making 400K a Month with It

At the end of last year, I almost smashed my laptop.

Picture this: I'm in Cursor, asking Claude to refactor a simple user list page – just add pagination and search. What does it do? Not only does it add pagination and search, but it also changes my CSS variables, swaps the layout from Flex to Grid, throws in some animation transitions on its own, and wraps a whole new layer around the API. I just wanted pagination, damn it!

Start a new conversation? All context is gone – I have to re-explain the whole project background from scratch. Keep using the same thread? The code has gone completely off the rails, can't even roll it back. That moment, staring at the screen, I felt like AI wasn't helping me – it was showing off. “Look how versatile I am.” But I don't need versatile – I need obedient! If you've ever used AI to code, you know exactly what I'm talking about. Right? Anyone who's tried coding with AI has been driven crazy by this kind of “creative freedom.”

What happened next?

Now I'm pulling in a steady 400K+ a month, and my work week went from 60 hours down to 25. You might not believe this – I single‑handedly delivered a mid‑size SaaS with RBAC + multi‑tenancy + RAG in nine days. Client accepted it on the first try, basically zero rework. The turning point came down to two things: in March 2025 I started using OpenSpec, and I replaced Cursor's built‑in Agent with Claude Code.

It's not that the tools got more competitive – it's that my workflow changed.

---

Three Brothers in a Nutshell

OpenSpec writes the contract – locks the requirements into a Markdown file. The AI writes code according to the contract. Dare to go rogue? I tear up the contract!

Claude Code acts as a senior AI engineer in your terminal – it uses git, runs tests, rolls back on its own, no hand‑holding needed.

Cursor is the front‑end interaction tool – completions, refactoring, Ctrl+K to edit code, super smooth.

The core of this combination isn't about making AI write more code – it's about making it write less code that's “directionally correct but misaligned with the requirements.” Think about it – isn't that way smarter than just piling on more tools?

---

First Pitfall: You Think AI Isn't Smart Enough? Wrong – It's Too Smart!

It took me three months of pain to figure this out.

Claude isn't not smart – it's too smart. You give it a vague requirement, and it'll implement every possibility, then pick what it thinks is best – but what it thinks is best isn't necessarily what you want.

Remember that user list refactor? It decided on its own to use Grid instead of Flex, reasoning that “maintainability is better.” Of course I know Grid is better! But this project has 200 pages all using Flex. You change this one, and the next maintainer will notice the inconsistency, and the whole project becomes a mess. You decide to use Grid, and suddenly the whole team has to follow? Who's responsible?

AI has no holistic project awareness – it only has “local optimum” awareness.

That's why OpenSpec exists: you write all your design constraints into a spec file, and every time the AI starts, it reads the spec first – it won't dare to go wild. In short – put a leash on the AI.

---

How to Set It Up – 8 Minutes, Set and Forget

Don't be scared by terms like “specification‑driven development.” It's ridiculously simple in practice. Follow me:


npm install -g @anthropic/claude-code @fission-ai/openspec
cd your-project
openspec init

It'll generate an openspec/ directory. Inside, project.md holds the project background, tech stack, and constraints; AGENTS.md is the AI behavior instructions. When you init, select Claude Code and Cursor, and it'll automatically configure the slash commands for you.

Then start Claude Code and load the spec files:


claude
# Inside, type:
/config auto-accept-changes true
/load openspec/AGENTS.md
/load openspec/project.md

I personally timed it – 8 minutes 12 seconds! After that, every conversation keeps the project context. No more amnesia.

---

Second Pitfall: Relying Only on Chat? The AI's “Attention Drift” Is Unsolvable

I first saw this term in OpenSpec's official docs, and it's dead on.

Think about it: when developing a new feature, the first three rounds of chat stay on track. Then on the fourth round, it suddenly starts adding stuff you never mentioned. Why? Because the longer the conversation, the easier it is for the AI to treat noise as signal. You mean A, but it gives you A+B+C, and you waste time deleting.

OpenSpec's workflow is dead simple: write spec → review spec → code according to spec → archive spec. The AI always starts from the spec, not from your chat history.

I only use a handful of commands:

CommandPurpose
C

Cael Lee

Full-stack developer with 8+ years of experience. Currently building AI-powered developer tools. I've tested 20+ AI API providers and coding assistants.

Ready to get started?

Get your API key and start building with 180+ AI models.

Get API Key Free