A year ago "vibe coding" was a Twitter joke. Now people ship real things this way. Solo founders put out an MVP over a weekend. Backend engineers build frontends they would never have touched. People who have never programmed automate their spreadsheets. And the model typing most of it is, more and more often, Claude.
Four questions run through this guide: what vibe coding actually is, where the term came from, why people pick Claude for it, and, the part most write-ups skip, how to do it without a production full of bugs.
What is vibe coding, in plain words?
You build software by telling an AI model in ordinary language what you need, and the model produces the code. You stay in the loop. You run the result, look at what came out, and ask for changes. What you type by hand is intent, not lines.
The extreme version goes further: you hardly read the code at all. You ask for a feature, the model writes it, you run it, and if it works you move on. That is coding by vibe, on gut feel and repeated tries, instead of careful authorship line by line.
That is the pure form. Most people settle somewhere in the middle: the AI generates a lot, while a human reads the diffs and catches slips. Both modes get called vibe coding.
Where did the term come from?
Andrej Karpathy, co-founder of OpenAI and former director of AI at Tesla, coined it in a February 2025 tweet. He described "a new kind of coding I call vibe coding, where you fully give in to the vibes, embrace exponentials, and forget that the code even exists." He accepted every suggestion, pasted error messages back without reading them, and let the model sort it out.
The phrase spread because it named something people were already doing. Russian-speaking developers picked it up fast: Yandex gets tens of thousands of searches a month for the Russian spellings, "vaib koding" and "vaibkoding".
How is vibe coding different from using an AI assistant?
It flips who writes. Autocomplete and chat assistants help with code you are writing. In vibe coding the default is reversed: the AI writes, you direct. It all comes down to who holds the pen. In a true vibe loop you describe outcomes ("add a dark mode toggle that persists in localStorage") and do not type the implementation.
Why does Claude suit vibe coding?
Vibe coding rests on two things. First, whether the model understands a messy, real repository. Second, how often its edits run on the first try. Claude is strong on both.
The lineup and what each model is for:
| Model | Best for | codexkey price (from) |
|---|---|---|
| Sonnet 4.6 | Everyday loops, fast iteration, most edits | $0.33/1M |
| gpt-5.6-luna | Cheap bulk edits, quick lookups, simple changes | $0.33/1M |
| Opus 4.8 | Hard refactors, tricky bugs, architecture | $0.50/1M |
There is no Haiku tier in the lineup. The cheapest model is gpt-5.6-luna, but it comes from a different family. The request format is compatible, while behaviour and prompts may differ, so test it on your own task.
The working pattern: vibe on Sonnet, move to Opus when you are stuck. Sonnet 4.6 is quick and cheap enough to run a describe-generate-run loop all day. Hit a nasty bug or a cross-cutting refactor that Sonnet keeps fumbling? Switch to Opus 4.8 for the deep analysis, then drop back down.
That routing delivers almost all of the savings, and we come back to it below. For a closer look at which model to pick when, read Sonnet vs Opus vs Haiku.
What tools do you vibe code in?
Not a chat window with copy and paste. You need a tool that reads your repo, edits files and runs commands. There are three main ones:
- Claude Code, Anthropic's terminal-native agent. It lives in your shell, reads the whole repo, edits files in batches, runs tests and loops. The best fit for "do this across the codebase, I'll review it afterwards." Installation is covered in the Claude Code setup guide.
- Cursor, a VS Code fork with Composer and inline diffs. Handy when your eyes are on the file and you want to accept or reject changes right in the editor. The Claude Code vs Cursor comparison shows which shape suits which workflow.
- OpenCode, an open-source terminal agent that is not tied to one model. Pick it for full control and no vendor lock-in.
All three work with Claude through codexkey's OpenAI-compatible endpoint. Point base_url at https://api.codexkey.online, paste your sk_cdx_… key, and go.
Can you make these tools more powerful?
Yes, with MCP servers. The Model Context Protocol lets your tool reach your database, internal APIs, tickets and custom utilities. Vibe coding stops being "edit files" and becomes "edit files with real context about my system." The MCP servers guide walks through the wiring.
What does a real vibe-coding workflow look like?
Forget the story where one sentence ships a startup. The real loop is short, repeats, and includes you. Five steps:
- Describe. State the task concretely. Not "make a login page" but "add email and password login, validate on the server, keep the session in an httpOnly cookie, redirect to /dashboard on success."
- Generate. Let the model write. In Claude Code that is one prompt and several files change. In Cursor it is a Composer run.
- Run. Execute it for real: start the app, hit the endpoint, click the button. Vibe coding without running is guessing.
- Iterate. Something broke? Feed the error back. Wrong behaviour? Describe the gap. Most of the time goes here, and that is normal.
- Review. Read the diff before you commit. Even a quick scan catches the 20% of changes that would bite you later.
An example. You want a CSV export on a reports page:
# In Claude Code, from your repo root
claude "add a CSV export button to the reports page. \
It should export the currently filtered rows, \
respect the date range, and stream the file so it \
works for 100k+ rows. Add a test for the export handler."
Claude reads your reports code and writes the button, the handler and the test. You run it and the test fails: the date filter was not applied. You write "the export ignores the date range filter, fix it." The model fixes it, the test goes green. Five minutes. That is vibe coding.
How long until something works?
A small, well-scoped feature in a repo the model can read? Often minutes. Something fuzzy, cross-cutting or buried in a giant legacy project? Longer, with more iterations. The skill is not typing. It is describing precisely and knowing when to stop and read the code.
How do you avoid shipping slop?
This part separates "I built a real thing" from "I built a demo that collapses in production." Vibe coding makes it trivially easy to get code you do not understand. Guardrails fix that.
Write tests, or have the model write them. A test is how you verify code you did not author line by line. Ask for one with every feature: "add a test that covers the empty-cart case." If the test passes and you trust the test, you can trust the code without reading every line.
Read the diff. Not every character, but do skim it. Look for deleted code that mattered, hardcoded secrets, a stray console.log, an auth check quietly removed. Thirty seconds of scanning saves hours of debugging.
Limit the scope. The biggest cause of vibe-coding disasters is letting the model touch too much at once. Ask for one feature, review it, commit it, move to the next. Bugs hide in a huge unreviewed diff.
Take a second pass. Have the model review its work in a fresh context, or run a separate code-review step. Author and reviewer should not share one live session, because fresh eyes catch what tired ones miss.
Do not vibe secrets or auth blindly. Anything involving authentication, payments or user data deserves a careful read. The model writes a plausible auth check with a subtle flaw more often than you would like.
Is that slower than pure vibing? A little. Is it the line between a toy and a product? Yes.
How do you control the cost?
Vibe coding burns tokens: you generate a lot of code and iterate a lot. With pay-per-token pricing you pay only for what you use, and a few habits keep the bill small.
Route by difficulty. Default to Sonnet 4.6 or gpt-5.6-luna. Save Opus 4.8 for the hard stuff. Running everything on Opus is how people overspend most often.
Turn on prompt caching. While you loop on one codebase, the model keeps rereading the same context. Prompt caching bills that repeated context at a fraction of the price. On a long session the saving is large, and the details are in the API cost-saving strategies.
Keep context narrow. Do not dump the whole repo into every prompt. Name the files that matter. Less context means fewer tokens, a lower price, and often better answers.
Batch the boring work. Bulk edits and non-urgent generation can go to gpt-5.6-luna or run in batches.
codexkey is pay per token with no subscription. Sonnet and gpt-5.6-luna start from $0.33/1M tokens, Opus from $0.50/1M. A serious vibe-coding habit can cost a couple of coffees a week. The full breakdown is on the pricing page.
How do you start vibe coding from Russia without a VPN?
Direct Anthropic access is closed to users in Russia: the console rejects your IP, cards are declined, and a VPN works for a day and then drops. codexkey routes around all of it. It is a gateway to Claude (Opus, Sonnet), plus gpt-5.6-luna for the cheapest tier, and you need neither an Anthropic account nor a VPN.
Setup takes about 15 minutes:
- Register on codexkey with email or Telegram.
- Top up with SBP (the Russian Faster Payments System), a Russian bank card, crypto, or MTS.
- Create an API key. It looks like
sk_cdx_…. - Point your tool at the endpoint:
# Works with Claude Code, Cursor, OpenCode, any OpenAI-compatible SDK
export ANTHROPIC_BASE_URL="https://api.codexkey.online"
export ANTHROPIC_API_KEY="sk_cdx_your_key_here"
- Start working. Open Claude Code or Cursor and describe what you want.
The long version is in the Claude Code Russia setup guide and the Claude Code docs.
When should you not vibe code?
Often. Vibe coding is a power tool, not a creed.
- Security-critical code. Auth, crypto, payment flows, anything with personal data. Generate if you like, but read every line and test hard. A subtle bug here has a real price.
- Code you will maintain for years. If you do not understand the architecture the model produced, you cannot extend it later. For long-lived core systems, slow down and learn what is being built.
- Cases where you cannot verify the result. No tests, no way to run it, no domain knowledge? That is gambling, not vibe coding.
- Highly novel problems. Models are good at common patterns and weak at genuinely new ones. If the training data has never seen what you are doing, expect to do more of the thinking yourself.
- Situations where learning is the goal. If you want to actually learn a language or framework, handing all the code to an AI skips the part where you get better.
The rule of thumb: vibe code freely for prototypes, internal tools, glue code and features you can check. Slow down for anything hard to undo.
FAQ
What is vibe coding in simple words?
You tell an AI in everyday language what you want, and it types the code. You describe a feature, run what comes back, and ask for fixes until it works. You steer with intent, the AI does the typing.
Which AI model is best for vibe coding?
For most people, Claude: its edits run reliably and it reads real codebases well. Use Sonnet 4.6 for fast everyday loops and Opus 4.8 for hard refactors and tricky bugs. No single model is best for every task. Routing wins: a cheap model by default, an expensive one when you are stuck.
Can you vibe code for free, or cheaply?
There is no truly free production-grade option, but pay-per-token pricing gets close. Through codexkey, Sonnet and gpt-5.6-luna start from $0.33/1M tokens, and a whole evening of vibe coding can cost under a dollar if you keep context tight and route by difficulty. No subscription, so you pay only for what you spend.
Is vibe coding safe for production apps?
Yes, if you put guardrails in place. Write tests, read the diffs, keep changes small, and review security-sensitive code by hand. The danger is not the AI, it is shipping code nobody read. With a test suite and a review pass, vibe-coded features reach production every day.
Do I need an Anthropic account or a VPN to vibe code with Claude?
No. codexkey gives you Claude without either. Register, top up with SBP, a Russian card, crypto or MTS, create an sk_cdx_… key, point your tool at https://api.codexkey.online, and work from Russia with no VPN.
Ready to start? Get a key and point your editor at Claude in about 15 minutes with the codexkey quickstart. Questions? Message us on Telegram (https://t.me/codex_key) or write through the contact page.