What is vibe coding? How it works, doing it well with Cursor or Copilot, and its future

What vibe coding means and where the name came from, doing it well with Cursor or Copilot, the best tools, whether it is a skill, criticism and its future.

Presenting Annapurna on stage
Presenting Annapurna on stage

Key takeaways

  • Vibe coding means building software by describing what you want to an AI and accepting its code with little manual review.
  • Andrej Karpathy coined the term in February 2025 for 'giving in to the vibes' and forgetting the code exists.
  • Do it well by planning small steps, testing constantly, committing often and reading what matters.
  • It is great for prototypes and personal tools, risky for production code without review.
  • The term may fade, but AI-assisted development is here to stay; engineering judgement matters more, not less.

Vibe coding is building software by describing what you want to an AI coding tool in plain language, running what it produces, and steering by results rather than reading every line. It makes prototypes possible in hours, even for non-programmers, but it can hide bugs and security holes when used carelessly. I build production AI products and use AI coding tools daily, so this page covers what vibe coding is, its name, doing it well with Cursor or Copilot, tools, whether it is easy or a skill, the criticism, and its future.

What is vibe coding and how does it work?

Vibe coding is a style of programming where you prompt an AI to write code, run the result, describe what to change, and repeat, often accepting changes without studying them closely. The AI acts as the programmer; you act as the product owner and tester.

Also asked as: what is vibe coding and how it works · how to vibe coding effectively · how to vibe coding with cursor · can i do vibe coding with copilot

A typical loop: describe the app, let an agent create files, run it, paste error messages back, ask for features, and keep going. Tools such as Cursor, Claude Code, GitHub Copilot's agent mode, Replit and Lovable support this. It works surprisingly well for small apps, scripts and prototypes. It works poorly when the codebase grows and nobody understands it, because problems compound and become hard to fix.

Why is it called vibe coding?

The term was coined by Andrej Karpathy, a co-founder of OpenAI and former head of AI at Tesla, in a post in February 2025. He described "fully giving in to the vibes" and forgetting the code even exists, accepting AI suggestions and steering by feel.

Also asked as: why vibe coding is called vibe coding

The phrase spread quickly because it captured a real shift: people building working software by conversation. Its popularity led dictionaries to recognise it, with Collins naming it a word of the year for 2025. Over time, "vibe coding" has also been used loosely for any AI-assisted coding, though its original meaning is specifically about not reviewing the code closely.

How do I vibe code effectively?

Work in small, testable steps, keep the AI focused with clear instructions, run and test after every change, commit to git often so you can roll back, and read the parts that matter: security, data handling and anything that touches money or users.

Practices that work:

  • Start with a short spec: features, stack, data model and constraints.
  • Ask for one feature at a time, then test it.
  • Keep a project rules file describing conventions for the AI.
  • Paste exact error messages and expected behaviour when fixing bugs.
  • Ask the AI to write tests, and run them.
  • Review authentication, database queries and secrets handling yourself.

How do I vibe code with Cursor?

Open your project in Cursor, use the agent or chat panel to describe what to build, let it edit files across the project, and review the diffs before accepting. Add project rules so it follows your conventions, and run your app after each change.

Tips specific to Cursor: reference files or folders with the @ symbol to give precise context; use a rules file to describe your stack and style; break big requests into steps; check diffs rather than accepting everything blindly; and use checkpoints or git to revert bad changes. Choose the model per task, using stronger models for complex changes. Run tests in Cursor's terminal and let the agent fix failures.

Can I vibe code with GitHub Copilot?

Yes. GitHub Copilot's chat and agent mode in VS Code and other editors can create and edit files, run commands and iterate on errors, which supports a vibe coding workflow. Copilot's coding agent can also work on GitHub issues and open pull requests.

Use Copilot's agent mode for multi-file changes, custom instructions files for project conventions, and pull request reviews to check AI changes before merging. As with any tool, quality depends on clear instructions and testing. Copilot integrates tightly with GitHub, which makes reviewing AI-generated changes through pull requests natural for teams.

Which vibe coding tool is best?

It depends on your skill and goal. Cursor and Claude Code suit developers working on real codebases; GitHub Copilot suits teams on GitHub; Replit, Lovable and Bolt suit non-developers building web apps quickly in the browser with hosting included.

