diff --git a/src/claude_code_sdk/types.py b/src/claude_code_sdk/types.py index fe905d565..88c3d42c9 100644 --- a/src/claude_code_sdk/types.py +++ b/src/claude_code_sdk/types.py @@ -7,7 +7,7 @@ from typing_extensions import NotRequired # For Python < 3.11 compatibility # Permission modes -PermissionMode = Literal["default", "acceptEdits", "bypassPermissions"] +PermissionMode = Literal["default", "acceptEdits", "plan", "bypassPermissions"] # MCP Server config diff --git a/tests/test_types.py b/tests/test_types.py index 604629235..816327ce5 100644 --- a/tests/test_types.py +++ b/tests/test_types.py @@ -83,6 +83,15 @@ def test_claude_code_options_with_permission_mode(self): options = ClaudeCodeOptions(permission_mode="bypassPermissions") assert options.permission_mode == "bypassPermissions" + options_plan = ClaudeCodeOptions(permission_mode="plan") + assert options_plan.permission_mode == "plan" + + options_default = ClaudeCodeOptions(permission_mode="default") + assert options_default.permission_mode == "default" + + options_accept = ClaudeCodeOptions(permission_mode="acceptEdits") + assert options_accept.permission_mode == "acceptEdits" + def test_claude_code_options_with_system_prompt(self): """Test Options with system prompt.""" options = ClaudeCodeOptions(