Done: SetMode accepts ModeYolo (only unknown values coerce to build); Mode() round-trips yolo; EffectiveToolRegistry() returns full registry in yolo. Files: internal/cli/repl/appstate/state.go, internal/cli/repl/appstate/state_test.go. Tests: go test ./internal/cli/repl/appstate/ -count=1 all pass (incl. new TestAppState_SetModeYoloRoundTrips, TestAppState_EffectiveToolRegistryYoloIncludesWriteEditBash).
[x] Task 3 — Permission bypass in the requester (internal/cli/repl/permissions/requester.go)
Done: added yoloMode bool + SetYoloMode(bool); RequestPermission returns (true, nil) immediately when yolo set, before project/session/prompt logic; autoApprove and Guard paths untouched. Files: internal/cli/repl/permissions/requester.go, internal/cli/repl/permissions/requester_test.go. Tests: go test ./internal/cli/repl/permissions/ -count=1 -v all pass (incl. new TestYoloMode_AllowsWithoutRequest, TestYoloMode_ToggleOffRestoresPrompting).
[x] Task 4 — Wire yolo into the REPL model (internal/cli/repl/repl.go, repl_helpers.go, command_handlers.go:1162-1170)
Done: setMode accepts yolo (unknown coerces to build), syncs appState.SetMode + permissionRequester.SetYoloMode(mode == yolo); toggleMode cycles build→plan→yolo→build; handleClearCommand re-syncs yolo flag so /clear+/new preserve yolo. Files: internal/cli/repl/repl_helpers.go, internal/cli/repl/command_handlers.go, internal/cli/repl/repl_helpers_test.go, internal/cli/repl/command_handlers_test.go. Tests: focused go test ./internal/cli/repl/ -run 'TestSetModeYolo|TestToggleModeCycles|TestHandleClearCommandPreserves|TestHandleNewCommandPreserves|TestHandleModeCommand|TestCurrentMode' all pass (incl. new TestSetModeYoloSyncsAppStateAndRequester, TestToggleModeCyclesBuildPlanYolo, TestHandleClearCommandPreservesYolo, TestHandleNewCommandPreservesYolo). Note: full go test ./internal/cli/repl/ has 1 expected failure — TestHandleKeyMsg_ShiftTabTogglesMode (handlers_test.go:593) still expects 2-state plan→build; it needs the Task-6 update to 3-state build→plan→yolo→build.
Done: added Yolo = "/yolo" const with All/Suggestions entries ("Enable approval-less yolo mode"); updated Mode descriptions to (plan|build|yolo); added /yolo dispatch case via setMode(yolo); extended handleModeCommand to accept yolo with Usage: /mode plan|build|yolo and updated bare-/mode hint. Files: internal/cli/repl/commands/commands.go, internal/cli/repl/command_handlers.go, internal/cli/repl/commands/commands_test.go, internal/cli/repl/command_handlers_test.go. Tests: go test ./internal/cli/repl/commands/ -count=1 pass (incl. new TestYoloCommandRegistered); go test ./internal/cli/repl/ -run 'TestHandleModeCommand|TestDispatchCommandYolo|TestGetHelpText' pass (incl. /mode yolo, /yolo dispatch, invalid-keeps-mode, /help lists /yolo). Note: full go test ./internal/cli/repl/ still has 1 expected failure — TestHandleKeyMsg_ShiftTabTogglesMode needs Task-6 3-state update.
[x] Task 6 — shift+tab three-state toggle + help text (internal/cli/repl/handlers.go:595-597, repl_helpers.go:32-63, tips.go)
Done: shift+tab already routes via 3-state toggleMode (build→plan→yolo→build, Task 4 — no handlers.go change needed); updated loading tips (shift+tab cycles build→plan→yolo; /mode build exits plan/yolo) and tips.go (shift-tab cycles build/plan/yolo; plan tip mentions /yolo skips prompts). Extended TestHandleKeyMsg_ShiftTabTogglesMode to 3 presses with appState sync. Files: internal/cli/repl/repl_helpers.go, internal/cli/repl/tips.go, internal/cli/repl/handlers_test.go. Tests: go test ./internal/cli/repl/ -count=1 all pass.