Vibe coding: how to start and ship a first project in an evening

A beginner plan: pick a small utility, set up an agent, phrase the task, check the result and keep everything in git.

5 min · · development · агенты

Vibe coding means you describe the task in plain words and a language model writes and edits the code. Beginners rarely get stuck on the technology itself. They get stuck on scale: they pick "my own startup", receive a pile of code nobody can check, and give up. Below is a plan for starting vibe coding small and reaching a working result in one evening, one that you actually understand.

Where to start: pick the first project

The most common mistake on the first evening is a goal that is too big. A good first project has three properties:

  • you can verify the result by eye in a minute;
  • everything fits in one or two files;
  • you will use the result yourself.

Examples: a script that sorts the Downloads folder into subfolders by extension; a utility that renames photos by date; a console converter from CSV to a Markdown table; a twenty-line Telegram bot. For this article we take the first one, a file sorter. It is easy to see, safe as long as it first runs in a "just show what would happen" mode, and needs no external services.

Choosing a tool

Three kinds of tools suit a beginner:

TypeExamplesUpsideDownside
Browser chatany chat with a modelnothing to installyou copy code by hand
Editor extensionCline, Kilo Codeedits appear in filestied to one editor
Terminal agentClaude Code, opencode, Codexreads the project and runs commandstakes time to get used to the terminal

If this is your very first time, start with an editor extension: changes are highlighted and easier to undo. If the terminal does not scare you, take an agent from the third row. Connecting Claude Code to Zukko is covered in the documentation. Take exact install commands and menu names from the tool's own documentation, because they change between versions.

You do not need to deliberate over the model for the first project. claude-sonnet-5-5 or gpt-6.1-sol is a fine start. If you want to try an idea at the lowest price, take deepseek-v4.1-flash. Check on your own task that the result suits you and switch if it does not. The current list and prices are at GET https://api.zukko.pro/v1/models or on the "Models" page in the dashboard.

Step 1. Create a folder and a repository

Before asking the model to write anything, set up git. It is your insurance for the day the agent "improves" everything beyond recognition.

bash
mkdir file-sorter && cd file-sorter
git init

Make a first commit with an empty README.md. From that point you can always go back.

Step 2. Connect a model

Create a key in the dashboard and set a daily limit on it, for example $2, so even a runaway agent loop cannot go far. In editor extensions choose the "OpenAI Compatible" provider, Base URL https://api.zukko.pro/v1, key like fetch_.... Claude Code uses a different address: ANTHROPIC_BASE_URL=https://api.zukko.pro without /v1, and the token goes into ANTHROPIC_AUTH_TOKEN. Which format your tool needs is explained on the provider choice page.

Step 3. Phrase the task so it can be checked

A weak prompt: "make a program that sorts files". A working prompt names the input, the expected behavior and the limits:

bash
Write a Python 3 script sorter.py with no external dependencies.
It takes a folder path and sorts files into subfolders by extension:
images (jpg, png, gif), docs (pdf, docx, txt), archives (zip, rar), other.
Requirements:
- by default it only prints what would be moved (--dry-run is on);
- real moving only with the --apply flag;
- it does not touch nested folders;
- on a name conflict it adds the suffix _1, _2.
Do not add anything beyond this list.

The last line matters: agents like to add logging, configs and forty tests "while they are at it". On the first evening that is noise.

Step 4. Iterations: small steps instead of one huge request

Once you have the first version, do not ask to rewrite everything. The rhythm is:

  1. Run the script with --dry-run on a test folder.
  2. Compare the output with what you expected.
  3. Write one remark: "files without an extension must go to other, right now the script crashes".
  4. Get the fix, run again.

One remark per iteration gives a readable diff and shows quickly what broke. If the agent is stuck on one spot for three iterations, stop arguing: roll back with a commit, rephrase the task and start a clean conversation. A long chat bloats the context and the token bill.

Step 5. Verifying the result

Vibe coding does not remove verification, it moves it to you. A minimum set:

  • create a test folder with about ten files, including one without an extension, one with two dots in the name, and duplicates;
  • run with --dry-run and read the output;
  • only then run with --apply on a copy of the folder;
  • ask the model to explain the code line by line, and if something is unclear, ask why it is there.

The last item turns vibe coding into learning. After a few projects you will notice the excess yourself.

Step 6. Git: commit after every working state

bash
git add -A
git commit -m "sorter: dry-run and apply modes"

The rule is simple: a working version is committed before the next request to the agent. When it breaks something that worked, git diff shows what changed and git restore . brings the files back.

What it costs

A small evening project is dozens of short requests. For an estimate take a hypothetical assumption and prices as of October 18, 2026: 40 requests of 8,000 input tokens and 1,000 output tokens on claude-sonnet-5-5 (0.4 / 2 per 1M tokens). Input: 40 × 8,000 = 320,000 tokens × 0.4 / 1,000,000 = $0.128. Output: 40 × 1,000 = 40,000 × 2 / 1,000,000 = $0.08. Total about $0.21 without caching. Real spend depends on project size and agent behavior, so a key limit is the best protection. More on agent spend: what an hour of agent work really costs.

FAQ

Do I need to know programming to start vibe coding?

Not for the first project, but you need the basics: a file, a folder, a terminal, git. Without them you cannot check the result, and checking is your part of the job.

What is the best first project?

A small utility with a checkable result: a file sorter, a format converter, a simple bot. Avoid projects with login, payments and a database: mistakes there are expensive.

How do I avoid losing money if the agent loops?

Set a daily limit on the key and watch spend in the "Usage" section of the dashboard. The limit is set in dollars when you create or edit the key.

What comes after the first project?

Add an instruction file for the agent (for Claude Code it is CLAUDE.md, see our article how to write CLAUDE.md) and then take a bigger task. To connect, create a key in the dashboard and paste it into the settings of your chosen tool.

zukko

Pay 25×
less

for Claude Code & ChatGPT

One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.

Get API keyDocumentation

api.zukko.pro · fetch_*

Vibe coding: how to start and finish a first project · Zukko