Auto-Run Mode lets you decide how much autonomy droid has after you approve a plan. Instead of confirming every tool call, pick the level of risk you are comfortable with and droid will keep moving while still surfacing everything it does.

Configurable Autonomy

Switch between Low, Medium, and High depending on the type of work in front of you.

Risk-Aware Execution

Commands run automatically only when their risk rating is at or below your chosen level.

No Surprises

Dangerous commands and command substitutions always require an explicit approval.

Persistent Preference

Your autonomy level is saved in settings and restored for the next session.

Autonomy levels at a glance

LevelWhat runs automaticallyTypical examples
Auto (Low)File edits, file creation, and read-only commands from the built-in allowlistEdit, Create, ls, git status, rg
Auto (Medium)Everything from Low plus reversible commands that change your workspacenpm install, pip install, git commit, mv, cp, build tooling
Auto (High)All commands that are not explicitly blocked for safetydocker compose up, git push (if allowed), migrations, custom scripts
Auto-Run always shows streamed output and highlights every file change, regardless of the autonomy level.

Risk classification

Every command sent through the CLI includes a risk rating (low, medium, or high) along with a short justification. Auto-Run compares that rating to your selected autonomy level:
  • Low risk – read-only operations and changes that cannot create irreversible damage (listing files, showing logs, git diff).
  • Medium risk – actions that alter your workspace but are straightforward to undo (package installs, moving files, local git operations, builds).
  • High risk – commands that could be destructive, hard to roll back, or security sensitive (sudo, wiping directories, deploying, piping remote scripts).
Commands run automatically only when their risk level is less than or equal to your current setting. If a tool labels a command above your threshold, the CLI pauses and asks for confirmation.

How Auto-Run decides what to execute

  • File tools (Create, Edit, MultiEdit, ApplyPatch) are treated as low risk and run instantly whenever Auto-Run is active.
  • Execute commands follow the risk threshold. Low autonomy auto-accepts only read-only allowlisted commands. Medium adds reversible commands. High accepts any command with a declared risk level, except for those blocked below.
  • Safety interlocks always trigger confirmation, even in Auto (High): dangerous patterns (rm -rf /, dd of=/dev/*, etc.), command substitution ($(...), backticks), or anything explicitly flagged by the CLI security checks.
  • Allowlist expansion – when you approve a command, you can add it to the session allowlist so future occurrences run without another prompt.

Enabling and switching modes

  • Cycle from the keyboard – press Shift+Tab (or Ctrl+T on Windows) to move through Normal → Spec → Auto (Low) → Auto (Medium) → Auto (High) → back to Normal. The active mode is shown in the status banner and Help popup.
  • Set a default in Settings – open the CLI settings menu, choose your preferred autonomy level, and the CLI persists it for future sessions.
  • Choose it after a spec – when approving a Specification Mode plan, pick “Proceed” (manual), or enable Auto-Run at Low, Medium, or High for the implementation phase.
  • Return to manual control at any time by cycling back to Normal; droid will resume asking for each file change and command.

Workflow examples

Auto (Low) – quick file updates and reconnaissance
- Update docs/README.md with new instructions
- Run ls, git status, and rg searches as needed
All edits and read-only checks happen without prompts, while anything that modifies dependencies still asks first. Auto (Medium) – feature work that needs tooling
- Add a new React component (multiple file edits)
- npm install @acme/widget
- npm run lint
File changes, dependency installs, and build scripts execute automatically so long as they are reversible. Auto (High) – migrations or integration tests
- Run database migration script
- docker compose up test-environment
- git push origin feature/autonomy-docs
Droid executes the entire sequence without pauses while still blocking obviously dangerous commands.

When you will still get prompted

  • A command is rated above your current autonomy level.
  • The CLI detects command substitution or a dangerous pattern.
  • A tool requests something outside the session allowlist and you are in Auto (Low).
  • Droid needs clarity (e.g., missing context, ambiguous edits) and asks for input.
  • You manually interrupt with Esc.

Best practices

  • Start new or high-stakes work in Normal or Auto (Low) until you trust the plan.
  • Use Auto (Medium) for day-to-day feature development and refactors that rely on package managers or build steps.
  • Reserve Auto (High) for well-understood pipelines where you expect droid to run end-to-end scripts.
  • If you spot a suspect command, interrupt, provide guidance, and resume at the autonomy level that fits the remaining risk.
Ready to try it? Cycle into the level you need with Shift+Tab, or pick the desired option when you approve your next spec.