01 What it actually does
It reads your files, and asks before it changes them.
A coding agent is a program you talk to in ordinary sentences. Point it at one folder on your computer and it can read what is in there, run commands, and propose changes to your files. It is not answering from memory and it is not a chatbot with a code theme: it looks.
Pick something to say. These are ordinary first messages — no syntax, no keywords.
The point: An agent is not a search box and not autocomplete. It looks at your actual files, runs your actual commands, and reports what it found. When it wants to change something, it stops and asks.
02 The moment that keeps you safe
Nothing happens until you say so.
This is the single most important screen in the product, and the one nobody explains. Before an agent writes a file or runs a command, it stops and shows you exactly what it wants to do. Try all three answers.
scripts/import.jsconst args = process.argv.slice(2);const file = args.find(a => !a.startsWith('--'));const dryRun = args.includes('--dry-run');const rows = parse(readFileSync(file));await db.insert(rows);if (dryRun) console.log(`Would insert ${rows.length} rows.`);else await db.insert(rows);This is the whole change, before it happens. Not a summary of it.
Answer it. All three are safe — this page changes nothing on your computer.
The point: Nothing an agent does to your files or your machine happens without this moment. You see the exact change, and you decide. That is the whole safety model, and everything else is a way of making it less repetitive.
03 Making it stop asking
Answer once, save it as a rule.
Twenty prompts about reading files is how people learn to click Allow without looking — which is worse than having no prompts at all. Rules let the harmless things through so the real questions stand out. Turn these on and off and watch the verdicts change.
What happens then
Read src/slots.jsruns straight awayRun npm testruns straight awayEdit src/slots.jsasks you firstRead .envrefused, alwaysRun rm -rf buildasks you firstPush to mainasks you first3 of these still stop and ask you. That is the number to tune: too high and you stop reading, too low and you stop noticing.
The point: A rule is just a permission answer you saved. Deny always wins over allow, so the dangerous things stay refused no matter how fast you are clicking. On a team, an admin publishes these once and every machine applies them.
04 Working with someone
Share the session, not the keyboard.
You can hand a colleague a link into a session you are running. They see the same transcript and the same diffs, live. What they may do is decided by the link, not by asking nicely.
The point: Two people, one running agent, and one person who owns what actually happens. Most tools in this space cannot do this at all.
05 What gets written down
A record of every decision, that nobody can rewrite.
Every permission answer becomes a record — including the refusals. This is what turns "I let an agent work on it" into something you can hand to a colleague, an auditor or your future self.
You allowed one edit to scripts/import.js. The record holds the tool name, the decision, who made it, when, and a hash of the previous record.
Your source code, your prompts and the agent’s replies. Records carry decisions and metadata; the transcript stays on your machine. If you use a team workspace, that is also all it ever receives.
The point: Each record is hashed together with the one before it, so a record cannot be quietly changed or removed after the fact — including by Bellows. Export the lot as CSV or JSONL whenever you want it.
▸ That is the whole idea
Now do it with your own project.
- Download Bellows and sign in to an agent.The desktop app is free. You bring your own Claude, Gemini or other agent account — Bellows never holds your credentials.
- Open a folder and ask it to explain the project.The first message that changes nothing. It is the fastest way to find out whether any of this is useful to you.
- Start from the samples.The app ships with project rules, permission rules and prompts that work. In the window: Start from an example, or press Ctrl+K and type “example”. There is a guided tour in there too.
Windows, macOS and Linux. Your agent provider bills you for its own usage; the desktop app costs nothing.