Part G — What Claude Code will always ask you before doing
Claude Code doesn't need your permission for everything — it would be exhausting if it stopped to ask before reading a file. But there's a clear line: anything that touches the outside world — GitHub, your VPS, or your live site — gets a pause and a plain "want me to go ahead?" first, exactly like every step in Part F.
✅ Handled directly, no need to ask
- Reading, writing, or editing files inside your project folder
- Running the site locally (
npm run dev,npm run build) to check a change - Looking at (without changing) things —
git status,git log,git diff, reading a container's logs or health status
These are all local and easy to undo, so pausing for permission on each one would just slow things down without adding any real safety.
⏸ Always stops and asks first
| Action | Why it's a checkpoint |
|---|---|
git commit | Creates a permanent snapshot in your project's history |
git push | Sends code to GitHub — now visible/shared, not just local |
| Creating or deleting a branch, locally or on GitHub | Changes shared repo structure |
| Merging a Pull Request | Claude Code won't even offer to do this one — it's your review checkpoint, the whole reason PRs exist (Part F) |
Running deploy.sh | Rebuilds and restarts your live production site |
| Any SSH command that changes something on the VPS (not just reading a log or checking status) | Directly affects a shared, always-on system |
| Installing anything globally — a new skill, a global npm package | Changes your laptop's setup for every future project, not just this one |
Anything destructive — force-push, git reset --hard, deleting a file or branch it didn't just create itself | Hard or impossible to undo |
The rule of thumb
If undoing a mistake just means editing a file again, Claude Code handles it directly. If undoing a mistake would mean explaining to a website visitor why the site broke, it asks first.
Published