Skip to main content
How-To Guides Last updated: 11 March 2026

Plan mode

When you're away from the terminal, you need confidence that your agent won't go off-script. Plan mode controls how Claude Code handles permission requests t...

When you’re away from the terminal, you need confidence that your agent won’t go off-script. Plan mode controls how Claude Code handles permission requests through Untether — require manual approval from your phone, auto-approve transitions, or let Claude Code run freely.

Permission modes

Mode/planmode commandCLI flagBehaviour
Plan/planmode on--permission-mode planAll tool calls and plan transitions require Telegram approval
Auto/planmode auto--permission-mode planTools are auto-approved; ExitPlanMode is also auto-approved (no buttons)
Accept edits/planmode off--permission-mode acceptEditsNo approval buttons — Claude Code runs without interruption

Plan is the most interactive mode. You see every file edit, shell command, and plan transition as inline buttons.

Auto is the recommended default for most users. Tools run without interruption, but Claude Code still goes through a plan phase. ExitPlanMode is silently approved so you don’t need to tap a button for every plan-to-execution transition.

Accept edits skips permission control entirely. Use this when you trust the agent to make changes autonomously.

Setting the mode

Toggle per chat:

/planmode on       # enable plan mode
/planmode auto     # plan mode with auto-approved transitions
/planmode off      # disable plan mode
/planmode          # toggle: if currently on/auto, turn off; otherwise turn on
/planmode show     # show current mode
/planmode clear    # remove override, use engine config default

Mode is stored per chat and persists across sessions. New runs in the chat use the configured mode.

”Pause & Outline Plan”

When Claude Code tries to exit plan mode (ExitPlanMode), you see three buttons instead of two:

  • Approve — let Claude Code proceed to execution
  • Deny — block and ask Claude Code to explain
  • Pause & Outline Plan — require a written plan first

Untether ▸ Permission Request [CanUseTool] - tool: ExitPlanMode

Approve Deny Pause & Outline Plan

Tapping “Pause & Outline Plan” tells Claude Code to stop and write a comprehensive plan as a visible message in the chat. The plan must include:

  1. Every file to be created or modified (full paths)
  2. What changes will be made in each file
  3. The order and phases of execution
  4. Key decisions, trade-offs, and risks
  5. The expected end result

This is useful when you want to review the approach before Claude Code starts making changes.

After Claude Code writes the outline, Approve Plan / Deny buttons appear automatically in Telegram. Tap “Approve Plan” to let Claude Code proceed, or “Deny” to stop and provide feedback. You no longer need to type “approved” — the buttons handle it.

Untether Here’s my plan:

1. **Read** `src/main.py` to understand current structure
2. **Edit** `src/main.py` to refactor the `process()` function
3. **Run** tests to verify no regressions
Approve Plan Deny

Progressive cooldown

After you tap “Pause & Outline Plan”, a cooldown window prevents Claude Code from immediately retrying ExitPlanMode:

Click countCooldown
1st30 seconds
2nd60 seconds
3rd90 seconds
4th+120 seconds (maximum)

During the cooldown, any ExitPlanMode attempt is automatically denied, but Approve Plan / Deny buttons are shown in Telegram so you can approve the plan as soon as you’ve read it. The cooldown resets when you explicitly Approve or Deny.

This prevents the agent from bulldozing through when you’ve asked it to slow down and explain its approach, while still giving you a one-tap way to approve once you’re satisfied.

Untether ▸ Plan outlined — approve to proceed

Approve Plan Deny
Was this helpful?

Related Articles