Skip to content
Lane Holloway edited this page Oct 22, 2026 · 3 revisions

Safety

Fast Lane is built to be left running. These are the guardrails, and which of them are enforced by Claude Code's permissions and which by Claude's instructions.

Off until you turn it on

  • New repos are watched without auto-run. Turn it on per repo.
  • Items that existed when you started watching a repo never run on their own; only new ones and new changes do.
  • With rules defined, only the kinds and triggers they list auto-run.
  • max_auto_runs (default 5) caps how many times auto-run acts on one item.
  • Your own activity, including what Claude does as you, never triggers anything, so Claude can't set itself off.

Asks before acting

Claude Code runs in manual permission mode by default. Only read-only tools are pre-approved for every session: Read, Grep, Glob, git status/diff/log/show, gh pr view/diff/checks, gh issue view, gh run view/list, and gh api reads (--method GET). Anything else, such as editing a file, running tests, pushing, or a gh api write, opens a permission dialog.

Submitting a review isn't pre-approved, so Claude asks first

A rule's allow list pre-approves specific actions for the sessions it governs, and nothing more. On the Settings tab you can change the permission mode, the pre-approved tools, and a per-session budget cap.

Full auto

Full auto lifts the asking: Claude approves, merges, pushes and closes on its own judgment. It's off until you turn it on for a repo or the inbox. Even then, only a human may delete or transfer a repository, force-push or delete its default branch, delete or move tags and releases, rewrite history, or change rulesets. Fast Lane checks every command a full-auto session runs, adds GitHub rulesets that protect the default branch and tags, and warns if your login can delete repos.

Never in your checkout

Every session runs in its own git worktree of your checkout, or in a clone in the workspace. Your working tree, branch and uncommitted changes are never touched. See Local checkouts and worktrees.

Enforced by permissions vs. instructions

Claude Code's permission rules match the start of a command, so some limits can only be stated in Claude's instructions, not enforced:

Limit How it's held
Can't edit, push, comment, review, close, merge or dismiss without approval or an allowed action Permissions
gh api can only read Permissions (--method GET)
Thread replies (comment) only on the session's own PR; alert dismissals (dismiss_alert) only on its own repo Permissions
Never push to the default branch or force-push without asking, even when pushing is allowed Instructions
push_branch means new branches and update_pr the PR's branch Instructions
label only changes labels (gh pr edit can also change a title) Instructions

The instructions are clear and Claude follows them, but if a limit must be absolute, don't grant the action: leave it to a dialog.

Clone this wiki locally