Compare on: how well the tool understands your whole project, model quality, ability to run and test code, deployment options, cost and data privacy. For learning, a tool that shows diffs and explains changes helps you understand the code. For production, choose tools that fit code review, testing and version control. Try two tools on the same small project and keep the one whose output needs the least fixing.

Is vibe coding easy?

Starting is easy: you can build a simple working app in an afternoon without deep programming knowledge. Keeping it working as it grows is hard, because without understanding the code you cannot easily diagnose bugs, performance issues or security problems.

Beginners often hit a wall when the AI keeps "fixing" one bug and creating another, or when deployment, databases and authentication get involved. Learning programming basics, reading error messages, understanding project structure and using git, makes vibe coding dramatically more effective. The people who get the most from AI tools are those who can judge whether the output is right.

Is vibe coding a skill?

Yes, partly: writing clear specifications, breaking problems into steps, testing thoroughly and steering an AI efficiently are real skills. But it is not a substitute for software engineering skills like design, debugging, security and maintainability.

Employers increasingly expect developers to use AI tools productively, so the skill is valuable when combined with fundamentals. A developer who understands architecture and reviews AI output ships faster and safer than one who either avoids AI or accepts everything blindly. For students, use AI to learn faster, asking it to explain code, while making sure you can build and debug without it.

Why is vibe coding frowned upon?

Critics point to real risks: code nobody understands, security vulnerabilities such as exposed keys and injection flaws, poor performance, duplicated logic, and apps that break unpredictably. Shipping such code to real users can cause data leaks and outages.

There have been public examples of vibe-coded apps leaking user data through misconfigured databases or exposed secrets. Experienced engineers also worry that beginners skip learning fundamentals. The criticism is mainly about using vibe coding for production systems without review. For prototypes, demos, learning and personal tools, most engineers consider it a useful and legitimate approach.

Will vibe coding die?

The label may fade, but AI-assisted software development will not. Tools are improving at understanding codebases, testing and reviewing their own work, so building by describing intent will become more common and more reliable.

What will likely change is the balance: professional work will blend AI generation with strong review, testing and architecture, sometimes called agentic engineering, while pure "never read the code" vibe coding stays mostly in prototyping and personal projects. The durable skills are knowing what to build, specifying it clearly, verifying results and owning quality, which matter more as AI writes more code.

Sources

  1. Wikipedia, Vibe codingen.wikipedia.org
  2. Cursor, documentationdocs.cursor.com
  3. GitHub Docs, GitHub Copilotdocs.github.com
  4. Anthropic Docs, Claude Code overviewdocs.anthropic.com
  5. OWASP, Top 10 web application security risksowasp.org
Pranjul Rathour
Pranjul Rathour
GenAI Engineer · India

GenAI engineer and AI product builder with 2+ years shipping production-grade AI systems: RAG pipelines, fine-tuned LLMs, hybrid retrieval and multi-modal apps across vision, speech and OCR, architected end to end from ingestion to deployment. Leads engineering for SCULT INDIA's 14-member team, founded the 500+ member TechVerse Enclave community and has mentored 200+ students. Three hackathon first prizes: Changethon 2025 (IIT Roorkee), Product Genesis at Vividhotsava 2025 (CSJMU) and BYTEBATTLE (MeetKats).

Open to GenAI roles, hackathon judging, mentorship sessions and guest talks at colleges. For campus sessions the inviting institution covers the visit end to end: travel (a First AC train ticket for journeys up to five hours, a flight for anything longer), accommodation, meals, and pickup and drop; the honorarium and workshop fees are negotiable on WhatsApp or on the call, and requests are welcome from institutions that can cover the visit this way. Email pranjulrathour41@gmail.com.

Keep reading

More on Shipping AI apps

All Shipping AI apps guides →
Campus talks · hackathon judging · mentoring

Want this as a live session at your college?

Open to GenAI roles, hackathon judging, mentorship sessions and guest talks at colleges. For campus sessions the inviting institution covers the visit end to end: travel (a First AC train ticket for journeys up to five hours, a flight for anything longer), accommodation, meals, and pickup and drop; the honorarium and workshop fees are negotiable on WhatsApp or on the call, and requests are welcome from institutions that can cover the visit this way.

Pranjul Rathour, GenAI engineer in India