LESSON · 1 OF 4

How permissions work

How permissions work

Claude Code is an agent that edits real files and runs real commands on your machine. That is powerful, and it is exactly why it stops and asks before it does anything that changes your system.

The approval prompt

When Claude wants to write to a file or run a shell command, the console pauses and shows you what it is about to do: the file and the diff, or the exact command. Nothing happens until you answer. You get three choices:

ChoiceWhat it does
Approve onceRun this one action now, ask again next time
Approve and don't ask againRun it now and stop prompting for this kind of action
Reject with feedbackCancel the action and tell Claude what to do instead

The third option is the one people forget. Rejecting is not the end of the conversation - you can type why, and Claude adjusts and tries a different approach.

Why the gate exists

A chat model can only suggest text. An agent can delete a file, force-push a branch, or run a command that touches production. The human gate is what keeps a fast, confident agent from doing something irreversible while you were not looking. You stay the one who decides what actually runs.

Seeing what is allowed

Inside the console, run /permissions to see the current rules: what Claude may do without asking, and what it may never do. You can view and edit those rules right there.

bash
/permissions

As you approve "don't ask again" choices, they get recorded as rules here, so the console asks less over time while still respecting the limits you set.

Next, the four permission modes and how to pick one.


Your lab setup

This VM comes with Claude Code preinstalled and signed in - just run claude to start.

Spin up a fresh environment and practice live.
claude-code-ubuntu · fresh machine · ready in under a minute