Skip to content

Add bypassPermissions mode as developer setting #251

@sugyan

Description

@sugyan

Summary

Add bypassPermissions as a developer setting that can be enabled in the unified settings interface, allowing advanced users to bypass Claude's permission system when needed.

Background

Currently, the application supports three permission modes:

  • default: Standard permission handling
  • plan: Claude presents execution plans for user approval
  • acceptEdits: Automatically accepts edits with user review

This enhancement adds a fourth mode bypassPermissions for developer/advanced use cases where users want to bypass the permission system entirely.

Proposed Implementation

Permission Mode Extension

  • Extend PermissionMode type to include "bypassPermissions"
  • Update shared/types.ts and frontend/src/types.ts accordingly
  • Ensure SDK compatibility with existing bypassPermissions mode

Developer Settings Section

Query Parameter Support

  • Support ?bypassPermissions=true URL parameter for temporary activation
  • Query parameter should override localStorage setting
  • Useful for development and testing scenarios

UI Integration

  • Add bypassPermissions to permission mode cycle when enabled in settings
  • Visual distinction (warning color/icon) when bypassPermissions is active
  • Clear indication that permission system is bypassed

Security Considerations

  • Hide bypassPermissions option by default (only show when explicitly enabled)
  • Display prominent warning about security implications
  • Consider session-only activation vs persistent localStorage setting

Technical Details

Type Updates

// shared/types.ts
export interface ChatRequest {
  // existing fields...
  permissionMode?: "default" | "plan" | "acceptEdits" | "bypassPermissions";
}

// frontend/src/types.ts  
export type PermissionMode = "default" | "plan" | "acceptEdits" | "bypassPermissions";

Settings Integration

interface AppSettings {
  // existing settings...
  developer: {
    enableBypassPermissions: boolean;
  };
}

Acceptance Criteria

  • bypassPermissions added to PermissionMode type definitions
  • Developer settings section in unified settings page
  • Toggle to enable/disable bypassPermissions mode availability
  • Query parameter ?bypassPermissions=true temporarily enables the mode
  • bypassPermissions appears in permission mode cycle when enabled
  • Visual warning when bypassPermissions mode is active
  • Clear security warnings in settings UI
  • Backend correctly handles bypassPermissions mode
  • Settings persisted in localStorage with proper migration

Dependencies

Security Notes

This feature is intended for:

  • Development and testing environments
  • Advanced users who understand the security implications
  • Debugging permission-related issues

Users should be clearly warned about the security implications of bypassing the permission system.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfeatureNew feature (non-breaking change which adds functionality)frontendFrontend-related changes

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions