| 3 | * Each panel type can use the fields it needs and ignore others |
| 4 | */ |
| 5 | export interface AIPanelConfig { |
| 6 | // Common configuration |
| 7 | model?: string; |
| 8 | prompt: string; |
| 9 | worktreePath: string; |
| 10 | |
| 11 | // Claude-specific |
| 12 | permissionMode?: 'approve' | 'ignore'; |
| 13 | |
| 14 | // Codex-specific |
| 15 | modelProvider?: string; |
| 16 | approvalPolicy?: 'auto' | 'manual'; |
| 17 | sandboxMode?: 'read-only' | 'workspace-write' | 'danger-full-access'; |
| 18 | webSearch?: boolean; |
| 19 | thinkingLevel?: 'low' | 'medium' | 'high'; |
| 20 | |
| 21 | // Future extensibility - specific config values can be added here |
| 22 | [key: string]: string | number | boolean | Array<unknown> | undefined; |
| 23 | } |
| 24 | |
| 25 | /** |
| 26 | * Configuration for starting a panel |
nothing calls this directly
no outgoing calls
no test coverage detected