Skip to content

Agent permissions

What each agent's permission modes actually control, agent by agent.

Each supported agent has its own set of permission modes, set per-workspace in Settings → Agents. This page goes into what each mode actually does; for how the approval prompts themselves are surfaced, see The approval system.

Claude Code

Claude Code's modes are enforced through the Claude Agent SDK's canUseTool callback:

  • default — prompts for tool calls that need approval, following Claude Code's own built-in rules.
  • acceptEdits — file edits are accepted automatically; other tool calls still prompt.
  • plan — Claude can read and reason about your codebase but is restricted from making changes, useful for review-only sessions. This is what Compare Mode forces Claude Code panes into.
  • bypassPermissions — skips prompts entirely. Use deliberately; see Recommended practices.
  • dontAsk / auto — additional non-interactive modes exposed by the SDK.

Codex

Codex's modes are sandbox tiers set once when a thread is created — there's no live switch mid-conversation:

  • default — Codex's standard sandbox behavior.
  • read-only — Codex can inspect the workspace but cannot write to it. This is what Compare Mode forces Codex panes into.
  • workspace-write — write access scoped to the current workspace.
  • danger-full-access — no sandbox restriction.
  • bypass — skips the sandbox and approval prompts.

Antigravity

Antigravity is PTY-based, so its modes are passed as --mode launch flags and its prompts are detected by classifying terminal output:

  • default — standard interactive behavior.
  • accept-edits (--mode accept-edits) — edits proceed without individual prompts.
  • plan (--mode plan) — restricted to planning/read behavior; used for Antigravity's Compare Mode panes.
  • bypass (--dangerously-skip-permissions) — skips prompts entirely.

Warning

Because Antigravity's prompt detection is pattern-based rather than a structured protocol, its permission handling is inherently less precise than Claude Code's or Codex's. Treat bypass mode with extra caution here.