The approval block replaces the prompt. ↑↓ pick an answer, Enter confirms.
zidane
┌New session ──────────────────────────────────▢─~/acme-api 1 user message 0 turns ┐│┌────────────────────────────────────────────────────────────────────────────────────┐│││❯Run the limiter tests │││└────────────────────────────────────────────────────────────────────────────────────┘││││I will run the test suite first. │││││││││││││││││││││││││││││││└────────────────────────────────────────────────────────────────────────────────────────┘┌─ approve tool call (ctrl+esc aborts the run) ──────────────────────────────────────────┐│↳shell(command: "bun test src/limits.test.ts") ││▶ accept once ││ accept for session (auto-approve matching calls until you quit) ││ accept + remember (adds "shell:bun:*" to projects.json) ││ deny (the model sees "Blocked") │└────────────────────────────────────────────────────────────────────────────────────────┘↑↓ navigate ↵ select ctrl+esc abort run ▱▱▰▰▰0s ctx 10 / 1.00M (0%)
The agent wants to run the tests and waits for an answer.
The agent wants to run the tests and waits for an answer.
Answer
Does
accept once
Runs this call
accept for session
Runs it, and every matching call until you quit
accept + remember
Runs it and adds a rule to the project's safelist
deny
Blocks it. The agent sees that you refused.
For a chained command such as cd src && bun test, remember proposes one rule per command.