Architecture

Permissions

Approval flows, permission modes, allow/deny decisions, and callbacks.

95
Matched files
10
Top dirs
29,909
Lines in slice
417
Exports found
Heuristic
Classification style

Beginner explanation

This architecture page groups files that seem to solve the same type of problem. It is a good way to understand the repo as a system rather than as a list of folders.

Beginner mental model

Read the first few high-importance files here, then follow their related-file links.

Expert explanation

This slice is assembled with path heuristics, which makes it strong for navigation and code reading but not a replacement for runtime tracing. Use it to discover likely boundaries, then validate by reading imports, exports, and orchestrator files.

Related files

FileLinesImportanceExports
tools/BashTool/bashPermissions.ts2622highMAX_SUBCOMMANDS_FOR_SECURITY_CHECK, MAX_SUGGESTED_RULES_FOR_COMPOUND, getSimpleCommandPrefix, getFirstWordPrefix
utils/permissions/filesystem.ts1778highDANGEROUS_FILES, DANGEROUS_DIRECTORIES, normalizeCaseForComparison, getClaudeSkillScope
tools/PowerShellTool/powershellPermissions.ts1649highpowershellPermissionRule, powershellToolCheckExactMatchPermission, powershellToolCheckPermission, powershellToolHasPermission
utils/permissions/permissionSetup.ts1533highisDangerousBashPermission, isDangerousPowerShellPermission, isDangerousTaskPermission, DangerousPermissionInfo
utils/permissions/yoloClassifier.ts1496highAutoModeRules, getDefaultExternalAutoModeRules, buildDefaultExternalSystemPrompt, getAutoModeClassifierErrorDumpPath
utils/permissions/permissions.ts1487highpermissionRuleSourceDisplayString, getAllowRules, createPermissionRequestMessage, getDenyRules
components/permissions/rules/PermissionRuleList.tsx1179highPermissionRuleList
utils/swarm/permissionSync.ts929highSwarmPermissionRequestSchema, SwarmPermissionRequest, PermissionResolution, getPermissionDir
components/permissions/ExitPlanModePermissionRequest/ExitPlanModePermissionRequest.tsx768highbuildPermissionUpdates, autoNameSessionFromPlan, ExitPlanModePermissionRequest, buildPlanApprovalOptions
components/permissions/AskUserQuestionPermissionRequest/AskUserQuestionPermissionRequest.tsx645highAskUserQuestionPermissionRequest
hooks/toolPermission/handlers/interactiveHandler.ts537highhandleInteractivePermission
utils/permissions/pathValidation.ts486highFileOperationType, PathCheckResult, ResolvedPathCheckResult, formatDirectoryList
components/permissions/BashPermissionRequest/BashPermissionRequest.tsx482highBashPermissionRequest
components/permissions/AskUserQuestionPermissionRequest/QuestionView.tsx465highQuestionView
components/permissions/PermissionDecisionDebugInfo.tsx460highPermissionDecisionDebugInfo
types/permissions.ts442highEXTERNAL_PERMISSION_MODES, ExternalPermissionMode, InternalPermissionMode, PermissionMode
components/permissions/ComputerUseApproval/ComputerUseApproval.tsx441highComputerUseApproval
utils/permissions/PermissionUpdate.ts390highextractRules, hasRules, applyPermissionUpdate, applyPermissionUpdates
hooks/toolPermission/PermissionContext.ts389highcreatePermissionContext, createPermissionQueueOps, createResolveOnce
components/permissions/SkillPermissionRequest/SkillPermissionRequest.tsx369highSkillPermissionRequest
components/permissions/rules/AddWorkspaceDirectory.tsx340highAddWorkspaceDirectory
components/permissions/PermissionPrompt.tsx336highFeedbackType, PermissionPromptOption, ToolAnalyticsContext, PermissionPromptProps
components/permissions/FallbackPermissionRequest.tsx333highFallbackPermissionRequest
hooks/useSwarmPermissionPoller.ts331highPermissionResponseCallback, registerPermissionCallback, unregisterPermissionCallback, hasPermissionCallback
components/permissions/AskUserQuestionPermissionRequest/PreviewQuestionView.tsx328highPreviewQuestionView
utils/permissions/permissionsLoader.ts297highshouldAllowManagedPermissionRulesOnly, shouldShowAlwaysAllowOptions, loadAllPermissionRulesFromDisk, getPermissionRulesForSource
components/permissions/PermissionExplanation.tsx272highusePermissionExplainerUI, PermissionExplainerContent
utils/settings/permissionValidation.ts263highvalidatePermissionRule, PermissionRuleSchema
components/permissions/WebFetchPermissionRequest/WebFetchPermissionRequest.tsx258highWebFetchPermissionRequest
utils/permissions/permissionExplainer.ts251highRiskLevel, PermissionExplanation, isPermissionExplainerEnabled, generatePermissionExplanation
services/mcp/channelPermissions.ts241highisChannelPermissionRelayEnabled, ChannelPermissionResponse, ChannelPermissionCallbacks, PERMISSION_REPLY_RE
hooks/toolPermission/permissionLogging.ts239highisCodeEditingTool, buildCodeEditToolAttributes, logPermissionDecision
components/permissions/NotebookEditPermissionRequest/NotebookEditToolDiff.tsx235highNotebookEditToolDiff
components/permissions/PowerShellPermissionRequest/PowerShellPermissionRequest.tsx235highPowerShellPermissionRequest
utils/permissions/shadowedRuleDetection.ts235highShadowType, UnreachableRule, DetectUnreachableRulesOptions, isSharedSettingSource
components/permissions/SedEditPermissionRequest/SedEditPermissionRequest.tsx230highSedEditPermissionRequest
components/permissions/AskUserQuestionPermissionRequest/PreviewBox.tsx229highPreviewBox
utils/permissions/shellRuleMatching.ts229highShellPermissionRule, permissionRuleExtractPrefix, hasWildcards, matchWildcardPattern
components/permissions/PermissionRequest.tsx217highPermissionRequestProps, ToolUseConfirm, PermissionRequest
components/permissions/FilePermissionDialog/useFilePermissionDialog.ts213highToolInput, UseFilePermissionDialogProps, UseFilePermissionDialogResult, useFilePermissionDialog
components/permissions/hooks.ts210highUnaryEvent, usePermissionRequestLogging
components/permissions/rules/RecentDenialsTab.tsx207highRecentDenialsTab
components/permissions/FilePermissionDialog/FilePermissionDialog.tsx204highFilePermissionDialogProps, FilePermissionDialog
utils/permissions/permissionRuleParser.ts199highnormalizeLegacyToolName, getLegacyToolNames, escapeRuleContent, unescapeRuleContent
components/permissions/FilePermissionDialog/usePermissionHandler.ts186highPermissionHandlerParams, PermissionHandlerOptions, PERMISSION_HANDLERS
components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.tsx182highFileEditPermissionRequest
components/permissions/AskUserQuestionPermissionRequest/use-multiple-choice-state.ts180highAnswerValue, QuestionState, MultipleChoiceState, useMultipleChoiceState
components/permissions/rules/AddPermissionRules.tsx180highoptionForPermissionSaveDestination, AddPermissionRules
components/permissions/AskUserQuestionPermissionRequest/QuestionNavigationBar.tsx178highQuestionNavigationBar
components/permissions/FilePermissionDialog/permissionOptions.tsx177highisInClaudeFolder, isInGlobalClaudeFolder, PermissionOption, PermissionOptionWithLabel
components/permissions/NotebookEditPermissionRequest/NotebookEditPermissionRequest.tsx166highNotebookEditPermissionRequest
components/permissions/shellPermissionHelpers.tsx164highgenerateShellSuggestionsLabel
components/permissions/SandboxPermissionRequest.tsx163highSandboxPermissionRequestProps, SandboxPermissionRequest
components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.tsx161highFileWritePermissionRequest
hooks/toolPermission/handlers/swarmWorkerHandler.ts160highhandleSwarmWorkerPermission
utils/permissions/bypassPermissionsKillswitch.ts156highcheckAndDisableBypassPermissionsIfNeeded, resetBypassPermissionsCheck, useKickOffCheckAndDisableBypassPermissionsIfNeeded, checkAndDisableAutoModeIfNeeded
components/permissions/rules/WorkspaceTab.tsx150highWorkspaceTab
components/permissions/useShellPermissionFeedback.ts149highuseShellPermissionFeedback
components/permissions/BashPermissionRequest/bashToolUseOptions.tsx147highBashToolUseOption, bashToolUseOptions
components/permissions/AskUserQuestionPermissionRequest/SubmitQuestionsView.tsx144highSubmitQuestionsView
utils/permissions/PermissionMode.ts142highpermissionModeSchema, externalPermissionModeSchema, isExternalPermissionMode, toExternalPermissionMode
components/permissions/rules/PermissionRuleInput.tsx138highPermissionRuleInputProps, PermissionRuleInput
utils/permissions/PermissionPromptToolResultSchema.ts128highinputSchema, Input, outputSchema, Output
components/permissions/EnterPlanModePermissionRequest/EnterPlanModePermissionRequest.tsx122highEnterPlanModePermissionRequest
components/permissions/PermissionRuleExplanation.tsx121highPermissionRuleExplanationProps, PermissionRuleExplanation
components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.tsx115highFilesystemPermissionRequest
components/permissions/rules/RemoveWorkspaceDirectory.tsx110highRemoveWorkspaceDirectory
components/permissions/WorkerPendingPermission.tsx105highWorkerPendingPermission
utils/permissions/getNextPermissionMode.ts102highgetNextPermissionMode, cyclePermissionMode
utils/permissions/classifierDecision.ts99highisAutoModeAllowlistedTool
components/permissions/PowerShellPermissionRequest/powershellToolUseOptions.tsx91highPowerShellToolUseOption, powershellToolUseOptions
components/permissions/FileWritePermissionRequest/FileWriteToolDiff.tsx89highFileWriteToolDiff
components/BypassPermissionsModeDialog.tsx87highBypassPermissionsModeDialog
utils/permissions/dangerousPatterns.ts81highCROSS_PLATFORM_CODE_EXEC, DANGEROUS_BASH_PATTERNS
remote/remotePermissionBridge.ts79highcreateSyntheticAssistantMessage, createToolStub
utils/permissions/PermissionUpdateSchema.ts79highpermissionUpdateDestinationSchema, permissionUpdateSchema
components/permissions/rules/PermissionRuleDescription.tsx76highPermissionRuleDescription
tools/testing/TestingPermissionTool.tsx74highTestingPermissionTool
components/permissions/PermissionDialog.tsx72highPermissionDialog
components/permissions/PermissionRequestTitle.tsx66highPermissionRequestTitle
hooks/toolPermission/handlers/coordinatorHandler.ts66highhandleCoordinatorPermission
utils/permissions/bashClassifier.ts62highPROMPT_PREFIX, ClassifierResult, ClassifierBehavior, extractPromptDescription
utils/swarm/leaderPermissionBridge.ts55highSetToolUseConfirmQueueFn, SetToolPermissionContextFn, registerLeaderToolUseConfirmQueue, getLeaderToolUseConfirmQueue
components/permissions/WorkerBadge.tsx49highWorkerBadgeProps, WorkerBadge
utils/permissions/denialTracking.ts46highDenialTrackingState, DENIAL_LIMITS, createDenialTrackingState, recordDenial
bridge/bridgePermissionCallbacks.ts44highisBridgePermissionResponse
components/permissions/FilePermissionDialog/ideDiffConfig.ts43highFileEdit, IDEDiffConfig, IDEDiffChangeInput, IDEDiffSupport
migrations/migrateBypassPermissionsAcceptedToSettings.ts41highmigrateBypassPermissionsAcceptedToSettings
utils/permissions/PermissionRule.ts41highpermissionBehaviorSchema, permissionRuleValueSchema
utils/permissions/autoModeState.ts40highsetAutoModeActive, isAutoModeActive, setAutoModeFlagCli, getAutoModeFlagCli
utils/permissions/classifierShared.ts40highextractToolUseBlock, parseClassifierResponse
utils/permissions/PermissionResult.ts36highgetRuleBehaviorDescription
components/permissions/utils.ts26highlogUnaryPermissionEvent
commands/permissions/index.ts12high
commands/permissions/permissions.tsx10highcall