Skip to content

Migrating from Traditional IDEs

You have ten years of muscle memory in VS Code or JetBrains. Your keybindings are wired into your fingers, your extensions are tuned exactly how you like them, and you can navigate a codebase blindfolded. Then a teammate ships a feature in an afternoon that would have taken you two days, and you find out they described it to an agent instead of typing it. The switch feels risky: you do not want to lose the setup you spent years building just to chase a faster workflow.

You do not have to. This playbook moves you from a traditional IDE to Cursor, Claude Code, or Codex without throwing away your settings, keybindings, or git flow — and it shows you the one habit that actually changes: going from “write every line” to “describe the change, review the diff.”

  • Your VS Code or JetBrains settings, keybindings, and extensions imported into your new tool (or a clear list of what won’t transfer and why)
  • A CLAUDE.md / AGENTS.md / .cursor/rules scaffolded from your existing repo conventions so the agent matches your house style on day one
  • A copy-paste refactoring prompt that demonstrates the describe-don’t-write workflow on a real module
  • A “When This Breaks” checklist for the failure modes every migrating developer hits in week one

The smoothest path depends on which IDE you’re leaving and whether you want to keep a graphical editor or move to the terminal.

Best path from VS Code — Cursor is a VS Code fork, so the import is near-instant and your extensions, themes, and keybindings come along.

  1. Install Cursor, then on first launch choose Import from VS Code (or run the Cursor: Import VS Code Settings command from the palette). This pulls settings.json, keybindings.json, installed extensions, and themes.

  2. Verify your extensions resolved. Cursor installs from the Open VSX registry, not the Microsoft Marketplace, so a few proprietary extensions (notably the C/C++ and C# debuggers and some Microsoft-only tools) may be missing. Note the gaps and find Open VSX alternatives.

  3. Coming from JetBrains instead? There’s no one-click import. Install the IntelliJ IDEA Keybindings extension to keep your shortcuts, then re-add language support and your debugger config manually.

  4. Learn the four AI entry points: Cmd/Ctrl+K for inline edits, Cmd/Ctrl+I for Agent mode, the chat sidebar for questions, and Tab to accept multi-line suggestions.

A traditional IDE enforces your style through linters and formatter config. AI tools read a project instructions file instead. This is the single highest-leverage thing you can do on migration day: a good instructions file is the difference between an agent that writes code like your team and one that invents its own patterns.

The file differs by tool, but the content is the same — your architecture, naming rules, testing requirements, and workflow expectations.

Cursor reads rule files from .cursor/rules/. Keep them scoped — one file per concern (architecture, testing, API conventions) so you can attach the relevant ones per task.

---
description: API route conventions
globs: ["src/pages/api/**"]
---
- API routes live in src/pages/api/ with kebab-case filenames
- Validate input with Zod at the top of every handler
- Return typed JSON: `new Response(JSON.stringify(data), { status, headers })`
- Never log request bodies (they contain PII)

The One Habit That Changes: Describe, Don’t Write

Section titled “The One Habit That Changes: Describe, Don’t Write”

In a traditional IDE you implement a change line by line and lean on Find-and-Replace for the mechanical parts. The AI-first workflow inverts this: you describe the end state and the constraints, the agent proposes a coordinated multi-file diff, and your job becomes reviewing rather than typing. The skill you’re building is precise specification, not faster typing.

Take a real, recognizable task — migrating an Express route module from callback-style error handling to async/await with a shared error middleware. In the old workflow you’d open each route file, rewrite the handlers by hand, update the tests, and hope you caught every call site. In the new workflow:

Open Agent mode with Cmd/Ctrl+I and describe the change. Cursor plans it, edits every affected file, and shows you a per-file diff to accept or reject.

Refactor src/routes/ from callback-style error handling to async/await.
Wrap each handler so thrown errors propagate to a shared
errorHandler middleware in src/middleware/error.ts (create it if it
doesn't exist). Update the matching tests in tests/routes/ and run
the suite. Show me the diff before applying.

The mechanics differ, but the discipline is identical across all three tools: state the end state, name the files or directories in scope, specify how to verify (run the tests), and review the diff before trusting it.

Coming from an IDE where the only “model” choice was your autocomplete engine, the model picker is new. A sensible default ladder:

  • Claude Fable 5 — Anthropic’s most capable model (released June 9, 2026). Reach for it on the hardest refactors, greenfield builds, and long-running tasks where velocity and quality matter more than cost. Switch in Claude Code with /model fable. Available in Cursor’s model picker and via the API. ($10/$50 per million tokens; 2× Opus 4.8.) See model comparison for plan-inclusion details.
  • Claude Opus 4.8 — the Claude Code default model. Strong at complex multi-file work and agentic planning; a good everyday choice when Fable 5’s cost is a factor.
  • Claude Sonnet 4.6 — the workhorse for routine edits and fast iteration when cost matters.
  • GPT-5.5 — powers Codex across all surfaces by default; gpt-5.4-mini is the lower-cost option that extends your usage when you hit rate limits.
  • Gemini 3.1 Pro — reach for it when you need extreme context or image/video analysis.

In Cursor the picker makes switching trivial — start with the strongest model and downgrade only when you’re cost-conscious. In Claude Code and Codex, set the model per session or in config.

Most of what your IDE did still exists — it’s just driven by description instead of menus.

Traditional FeatureCursorClaude CodeCodex
Find & ReplaceAI refactor in Agent modeMulti-file edit from one promptTask-scoped multi-file edit
IntelliSenseAI completions + TabInline suggestions via editor extensionIDE extension completions
DebuggerNative debugger + AI diagnosisNative debugger + AI from terminalNative debugger + AI in IDE
Git integrationBuilt-in + AI commit messagesCLI git + AI commit messagesCLI git + AI commit messages
ExtensionsOpen VSX compatibleWorks alongside any editorWorks alongside any editor
SnippetsGenerated on demandGenerated on demandGenerated on demand

A critical extension isn’t on Open VSX. Cursor pulls from Open VSX, so proprietary Microsoft extensions (some debuggers, Live Share, certain language packs) may be missing. Search Open VSX for an open-source equivalent, or keep your old IDE around for the one workflow that needs it. Don’t sideload Marketplace VSIX files blindly — many Microsoft extensions are licensed for Microsoft products only.

The agent ignores a convention you wrote down. Vague rules get vague compliance. Replace “use good error handling” with a concrete example block in your instructions file showing exactly the pattern you want. Specificity is what makes rules stick.

The agent over-refactors. Coming from manual editing, the biggest shock is an agent “helpfully” rewriting code you didn’t ask it to touch. Scope every prompt: name the files or directory, and add “do not change anything outside these files.” For autonomous tools, set --sandbox read-only or --ask-for-approval on-request until you trust the boundaries.

It feels slower in week one. This is real and expected. You’re trading typing speed for specification speed, and the second skill takes a couple of weeks to build. Start on a low-stakes side project or non-critical tickets, not the production hot path, while the new reflexes form.

Muscle-memory misfires. Your old keybindings may collide with AI shortcuts (Cmd/Ctrl+K, Cmd/Ctrl+I). Remap the AI commands rather than relearning your editing keys — the friction disappears once the conflicts are gone.