subagent-cli 0.2.9 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2149) hide show
  1. package/dist/cli.cjs +30 -34
  2. package/dist/sa +0 -0
  3. package/package.json +4 -9
  4. package/bin/sa.js +0 -4
  5. package/bunfig.toml +0 -2
  6. package/src/QueryEngine.ts +0 -1295
  7. package/src/Task.ts +0 -125
  8. package/src/Tool.ts +0 -792
  9. package/src/_stubs/bun-bundle.ts +0 -6
  10. package/src/assistant/AssistantSessionChooser.ts +0 -2
  11. package/src/assistant/gate.ts +0 -2
  12. package/src/assistant/index.ts +0 -2
  13. package/src/assistant/sessionDiscovery.ts +0 -1
  14. package/src/assistant/sessionHistory.ts +0 -87
  15. package/src/bootstrap/state.ts +0 -1762
  16. package/src/bridge/bridgeApi.ts +0 -539
  17. package/src/bridge/bridgeConfig.ts +0 -48
  18. package/src/bridge/bridgeDebug.ts +0 -135
  19. package/src/bridge/bridgeEnabled.ts +0 -202
  20. package/src/bridge/bridgeMain.ts +0 -2999
  21. package/src/bridge/bridgeMessaging.ts +0 -461
  22. package/src/bridge/bridgePermissionCallbacks.ts +0 -43
  23. package/src/bridge/bridgePointer.ts +0 -210
  24. package/src/bridge/bridgeStatusUtil.ts +0 -163
  25. package/src/bridge/bridgeUI.ts +0 -530
  26. package/src/bridge/capacityWake.ts +0 -56
  27. package/src/bridge/codeSessionApi.ts +0 -168
  28. package/src/bridge/createSession.ts +0 -384
  29. package/src/bridge/debugUtils.ts +0 -141
  30. package/src/bridge/envLessBridgeConfig.ts +0 -165
  31. package/src/bridge/flushGate.ts +0 -71
  32. package/src/bridge/inboundAttachments.ts +0 -175
  33. package/src/bridge/inboundMessages.ts +0 -80
  34. package/src/bridge/initReplBridge.ts +0 -569
  35. package/src/bridge/jwtUtils.ts +0 -256
  36. package/src/bridge/peerSessions.ts +0 -2
  37. package/src/bridge/pollConfig.ts +0 -110
  38. package/src/bridge/pollConfigDefaults.ts +0 -82
  39. package/src/bridge/remoteBridgeCore.ts +0 -1008
  40. package/src/bridge/replBridge.ts +0 -2406
  41. package/src/bridge/replBridgeHandle.ts +0 -36
  42. package/src/bridge/replBridgeTransport.ts +0 -370
  43. package/src/bridge/sessionIdCompat.ts +0 -57
  44. package/src/bridge/sessionRunner.ts +0 -550
  45. package/src/bridge/trustedDevice.ts +0 -210
  46. package/src/bridge/types.ts +0 -262
  47. package/src/bridge/webhookSanitizer.ts +0 -2
  48. package/src/bridge/workSecret.ts +0 -127
  49. package/src/buddy/CompanionSprite.tsx +0 -371
  50. package/src/buddy/companion.ts +0 -133
  51. package/src/buddy/prompt.ts +0 -36
  52. package/src/buddy/sprites.ts +0 -514
  53. package/src/buddy/types.ts +0 -148
  54. package/src/buddy/useBuddyNotification.tsx +0 -98
  55. package/src/cli/bg.ts +0 -2
  56. package/src/cli/exit.ts +0 -31
  57. package/src/cli/handlers/agents.ts +0 -70
  58. package/src/cli/handlers/ant.ts +0 -2
  59. package/src/cli/handlers/auth.ts +0 -330
  60. package/src/cli/handlers/autoMode.ts +0 -170
  61. package/src/cli/handlers/mcp.tsx +0 -362
  62. package/src/cli/handlers/plugins.ts +0 -878
  63. package/src/cli/handlers/templateJobs.ts +0 -2
  64. package/src/cli/handlers/util.tsx +0 -110
  65. package/src/cli/ndjsonSafeStringify.ts +0 -32
  66. package/src/cli/print.ts +0 -5594
  67. package/src/cli/remoteIO.ts +0 -255
  68. package/src/cli/rollback.ts +0 -3
  69. package/src/cli/structuredIO.ts +0 -859
  70. package/src/cli/transports/HybridTransport.ts +0 -282
  71. package/src/cli/transports/SSETransport.ts +0 -711
  72. package/src/cli/transports/SerialBatchEventUploader.ts +0 -275
  73. package/src/cli/transports/Transport.ts +0 -1
  74. package/src/cli/transports/WebSocketTransport.ts +0 -800
  75. package/src/cli/transports/WorkerStateUploader.ts +0 -131
  76. package/src/cli/transports/ccrClient.ts +0 -998
  77. package/src/cli/transports/transportUtils.ts +0 -45
  78. package/src/cli/up.ts +0 -3
  79. package/src/cli/update.ts +0 -422
  80. package/src/commands/add-dir/add-dir.tsx +0 -126
  81. package/src/commands/add-dir/index.ts +0 -11
  82. package/src/commands/add-dir/validation.ts +0 -110
  83. package/src/commands/advisor.ts +0 -109
  84. package/src/commands/agents/agents.tsx +0 -12
  85. package/src/commands/agents/index.ts +0 -10
  86. package/src/commands/ant-trace/index.js +0 -1
  87. package/src/commands/assistant/assistant.ts +0 -2
  88. package/src/commands/autofix-pr/index.js +0 -1
  89. package/src/commands/backfill-sessions/index.js +0 -1
  90. package/src/commands/branch/branch.ts +0 -296
  91. package/src/commands/branch/index.ts +0 -14
  92. package/src/commands/break-cache/index.js +0 -1
  93. package/src/commands/bridge/bridge.tsx +0 -509
  94. package/src/commands/bridge/index.ts +0 -26
  95. package/src/commands/bridge-kick.ts +0 -200
  96. package/src/commands/brief.ts +0 -130
  97. package/src/commands/btw/btw.tsx +0 -243
  98. package/src/commands/btw/index.ts +0 -13
  99. package/src/commands/buddy/index.ts +0 -2
  100. package/src/commands/bughunter/index.js +0 -1
  101. package/src/commands/chrome/chrome.tsx +0 -285
  102. package/src/commands/chrome/index.ts +0 -13
  103. package/src/commands/clear/caches.ts +0 -144
  104. package/src/commands/clear/clear.ts +0 -7
  105. package/src/commands/clear/conversation.ts +0 -251
  106. package/src/commands/clear/index.ts +0 -19
  107. package/src/commands/color/color.ts +0 -93
  108. package/src/commands/color/index.ts +0 -16
  109. package/src/commands/commit-push-pr.ts +0 -158
  110. package/src/commands/commit.ts +0 -92
  111. package/src/commands/compact/compact.ts +0 -287
  112. package/src/commands/compact/index.ts +0 -15
  113. package/src/commands/config/config.tsx +0 -7
  114. package/src/commands/config/index.ts +0 -11
  115. package/src/commands/context/context-noninteractive.ts +0 -325
  116. package/src/commands/context/context.tsx +0 -64
  117. package/src/commands/context/index.ts +0 -24
  118. package/src/commands/copy/copy.tsx +0 -371
  119. package/src/commands/copy/index.ts +0 -15
  120. package/src/commands/cost/cost.ts +0 -24
  121. package/src/commands/cost/index.ts +0 -23
  122. package/src/commands/createMovedToPluginCommand.ts +0 -65
  123. package/src/commands/ctx_viz/index.js +0 -1
  124. package/src/commands/debug-tool-call/index.js +0 -1
  125. package/src/commands/desktop/desktop.tsx +0 -9
  126. package/src/commands/desktop/index.ts +0 -26
  127. package/src/commands/diff/diff.tsx +0 -9
  128. package/src/commands/diff/index.ts +0 -8
  129. package/src/commands/doctor/doctor.tsx +0 -7
  130. package/src/commands/doctor/index.ts +0 -12
  131. package/src/commands/effort/effort.tsx +0 -183
  132. package/src/commands/effort/index.ts +0 -13
  133. package/src/commands/env/index.js +0 -1
  134. package/src/commands/exit/exit.tsx +0 -33
  135. package/src/commands/exit/index.ts +0 -12
  136. package/src/commands/export/export.tsx +0 -91
  137. package/src/commands/export/index.ts +0 -11
  138. package/src/commands/extra-usage/extra-usage-core.ts +0 -118
  139. package/src/commands/extra-usage/extra-usage-noninteractive.ts +0 -16
  140. package/src/commands/extra-usage/extra-usage.tsx +0 -17
  141. package/src/commands/extra-usage/index.ts +0 -31
  142. package/src/commands/fast/fast.tsx +0 -269
  143. package/src/commands/fast/index.ts +0 -26
  144. package/src/commands/feedback/feedback.tsx +0 -25
  145. package/src/commands/feedback/index.ts +0 -26
  146. package/src/commands/files/files.ts +0 -19
  147. package/src/commands/files/index.ts +0 -12
  148. package/src/commands/fork/index.ts +0 -2
  149. package/src/commands/good-claude/index.js +0 -1
  150. package/src/commands/heapdump/heapdump.ts +0 -17
  151. package/src/commands/heapdump/index.ts +0 -12
  152. package/src/commands/help/help.tsx +0 -11
  153. package/src/commands/help/index.ts +0 -10
  154. package/src/commands/hooks/hooks.tsx +0 -13
  155. package/src/commands/hooks/index.ts +0 -11
  156. package/src/commands/ide/ide.tsx +0 -646
  157. package/src/commands/ide/index.ts +0 -11
  158. package/src/commands/init-verifiers.ts +0 -262
  159. package/src/commands/init.ts +0 -256
  160. package/src/commands/insights.ts +0 -3200
  161. package/src/commands/install-github-app/ApiKeyStep.tsx +0 -231
  162. package/src/commands/install-github-app/CheckExistingSecretStep.tsx +0 -190
  163. package/src/commands/install-github-app/CheckGitHubStep.tsx +0 -15
  164. package/src/commands/install-github-app/ChooseRepoStep.tsx +0 -211
  165. package/src/commands/install-github-app/CreatingStep.tsx +0 -65
  166. package/src/commands/install-github-app/ErrorStep.tsx +0 -85
  167. package/src/commands/install-github-app/ExistingWorkflowStep.tsx +0 -103
  168. package/src/commands/install-github-app/InstallAppStep.tsx +0 -94
  169. package/src/commands/install-github-app/OAuthFlowStep.tsx +0 -276
  170. package/src/commands/install-github-app/SuccessStep.tsx +0 -96
  171. package/src/commands/install-github-app/WarningsStep.tsx +0 -73
  172. package/src/commands/install-github-app/index.ts +0 -13
  173. package/src/commands/install-github-app/install-github-app.tsx +0 -587
  174. package/src/commands/install-github-app/setupGitHubActions.ts +0 -325
  175. package/src/commands/install-github-app/types.ts +0 -3
  176. package/src/commands/install-slack-app/index.ts +0 -12
  177. package/src/commands/install-slack-app/install-slack-app.ts +0 -30
  178. package/src/commands/install.tsx +0 -300
  179. package/src/commands/issue/index.js +0 -1
  180. package/src/commands/keybindings/index.ts +0 -13
  181. package/src/commands/keybindings/keybindings.ts +0 -53
  182. package/src/commands/login/index.ts +0 -14
  183. package/src/commands/login/login.tsx +0 -104
  184. package/src/commands/logout/index.ts +0 -10
  185. package/src/commands/logout/logout.tsx +0 -82
  186. package/src/commands/mcp/addCommand.ts +0 -280
  187. package/src/commands/mcp/index.ts +0 -12
  188. package/src/commands/mcp/mcp.tsx +0 -85
  189. package/src/commands/mcp/xaaIdpCommand.ts +0 -266
  190. package/src/commands/memory/index.ts +0 -10
  191. package/src/commands/memory/memory.tsx +0 -90
  192. package/src/commands/mobile/index.ts +0 -11
  193. package/src/commands/mobile/mobile.tsx +0 -274
  194. package/src/commands/mock-limits/index.js +0 -1
  195. package/src/commands/model/index.ts +0 -16
  196. package/src/commands/model/model.tsx +0 -297
  197. package/src/commands/oauth-refresh/index.js +0 -1
  198. package/src/commands/onboarding/index.js +0 -1
  199. package/src/commands/output-style/index.ts +0 -11
  200. package/src/commands/output-style/output-style.tsx +0 -7
  201. package/src/commands/passes/index.ts +0 -22
  202. package/src/commands/passes/passes.tsx +0 -24
  203. package/src/commands/peers/index.ts +0 -2
  204. package/src/commands/perf-issue/index.js +0 -1
  205. package/src/commands/permissions/index.ts +0 -11
  206. package/src/commands/permissions/permissions.tsx +0 -10
  207. package/src/commands/plan/index.ts +0 -11
  208. package/src/commands/plan/plan.tsx +0 -122
  209. package/src/commands/plugin/AddMarketplace.tsx +0 -162
  210. package/src/commands/plugin/BrowseMarketplace.tsx +0 -802
  211. package/src/commands/plugin/DiscoverPlugins.tsx +0 -781
  212. package/src/commands/plugin/ManageMarketplaces.tsx +0 -838
  213. package/src/commands/plugin/ManagePlugins.tsx +0 -2215
  214. package/src/commands/plugin/PluginErrors.tsx +0 -124
  215. package/src/commands/plugin/PluginOptionsDialog.tsx +0 -357
  216. package/src/commands/plugin/PluginOptionsFlow.tsx +0 -135
  217. package/src/commands/plugin/PluginSettings.tsx +0 -1072
  218. package/src/commands/plugin/PluginTrustWarning.tsx +0 -32
  219. package/src/commands/plugin/UnifiedInstalledCell.tsx +0 -565
  220. package/src/commands/plugin/ValidatePlugin.tsx +0 -98
  221. package/src/commands/plugin/index.tsx +0 -11
  222. package/src/commands/plugin/parseArgs.ts +0 -103
  223. package/src/commands/plugin/plugin.tsx +0 -7
  224. package/src/commands/plugin/pluginDetailsHelpers.tsx +0 -117
  225. package/src/commands/plugin/types.ts +0 -2
  226. package/src/commands/plugin/unifiedTypes.ts +0 -4
  227. package/src/commands/plugin/usePagination.ts +0 -171
  228. package/src/commands/pr_comments/index.ts +0 -50
  229. package/src/commands/privacy-settings/index.ts +0 -14
  230. package/src/commands/privacy-settings/privacy-settings.tsx +0 -58
  231. package/src/commands/rate-limit-options/index.ts +0 -19
  232. package/src/commands/rate-limit-options/rate-limit-options.tsx +0 -210
  233. package/src/commands/release-notes/index.ts +0 -11
  234. package/src/commands/release-notes/release-notes.ts +0 -50
  235. package/src/commands/reload-plugins/index.ts +0 -18
  236. package/src/commands/reload-plugins/reload-plugins.ts +0 -61
  237. package/src/commands/remote-env/index.ts +0 -15
  238. package/src/commands/remote-env/remote-env.tsx +0 -7
  239. package/src/commands/remote-setup/api.ts +0 -182
  240. package/src/commands/remote-setup/index.ts +0 -20
  241. package/src/commands/remote-setup/remote-setup.tsx +0 -187
  242. package/src/commands/rename/generateSessionName.ts +0 -67
  243. package/src/commands/rename/index.ts +0 -12
  244. package/src/commands/rename/rename.ts +0 -87
  245. package/src/commands/reset-limits/index.js +0 -4
  246. package/src/commands/resume/index.ts +0 -12
  247. package/src/commands/resume/resume.tsx +0 -275
  248. package/src/commands/review/UltrareviewOverageDialog.tsx +0 -96
  249. package/src/commands/review/reviewRemote.ts +0 -316
  250. package/src/commands/review/ultrareviewCommand.tsx +0 -58
  251. package/src/commands/review/ultrareviewEnabled.ts +0 -14
  252. package/src/commands/review.ts +0 -57
  253. package/src/commands/rewind/index.ts +0 -13
  254. package/src/commands/rewind/rewind.ts +0 -13
  255. package/src/commands/sandbox-toggle/index.ts +0 -50
  256. package/src/commands/sandbox-toggle/sandbox-toggle.tsx +0 -83
  257. package/src/commands/security-review.ts +0 -243
  258. package/src/commands/session/index.ts +0 -16
  259. package/src/commands/session/session.tsx +0 -140
  260. package/src/commands/share/index.js +0 -1
  261. package/src/commands/skills/index.ts +0 -10
  262. package/src/commands/skills/skills.tsx +0 -8
  263. package/src/commands/stats/index.ts +0 -10
  264. package/src/commands/stats/stats.tsx +0 -7
  265. package/src/commands/status/index.ts +0 -12
  266. package/src/commands/status/status.tsx +0 -8
  267. package/src/commands/statusline.tsx +0 -24
  268. package/src/commands/stickers/index.ts +0 -11
  269. package/src/commands/stickers/stickers.ts +0 -16
  270. package/src/commands/summary/index.js +0 -1
  271. package/src/commands/tag/index.ts +0 -12
  272. package/src/commands/tag/tag.tsx +0 -215
  273. package/src/commands/tasks/index.ts +0 -11
  274. package/src/commands/tasks/tasks.tsx +0 -8
  275. package/src/commands/teleport/index.js +0 -1
  276. package/src/commands/terminalSetup/index.ts +0 -23
  277. package/src/commands/terminalSetup/terminalSetup.tsx +0 -531
  278. package/src/commands/theme/index.ts +0 -10
  279. package/src/commands/theme/theme.tsx +0 -57
  280. package/src/commands/thinkback/index.ts +0 -13
  281. package/src/commands/thinkback/thinkback.tsx +0 -554
  282. package/src/commands/thinkback-play/index.ts +0 -17
  283. package/src/commands/thinkback-play/thinkback-play.ts +0 -43
  284. package/src/commands/ultraplan.tsx +0 -471
  285. package/src/commands/upgrade/index.ts +0 -16
  286. package/src/commands/upgrade/upgrade.tsx +0 -38
  287. package/src/commands/usage/index.ts +0 -9
  288. package/src/commands/usage/usage.tsx +0 -7
  289. package/src/commands/version.ts +0 -22
  290. package/src/commands/vim/index.ts +0 -11
  291. package/src/commands/vim/vim.ts +0 -38
  292. package/src/commands/voice/index.ts +0 -20
  293. package/src/commands/voice/voice.ts +0 -150
  294. package/src/commands/workflows/index.ts +0 -2
  295. package/src/commands.ts +0 -754
  296. package/src/components/AgentProgressLine.tsx +0 -136
  297. package/src/components/App.tsx +0 -56
  298. package/src/components/ApproveApiKey.tsx +0 -123
  299. package/src/components/AutoModeOptInDialog.tsx +0 -142
  300. package/src/components/AutoUpdater.tsx +0 -198
  301. package/src/components/AutoUpdaterWrapper.tsx +0 -91
  302. package/src/components/AwsAuthStatusBox.tsx +0 -82
  303. package/src/components/BaseTextInput.tsx +0 -136
  304. package/src/components/BashModeProgress.tsx +0 -56
  305. package/src/components/BridgeDialog.tsx +0 -401
  306. package/src/components/BypassPermissionsModeDialog.tsx +0 -87
  307. package/src/components/ChannelDowngradeDialog.tsx +0 -102
  308. package/src/components/ClaudeCodeHint/PluginHintMenu.tsx +0 -78
  309. package/src/components/ClaudeInChromeOnboarding.tsx +0 -121
  310. package/src/components/ClaudeMdExternalIncludesDialog.tsx +0 -137
  311. package/src/components/ClickableImageRef.tsx +0 -73
  312. package/src/components/CompactSummary.tsx +0 -118
  313. package/src/components/ConfigurableShortcutHint.tsx +0 -57
  314. package/src/components/ConsoleOAuthFlow.tsx +0 -631
  315. package/src/components/ContextSuggestions.tsx +0 -47
  316. package/src/components/ContextVisualization.tsx +0 -489
  317. package/src/components/CoordinatorAgentStatus.tsx +0 -273
  318. package/src/components/CostThresholdDialog.tsx +0 -50
  319. package/src/components/CtrlOToExpand.tsx +0 -51
  320. package/src/components/CustomSelect/SelectMulti.tsx +0 -213
  321. package/src/components/CustomSelect/index.ts +0 -3
  322. package/src/components/CustomSelect/option-map.ts +0 -50
  323. package/src/components/CustomSelect/select-input-option.tsx +0 -488
  324. package/src/components/CustomSelect/select-option.tsx +0 -68
  325. package/src/components/CustomSelect/select.tsx +0 -690
  326. package/src/components/CustomSelect/use-multi-select-state.ts +0 -414
  327. package/src/components/CustomSelect/use-select-input.ts +0 -287
  328. package/src/components/CustomSelect/use-select-navigation.ts +0 -653
  329. package/src/components/CustomSelect/use-select-state.ts +0 -157
  330. package/src/components/DesktopHandoff.tsx +0 -193
  331. package/src/components/DesktopUpsell/DesktopUpsellStartup.tsx +0 -171
  332. package/src/components/DevBar.tsx +0 -49
  333. package/src/components/DevChannelsDialog.tsx +0 -105
  334. package/src/components/DiagnosticsDisplay.tsx +0 -95
  335. package/src/components/EffortCallout.tsx +0 -265
  336. package/src/components/EffortIndicator.ts +0 -42
  337. package/src/components/ExitFlow.tsx +0 -48
  338. package/src/components/ExportDialog.tsx +0 -128
  339. package/src/components/FallbackToolUseErrorMessage.tsx +0 -116
  340. package/src/components/FallbackToolUseRejectedMessage.tsx +0 -16
  341. package/src/components/FastIcon.tsx +0 -46
  342. package/src/components/Feedback.tsx +0 -592
  343. package/src/components/FeedbackSurvey/FeedbackSurvey.tsx +0 -174
  344. package/src/components/FeedbackSurvey/FeedbackSurveyView.tsx +0 -108
  345. package/src/components/FeedbackSurvey/TranscriptSharePrompt.tsx +0 -88
  346. package/src/components/FeedbackSurvey/submitTranscriptShare.ts +0 -112
  347. package/src/components/FeedbackSurvey/useDebouncedDigitInput.ts +0 -82
  348. package/src/components/FeedbackSurvey/useFeedbackSurvey.tsx +0 -296
  349. package/src/components/FeedbackSurvey/useFrustrationDetection.ts +0 -2
  350. package/src/components/FeedbackSurvey/useMemorySurvey.tsx +0 -213
  351. package/src/components/FeedbackSurvey/usePostCompactSurvey.tsx +0 -206
  352. package/src/components/FeedbackSurvey/useSurveyState.tsx +0 -100
  353. package/src/components/FeedbackSurvey/utils.ts +0 -2
  354. package/src/components/FileEditToolDiff.tsx +0 -181
  355. package/src/components/FileEditToolUpdatedMessage.tsx +0 -124
  356. package/src/components/FileEditToolUseRejectedMessage.tsx +0 -170
  357. package/src/components/FilePathLink.tsx +0 -43
  358. package/src/components/FullscreenLayout.tsx +0 -637
  359. package/src/components/GlobalSearchDialog.tsx +0 -343
  360. package/src/components/HelpV2/Commands.tsx +0 -82
  361. package/src/components/HelpV2/General.tsx +0 -23
  362. package/src/components/HelpV2/HelpV2.tsx +0 -184
  363. package/src/components/HighlightedCode/Fallback.tsx +0 -193
  364. package/src/components/HighlightedCode.tsx +0 -190
  365. package/src/components/HistorySearchDialog.tsx +0 -118
  366. package/src/components/IdeAutoConnectDialog.tsx +0 -154
  367. package/src/components/IdeOnboardingDialog.tsx +0 -167
  368. package/src/components/IdeStatusIndicator.tsx +0 -58
  369. package/src/components/IdleReturnDialog.tsx +0 -118
  370. package/src/components/InterruptedByUser.tsx +0 -15
  371. package/src/components/InvalidConfigDialog.tsx +0 -156
  372. package/src/components/InvalidSettingsDialog.tsx +0 -89
  373. package/src/components/KeybindingWarnings.tsx +0 -55
  374. package/src/components/LanguagePicker.tsx +0 -86
  375. package/src/components/LogSelector.tsx +0 -1575
  376. package/src/components/LogoV2/AnimatedAsterisk.tsx +0 -50
  377. package/src/components/LogoV2/AnimatedClawd.tsx +0 -124
  378. package/src/components/LogoV2/ChannelsNotice.tsx +0 -266
  379. package/src/components/LogoV2/Clawd.tsx +0 -25
  380. package/src/components/LogoV2/CondensedLogo.tsx +0 -161
  381. package/src/components/LogoV2/EmergencyTip.tsx +0 -58
  382. package/src/components/LogoV2/Feed.tsx +0 -112
  383. package/src/components/LogoV2/FeedColumn.tsx +0 -59
  384. package/src/components/LogoV2/GuestPassesUpsell.tsx +0 -70
  385. package/src/components/LogoV2/LogoV2.tsx +0 -543
  386. package/src/components/LogoV2/Opus1mMergeNotice.tsx +0 -55
  387. package/src/components/LogoV2/OverageCreditUpsell.tsx +0 -166
  388. package/src/components/LogoV2/VoiceModeNotice.tsx +0 -68
  389. package/src/components/LogoV2/WelcomeV2.tsx +0 -433
  390. package/src/components/LogoV2/feedConfigs.tsx +0 -92
  391. package/src/components/LspRecommendation/LspRecommendationMenu.tsx +0 -88
  392. package/src/components/MCPServerApprovalDialog.tsx +0 -115
  393. package/src/components/MCPServerDesktopImportDialog.tsx +0 -203
  394. package/src/components/MCPServerDialogCopy.tsx +0 -15
  395. package/src/components/MCPServerMultiselectDialog.tsx +0 -133
  396. package/src/components/ManagedSettingsSecurityDialog/ManagedSettingsSecurityDialog.tsx +0 -149
  397. package/src/components/ManagedSettingsSecurityDialog/utils.ts +0 -144
  398. package/src/components/Markdown.tsx +0 -236
  399. package/src/components/MarkdownTable.tsx +0 -322
  400. package/src/components/MemoryUsageIndicator.tsx +0 -37
  401. package/src/components/Message.tsx +0 -627
  402. package/src/components/MessageModel.tsx +0 -43
  403. package/src/components/MessageResponse.tsx +0 -78
  404. package/src/components/MessageRow.tsx +0 -383
  405. package/src/components/MessageSelector.tsx +0 -831
  406. package/src/components/MessageTimestamp.tsx +0 -63
  407. package/src/components/Messages.tsx +0 -834
  408. package/src/components/ModelPicker.tsx +0 -448
  409. package/src/components/NativeAutoUpdater.tsx +0 -193
  410. package/src/components/NotebookEditToolUseRejectedMessage.tsx +0 -92
  411. package/src/components/OffscreenFreeze.tsx +0 -44
  412. package/src/components/Onboarding.tsx +0 -244
  413. package/src/components/OutputStylePicker.tsx +0 -112
  414. package/src/components/PackageManagerAutoUpdater.tsx +0 -104
  415. package/src/components/Passes/Passes.tsx +0 -184
  416. package/src/components/PrBadge.tsx +0 -97
  417. package/src/components/PressEnterToContinue.tsx +0 -15
  418. package/src/components/PromptInput/HistorySearchInput.tsx +0 -51
  419. package/src/components/PromptInput/IssueFlagBanner.tsx +0 -12
  420. package/src/components/PromptInput/Notifications.tsx +0 -332
  421. package/src/components/PromptInput/PromptInput.tsx +0 -2339
  422. package/src/components/PromptInput/PromptInputFooter.tsx +0 -191
  423. package/src/components/PromptInput/PromptInputFooterLeftSide.tsx +0 -517
  424. package/src/components/PromptInput/PromptInputFooterSuggestions.tsx +0 -293
  425. package/src/components/PromptInput/PromptInputHelpMenu.tsx +0 -358
  426. package/src/components/PromptInput/PromptInputModeIndicator.tsx +0 -93
  427. package/src/components/PromptInput/PromptInputQueuedCommands.tsx +0 -117
  428. package/src/components/PromptInput/PromptInputStashNotice.tsx +0 -25
  429. package/src/components/PromptInput/SandboxPromptFooterHint.tsx +0 -64
  430. package/src/components/PromptInput/ShimmeredInput.tsx +0 -143
  431. package/src/components/PromptInput/VoiceIndicator.tsx +0 -137
  432. package/src/components/PromptInput/inputModes.ts +0 -33
  433. package/src/components/PromptInput/inputPaste.ts +0 -90
  434. package/src/components/PromptInput/useMaybeTruncateInput.ts +0 -58
  435. package/src/components/PromptInput/usePromptInputPlaceholder.ts +0 -76
  436. package/src/components/PromptInput/useShowFastIconHint.ts +0 -31
  437. package/src/components/PromptInput/useSwarmBanner.ts +0 -155
  438. package/src/components/PromptInput/utils.ts +0 -60
  439. package/src/components/QuickOpenDialog.tsx +0 -244
  440. package/src/components/RemoteCallout.tsx +0 -76
  441. package/src/components/RemoteEnvironmentDialog.tsx +0 -340
  442. package/src/components/ResumeTask.tsx +0 -268
  443. package/src/components/SandboxViolationExpandedView.tsx +0 -99
  444. package/src/components/ScrollKeybindingHandler.tsx +0 -1012
  445. package/src/components/SearchBox.tsx +0 -72
  446. package/src/components/SentryErrorBoundary.ts +0 -28
  447. package/src/components/SessionBackgroundHint.tsx +0 -108
  448. package/src/components/SessionPreview.tsx +0 -194
  449. package/src/components/Settings/Config.tsx +0 -1822
  450. package/src/components/Settings/Settings.tsx +0 -137
  451. package/src/components/Settings/Status.tsx +0 -241
  452. package/src/components/Settings/Usage.tsx +0 -377
  453. package/src/components/ShowInIDEPrompt.tsx +0 -170
  454. package/src/components/SkillImprovementSurvey.tsx +0 -152
  455. package/src/components/Spinner/FlashingChar.tsx +0 -61
  456. package/src/components/Spinner/GlimmerMessage.tsx +0 -328
  457. package/src/components/Spinner/ShimmerChar.tsx +0 -36
  458. package/src/components/Spinner/SpinnerAnimationRow.tsx +0 -265
  459. package/src/components/Spinner/SpinnerGlyph.tsx +0 -80
  460. package/src/components/Spinner/TeammateSpinnerLine.tsx +0 -233
  461. package/src/components/Spinner/TeammateSpinnerTree.tsx +0 -272
  462. package/src/components/Spinner/index.ts +0 -10
  463. package/src/components/Spinner/teammateSelectHint.ts +0 -1
  464. package/src/components/Spinner/types.ts +0 -2
  465. package/src/components/Spinner/useShimmerAnimation.ts +0 -31
  466. package/src/components/Spinner/useStalledAnimation.ts +0 -75
  467. package/src/components/Spinner/utils.ts +0 -84
  468. package/src/components/Spinner.tsx +0 -562
  469. package/src/components/Stats.tsx +0 -1228
  470. package/src/components/StatusLine.tsx +0 -324
  471. package/src/components/StatusNotices.tsx +0 -55
  472. package/src/components/StructuredDiff/Fallback.tsx +0 -487
  473. package/src/components/StructuredDiff/colorDiff.ts +0 -37
  474. package/src/components/StructuredDiff.tsx +0 -190
  475. package/src/components/StructuredDiffList.tsx +0 -30
  476. package/src/components/TagTabs.tsx +0 -139
  477. package/src/components/TaskListV2.tsx +0 -378
  478. package/src/components/TeammateViewHeader.tsx +0 -82
  479. package/src/components/TeleportError.tsx +0 -189
  480. package/src/components/TeleportProgress.tsx +0 -140
  481. package/src/components/TeleportRepoMismatchDialog.tsx +0 -104
  482. package/src/components/TeleportResumeWrapper.tsx +0 -167
  483. package/src/components/TeleportStash.tsx +0 -116
  484. package/src/components/TextInput.tsx +0 -124
  485. package/src/components/ThemePicker.tsx +0 -333
  486. package/src/components/ThinkingToggle.tsx +0 -153
  487. package/src/components/TokenWarning.tsx +0 -179
  488. package/src/components/ToolUseLoader.tsx +0 -42
  489. package/src/components/TrustDialog/TrustDialog.tsx +0 -290
  490. package/src/components/TrustDialog/utils.ts +0 -245
  491. package/src/components/ValidationErrorsList.tsx +0 -148
  492. package/src/components/VimTextInput.tsx +0 -140
  493. package/src/components/VirtualMessageList.tsx +0 -1082
  494. package/src/components/WorkflowMultiselectDialog.tsx +0 -128
  495. package/src/components/WorktreeExitDialog.tsx +0 -231
  496. package/src/components/agents/AgentDetail.tsx +0 -220
  497. package/src/components/agents/AgentEditor.tsx +0 -178
  498. package/src/components/agents/AgentNavigationFooter.tsx +0 -26
  499. package/src/components/agents/AgentsList.tsx +0 -440
  500. package/src/components/agents/AgentsMenu.tsx +0 -800
  501. package/src/components/agents/ColorPicker.tsx +0 -112
  502. package/src/components/agents/ModelSelector.tsx +0 -68
  503. package/src/components/agents/SnapshotUpdateDialog.ts +0 -2
  504. package/src/components/agents/ToolSelector.tsx +0 -562
  505. package/src/components/agents/agentFileUtils.ts +0 -272
  506. package/src/components/agents/generateAgent.ts +0 -197
  507. package/src/components/agents/new-agent-creation/CreateAgentWizard.tsx +0 -97
  508. package/src/components/agents/new-agent-creation/types.ts +0 -1
  509. package/src/components/agents/new-agent-creation/wizard-steps/ColorStep.tsx +0 -84
  510. package/src/components/agents/new-agent-creation/wizard-steps/ConfirmStep.tsx +0 -378
  511. package/src/components/agents/new-agent-creation/wizard-steps/ConfirmStepWrapper.tsx +0 -74
  512. package/src/components/agents/new-agent-creation/wizard-steps/DescriptionStep.tsx +0 -123
  513. package/src/components/agents/new-agent-creation/wizard-steps/GenerateStep.tsx +0 -143
  514. package/src/components/agents/new-agent-creation/wizard-steps/LocationStep.tsx +0 -80
  515. package/src/components/agents/new-agent-creation/wizard-steps/MemoryStep.tsx +0 -113
  516. package/src/components/agents/new-agent-creation/wizard-steps/MethodStep.tsx +0 -80
  517. package/src/components/agents/new-agent-creation/wizard-steps/ModelStep.tsx +0 -52
  518. package/src/components/agents/new-agent-creation/wizard-steps/PromptStep.tsx +0 -128
  519. package/src/components/agents/new-agent-creation/wizard-steps/ToolsStep.tsx +0 -61
  520. package/src/components/agents/new-agent-creation/wizard-steps/TypeStep.tsx +0 -103
  521. package/src/components/agents/types.ts +0 -27
  522. package/src/components/agents/utils.ts +0 -18
  523. package/src/components/agents/validateAgent.ts +0 -109
  524. package/src/components/design-system/Byline.tsx +0 -77
  525. package/src/components/design-system/Dialog.tsx +0 -138
  526. package/src/components/design-system/Divider.tsx +0 -149
  527. package/src/components/design-system/FuzzyPicker.tsx +0 -312
  528. package/src/components/design-system/KeyboardShortcutHint.tsx +0 -81
  529. package/src/components/design-system/ListItem.tsx +0 -244
  530. package/src/components/design-system/LoadingState.tsx +0 -94
  531. package/src/components/design-system/Pane.tsx +0 -77
  532. package/src/components/design-system/ProgressBar.tsx +0 -86
  533. package/src/components/design-system/Ratchet.tsx +0 -80
  534. package/src/components/design-system/StatusIcon.tsx +0 -95
  535. package/src/components/design-system/Tabs.tsx +0 -340
  536. package/src/components/design-system/ThemeProvider.tsx +0 -170
  537. package/src/components/design-system/ThemedBox.tsx +0 -156
  538. package/src/components/design-system/ThemedText.tsx +0 -124
  539. package/src/components/design-system/color.ts +0 -30
  540. package/src/components/diff/DiffDetailView.tsx +0 -281
  541. package/src/components/diff/DiffDialog.tsx +0 -383
  542. package/src/components/diff/DiffFileList.tsx +0 -292
  543. package/src/components/grove/Grove.tsx +0 -463
  544. package/src/components/hooks/HooksConfigMenu.tsx +0 -578
  545. package/src/components/hooks/PromptDialog.tsx +0 -90
  546. package/src/components/hooks/SelectEventMode.tsx +0 -127
  547. package/src/components/hooks/SelectHookMode.tsx +0 -112
  548. package/src/components/hooks/SelectMatcherMode.tsx +0 -144
  549. package/src/components/hooks/ViewHookMode.tsx +0 -199
  550. package/src/components/mcp/CapabilitiesSection.tsx +0 -61
  551. package/src/components/mcp/ElicitationDialog.tsx +0 -1169
  552. package/src/components/mcp/MCPAgentServerMenu.tsx +0 -183
  553. package/src/components/mcp/MCPListPanel.tsx +0 -504
  554. package/src/components/mcp/MCPReconnect.tsx +0 -167
  555. package/src/components/mcp/MCPRemoteServerMenu.tsx +0 -649
  556. package/src/components/mcp/MCPSettings.tsx +0 -398
  557. package/src/components/mcp/MCPStdioServerMenu.tsx +0 -177
  558. package/src/components/mcp/MCPToolDetailView.tsx +0 -212
  559. package/src/components/mcp/MCPToolListView.tsx +0 -141
  560. package/src/components/mcp/McpParsingWarnings.tsx +0 -213
  561. package/src/components/mcp/index.ts +0 -9
  562. package/src/components/mcp/types.ts +0 -7
  563. package/src/components/mcp/utils/reconnectHelpers.tsx +0 -49
  564. package/src/components/memory/MemoryFileSelector.tsx +0 -438
  565. package/src/components/memory/MemoryUpdateNotification.tsx +0 -45
  566. package/src/components/messageActions.tsx +0 -450
  567. package/src/components/messages/AdvisorMessage.tsx +0 -158
  568. package/src/components/messages/AssistantRedactedThinkingMessage.tsx +0 -31
  569. package/src/components/messages/AssistantTextMessage.tsx +0 -270
  570. package/src/components/messages/AssistantThinkingMessage.tsx +0 -86
  571. package/src/components/messages/AssistantToolUseMessage.tsx +0 -368
  572. package/src/components/messages/AttachmentMessage.tsx +0 -536
  573. package/src/components/messages/CollapsedReadSearchContent.tsx +0 -484
  574. package/src/components/messages/CompactBoundaryMessage.tsx +0 -18
  575. package/src/components/messages/GroupedToolUseContent.tsx +0 -58
  576. package/src/components/messages/HighlightedThinkingText.tsx +0 -162
  577. package/src/components/messages/HookProgressMessage.tsx +0 -116
  578. package/src/components/messages/PlanApprovalMessage.tsx +0 -222
  579. package/src/components/messages/RateLimitMessage.tsx +0 -161
  580. package/src/components/messages/ShutdownMessage.tsx +0 -132
  581. package/src/components/messages/SnipBoundaryMessage.ts +0 -2
  582. package/src/components/messages/SystemAPIErrorMessage.tsx +0 -141
  583. package/src/components/messages/SystemTextMessage.tsx +0 -827
  584. package/src/components/messages/TaskAssignmentMessage.tsx +0 -76
  585. package/src/components/messages/UserAgentNotificationMessage.tsx +0 -83
  586. package/src/components/messages/UserBashInputMessage.tsx +0 -58
  587. package/src/components/messages/UserBashOutputMessage.tsx +0 -54
  588. package/src/components/messages/UserChannelMessage.tsx +0 -137
  589. package/src/components/messages/UserCommandMessage.tsx +0 -108
  590. package/src/components/messages/UserCrossSessionMessage.ts +0 -2
  591. package/src/components/messages/UserForkBoilerplateMessage.ts +0 -2
  592. package/src/components/messages/UserGitHubWebhookMessage.ts +0 -2
  593. package/src/components/messages/UserImageMessage.tsx +0 -59
  594. package/src/components/messages/UserLocalCommandOutputMessage.tsx +0 -167
  595. package/src/components/messages/UserMemoryInputMessage.tsx +0 -75
  596. package/src/components/messages/UserPlanMessage.tsx +0 -42
  597. package/src/components/messages/UserPromptMessage.tsx +0 -80
  598. package/src/components/messages/UserResourceUpdateMessage.tsx +0 -121
  599. package/src/components/messages/UserTeammateMessage.tsx +0 -206
  600. package/src/components/messages/UserTextMessage.tsx +0 -275
  601. package/src/components/messages/UserToolResultMessage/RejectedPlanMessage.tsx +0 -31
  602. package/src/components/messages/UserToolResultMessage/RejectedToolUseMessage.tsx +0 -16
  603. package/src/components/messages/UserToolResultMessage/UserToolCanceledMessage.tsx +0 -16
  604. package/src/components/messages/UserToolResultMessage/UserToolErrorMessage.tsx +0 -103
  605. package/src/components/messages/UserToolResultMessage/UserToolRejectMessage.tsx +0 -95
  606. package/src/components/messages/UserToolResultMessage/UserToolResultMessage.tsx +0 -106
  607. package/src/components/messages/UserToolResultMessage/UserToolSuccessMessage.tsx +0 -104
  608. package/src/components/messages/UserToolResultMessage/utils.tsx +0 -44
  609. package/src/components/messages/nullRenderingAttachments.ts +0 -70
  610. package/src/components/messages/teamMemCollapsed.tsx +0 -140
  611. package/src/components/messages/teamMemSaved.ts +0 -19
  612. package/src/components/permissions/AskUserQuestionPermissionRequest/AskUserQuestionPermissionRequest.tsx +0 -645
  613. package/src/components/permissions/AskUserQuestionPermissionRequest/PreviewBox.tsx +0 -229
  614. package/src/components/permissions/AskUserQuestionPermissionRequest/PreviewQuestionView.tsx +0 -328
  615. package/src/components/permissions/AskUserQuestionPermissionRequest/QuestionNavigationBar.tsx +0 -178
  616. package/src/components/permissions/AskUserQuestionPermissionRequest/QuestionView.tsx +0 -465
  617. package/src/components/permissions/AskUserQuestionPermissionRequest/SubmitQuestionsView.tsx +0 -144
  618. package/src/components/permissions/AskUserQuestionPermissionRequest/use-multiple-choice-state.ts +0 -179
  619. package/src/components/permissions/BashPermissionRequest/BashPermissionRequest.tsx +0 -482
  620. package/src/components/permissions/BashPermissionRequest/bashToolUseOptions.tsx +0 -147
  621. package/src/components/permissions/ComputerUseApproval/ComputerUseApproval.tsx +0 -441
  622. package/src/components/permissions/EnterPlanModePermissionRequest/EnterPlanModePermissionRequest.tsx +0 -122
  623. package/src/components/permissions/ExitPlanModePermissionRequest/ExitPlanModePermissionRequest.tsx +0 -768
  624. package/src/components/permissions/FallbackPermissionRequest.tsx +0 -333
  625. package/src/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.tsx +0 -182
  626. package/src/components/permissions/FilePermissionDialog/FilePermissionDialog.tsx +0 -204
  627. package/src/components/permissions/FilePermissionDialog/ideDiffConfig.ts +0 -42
  628. package/src/components/permissions/FilePermissionDialog/permissionOptions.tsx +0 -177
  629. package/src/components/permissions/FilePermissionDialog/useFilePermissionDialog.ts +0 -212
  630. package/src/components/permissions/FilePermissionDialog/usePermissionHandler.ts +0 -185
  631. package/src/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.tsx +0 -161
  632. package/src/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.tsx +0 -89
  633. package/src/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.tsx +0 -115
  634. package/src/components/permissions/MonitorPermissionRequest/MonitorPermissionRequest.ts +0 -2
  635. package/src/components/permissions/NotebookEditPermissionRequest/NotebookEditPermissionRequest.tsx +0 -166
  636. package/src/components/permissions/NotebookEditPermissionRequest/NotebookEditToolDiff.tsx +0 -235
  637. package/src/components/permissions/PermissionDecisionDebugInfo.tsx +0 -460
  638. package/src/components/permissions/PermissionDialog.tsx +0 -72
  639. package/src/components/permissions/PermissionExplanation.tsx +0 -272
  640. package/src/components/permissions/PermissionPrompt.tsx +0 -336
  641. package/src/components/permissions/PermissionRequest.tsx +0 -217
  642. package/src/components/permissions/PermissionRequestTitle.tsx +0 -66
  643. package/src/components/permissions/PermissionRuleExplanation.tsx +0 -121
  644. package/src/components/permissions/PowerShellPermissionRequest/PowerShellPermissionRequest.tsx +0 -235
  645. package/src/components/permissions/PowerShellPermissionRequest/powershellToolUseOptions.tsx +0 -91
  646. package/src/components/permissions/ReviewArtifactPermissionRequest/ReviewArtifactPermissionRequest.ts +0 -2
  647. package/src/components/permissions/SandboxPermissionRequest.tsx +0 -163
  648. package/src/components/permissions/SedEditPermissionRequest/SedEditPermissionRequest.tsx +0 -230
  649. package/src/components/permissions/SkillPermissionRequest/SkillPermissionRequest.tsx +0 -369
  650. package/src/components/permissions/WebFetchPermissionRequest/WebFetchPermissionRequest.tsx +0 -258
  651. package/src/components/permissions/WorkerBadge.tsx +0 -49
  652. package/src/components/permissions/WorkerPendingPermission.tsx +0 -105
  653. package/src/components/permissions/hooks.ts +0 -209
  654. package/src/components/permissions/rules/AddPermissionRules.tsx +0 -180
  655. package/src/components/permissions/rules/AddWorkspaceDirectory.tsx +0 -340
  656. package/src/components/permissions/rules/PermissionRuleDescription.tsx +0 -76
  657. package/src/components/permissions/rules/PermissionRuleInput.tsx +0 -138
  658. package/src/components/permissions/rules/PermissionRuleList.tsx +0 -1179
  659. package/src/components/permissions/rules/RecentDenialsTab.tsx +0 -207
  660. package/src/components/permissions/rules/RemoveWorkspaceDirectory.tsx +0 -110
  661. package/src/components/permissions/rules/WorkspaceTab.tsx +0 -150
  662. package/src/components/permissions/shellPermissionHelpers.tsx +0 -164
  663. package/src/components/permissions/useShellPermissionFeedback.ts +0 -148
  664. package/src/components/permissions/utils.ts +0 -25
  665. package/src/components/sandbox/SandboxConfigTab.tsx +0 -45
  666. package/src/components/sandbox/SandboxDependenciesTab.tsx +0 -120
  667. package/src/components/sandbox/SandboxDoctorSection.tsx +0 -46
  668. package/src/components/sandbox/SandboxOverridesTab.tsx +0 -193
  669. package/src/components/sandbox/SandboxSettings.tsx +0 -296
  670. package/src/components/shell/ExpandShellOutputContext.tsx +0 -36
  671. package/src/components/shell/OutputLine.tsx +0 -118
  672. package/src/components/shell/ShellProgressMessage.tsx +0 -150
  673. package/src/components/shell/ShellTimeDisplay.tsx +0 -74
  674. package/src/components/skills/SkillsMenu.tsx +0 -237
  675. package/src/components/tasks/AsyncAgentDetailDialog.tsx +0 -229
  676. package/src/components/tasks/BackgroundTask.tsx +0 -345
  677. package/src/components/tasks/BackgroundTaskStatus.tsx +0 -429
  678. package/src/components/tasks/BackgroundTasksDialog.tsx +0 -652
  679. package/src/components/tasks/DreamDetailDialog.tsx +0 -251
  680. package/src/components/tasks/InProcessTeammateDetailDialog.tsx +0 -266
  681. package/src/components/tasks/MonitorMcpDetailDialog.ts +0 -2
  682. package/src/components/tasks/RemoteSessionDetailDialog.tsx +0 -904
  683. package/src/components/tasks/RemoteSessionProgress.tsx +0 -243
  684. package/src/components/tasks/ShellDetailDialog.tsx +0 -404
  685. package/src/components/tasks/ShellProgress.tsx +0 -87
  686. package/src/components/tasks/WorkflowDetailDialog.ts +0 -2
  687. package/src/components/tasks/renderToolActivity.tsx +0 -33
  688. package/src/components/tasks/taskStatusUtils.tsx +0 -107
  689. package/src/components/teams/TeamStatus.tsx +0 -80
  690. package/src/components/teams/TeamsDialog.tsx +0 -715
  691. package/src/components/ui/OrderedList.tsx +0 -71
  692. package/src/components/ui/OrderedListItem.tsx +0 -45
  693. package/src/components/ui/TreeSelect.tsx +0 -397
  694. package/src/components/ui/option.ts +0 -4
  695. package/src/components/wizard/WizardDialogLayout.tsx +0 -65
  696. package/src/components/wizard/WizardNavigationFooter.tsx +0 -24
  697. package/src/components/wizard/WizardProvider.tsx +0 -213
  698. package/src/components/wizard/index.ts +0 -9
  699. package/src/components/wizard/types.ts +0 -3
  700. package/src/components/wizard/useWizard.ts +0 -13
  701. package/src/constants/apiLimits.ts +0 -94
  702. package/src/constants/betas.ts +0 -52
  703. package/src/constants/common.ts +0 -33
  704. package/src/constants/cyberRiskInstruction.ts +0 -24
  705. package/src/constants/errorIds.ts +0 -15
  706. package/src/constants/figures.ts +0 -45
  707. package/src/constants/files.ts +0 -156
  708. package/src/constants/github-app.ts +0 -144
  709. package/src/constants/keys.ts +0 -11
  710. package/src/constants/messages.ts +0 -1
  711. package/src/constants/oauth.ts +0 -234
  712. package/src/constants/outputStyles.ts +0 -216
  713. package/src/constants/product.ts +0 -76
  714. package/src/constants/prompts.ts +0 -915
  715. package/src/constants/querySource.ts +0 -1
  716. package/src/constants/spinnerVerbs.ts +0 -204
  717. package/src/constants/system.ts +0 -95
  718. package/src/constants/systemPromptSections.ts +0 -68
  719. package/src/constants/toolLimits.ts +0 -56
  720. package/src/constants/tools.ts +0 -112
  721. package/src/constants/turnCompletionVerbs.ts +0 -12
  722. package/src/constants/xml.ts +0 -86
  723. package/src/context/QueuedMessageContext.tsx +0 -63
  724. package/src/context/fpsMetrics.tsx +0 -30
  725. package/src/context/mailbox.tsx +0 -38
  726. package/src/context/modalContext.tsx +0 -58
  727. package/src/context/notifications.tsx +0 -240
  728. package/src/context/overlayContext.tsx +0 -151
  729. package/src/context/promptOverlayContext.tsx +0 -125
  730. package/src/context/stats.tsx +0 -220
  731. package/src/context/voice.tsx +0 -88
  732. package/src/context.ts +0 -189
  733. package/src/coordinator/coordinatorMode.ts +0 -369
  734. package/src/coordinator/workerAgent.ts +0 -2
  735. package/src/cost-tracker.ts +0 -323
  736. package/src/costHook.ts +0 -22
  737. package/src/daemon/main.ts +0 -2
  738. package/src/daemon/workerRegistry.ts +0 -2
  739. package/src/dialogLaunchers.tsx +0 -133
  740. package/src/engine/CostMapper.ts +0 -57
  741. package/src/engine/MessageMapper.ts +0 -276
  742. package/src/engine/ModelResolver.ts +0 -153
  743. package/src/engine/PermissionBridge.ts +0 -114
  744. package/src/engine/PiAgentAdapter.ts +0 -299
  745. package/src/engine/SubagentTools.ts +0 -92
  746. package/src/engine/ToolAdapter.ts +0 -122
  747. package/src/engine/engine-backup/CostMapper.ts +0 -57
  748. package/src/engine/engine-backup/MessageMapper.ts +0 -276
  749. package/src/engine/engine-backup/ModelResolver.ts +0 -153
  750. package/src/engine/engine-backup/PermissionBridge.ts +0 -114
  751. package/src/engine/engine-backup/PiAgentAdapter.ts +0 -299
  752. package/src/engine/engine-backup/SubagentTools.ts +0 -92
  753. package/src/engine/engine-backup/ToolAdapter.ts +0 -122
  754. package/src/engine/engine-backup/index.ts +0 -14
  755. package/src/engine/engine-backup/piQueryBridge.ts +0 -396
  756. package/src/engine/index.ts +0 -14
  757. package/src/engine/piQueryBridge.ts +0 -396
  758. package/src/entrypoints/agentSdkTypes.ts +0 -443
  759. package/src/entrypoints/cli.tsx +0 -303
  760. package/src/entrypoints/init.ts +0 -340
  761. package/src/entrypoints/mcp.ts +0 -196
  762. package/src/entrypoints/sandboxTypes.ts +0 -156
  763. package/src/entrypoints/sdk/controlSchemas.ts +0 -663
  764. package/src/entrypoints/sdk/controlTypes.ts +0 -12
  765. package/src/entrypoints/sdk/coreSchemas.ts +0 -1889
  766. package/src/entrypoints/sdk/coreTypes.generated.ts +0 -1
  767. package/src/entrypoints/sdk/coreTypes.ts +0 -62
  768. package/src/entrypoints/sdk/runtimeTypes.ts +0 -18
  769. package/src/entrypoints/sdk/sdkUtilityTypes.ts +0 -1
  770. package/src/entrypoints/sdk/settingsTypes.generated.ts +0 -1
  771. package/src/entrypoints/sdk/toolTypes.ts +0 -2
  772. package/src/environment-runner/main.ts +0 -2
  773. package/src/history.ts +0 -464
  774. package/src/hooks/fileSuggestions.ts +0 -811
  775. package/src/hooks/notifs/useAntOrgWarningNotification.ts +0 -2
  776. package/src/hooks/notifs/useAutoModeUnavailableNotification.ts +0 -56
  777. package/src/hooks/notifs/useCanSwitchToExistingSubscription.tsx +0 -60
  778. package/src/hooks/notifs/useDeprecationWarningNotification.tsx +0 -44
  779. package/src/hooks/notifs/useFastModeNotification.tsx +0 -162
  780. package/src/hooks/notifs/useIDEStatusIndicator.tsx +0 -186
  781. package/src/hooks/notifs/useInstallMessages.tsx +0 -26
  782. package/src/hooks/notifs/useLspInitializationNotification.tsx +0 -143
  783. package/src/hooks/notifs/useMcpConnectivityStatus.tsx +0 -88
  784. package/src/hooks/notifs/useModelMigrationNotifications.tsx +0 -52
  785. package/src/hooks/notifs/useNpmDeprecationNotification.tsx +0 -25
  786. package/src/hooks/notifs/usePluginAutoupdateNotification.tsx +0 -83
  787. package/src/hooks/notifs/usePluginInstallationStatus.tsx +0 -128
  788. package/src/hooks/notifs/useRateLimitWarningNotification.tsx +0 -114
  789. package/src/hooks/notifs/useSettingsErrors.tsx +0 -69
  790. package/src/hooks/notifs/useStartupNotification.ts +0 -41
  791. package/src/hooks/notifs/useTeammateShutdownNotification.ts +0 -78
  792. package/src/hooks/renderPlaceholder.ts +0 -51
  793. package/src/hooks/toolPermission/PermissionContext.ts +0 -388
  794. package/src/hooks/toolPermission/handlers/coordinatorHandler.ts +0 -65
  795. package/src/hooks/toolPermission/handlers/interactiveHandler.ts +0 -536
  796. package/src/hooks/toolPermission/handlers/swarmWorkerHandler.ts +0 -159
  797. package/src/hooks/toolPermission/permissionLogging.ts +0 -238
  798. package/src/hooks/unifiedSuggestions.ts +0 -202
  799. package/src/hooks/useAfterFirstRender.ts +0 -17
  800. package/src/hooks/useApiKeyVerification.ts +0 -84
  801. package/src/hooks/useArrowKeyHistory.tsx +0 -229
  802. package/src/hooks/useAssistantHistory.ts +0 -250
  803. package/src/hooks/useAwaySummary.ts +0 -125
  804. package/src/hooks/useBackgroundTaskNavigation.ts +0 -251
  805. package/src/hooks/useBlink.ts +0 -34
  806. package/src/hooks/useCanUseTool.tsx +0 -204
  807. package/src/hooks/useCancelRequest.ts +0 -276
  808. package/src/hooks/useChromeExtensionNotification.tsx +0 -50
  809. package/src/hooks/useClaudeCodeHintRecommendation.tsx +0 -129
  810. package/src/hooks/useClipboardImageHint.ts +0 -77
  811. package/src/hooks/useCommandKeybindings.tsx +0 -108
  812. package/src/hooks/useCommandQueue.ts +0 -15
  813. package/src/hooks/useCopyOnSelect.ts +0 -98
  814. package/src/hooks/useDeferredHookMessages.ts +0 -46
  815. package/src/hooks/useDiffData.ts +0 -110
  816. package/src/hooks/useDiffInIDE.ts +0 -379
  817. package/src/hooks/useDirectConnect.ts +0 -229
  818. package/src/hooks/useDoublePress.ts +0 -62
  819. package/src/hooks/useDynamicConfig.ts +0 -22
  820. package/src/hooks/useElapsedTime.ts +0 -37
  821. package/src/hooks/useExitOnCtrlCD.ts +0 -95
  822. package/src/hooks/useExitOnCtrlCDWithKeybindings.ts +0 -24
  823. package/src/hooks/useFileHistorySnapshotInit.ts +0 -25
  824. package/src/hooks/useGlobalKeybindings.tsx +0 -249
  825. package/src/hooks/useHistorySearch.ts +0 -303
  826. package/src/hooks/useIDEIntegration.tsx +0 -70
  827. package/src/hooks/useIdeAtMentioned.ts +0 -76
  828. package/src/hooks/useIdeConnectionStatus.ts +0 -33
  829. package/src/hooks/useIdeLogging.ts +0 -41
  830. package/src/hooks/useIdeSelection.ts +0 -150
  831. package/src/hooks/useInboxPoller.ts +0 -969
  832. package/src/hooks/useInputBuffer.ts +0 -132
  833. package/src/hooks/useIssueFlagBanner.ts +0 -133
  834. package/src/hooks/useLogMessages.ts +0 -119
  835. package/src/hooks/useLspPluginRecommendation.tsx +0 -194
  836. package/src/hooks/useMailboxBridge.ts +0 -21
  837. package/src/hooks/useMainLoopModel.ts +0 -34
  838. package/src/hooks/useManagePlugins.ts +0 -304
  839. package/src/hooks/useMemoryUsage.ts +0 -39
  840. package/src/hooks/useMergedClients.ts +0 -23
  841. package/src/hooks/useMergedCommands.ts +0 -15
  842. package/src/hooks/useMergedTools.ts +0 -44
  843. package/src/hooks/useMinDisplayTime.ts +0 -35
  844. package/src/hooks/useNotifyAfterTimeout.ts +0 -65
  845. package/src/hooks/useOfficialMarketplaceNotification.tsx +0 -48
  846. package/src/hooks/usePasteHandler.ts +0 -285
  847. package/src/hooks/usePluginRecommendationBase.tsx +0 -105
  848. package/src/hooks/usePrStatus.ts +0 -106
  849. package/src/hooks/usePromptSuggestion.ts +0 -177
  850. package/src/hooks/usePromptsFromClaudeInChrome.tsx +0 -71
  851. package/src/hooks/useQueueProcessor.ts +0 -68
  852. package/src/hooks/useRemoteSession.ts +0 -605
  853. package/src/hooks/useReplBridge.tsx +0 -723
  854. package/src/hooks/useSSHSession.ts +0 -241
  855. package/src/hooks/useScheduledTasks.ts +0 -139
  856. package/src/hooks/useSearchInput.ts +0 -364
  857. package/src/hooks/useSessionBackgrounding.ts +0 -158
  858. package/src/hooks/useSettings.ts +0 -17
  859. package/src/hooks/useSettingsChange.ts +0 -25
  860. package/src/hooks/useSkillImprovementSurvey.ts +0 -105
  861. package/src/hooks/useSkillsChange.ts +0 -62
  862. package/src/hooks/useSwarmInitialization.ts +0 -81
  863. package/src/hooks/useSwarmPermissionPoller.ts +0 -330
  864. package/src/hooks/useTaskListWatcher.ts +0 -221
  865. package/src/hooks/useTasksV2.ts +0 -250
  866. package/src/hooks/useTeammateViewAutoExit.ts +0 -63
  867. package/src/hooks/useTeleportResume.tsx +0 -85
  868. package/src/hooks/useTerminalSize.ts +0 -15
  869. package/src/hooks/useTextInput.ts +0 -529
  870. package/src/hooks/useTimeout.ts +0 -14
  871. package/src/hooks/useTurnDiffs.ts +0 -213
  872. package/src/hooks/useTypeahead.tsx +0 -1385
  873. package/src/hooks/useUpdateNotification.ts +0 -34
  874. package/src/hooks/useVimInput.ts +0 -316
  875. package/src/hooks/useVirtualScroll.ts +0 -721
  876. package/src/hooks/useVoice.ts +0 -1144
  877. package/src/hooks/useVoiceEnabled.ts +0 -25
  878. package/src/hooks/useVoiceIntegration.tsx +0 -677
  879. package/src/ink/Ansi.tsx +0 -292
  880. package/src/ink/bidi.ts +0 -139
  881. package/src/ink/clearTerminal.ts +0 -74
  882. package/src/ink/colorize.ts +0 -231
  883. package/src/ink/components/AlternateScreen.tsx +0 -80
  884. package/src/ink/components/App.tsx +0 -658
  885. package/src/ink/components/AppContext.ts +0 -21
  886. package/src/ink/components/Box.tsx +0 -214
  887. package/src/ink/components/Button.tsx +0 -192
  888. package/src/ink/components/ClockContext.tsx +0 -112
  889. package/src/ink/components/CursorDeclarationContext.ts +0 -32
  890. package/src/ink/components/ErrorOverview.tsx +0 -109
  891. package/src/ink/components/Link.tsx +0 -42
  892. package/src/ink/components/Newline.tsx +0 -39
  893. package/src/ink/components/NoSelect.tsx +0 -68
  894. package/src/ink/components/RawAnsi.tsx +0 -57
  895. package/src/ink/components/ScrollBox.tsx +0 -237
  896. package/src/ink/components/Spacer.tsx +0 -20
  897. package/src/ink/components/StdinContext.ts +0 -49
  898. package/src/ink/components/TerminalFocusContext.tsx +0 -52
  899. package/src/ink/components/TerminalSizeContext.tsx +0 -7
  900. package/src/ink/components/Text.tsx +0 -254
  901. package/src/ink/constants.ts +0 -2
  902. package/src/ink/cursor.ts +0 -1
  903. package/src/ink/devtools.ts +0 -2
  904. package/src/ink/dom.ts +0 -484
  905. package/src/ink/events/click-event.ts +0 -38
  906. package/src/ink/events/dispatcher.ts +0 -233
  907. package/src/ink/events/emitter.ts +0 -39
  908. package/src/ink/events/event-handlers.ts +0 -73
  909. package/src/ink/events/event.ts +0 -11
  910. package/src/ink/events/focus-event.ts +0 -21
  911. package/src/ink/events/input-event.ts +0 -205
  912. package/src/ink/events/keyboard-event.ts +0 -51
  913. package/src/ink/events/paste-event.ts +0 -1
  914. package/src/ink/events/resize-event.ts +0 -1
  915. package/src/ink/events/terminal-event.ts +0 -107
  916. package/src/ink/events/terminal-focus-event.ts +0 -19
  917. package/src/ink/focus.ts +0 -181
  918. package/src/ink/frame.ts +0 -124
  919. package/src/ink/get-max-width.ts +0 -27
  920. package/src/ink/global.d.ts +0 -1
  921. package/src/ink/hit-test.ts +0 -130
  922. package/src/ink/hooks/use-animation-frame.ts +0 -57
  923. package/src/ink/hooks/use-app.ts +0 -8
  924. package/src/ink/hooks/use-declared-cursor.ts +0 -73
  925. package/src/ink/hooks/use-input.ts +0 -92
  926. package/src/ink/hooks/use-interval.ts +0 -67
  927. package/src/ink/hooks/use-search-highlight.ts +0 -53
  928. package/src/ink/hooks/use-selection.ts +0 -104
  929. package/src/ink/hooks/use-stdin.ts +0 -8
  930. package/src/ink/hooks/use-tab-status.ts +0 -72
  931. package/src/ink/hooks/use-terminal-focus.ts +0 -16
  932. package/src/ink/hooks/use-terminal-title.ts +0 -31
  933. package/src/ink/hooks/use-terminal-viewport.ts +0 -96
  934. package/src/ink/ink.tsx +0 -1723
  935. package/src/ink/instances.ts +0 -10
  936. package/src/ink/layout/engine.ts +0 -6
  937. package/src/ink/layout/geometry.ts +0 -97
  938. package/src/ink/layout/node.ts +0 -152
  939. package/src/ink/layout/yoga.ts +0 -308
  940. package/src/ink/line-width-cache.ts +0 -24
  941. package/src/ink/log-update.ts +0 -773
  942. package/src/ink/measure-element.ts +0 -23
  943. package/src/ink/measure-text.ts +0 -47
  944. package/src/ink/node-cache.ts +0 -54
  945. package/src/ink/optimizer.ts +0 -93
  946. package/src/ink/output.ts +0 -797
  947. package/src/ink/parse-keypress.ts +0 -801
  948. package/src/ink/reconciler.ts +0 -512
  949. package/src/ink/render-border.ts +0 -231
  950. package/src/ink/render-node-to-output.ts +0 -1462
  951. package/src/ink/render-to-screen.ts +0 -231
  952. package/src/ink/renderer.ts +0 -178
  953. package/src/ink/root.ts +0 -184
  954. package/src/ink/screen.ts +0 -1486
  955. package/src/ink/searchHighlight.ts +0 -93
  956. package/src/ink/selection.ts +0 -917
  957. package/src/ink/squash-text-nodes.ts +0 -92
  958. package/src/ink/stringWidth.ts +0 -222
  959. package/src/ink/styles.ts +0 -771
  960. package/src/ink/supports-hyperlinks.ts +0 -57
  961. package/src/ink/tabstops.ts +0 -46
  962. package/src/ink/terminal-focus-state.ts +0 -47
  963. package/src/ink/terminal-querier.ts +0 -212
  964. package/src/ink/terminal.ts +0 -248
  965. package/src/ink/termio/ansi.ts +0 -75
  966. package/src/ink/termio/csi.ts +0 -319
  967. package/src/ink/termio/dec.ts +0 -60
  968. package/src/ink/termio/esc.ts +0 -67
  969. package/src/ink/termio/osc.ts +0 -493
  970. package/src/ink/termio/parser.ts +0 -394
  971. package/src/ink/termio/sgr.ts +0 -308
  972. package/src/ink/termio/tokenize.ts +0 -319
  973. package/src/ink/termio/types.ts +0 -236
  974. package/src/ink/termio.ts +0 -42
  975. package/src/ink/useTerminalNotification.ts +0 -126
  976. package/src/ink/warn.ts +0 -9
  977. package/src/ink/widest-line.ts +0 -19
  978. package/src/ink/wrap-text.ts +0 -74
  979. package/src/ink/wrapAnsi.ts +0 -20
  980. package/src/ink.ts +0 -85
  981. package/src/interactiveHelpers.tsx +0 -366
  982. package/src/jobs/classifier.ts +0 -2
  983. package/src/keybindings/KeybindingContext.tsx +0 -243
  984. package/src/keybindings/KeybindingProviderSetup.tsx +0 -308
  985. package/src/keybindings/defaultBindings.ts +0 -340
  986. package/src/keybindings/loadUserBindings.ts +0 -472
  987. package/src/keybindings/match.ts +0 -120
  988. package/src/keybindings/parser.ts +0 -203
  989. package/src/keybindings/reservedShortcuts.ts +0 -127
  990. package/src/keybindings/resolver.ts +0 -244
  991. package/src/keybindings/schema.ts +0 -236
  992. package/src/keybindings/shortcutFormat.ts +0 -63
  993. package/src/keybindings/template.ts +0 -52
  994. package/src/keybindings/types.ts +0 -3
  995. package/src/keybindings/useKeybinding.ts +0 -196
  996. package/src/keybindings/useShortcutDisplay.ts +0 -59
  997. package/src/keybindings/validate.ts +0 -498
  998. package/src/main.tsx +0 -4684
  999. package/src/memdir/findRelevantMemories.ts +0 -141
  1000. package/src/memdir/memdir.ts +0 -507
  1001. package/src/memdir/memoryAge.ts +0 -53
  1002. package/src/memdir/memoryScan.ts +0 -94
  1003. package/src/memdir/memoryShapeTelemetry.ts +0 -2
  1004. package/src/memdir/memoryTypes.ts +0 -271
  1005. package/src/memdir/paths.ts +0 -278
  1006. package/src/memdir/teamMemPaths.ts +0 -292
  1007. package/src/memdir/teamMemPrompts.ts +0 -100
  1008. package/src/migrations/migrateAutoUpdatesToSettings.ts +0 -61
  1009. package/src/migrations/migrateBypassPermissionsAcceptedToSettings.ts +0 -40
  1010. package/src/migrations/migrateEnableAllProjectMcpServersToSettings.ts +0 -118
  1011. package/src/migrations/migrateFennecToOpus.ts +0 -45
  1012. package/src/migrations/migrateLegacyOpusToCurrent.ts +0 -57
  1013. package/src/migrations/migrateOpusToOpus1m.ts +0 -43
  1014. package/src/migrations/migrateReplBridgeEnabledToRemoteControlAtStartup.ts +0 -22
  1015. package/src/migrations/migrateSonnet1mToSonnet45.ts +0 -48
  1016. package/src/migrations/migrateSonnet45ToSonnet46.ts +0 -67
  1017. package/src/migrations/resetAutoModeOptInForDefaultOffer.ts +0 -51
  1018. package/src/migrations/resetProToOpusDefault.ts +0 -51
  1019. package/src/moreright/useMoreRight.tsx +0 -26
  1020. package/src/native-ts/color-diff/index.ts +0 -1001
  1021. package/src/native-ts/file-index/index.ts +0 -370
  1022. package/src/native-ts/yoga-layout/enums.ts +0 -134
  1023. package/src/native-ts/yoga-layout/index.ts +0 -2578
  1024. package/src/outputStyles/loadOutputStylesDir.ts +0 -98
  1025. package/src/plugins/builtinPlugins.ts +0 -159
  1026. package/src/plugins/bundled/index.ts +0 -23
  1027. package/src/proactive/index.ts +0 -2
  1028. package/src/projectOnboardingState.ts +0 -83
  1029. package/src/query/config.ts +0 -46
  1030. package/src/query/deps.ts +0 -33
  1031. package/src/query/stopHooks.ts +0 -473
  1032. package/src/query/tokenBudget.ts +0 -93
  1033. package/src/query/transitions.ts +0 -2
  1034. package/src/query.ts +0 -1729
  1035. package/src/remote/RemoteSessionManager.ts +0 -343
  1036. package/src/remote/SessionsWebSocket.ts +0 -404
  1037. package/src/remote/remotePermissionBridge.ts +0 -78
  1038. package/src/remote/sdkMessageAdapter.ts +0 -302
  1039. package/src/replLauncher.tsx +0 -23
  1040. package/src/schemas/hooks.ts +0 -222
  1041. package/src/screens/Doctor.tsx +0 -575
  1042. package/src/screens/REPL.tsx +0 -5006
  1043. package/src/screens/ResumeConversation.tsx +0 -399
  1044. package/src/self-hosted-runner/main.ts +0 -2
  1045. package/src/server/backends/dangerousBackend.ts +0 -2
  1046. package/src/server/connectHeadless.ts +0 -2
  1047. package/src/server/createDirectConnectSession.ts +0 -88
  1048. package/src/server/directConnectManager.ts +0 -213
  1049. package/src/server/lockfile.ts +0 -2
  1050. package/src/server/parseConnectUrl.ts +0 -2
  1051. package/src/server/server.ts +0 -2
  1052. package/src/server/serverBanner.ts +0 -2
  1053. package/src/server/serverLog.ts +0 -2
  1054. package/src/server/sessionManager.ts +0 -2
  1055. package/src/server/types.ts +0 -57
  1056. package/src/services/AgentSummary/agentSummary.ts +0 -179
  1057. package/src/services/MagicDocs/magicDocs.ts +0 -254
  1058. package/src/services/MagicDocs/prompts.ts +0 -127
  1059. package/src/services/PromptSuggestion/promptSuggestion.ts +0 -523
  1060. package/src/services/PromptSuggestion/speculation.ts +0 -991
  1061. package/src/services/SessionMemory/prompts.ts +0 -324
  1062. package/src/services/SessionMemory/sessionMemory.ts +0 -495
  1063. package/src/services/SessionMemory/sessionMemoryUtils.ts +0 -207
  1064. package/src/services/analytics/config.ts +0 -38
  1065. package/src/services/analytics/datadog.ts +0 -307
  1066. package/src/services/analytics/firstPartyEventLogger.ts +0 -449
  1067. package/src/services/analytics/firstPartyEventLoggingExporter.ts +0 -806
  1068. package/src/services/analytics/growthbook.ts +0 -1155
  1069. package/src/services/analytics/index.ts +0 -173
  1070. package/src/services/analytics/metadata.ts +0 -973
  1071. package/src/services/analytics/sink.ts +0 -114
  1072. package/src/services/analytics/sinkKillswitch.ts +0 -25
  1073. package/src/services/api/adminRequests.ts +0 -119
  1074. package/src/services/api/bootstrap.ts +0 -141
  1075. package/src/services/api/claude.ts +0 -3419
  1076. package/src/services/api/client.ts +0 -389
  1077. package/src/services/api/dumpPrompts.ts +0 -226
  1078. package/src/services/api/emptyUsage.ts +0 -22
  1079. package/src/services/api/errorUtils.ts +0 -260
  1080. package/src/services/api/errors.ts +0 -1205
  1081. package/src/services/api/filesApi.ts +0 -748
  1082. package/src/services/api/firstTokenDate.ts +0 -60
  1083. package/src/services/api/grove.ts +0 -357
  1084. package/src/services/api/logging.ts +0 -788
  1085. package/src/services/api/metricsOptOut.ts +0 -159
  1086. package/src/services/api/overageCreditGrant.ts +0 -137
  1087. package/src/services/api/promptCacheBreakDetection.ts +0 -727
  1088. package/src/services/api/referral.ts +0 -281
  1089. package/src/services/api/sessionIngress.ts +0 -514
  1090. package/src/services/api/ultrareviewQuota.ts +0 -38
  1091. package/src/services/api/usage.ts +0 -63
  1092. package/src/services/api/withRetry.ts +0 -818
  1093. package/src/services/autoDream/autoDream.ts +0 -324
  1094. package/src/services/autoDream/config.ts +0 -21
  1095. package/src/services/autoDream/consolidationLock.ts +0 -140
  1096. package/src/services/autoDream/consolidationPrompt.ts +0 -65
  1097. package/src/services/awaySummary.ts +0 -74
  1098. package/src/services/claudeAiLimits.ts +0 -515
  1099. package/src/services/claudeAiLimitsHook.ts +0 -23
  1100. package/src/services/compact/apiMicrocompact.ts +0 -153
  1101. package/src/services/compact/autoCompact.ts +0 -351
  1102. package/src/services/compact/cachedMCConfig.ts +0 -2
  1103. package/src/services/compact/cachedMicrocompact.ts +0 -2
  1104. package/src/services/compact/compact.ts +0 -1705
  1105. package/src/services/compact/compactWarningHook.ts +0 -16
  1106. package/src/services/compact/compactWarningState.ts +0 -18
  1107. package/src/services/compact/grouping.ts +0 -63
  1108. package/src/services/compact/microCompact.ts +0 -530
  1109. package/src/services/compact/postCompactCleanup.ts +0 -77
  1110. package/src/services/compact/prompt.ts +0 -374
  1111. package/src/services/compact/reactiveCompact.ts +0 -2
  1112. package/src/services/compact/sessionMemoryCompact.ts +0 -630
  1113. package/src/services/compact/snipCompact.ts +0 -2
  1114. package/src/services/compact/snipProjection.ts +0 -2
  1115. package/src/services/compact/timeBasedMCConfig.ts +0 -43
  1116. package/src/services/contextCollapse/index.ts +0 -2
  1117. package/src/services/contextCollapse/operations.ts +0 -2
  1118. package/src/services/contextCollapse/persist.ts +0 -2
  1119. package/src/services/diagnosticTracking.ts +0 -397
  1120. package/src/services/extractMemories/extractMemories.ts +0 -615
  1121. package/src/services/extractMemories/prompts.ts +0 -154
  1122. package/src/services/internalLogging.ts +0 -90
  1123. package/src/services/lsp/LSPClient.ts +0 -447
  1124. package/src/services/lsp/LSPDiagnosticRegistry.ts +0 -386
  1125. package/src/services/lsp/LSPServerInstance.ts +0 -511
  1126. package/src/services/lsp/LSPServerManager.ts +0 -420
  1127. package/src/services/lsp/config.ts +0 -79
  1128. package/src/services/lsp/manager.ts +0 -289
  1129. package/src/services/lsp/passiveFeedback.ts +0 -328
  1130. package/src/services/lsp/types.ts +0 -3
  1131. package/src/services/mcp/InProcessTransport.ts +0 -63
  1132. package/src/services/mcp/MCPConnectionManager.tsx +0 -73
  1133. package/src/services/mcp/SdkControlTransport.ts +0 -136
  1134. package/src/services/mcp/auth.ts +0 -2465
  1135. package/src/services/mcp/channelAllowlist.ts +0 -76
  1136. package/src/services/mcp/channelNotification.ts +0 -316
  1137. package/src/services/mcp/channelPermissions.ts +0 -240
  1138. package/src/services/mcp/claudeai.ts +0 -164
  1139. package/src/services/mcp/client.ts +0 -3348
  1140. package/src/services/mcp/config.ts +0 -1578
  1141. package/src/services/mcp/elicitationHandler.ts +0 -313
  1142. package/src/services/mcp/envExpansion.ts +0 -38
  1143. package/src/services/mcp/headersHelper.ts +0 -138
  1144. package/src/services/mcp/mcpStringUtils.ts +0 -106
  1145. package/src/services/mcp/normalization.ts +0 -23
  1146. package/src/services/mcp/oauthPort.ts +0 -78
  1147. package/src/services/mcp/officialRegistry.ts +0 -72
  1148. package/src/services/mcp/types.ts +0 -258
  1149. package/src/services/mcp/useManageMCPConnections.ts +0 -1141
  1150. package/src/services/mcp/utils.ts +0 -575
  1151. package/src/services/mcp/vscodeSdkMcp.ts +0 -112
  1152. package/src/services/mcp/xaa.ts +0 -511
  1153. package/src/services/mcp/xaaIdpLogin.ts +0 -487
  1154. package/src/services/mcpServerApproval.tsx +0 -41
  1155. package/src/services/mockRateLimits.ts +0 -882
  1156. package/src/services/notifier.ts +0 -156
  1157. package/src/services/oauth/auth-code-listener.ts +0 -211
  1158. package/src/services/oauth/client.ts +0 -566
  1159. package/src/services/oauth/crypto.ts +0 -23
  1160. package/src/services/oauth/getOauthProfile.ts +0 -53
  1161. package/src/services/oauth/index.ts +0 -198
  1162. package/src/services/oauth/types.ts +0 -7
  1163. package/src/services/plugins/PluginInstallationManager.ts +0 -184
  1164. package/src/services/plugins/pluginCliCommands.ts +0 -344
  1165. package/src/services/plugins/pluginOperations.ts +0 -1088
  1166. package/src/services/policyLimits/index.ts +0 -663
  1167. package/src/services/policyLimits/types.ts +0 -27
  1168. package/src/services/preventSleep.ts +0 -165
  1169. package/src/services/rateLimitMessages.ts +0 -344
  1170. package/src/services/rateLimitMocking.ts +0 -144
  1171. package/src/services/remoteManagedSettings/index.ts +0 -638
  1172. package/src/services/remoteManagedSettings/securityCheck.tsx +0 -74
  1173. package/src/services/remoteManagedSettings/syncCache.ts +0 -112
  1174. package/src/services/remoteManagedSettings/syncCacheState.ts +0 -96
  1175. package/src/services/remoteManagedSettings/types.ts +0 -31
  1176. package/src/services/sessionTranscript/sessionTranscript.ts +0 -2
  1177. package/src/services/settingsSync/index.ts +0 -581
  1178. package/src/services/settingsSync/types.ts +0 -67
  1179. package/src/services/skillSearch/featureCheck.ts +0 -2
  1180. package/src/services/skillSearch/localSearch.ts +0 -2
  1181. package/src/services/skillSearch/prefetch.ts +0 -2
  1182. package/src/services/skillSearch/remoteSkillLoader.ts +0 -2
  1183. package/src/services/skillSearch/remoteSkillState.ts +0 -2
  1184. package/src/services/skillSearch/signals.ts +0 -1
  1185. package/src/services/skillSearch/telemetry.ts +0 -2
  1186. package/src/services/teamMemorySync/index.ts +0 -1256
  1187. package/src/services/teamMemorySync/secretScanner.ts +0 -324
  1188. package/src/services/teamMemorySync/teamMemSecretGuard.ts +0 -44
  1189. package/src/services/teamMemorySync/types.ts +0 -156
  1190. package/src/services/teamMemorySync/watcher.ts +0 -387
  1191. package/src/services/tips/tipHistory.ts +0 -17
  1192. package/src/services/tips/tipRegistry.ts +0 -686
  1193. package/src/services/tips/tipScheduler.ts +0 -58
  1194. package/src/services/tips/types.ts +0 -5
  1195. package/src/services/tokenEstimation.ts +0 -495
  1196. package/src/services/toolUseSummary/toolUseSummaryGenerator.ts +0 -112
  1197. package/src/services/tools/StreamingToolExecutor.ts +0 -530
  1198. package/src/services/tools/toolExecution.ts +0 -1745
  1199. package/src/services/tools/toolHooks.ts +0 -650
  1200. package/src/services/tools/toolOrchestration.ts +0 -188
  1201. package/src/services/vcr.ts +0 -406
  1202. package/src/services/voice.ts +0 -525
  1203. package/src/services/voiceKeyterms.ts +0 -106
  1204. package/src/services/voiceStreamSTT.ts +0 -544
  1205. package/src/setup.ts +0 -477
  1206. package/src/shims/bun-bundle.ts +0 -18
  1207. package/src/shims/macro.ts +0 -12
  1208. package/src/skills/bundled/batch.ts +0 -124
  1209. package/src/skills/bundled/claude-api/SKILL.md +0 -1
  1210. package/src/skills/bundled/claude-api/SKILL.md.ts +0 -1
  1211. package/src/skills/bundled/claude-api/csharp/claude-api.md +0 -1
  1212. package/src/skills/bundled/claude-api/csharp/claude-api.md.ts +0 -1
  1213. package/src/skills/bundled/claude-api/curl/examples.md +0 -1
  1214. package/src/skills/bundled/claude-api/curl/examples.md.ts +0 -1
  1215. package/src/skills/bundled/claude-api/go/claude-api.md +0 -1
  1216. package/src/skills/bundled/claude-api/go/claude-api.md.ts +0 -1
  1217. package/src/skills/bundled/claude-api/java/claude-api.md +0 -1
  1218. package/src/skills/bundled/claude-api/java/claude-api.md.ts +0 -1
  1219. package/src/skills/bundled/claude-api/php/claude-api.md +0 -1
  1220. package/src/skills/bundled/claude-api/php/claude-api.md.ts +0 -1
  1221. package/src/skills/bundled/claude-api/python/agent-sdk/README.md +0 -1
  1222. package/src/skills/bundled/claude-api/python/agent-sdk/README.md.ts +0 -1
  1223. package/src/skills/bundled/claude-api/python/agent-sdk/patterns.md +0 -1
  1224. package/src/skills/bundled/claude-api/python/agent-sdk/patterns.md.ts +0 -1
  1225. package/src/skills/bundled/claude-api/python/claude-api/README.md +0 -1
  1226. package/src/skills/bundled/claude-api/python/claude-api/README.md.ts +0 -1
  1227. package/src/skills/bundled/claude-api/python/claude-api/batches.md +0 -1
  1228. package/src/skills/bundled/claude-api/python/claude-api/batches.md.ts +0 -1
  1229. package/src/skills/bundled/claude-api/python/claude-api/files-api.md +0 -1
  1230. package/src/skills/bundled/claude-api/python/claude-api/files-api.md.ts +0 -1
  1231. package/src/skills/bundled/claude-api/python/claude-api/streaming.md +0 -1
  1232. package/src/skills/bundled/claude-api/python/claude-api/streaming.md.ts +0 -1
  1233. package/src/skills/bundled/claude-api/python/claude-api/tool-use.md +0 -1
  1234. package/src/skills/bundled/claude-api/python/claude-api/tool-use.md.ts +0 -1
  1235. package/src/skills/bundled/claude-api/ruby/claude-api.md +0 -1
  1236. package/src/skills/bundled/claude-api/ruby/claude-api.md.ts +0 -1
  1237. package/src/skills/bundled/claude-api/shared/error-codes.md +0 -1
  1238. package/src/skills/bundled/claude-api/shared/error-codes.md.ts +0 -1
  1239. package/src/skills/bundled/claude-api/shared/live-sources.md +0 -1
  1240. package/src/skills/bundled/claude-api/shared/live-sources.md.ts +0 -1
  1241. package/src/skills/bundled/claude-api/shared/models.md +0 -1
  1242. package/src/skills/bundled/claude-api/shared/models.md.ts +0 -1
  1243. package/src/skills/bundled/claude-api/shared/prompt-caching.md +0 -1
  1244. package/src/skills/bundled/claude-api/shared/prompt-caching.md.ts +0 -1
  1245. package/src/skills/bundled/claude-api/shared/tool-use-concepts.md +0 -1
  1246. package/src/skills/bundled/claude-api/shared/tool-use-concepts.md.ts +0 -1
  1247. package/src/skills/bundled/claude-api/typescript/agent-sdk/README.md +0 -1
  1248. package/src/skills/bundled/claude-api/typescript/agent-sdk/README.md.ts +0 -1
  1249. package/src/skills/bundled/claude-api/typescript/agent-sdk/patterns.md +0 -1
  1250. package/src/skills/bundled/claude-api/typescript/agent-sdk/patterns.md.ts +0 -1
  1251. package/src/skills/bundled/claude-api/typescript/claude-api/README.md +0 -1
  1252. package/src/skills/bundled/claude-api/typescript/claude-api/README.md.ts +0 -1
  1253. package/src/skills/bundled/claude-api/typescript/claude-api/batches.md +0 -1
  1254. package/src/skills/bundled/claude-api/typescript/claude-api/batches.md.ts +0 -1
  1255. package/src/skills/bundled/claude-api/typescript/claude-api/files-api.md +0 -1
  1256. package/src/skills/bundled/claude-api/typescript/claude-api/files-api.md.ts +0 -1
  1257. package/src/skills/bundled/claude-api/typescript/claude-api/streaming.md +0 -1
  1258. package/src/skills/bundled/claude-api/typescript/claude-api/streaming.md.ts +0 -1
  1259. package/src/skills/bundled/claude-api/typescript/claude-api/tool-use.md +0 -1
  1260. package/src/skills/bundled/claude-api/typescript/claude-api/tool-use.md.ts +0 -1
  1261. package/src/skills/bundled/claudeApi.ts +0 -196
  1262. package/src/skills/bundled/claudeApiContent.ts +0 -75
  1263. package/src/skills/bundled/claudeInChrome.ts +0 -34
  1264. package/src/skills/bundled/debug.ts +0 -103
  1265. package/src/skills/bundled/index.ts +0 -79
  1266. package/src/skills/bundled/keybindings.ts +0 -339
  1267. package/src/skills/bundled/loop.ts +0 -92
  1268. package/src/skills/bundled/loremIpsum.ts +0 -282
  1269. package/src/skills/bundled/remember.ts +0 -82
  1270. package/src/skills/bundled/scheduleRemoteAgents.ts +0 -447
  1271. package/src/skills/bundled/simplify.ts +0 -69
  1272. package/src/skills/bundled/skillify.ts +0 -197
  1273. package/src/skills/bundled/stuck.ts +0 -79
  1274. package/src/skills/bundled/updateConfig.ts +0 -475
  1275. package/src/skills/bundled/verify/SKILL.md +0 -1
  1276. package/src/skills/bundled/verify/SKILL.md.ts +0 -1
  1277. package/src/skills/bundled/verify/examples/cli.md +0 -1
  1278. package/src/skills/bundled/verify/examples/cli.md.ts +0 -1
  1279. package/src/skills/bundled/verify/examples/server.md +0 -1
  1280. package/src/skills/bundled/verify/examples/server.md.ts +0 -1
  1281. package/src/skills/bundled/verify.ts +0 -30
  1282. package/src/skills/bundled/verifyContent.ts +0 -13
  1283. package/src/skills/bundledSkills.ts +0 -220
  1284. package/src/skills/loadSkillsDir.ts +0 -1086
  1285. package/src/skills/mcpSkillBuilders.ts +0 -44
  1286. package/src/skills/mcpSkills.ts +0 -2
  1287. package/src/ssh/SSHSessionManager.ts +0 -1
  1288. package/src/ssh/createSSHSession.ts +0 -1
  1289. package/src/state/AppState.tsx +0 -200
  1290. package/src/state/AppStateStore.ts +0 -569
  1291. package/src/state/onChangeAppState.ts +0 -171
  1292. package/src/state/selectors.ts +0 -76
  1293. package/src/state/store.ts +0 -34
  1294. package/src/state/teammateViewHelpers.ts +0 -141
  1295. package/src/tasks/DreamTask/DreamTask.ts +0 -157
  1296. package/src/tasks/InProcessTeammateTask/InProcessTeammateTask.tsx +0 -126
  1297. package/src/tasks/InProcessTeammateTask/types.ts +0 -121
  1298. package/src/tasks/LocalAgentTask/LocalAgentTask.tsx +0 -683
  1299. package/src/tasks/LocalMainSessionTask.ts +0 -479
  1300. package/src/tasks/LocalShellTask/LocalShellTask.tsx +0 -523
  1301. package/src/tasks/LocalShellTask/guards.ts +0 -41
  1302. package/src/tasks/LocalShellTask/killShellTasks.ts +0 -76
  1303. package/src/tasks/LocalWorkflowTask/LocalWorkflowTask.ts +0 -1
  1304. package/src/tasks/MonitorMcpTask/MonitorMcpTask.ts +0 -1
  1305. package/src/tasks/RemoteAgentTask/RemoteAgentTask.tsx +0 -856
  1306. package/src/tasks/pillLabel.ts +0 -82
  1307. package/src/tasks/stopTask.ts +0 -100
  1308. package/src/tasks/types.ts +0 -46
  1309. package/src/tasks.ts +0 -39
  1310. package/src/tools/AgentTool/AgentTool.tsx +0 -1398
  1311. package/src/tools/AgentTool/UI.tsx +0 -872
  1312. package/src/tools/AgentTool/agentColorManager.ts +0 -66
  1313. package/src/tools/AgentTool/agentDisplay.ts +0 -104
  1314. package/src/tools/AgentTool/agentMemory.ts +0 -177
  1315. package/src/tools/AgentTool/agentMemorySnapshot.ts +0 -197
  1316. package/src/tools/AgentTool/agentToolUtils.ts +0 -686
  1317. package/src/tools/AgentTool/built-in/claudeCodeGuideAgent.ts +0 -205
  1318. package/src/tools/AgentTool/built-in/exploreAgent.ts +0 -87
  1319. package/src/tools/AgentTool/built-in/generalPurposeAgent.ts +0 -34
  1320. package/src/tools/AgentTool/built-in/planAgent.ts +0 -92
  1321. package/src/tools/AgentTool/built-in/statuslineSetup.ts +0 -144
  1322. package/src/tools/AgentTool/built-in/verificationAgent.ts +0 -152
  1323. package/src/tools/AgentTool/built-in/warpGrepAgent.ts +0 -67
  1324. package/src/tools/AgentTool/builtInAgents.ts +0 -73
  1325. package/src/tools/AgentTool/constants.ts +0 -12
  1326. package/src/tools/AgentTool/forkSubagent.ts +0 -210
  1327. package/src/tools/AgentTool/loadAgentsDir.ts +0 -755
  1328. package/src/tools/AgentTool/prompt.ts +0 -288
  1329. package/src/tools/AgentTool/resumeAgent.ts +0 -265
  1330. package/src/tools/AgentTool/runAgent.ts +0 -973
  1331. package/src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx +0 -266
  1332. package/src/tools/AskUserQuestionTool/prompt.ts +0 -44
  1333. package/src/tools/BashTool/BashTool.tsx +0 -1144
  1334. package/src/tools/BashTool/BashToolResultMessage.tsx +0 -191
  1335. package/src/tools/BashTool/UI.tsx +0 -185
  1336. package/src/tools/BashTool/bashCommandHelpers.ts +0 -265
  1337. package/src/tools/BashTool/bashPermissions.ts +0 -2621
  1338. package/src/tools/BashTool/bashSecurity.ts +0 -2592
  1339. package/src/tools/BashTool/commandSemantics.ts +0 -140
  1340. package/src/tools/BashTool/commentLabel.ts +0 -13
  1341. package/src/tools/BashTool/destructiveCommandWarning.ts +0 -102
  1342. package/src/tools/BashTool/modeValidation.ts +0 -115
  1343. package/src/tools/BashTool/pathValidation.ts +0 -1303
  1344. package/src/tools/BashTool/prompt.ts +0 -369
  1345. package/src/tools/BashTool/readOnlyValidation.ts +0 -1990
  1346. package/src/tools/BashTool/sedEditParser.ts +0 -322
  1347. package/src/tools/BashTool/sedValidation.ts +0 -684
  1348. package/src/tools/BashTool/shouldUseSandbox.ts +0 -153
  1349. package/src/tools/BashTool/toolName.ts +0 -2
  1350. package/src/tools/BashTool/utils.ts +0 -223
  1351. package/src/tools/BriefTool/BriefTool.ts +0 -204
  1352. package/src/tools/BriefTool/UI.tsx +0 -101
  1353. package/src/tools/BriefTool/attachments.ts +0 -110
  1354. package/src/tools/BriefTool/prompt.ts +0 -22
  1355. package/src/tools/BriefTool/upload.ts +0 -174
  1356. package/src/tools/ConfigTool/ConfigTool.ts +0 -467
  1357. package/src/tools/ConfigTool/UI.tsx +0 -38
  1358. package/src/tools/ConfigTool/constants.ts +0 -1
  1359. package/src/tools/ConfigTool/prompt.ts +0 -93
  1360. package/src/tools/ConfigTool/supportedSettings.ts +0 -211
  1361. package/src/tools/DiscoverSkillsTool/prompt.ts +0 -2
  1362. package/src/tools/EnterPlanModeTool/EnterPlanModeTool.ts +0 -126
  1363. package/src/tools/EnterPlanModeTool/UI.tsx +0 -33
  1364. package/src/tools/EnterPlanModeTool/constants.ts +0 -1
  1365. package/src/tools/EnterPlanModeTool/prompt.ts +0 -170
  1366. package/src/tools/EnterWorktreeTool/EnterWorktreeTool.ts +0 -127
  1367. package/src/tools/EnterWorktreeTool/UI.tsx +0 -20
  1368. package/src/tools/EnterWorktreeTool/constants.ts +0 -1
  1369. package/src/tools/EnterWorktreeTool/prompt.ts +0 -30
  1370. package/src/tools/ExitPlanModeTool/ExitPlanModeV2Tool.ts +0 -493
  1371. package/src/tools/ExitPlanModeTool/UI.tsx +0 -82
  1372. package/src/tools/ExitPlanModeTool/constants.ts +0 -2
  1373. package/src/tools/ExitPlanModeTool/prompt.ts +0 -29
  1374. package/src/tools/ExitWorktreeTool/ExitWorktreeTool.ts +0 -329
  1375. package/src/tools/ExitWorktreeTool/UI.tsx +0 -25
  1376. package/src/tools/ExitWorktreeTool/constants.ts +0 -1
  1377. package/src/tools/ExitWorktreeTool/prompt.ts +0 -32
  1378. package/src/tools/FileEditTool/FileEditTool.ts +0 -625
  1379. package/src/tools/FileEditTool/UI.tsx +0 -289
  1380. package/src/tools/FileEditTool/constants.ts +0 -11
  1381. package/src/tools/FileEditTool/prompt.ts +0 -28
  1382. package/src/tools/FileEditTool/types.ts +0 -85
  1383. package/src/tools/FileEditTool/utils.ts +0 -775
  1384. package/src/tools/FileReadTool/FileReadTool.ts +0 -1183
  1385. package/src/tools/FileReadTool/UI.tsx +0 -185
  1386. package/src/tools/FileReadTool/imageProcessor.ts +0 -94
  1387. package/src/tools/FileReadTool/limits.ts +0 -92
  1388. package/src/tools/FileReadTool/prompt.ts +0 -49
  1389. package/src/tools/FileWriteTool/FileWriteTool.ts +0 -434
  1390. package/src/tools/FileWriteTool/UI.tsx +0 -405
  1391. package/src/tools/FileWriteTool/prompt.ts +0 -18
  1392. package/src/tools/GlobTool/GlobTool.ts +0 -198
  1393. package/src/tools/GlobTool/UI.tsx +0 -63
  1394. package/src/tools/GlobTool/prompt.ts +0 -7
  1395. package/src/tools/GrepTool/GrepTool.ts +0 -577
  1396. package/src/tools/GrepTool/UI.tsx +0 -201
  1397. package/src/tools/GrepTool/prompt.ts +0 -18
  1398. package/src/tools/LSPTool/LSPTool.ts +0 -860
  1399. package/src/tools/LSPTool/UI.tsx +0 -228
  1400. package/src/tools/LSPTool/formatters.ts +0 -592
  1401. package/src/tools/LSPTool/prompt.ts +0 -21
  1402. package/src/tools/LSPTool/schemas.ts +0 -215
  1403. package/src/tools/LSPTool/symbolContext.ts +0 -90
  1404. package/src/tools/ListMcpResourcesTool/ListMcpResourcesTool.ts +0 -123
  1405. package/src/tools/ListMcpResourcesTool/UI.tsx +0 -29
  1406. package/src/tools/ListMcpResourcesTool/prompt.ts +0 -20
  1407. package/src/tools/MCPTool/MCPTool.ts +0 -77
  1408. package/src/tools/MCPTool/UI.tsx +0 -403
  1409. package/src/tools/MCPTool/classifyForCollapse.ts +0 -604
  1410. package/src/tools/MCPTool/prompt.ts +0 -3
  1411. package/src/tools/McpAuthTool/McpAuthTool.ts +0 -215
  1412. package/src/tools/MonitorTool/MonitorTool.ts +0 -2
  1413. package/src/tools/NotebookEditTool/NotebookEditTool.ts +0 -490
  1414. package/src/tools/NotebookEditTool/UI.tsx +0 -93
  1415. package/src/tools/NotebookEditTool/constants.ts +0 -2
  1416. package/src/tools/NotebookEditTool/prompt.ts +0 -3
  1417. package/src/tools/OverflowTestTool/OverflowTestTool.ts +0 -2
  1418. package/src/tools/PowerShellTool/PowerShellTool.tsx +0 -1001
  1419. package/src/tools/PowerShellTool/UI.tsx +0 -131
  1420. package/src/tools/PowerShellTool/clmTypes.ts +0 -211
  1421. package/src/tools/PowerShellTool/commandSemantics.ts +0 -142
  1422. package/src/tools/PowerShellTool/commonParameters.ts +0 -30
  1423. package/src/tools/PowerShellTool/destructiveCommandWarning.ts +0 -109
  1424. package/src/tools/PowerShellTool/gitSafety.ts +0 -176
  1425. package/src/tools/PowerShellTool/modeValidation.ts +0 -404
  1426. package/src/tools/PowerShellTool/pathValidation.ts +0 -2049
  1427. package/src/tools/PowerShellTool/powershellPermissions.ts +0 -1648
  1428. package/src/tools/PowerShellTool/powershellSecurity.ts +0 -1090
  1429. package/src/tools/PowerShellTool/prompt.ts +0 -145
  1430. package/src/tools/PowerShellTool/readOnlyValidation.ts +0 -1823
  1431. package/src/tools/PowerShellTool/toolName.ts +0 -2
  1432. package/src/tools/REPLTool/constants.ts +0 -46
  1433. package/src/tools/REPLTool/primitiveTools.ts +0 -39
  1434. package/src/tools/ReadMcpResourceTool/ReadMcpResourceTool.ts +0 -158
  1435. package/src/tools/ReadMcpResourceTool/UI.tsx +0 -37
  1436. package/src/tools/ReadMcpResourceTool/prompt.ts +0 -16
  1437. package/src/tools/RemoteTriggerTool/RemoteTriggerTool.ts +0 -161
  1438. package/src/tools/RemoteTriggerTool/UI.tsx +0 -17
  1439. package/src/tools/RemoteTriggerTool/prompt.ts +0 -15
  1440. package/src/tools/ReviewArtifactTool/ReviewArtifactTool.ts +0 -2
  1441. package/src/tools/ScheduleCronTool/CronCreateTool.ts +0 -157
  1442. package/src/tools/ScheduleCronTool/CronDeleteTool.ts +0 -95
  1443. package/src/tools/ScheduleCronTool/CronListTool.ts +0 -97
  1444. package/src/tools/ScheduleCronTool/UI.tsx +0 -60
  1445. package/src/tools/ScheduleCronTool/prompt.ts +0 -135
  1446. package/src/tools/SendMessageTool/SendMessageTool.ts +0 -917
  1447. package/src/tools/SendMessageTool/UI.tsx +0 -31
  1448. package/src/tools/SendMessageTool/constants.ts +0 -1
  1449. package/src/tools/SendMessageTool/prompt.ts +0 -49
  1450. package/src/tools/SendUserFileTool/prompt.ts +0 -2
  1451. package/src/tools/SkillTool/SkillTool.ts +0 -1108
  1452. package/src/tools/SkillTool/UI.tsx +0 -128
  1453. package/src/tools/SkillTool/constants.ts +0 -1
  1454. package/src/tools/SkillTool/prompt.ts +0 -241
  1455. package/src/tools/SleepTool/prompt.ts +0 -17
  1456. package/src/tools/SnipTool/prompt.ts +0 -2
  1457. package/src/tools/SyntheticOutputTool/SyntheticOutputTool.ts +0 -163
  1458. package/src/tools/TaskCreateTool/TaskCreateTool.ts +0 -138
  1459. package/src/tools/TaskCreateTool/constants.ts +0 -1
  1460. package/src/tools/TaskCreateTool/prompt.ts +0 -56
  1461. package/src/tools/TaskGetTool/TaskGetTool.ts +0 -128
  1462. package/src/tools/TaskGetTool/constants.ts +0 -1
  1463. package/src/tools/TaskGetTool/prompt.ts +0 -24
  1464. package/src/tools/TaskListTool/TaskListTool.ts +0 -116
  1465. package/src/tools/TaskListTool/constants.ts +0 -1
  1466. package/src/tools/TaskListTool/prompt.ts +0 -49
  1467. package/src/tools/TaskOutputTool/TaskOutputTool.tsx +0 -584
  1468. package/src/tools/TaskOutputTool/constants.ts +0 -1
  1469. package/src/tools/TaskStopTool/TaskStopTool.ts +0 -131
  1470. package/src/tools/TaskStopTool/UI.tsx +0 -41
  1471. package/src/tools/TaskStopTool/prompt.ts +0 -8
  1472. package/src/tools/TaskUpdateTool/TaskUpdateTool.ts +0 -406
  1473. package/src/tools/TaskUpdateTool/constants.ts +0 -1
  1474. package/src/tools/TaskUpdateTool/prompt.ts +0 -77
  1475. package/src/tools/TeamCreateTool/TeamCreateTool.ts +0 -240
  1476. package/src/tools/TeamCreateTool/UI.tsx +0 -6
  1477. package/src/tools/TeamCreateTool/constants.ts +0 -1
  1478. package/src/tools/TeamCreateTool/prompt.ts +0 -113
  1479. package/src/tools/TeamDeleteTool/TeamDeleteTool.ts +0 -139
  1480. package/src/tools/TeamDeleteTool/UI.tsx +0 -20
  1481. package/src/tools/TeamDeleteTool/constants.ts +0 -1
  1482. package/src/tools/TeamDeleteTool/prompt.ts +0 -16
  1483. package/src/tools/TerminalCaptureTool/prompt.ts +0 -2
  1484. package/src/tools/TodoWriteTool/TodoWriteTool.ts +0 -115
  1485. package/src/tools/TodoWriteTool/constants.ts +0 -1
  1486. package/src/tools/TodoWriteTool/prompt.ts +0 -184
  1487. package/src/tools/ToolSearchTool/ToolSearchTool.ts +0 -471
  1488. package/src/tools/ToolSearchTool/constants.ts +0 -1
  1489. package/src/tools/ToolSearchTool/prompt.ts +0 -121
  1490. package/src/tools/TungstenTool/TungstenLiveMonitor.ts +0 -3
  1491. package/src/tools/TungstenTool/TungstenLiveMonitor.tsx +0 -6
  1492. package/src/tools/TungstenTool/TungstenTool.ts +0 -26
  1493. package/src/tools/VerifyPlanExecutionTool/constants.ts +0 -2
  1494. package/src/tools/WarpGrepTool/WarpGrepTool.ts +0 -106
  1495. package/src/tools/WebBrowserTool/WebBrowserPanel.ts +0 -2
  1496. package/src/tools/WebFetchTool/UI.tsx +0 -72
  1497. package/src/tools/WebFetchTool/WebFetchTool.ts +0 -318
  1498. package/src/tools/WebFetchTool/preapproved.ts +0 -166
  1499. package/src/tools/WebFetchTool/prompt.ts +0 -46
  1500. package/src/tools/WebFetchTool/utils.ts +0 -530
  1501. package/src/tools/WebSearchTool/UI.tsx +0 -101
  1502. package/src/tools/WebSearchTool/WebSearchTool.ts +0 -435
  1503. package/src/tools/WebSearchTool/prompt.ts +0 -34
  1504. package/src/tools/WorkflowTool/WorkflowPermissionRequest.ts +0 -2
  1505. package/src/tools/WorkflowTool/WorkflowTool.ts +0 -2
  1506. package/src/tools/WorkflowTool/constants.ts +0 -1
  1507. package/src/tools/WorkflowTool/createWorkflowCommand.ts +0 -2
  1508. package/src/tools/shared/gitOperationTracking.ts +0 -277
  1509. package/src/tools/shared/spawnMultiAgent.ts +0 -1093
  1510. package/src/tools/testing/TestingPermissionTool.tsx +0 -74
  1511. package/src/tools/utils.ts +0 -40
  1512. package/src/tools.ts +0 -394
  1513. package/src/types/command.ts +0 -216
  1514. package/src/types/connectorText.ts +0 -3
  1515. package/src/types/declarations/bun-globals.d.ts +0 -19
  1516. package/src/types/declarations/external-modules.d.ts +0 -120
  1517. package/src/types/declarations/react-compiler.d.ts +0 -3
  1518. package/src/types/fileSuggestion.ts +0 -1
  1519. package/src/types/generated/events_mono/claude_code/v1/claude_code_internal_event.ts +0 -865
  1520. package/src/types/generated/events_mono/common/v1/auth.ts +0 -100
  1521. package/src/types/generated/events_mono/growthbook/v1/growthbook_experiment_event.ts +0 -223
  1522. package/src/types/generated/google/protobuf/timestamp.ts +0 -187
  1523. package/src/types/hooks.ts +0 -290
  1524. package/src/types/ids.ts +0 -44
  1525. package/src/types/logs.ts +0 -330
  1526. package/src/types/message.ts +0 -40
  1527. package/src/types/messageQueueTypes.ts +0 -2
  1528. package/src/types/notebook.ts +0 -7
  1529. package/src/types/permissions.ts +0 -441
  1530. package/src/types/plugin.ts +0 -363
  1531. package/src/types/statusLine.ts +0 -1
  1532. package/src/types/textInputTypes.ts +0 -387
  1533. package/src/types/tools.ts +0 -11
  1534. package/src/types/utils.ts +0 -2
  1535. package/src/upstreamproxy/relay.ts +0 -455
  1536. package/src/upstreamproxy/upstreamproxy.ts +0 -285
  1537. package/src/utils/CircularBuffer.ts +0 -84
  1538. package/src/utils/Cursor.ts +0 -1530
  1539. package/src/utils/QueryGuard.ts +0 -121
  1540. package/src/utils/Shell.ts +0 -474
  1541. package/src/utils/ShellCommand.ts +0 -465
  1542. package/src/utils/abortController.ts +0 -99
  1543. package/src/utils/activityManager.ts +0 -164
  1544. package/src/utils/advisor.ts +0 -145
  1545. package/src/utils/agentContext.ts +0 -178
  1546. package/src/utils/agentId.ts +0 -99
  1547. package/src/utils/agentSwarmsEnabled.ts +0 -44
  1548. package/src/utils/agenticSessionSearch.ts +0 -307
  1549. package/src/utils/analyzeContext.ts +0 -1382
  1550. package/src/utils/ansiToPng.ts +0 -334
  1551. package/src/utils/ansiToSvg.ts +0 -272
  1552. package/src/utils/api.ts +0 -718
  1553. package/src/utils/apiPreconnect.ts +0 -71
  1554. package/src/utils/appleTerminalBackup.ts +0 -124
  1555. package/src/utils/argumentSubstitution.ts +0 -145
  1556. package/src/utils/array.ts +0 -13
  1557. package/src/utils/asciicast.ts +0 -239
  1558. package/src/utils/attachments.ts +0 -3997
  1559. package/src/utils/attribution.ts +0 -393
  1560. package/src/utils/attributionHooks.ts +0 -2
  1561. package/src/utils/attributionTrailer.ts +0 -2
  1562. package/src/utils/auth.ts +0 -2002
  1563. package/src/utils/authFileDescriptor.ts +0 -196
  1564. package/src/utils/authPortable.ts +0 -19
  1565. package/src/utils/autoModeDenials.ts +0 -26
  1566. package/src/utils/autoRunIssue.tsx +0 -122
  1567. package/src/utils/autoUpdater.ts +0 -561
  1568. package/src/utils/aws.ts +0 -74
  1569. package/src/utils/awsAuthStatusManager.ts +0 -81
  1570. package/src/utils/background/remote/preconditions.ts +0 -235
  1571. package/src/utils/background/remote/remoteSession.ts +0 -98
  1572. package/src/utils/backgroundHousekeeping.ts +0 -94
  1573. package/src/utils/bash/ParsedCommand.ts +0 -318
  1574. package/src/utils/bash/ShellSnapshot.ts +0 -582
  1575. package/src/utils/bash/ast.ts +0 -2679
  1576. package/src/utils/bash/bashParser.ts +0 -4436
  1577. package/src/utils/bash/bashPipeCommand.ts +0 -294
  1578. package/src/utils/bash/commands.ts +0 -1339
  1579. package/src/utils/bash/heredoc.ts +0 -733
  1580. package/src/utils/bash/parser.ts +0 -230
  1581. package/src/utils/bash/prefix.ts +0 -204
  1582. package/src/utils/bash/registry.ts +0 -53
  1583. package/src/utils/bash/shellCompletion.ts +0 -259
  1584. package/src/utils/bash/shellPrefix.ts +0 -28
  1585. package/src/utils/bash/shellQuote.ts +0 -304
  1586. package/src/utils/bash/shellQuoting.ts +0 -128
  1587. package/src/utils/bash/specs/alias.ts +0 -14
  1588. package/src/utils/bash/specs/index.ts +0 -18
  1589. package/src/utils/bash/specs/nohup.ts +0 -13
  1590. package/src/utils/bash/specs/pyright.ts +0 -91
  1591. package/src/utils/bash/specs/sleep.ts +0 -13
  1592. package/src/utils/bash/specs/srun.ts +0 -31
  1593. package/src/utils/bash/specs/time.ts +0 -13
  1594. package/src/utils/bash/specs/timeout.ts +0 -20
  1595. package/src/utils/bash/treeSitterAnalysis.ts +0 -506
  1596. package/src/utils/betas.ts +0 -434
  1597. package/src/utils/billing.ts +0 -78
  1598. package/src/utils/binaryCheck.ts +0 -53
  1599. package/src/utils/browser.ts +0 -68
  1600. package/src/utils/bufferedWriter.ts +0 -100
  1601. package/src/utils/bundledMode.ts +0 -22
  1602. package/src/utils/caCerts.ts +0 -115
  1603. package/src/utils/caCertsConfig.ts +0 -88
  1604. package/src/utils/cachePaths.ts +0 -38
  1605. package/src/utils/ccshareResume.ts +0 -2
  1606. package/src/utils/classifierApprovals.ts +0 -88
  1607. package/src/utils/classifierApprovalsHook.ts +0 -17
  1608. package/src/utils/claudeCodeHints.ts +0 -193
  1609. package/src/utils/claudeDesktop.ts +0 -152
  1610. package/src/utils/claudeInChrome/chromeNativeHost.ts +0 -527
  1611. package/src/utils/claudeInChrome/common.ts +0 -540
  1612. package/src/utils/claudeInChrome/mcpServer.ts +0 -293
  1613. package/src/utils/claudeInChrome/prompt.ts +0 -83
  1614. package/src/utils/claudeInChrome/setup.ts +0 -400
  1615. package/src/utils/claudeInChrome/setupPortable.ts +0 -233
  1616. package/src/utils/claudeInChrome/toolRendering.tsx +0 -262
  1617. package/src/utils/claudemd.ts +0 -1479
  1618. package/src/utils/cleanup.ts +0 -602
  1619. package/src/utils/cleanupRegistry.ts +0 -25
  1620. package/src/utils/cliArgs.ts +0 -60
  1621. package/src/utils/cliHighlight.ts +0 -54
  1622. package/src/utils/codeIndexing.ts +0 -206
  1623. package/src/utils/collapseBackgroundBashNotifications.ts +0 -84
  1624. package/src/utils/collapseHookSummaries.ts +0 -59
  1625. package/src/utils/collapseReadSearch.ts +0 -1109
  1626. package/src/utils/collapseTeammateShutdowns.ts +0 -55
  1627. package/src/utils/combinedAbortSignal.ts +0 -47
  1628. package/src/utils/commandLifecycle.ts +0 -21
  1629. package/src/utils/commitAttribution.ts +0 -961
  1630. package/src/utils/completionCache.ts +0 -166
  1631. package/src/utils/computerUse/appNames.ts +0 -196
  1632. package/src/utils/computerUse/cleanup.ts +0 -86
  1633. package/src/utils/computerUse/common.ts +0 -61
  1634. package/src/utils/computerUse/computerUseLock.ts +0 -215
  1635. package/src/utils/computerUse/drainRunLoop.ts +0 -79
  1636. package/src/utils/computerUse/escHotkey.ts +0 -54
  1637. package/src/utils/computerUse/executor.ts +0 -658
  1638. package/src/utils/computerUse/gates.ts +0 -72
  1639. package/src/utils/computerUse/hostAdapter.ts +0 -69
  1640. package/src/utils/computerUse/inputLoader.ts +0 -30
  1641. package/src/utils/computerUse/mcpServer.ts +0 -106
  1642. package/src/utils/computerUse/setup.ts +0 -53
  1643. package/src/utils/computerUse/swiftLoader.ts +0 -23
  1644. package/src/utils/computerUse/toolRendering.tsx +0 -125
  1645. package/src/utils/computerUse/wrapper.tsx +0 -336
  1646. package/src/utils/concurrentSessions.ts +0 -204
  1647. package/src/utils/config.ts +0 -1817
  1648. package/src/utils/configConstants.ts +0 -21
  1649. package/src/utils/contentArray.ts +0 -51
  1650. package/src/utils/context.ts +0 -221
  1651. package/src/utils/contextAnalysis.ts +0 -272
  1652. package/src/utils/contextSuggestions.ts +0 -235
  1653. package/src/utils/controlMessageCompat.ts +0 -32
  1654. package/src/utils/conversationRecovery.ts +0 -597
  1655. package/src/utils/cron.ts +0 -308
  1656. package/src/utils/cronJitterConfig.ts +0 -75
  1657. package/src/utils/cronScheduler.ts +0 -565
  1658. package/src/utils/cronTasks.ts +0 -458
  1659. package/src/utils/cronTasksLock.ts +0 -195
  1660. package/src/utils/crossProjectResume.ts +0 -75
  1661. package/src/utils/crypto.ts +0 -13
  1662. package/src/utils/cwd.ts +0 -32
  1663. package/src/utils/debug.ts +0 -268
  1664. package/src/utils/debugFilter.ts +0 -157
  1665. package/src/utils/deepLink/banner.ts +0 -123
  1666. package/src/utils/deepLink/parseDeepLink.ts +0 -170
  1667. package/src/utils/deepLink/protocolHandler.ts +0 -136
  1668. package/src/utils/deepLink/registerProtocol.ts +0 -348
  1669. package/src/utils/deepLink/terminalLauncher.ts +0 -557
  1670. package/src/utils/deepLink/terminalPreference.ts +0 -54
  1671. package/src/utils/desktopDeepLink.ts +0 -236
  1672. package/src/utils/detectRepository.ts +0 -178
  1673. package/src/utils/diagLogs.ts +0 -94
  1674. package/src/utils/diff.ts +0 -177
  1675. package/src/utils/directMemberMessage.ts +0 -69
  1676. package/src/utils/displayTags.ts +0 -51
  1677. package/src/utils/doctorContextWarnings.ts +0 -265
  1678. package/src/utils/doctorDiagnostic.ts +0 -625
  1679. package/src/utils/dxt/helpers.ts +0 -88
  1680. package/src/utils/dxt/zip.ts +0 -226
  1681. package/src/utils/earlyInput.ts +0 -191
  1682. package/src/utils/editor.ts +0 -183
  1683. package/src/utils/effort.ts +0 -329
  1684. package/src/utils/embeddedTools.ts +0 -29
  1685. package/src/utils/env.ts +0 -347
  1686. package/src/utils/envDynamic.ts +0 -151
  1687. package/src/utils/envUtils.ts +0 -183
  1688. package/src/utils/envValidation.ts +0 -38
  1689. package/src/utils/errorLogSink.ts +0 -235
  1690. package/src/utils/errors.ts +0 -238
  1691. package/src/utils/eventLoopStallDetector.ts +0 -2
  1692. package/src/utils/exampleCommands.ts +0 -184
  1693. package/src/utils/execFileNoThrow.ts +0 -150
  1694. package/src/utils/execFileNoThrowPortable.ts +0 -89
  1695. package/src/utils/execSyncWrapper.ts +0 -38
  1696. package/src/utils/exportRenderer.tsx +0 -98
  1697. package/src/utils/extraUsage.ts +0 -23
  1698. package/src/utils/fastMode.ts +0 -532
  1699. package/src/utils/file.ts +0 -584
  1700. package/src/utils/fileHistory.ts +0 -1115
  1701. package/src/utils/fileOperationAnalytics.ts +0 -71
  1702. package/src/utils/filePersistence/filePersistence.ts +0 -287
  1703. package/src/utils/filePersistence/outputsScanner.ts +0 -126
  1704. package/src/utils/filePersistence/types.ts +0 -33
  1705. package/src/utils/fileRead.ts +0 -102
  1706. package/src/utils/fileReadCache.ts +0 -96
  1707. package/src/utils/fileStateCache.ts +0 -142
  1708. package/src/utils/findExecutable.ts +0 -17
  1709. package/src/utils/fingerprint.ts +0 -76
  1710. package/src/utils/forkedAgent.ts +0 -689
  1711. package/src/utils/format.ts +0 -308
  1712. package/src/utils/formatBriefTimestamp.ts +0 -81
  1713. package/src/utils/fpsTracker.ts +0 -47
  1714. package/src/utils/frontmatterParser.ts +0 -370
  1715. package/src/utils/fsOperations.ts +0 -770
  1716. package/src/utils/fullscreen.ts +0 -202
  1717. package/src/utils/generatedFiles.ts +0 -136
  1718. package/src/utils/generators.ts +0 -88
  1719. package/src/utils/genericProcessUtils.ts +0 -184
  1720. package/src/utils/getWorktreePaths.ts +0 -70
  1721. package/src/utils/getWorktreePathsPortable.ts +0 -27
  1722. package/src/utils/ghPrStatus.ts +0 -106
  1723. package/src/utils/git/gitConfigParser.ts +0 -277
  1724. package/src/utils/git/gitFilesystem.ts +0 -699
  1725. package/src/utils/git/gitignore.ts +0 -99
  1726. package/src/utils/git.ts +0 -926
  1727. package/src/utils/gitDiff.ts +0 -532
  1728. package/src/utils/gitSettings.ts +0 -18
  1729. package/src/utils/github/ghAuthStatus.ts +0 -29
  1730. package/src/utils/githubRepoPathMapping.ts +0 -162
  1731. package/src/utils/glob.ts +0 -130
  1732. package/src/utils/gracefulShutdown.ts +0 -529
  1733. package/src/utils/groupToolUses.ts +0 -182
  1734. package/src/utils/handlePromptSubmit.ts +0 -610
  1735. package/src/utils/hash.ts +0 -46
  1736. package/src/utils/headlessProfiler.ts +0 -178
  1737. package/src/utils/heapDumpService.ts +0 -303
  1738. package/src/utils/heatmap.ts +0 -198
  1739. package/src/utils/highlightMatch.tsx +0 -28
  1740. package/src/utils/hooks/AsyncHookRegistry.ts +0 -309
  1741. package/src/utils/hooks/apiQueryHookHelper.ts +0 -141
  1742. package/src/utils/hooks/execAgentHook.ts +0 -339
  1743. package/src/utils/hooks/execHttpHook.ts +0 -242
  1744. package/src/utils/hooks/execPromptHook.ts +0 -211
  1745. package/src/utils/hooks/fileChangedWatcher.ts +0 -191
  1746. package/src/utils/hooks/hookEvents.ts +0 -192
  1747. package/src/utils/hooks/hookHelpers.ts +0 -83
  1748. package/src/utils/hooks/hooksConfigManager.ts +0 -400
  1749. package/src/utils/hooks/hooksConfigSnapshot.ts +0 -133
  1750. package/src/utils/hooks/hooksSettings.ts +0 -271
  1751. package/src/utils/hooks/postSamplingHooks.ts +0 -70
  1752. package/src/utils/hooks/registerFrontmatterHooks.ts +0 -67
  1753. package/src/utils/hooks/registerSkillHooks.ts +0 -64
  1754. package/src/utils/hooks/sessionHooks.ts +0 -447
  1755. package/src/utils/hooks/skillImprovement.ts +0 -267
  1756. package/src/utils/hooks/ssrfGuard.ts +0 -294
  1757. package/src/utils/hooks.ts +0 -5022
  1758. package/src/utils/horizontalScroll.ts +0 -137
  1759. package/src/utils/http.ts +0 -136
  1760. package/src/utils/hyperlink.ts +0 -39
  1761. package/src/utils/iTermBackup.ts +0 -73
  1762. package/src/utils/ide.ts +0 -1494
  1763. package/src/utils/idePathConversion.ts +0 -90
  1764. package/src/utils/idleTimeout.ts +0 -53
  1765. package/src/utils/imagePaste.ts +0 -416
  1766. package/src/utils/imageResizer.ts +0 -880
  1767. package/src/utils/imageStore.ts +0 -167
  1768. package/src/utils/imageValidation.ts +0 -104
  1769. package/src/utils/immediateCommand.ts +0 -15
  1770. package/src/utils/inProcessTeammateHelpers.ts +0 -102
  1771. package/src/utils/ink.ts +0 -26
  1772. package/src/utils/intl.ts +0 -94
  1773. package/src/utils/jetbrains.ts +0 -191
  1774. package/src/utils/json.ts +0 -277
  1775. package/src/utils/jsonRead.ts +0 -16
  1776. package/src/utils/keyboardShortcuts.ts +0 -14
  1777. package/src/utils/lazySchema.ts +0 -8
  1778. package/src/utils/listSessionsImpl.ts +0 -454
  1779. package/src/utils/localInstaller.ts +0 -162
  1780. package/src/utils/lockfile.ts +0 -43
  1781. package/src/utils/log.ts +0 -362
  1782. package/src/utils/logoV2Utils.ts +0 -350
  1783. package/src/utils/mailbox.ts +0 -73
  1784. package/src/utils/managedEnv.ts +0 -199
  1785. package/src/utils/managedEnvConstants.ts +0 -191
  1786. package/src/utils/markdown.ts +0 -381
  1787. package/src/utils/markdownConfigLoader.ts +0 -600
  1788. package/src/utils/mcp/dateTimeParser.ts +0 -121
  1789. package/src/utils/mcp/elicitationValidation.ts +0 -336
  1790. package/src/utils/mcpInstructionsDelta.ts +0 -130
  1791. package/src/utils/mcpOutputStorage.ts +0 -189
  1792. package/src/utils/mcpValidation.ts +0 -208
  1793. package/src/utils/mcpWebSocketTransport.ts +0 -200
  1794. package/src/utils/memoize.ts +0 -269
  1795. package/src/utils/memory/types.ts +0 -12
  1796. package/src/utils/memory/versions.ts +0 -8
  1797. package/src/utils/memoryFileDetection.ts +0 -289
  1798. package/src/utils/messagePredicates.ts +0 -8
  1799. package/src/utils/messageQueueManager.ts +0 -547
  1800. package/src/utils/messages/mappers.ts +0 -290
  1801. package/src/utils/messages/systemInit.ts +0 -96
  1802. package/src/utils/messages.ts +0 -5512
  1803. package/src/utils/model/agent.ts +0 -157
  1804. package/src/utils/model/aliases.ts +0 -25
  1805. package/src/utils/model/antModels.ts +0 -64
  1806. package/src/utils/model/bedrock.ts +0 -265
  1807. package/src/utils/model/check1mAccess.ts +0 -72
  1808. package/src/utils/model/configs.ts +0 -118
  1809. package/src/utils/model/contextWindowUpgradeCheck.ts +0 -47
  1810. package/src/utils/model/deprecation.ts +0 -101
  1811. package/src/utils/model/model.ts +0 -618
  1812. package/src/utils/model/modelAllowlist.ts +0 -170
  1813. package/src/utils/model/modelCapabilities.ts +0 -118
  1814. package/src/utils/model/modelOptions.ts +0 -540
  1815. package/src/utils/model/modelStrings.ts +0 -166
  1816. package/src/utils/model/modelSupportOverrides.ts +0 -50
  1817. package/src/utils/model/providers.ts +0 -40
  1818. package/src/utils/model/validateModel.ts +0 -159
  1819. package/src/utils/modelCost.ts +0 -231
  1820. package/src/utils/modifiers.ts +0 -41
  1821. package/src/utils/mtls.ts +0 -179
  1822. package/src/utils/nativeInstaller/download.ts +0 -523
  1823. package/src/utils/nativeInstaller/index.ts +0 -18
  1824. package/src/utils/nativeInstaller/installer.ts +0 -1708
  1825. package/src/utils/nativeInstaller/packageManagers.ts +0 -336
  1826. package/src/utils/nativeInstaller/pidLock.ts +0 -433
  1827. package/src/utils/notebook.ts +0 -224
  1828. package/src/utils/objectGroupBy.ts +0 -18
  1829. package/src/utils/pasteStore.ts +0 -104
  1830. package/src/utils/path.ts +0 -155
  1831. package/src/utils/pdf.ts +0 -300
  1832. package/src/utils/pdfUtils.ts +0 -70
  1833. package/src/utils/peerAddress.ts +0 -21
  1834. package/src/utils/permissions/PermissionMode.ts +0 -141
  1835. package/src/utils/permissions/PermissionPromptToolResultSchema.ts +0 -127
  1836. package/src/utils/permissions/PermissionResult.ts +0 -35
  1837. package/src/utils/permissions/PermissionRule.ts +0 -40
  1838. package/src/utils/permissions/PermissionUpdate.ts +0 -389
  1839. package/src/utils/permissions/PermissionUpdateSchema.ts +0 -78
  1840. package/src/utils/permissions/autoModeState.ts +0 -39
  1841. package/src/utils/permissions/bashClassifier.ts +0 -61
  1842. package/src/utils/permissions/bypassPermissionsKillswitch.ts +0 -155
  1843. package/src/utils/permissions/classifierDecision.ts +0 -98
  1844. package/src/utils/permissions/classifierShared.ts +0 -39
  1845. package/src/utils/permissions/dangerousPatterns.ts +0 -80
  1846. package/src/utils/permissions/denialTracking.ts +0 -45
  1847. package/src/utils/permissions/filesystem.ts +0 -1777
  1848. package/src/utils/permissions/getNextPermissionMode.ts +0 -101
  1849. package/src/utils/permissions/pathValidation.ts +0 -485
  1850. package/src/utils/permissions/permissionExplainer.ts +0 -250
  1851. package/src/utils/permissions/permissionRuleParser.ts +0 -198
  1852. package/src/utils/permissions/permissionSetup.ts +0 -1532
  1853. package/src/utils/permissions/permissions.ts +0 -1486
  1854. package/src/utils/permissions/permissionsLoader.ts +0 -296
  1855. package/src/utils/permissions/shadowedRuleDetection.ts +0 -234
  1856. package/src/utils/permissions/shellRuleMatching.ts +0 -228
  1857. package/src/utils/permissions/yoloClassifier.ts +0 -1495
  1858. package/src/utils/planModeV2.ts +0 -95
  1859. package/src/utils/plans.ts +0 -397
  1860. package/src/utils/platform.ts +0 -150
  1861. package/src/utils/plugins/addDirPluginSettings.ts +0 -71
  1862. package/src/utils/plugins/cacheUtils.ts +0 -196
  1863. package/src/utils/plugins/dependencyResolver.ts +0 -305
  1864. package/src/utils/plugins/fetchTelemetry.ts +0 -135
  1865. package/src/utils/plugins/gitAvailability.ts +0 -69
  1866. package/src/utils/plugins/headlessPluginInstall.ts +0 -174
  1867. package/src/utils/plugins/hintRecommendation.ts +0 -164
  1868. package/src/utils/plugins/installCounts.ts +0 -292
  1869. package/src/utils/plugins/installedPluginsManager.ts +0 -1268
  1870. package/src/utils/plugins/loadPluginAgents.ts +0 -348
  1871. package/src/utils/plugins/loadPluginCommands.ts +0 -946
  1872. package/src/utils/plugins/loadPluginHooks.ts +0 -287
  1873. package/src/utils/plugins/loadPluginOutputStyles.ts +0 -178
  1874. package/src/utils/plugins/lspPluginIntegration.ts +0 -387
  1875. package/src/utils/plugins/lspRecommendation.ts +0 -374
  1876. package/src/utils/plugins/managedPlugins.ts +0 -27
  1877. package/src/utils/plugins/marketplaceHelpers.ts +0 -592
  1878. package/src/utils/plugins/marketplaceManager.ts +0 -2643
  1879. package/src/utils/plugins/mcpPluginIntegration.ts +0 -634
  1880. package/src/utils/plugins/mcpbHandler.ts +0 -968
  1881. package/src/utils/plugins/officialMarketplace.ts +0 -25
  1882. package/src/utils/plugins/officialMarketplaceGcs.ts +0 -216
  1883. package/src/utils/plugins/officialMarketplaceStartupCheck.ts +0 -439
  1884. package/src/utils/plugins/orphanedPluginFilter.ts +0 -114
  1885. package/src/utils/plugins/parseMarketplaceInput.ts +0 -162
  1886. package/src/utils/plugins/performStartupChecks.tsx +0 -70
  1887. package/src/utils/plugins/pluginAutoupdate.ts +0 -284
  1888. package/src/utils/plugins/pluginBlocklist.ts +0 -127
  1889. package/src/utils/plugins/pluginDirectories.ts +0 -178
  1890. package/src/utils/plugins/pluginFlagging.ts +0 -208
  1891. package/src/utils/plugins/pluginIdentifier.ts +0 -123
  1892. package/src/utils/plugins/pluginInstallationHelpers.ts +0 -595
  1893. package/src/utils/plugins/pluginLoader.ts +0 -3302
  1894. package/src/utils/plugins/pluginOptionsStorage.ts +0 -400
  1895. package/src/utils/plugins/pluginPolicy.ts +0 -20
  1896. package/src/utils/plugins/pluginStartupCheck.ts +0 -341
  1897. package/src/utils/plugins/pluginVersioning.ts +0 -157
  1898. package/src/utils/plugins/reconciler.ts +0 -265
  1899. package/src/utils/plugins/refresh.ts +0 -215
  1900. package/src/utils/plugins/schemas.ts +0 -1681
  1901. package/src/utils/plugins/validatePlugin.ts +0 -903
  1902. package/src/utils/plugins/walkPluginMarkdown.ts +0 -69
  1903. package/src/utils/plugins/zipCache.ts +0 -406
  1904. package/src/utils/plugins/zipCacheAdapters.ts +0 -164
  1905. package/src/utils/postCommitAttribution.ts +0 -2
  1906. package/src/utils/powershell/dangerousCmdlets.ts +0 -185
  1907. package/src/utils/powershell/parser.ts +0 -1804
  1908. package/src/utils/powershell/staticPrefix.ts +0 -316
  1909. package/src/utils/preflightChecks.tsx +0 -151
  1910. package/src/utils/privacyLevel.ts +0 -55
  1911. package/src/utils/process.ts +0 -68
  1912. package/src/utils/processUserInput/processBashCommand.tsx +0 -140
  1913. package/src/utils/processUserInput/processSlashCommand.tsx +0 -922
  1914. package/src/utils/processUserInput/processTextPrompt.ts +0 -100
  1915. package/src/utils/processUserInput/processUserInput.ts +0 -605
  1916. package/src/utils/profilerBase.ts +0 -46
  1917. package/src/utils/promptCategory.ts +0 -49
  1918. package/src/utils/promptEditor.ts +0 -188
  1919. package/src/utils/promptShellExecution.ts +0 -183
  1920. package/src/utils/protectedNamespace.ts +0 -2
  1921. package/src/utils/proxy.ts +0 -426
  1922. package/src/utils/queryContext.ts +0 -179
  1923. package/src/utils/queryHelpers.ts +0 -552
  1924. package/src/utils/queryProfiler.ts +0 -301
  1925. package/src/utils/queueProcessor.ts +0 -95
  1926. package/src/utils/readEditContext.ts +0 -227
  1927. package/src/utils/readFileInRange.ts +0 -383
  1928. package/src/utils/releaseNotes.ts +0 -360
  1929. package/src/utils/renderOptions.ts +0 -77
  1930. package/src/utils/ripgrep.ts +0 -679
  1931. package/src/utils/sandbox/sandbox-adapter.ts +0 -985
  1932. package/src/utils/sandbox/sandbox-ui-utils.ts +0 -12
  1933. package/src/utils/sanitization.ts +0 -91
  1934. package/src/utils/screenshotClipboard.ts +0 -121
  1935. package/src/utils/sdkEventQueue.ts +0 -134
  1936. package/src/utils/sdkHeapDumpMonitor.ts +0 -2
  1937. package/src/utils/secureStorage/fallbackStorage.ts +0 -70
  1938. package/src/utils/secureStorage/index.ts +0 -17
  1939. package/src/utils/secureStorage/keychainPrefetch.ts +0 -116
  1940. package/src/utils/secureStorage/macOsKeychainHelpers.ts +0 -111
  1941. package/src/utils/secureStorage/macOsKeychainStorage.ts +0 -231
  1942. package/src/utils/secureStorage/plainTextStorage.ts +0 -84
  1943. package/src/utils/secureStorage/types.ts +0 -2
  1944. package/src/utils/semanticBoolean.ts +0 -29
  1945. package/src/utils/semanticNumber.ts +0 -36
  1946. package/src/utils/semver.ts +0 -59
  1947. package/src/utils/sequential.ts +0 -56
  1948. package/src/utils/sessionActivity.ts +0 -133
  1949. package/src/utils/sessionDataUploader.ts +0 -2
  1950. package/src/utils/sessionEnvVars.ts +0 -22
  1951. package/src/utils/sessionEnvironment.ts +0 -166
  1952. package/src/utils/sessionFileAccessHooks.ts +0 -250
  1953. package/src/utils/sessionIngressAuth.ts +0 -140
  1954. package/src/utils/sessionRestore.ts +0 -551
  1955. package/src/utils/sessionStart.ts +0 -232
  1956. package/src/utils/sessionState.ts +0 -150
  1957. package/src/utils/sessionStorage.ts +0 -5105
  1958. package/src/utils/sessionStoragePortable.ts +0 -793
  1959. package/src/utils/sessionTitle.ts +0 -129
  1960. package/src/utils/sessionUrl.ts +0 -64
  1961. package/src/utils/set.ts +0 -53
  1962. package/src/utils/settings/allErrors.ts +0 -32
  1963. package/src/utils/settings/applySettingsChange.ts +0 -92
  1964. package/src/utils/settings/changeDetector.ts +0 -488
  1965. package/src/utils/settings/constants.ts +0 -202
  1966. package/src/utils/settings/internalWrites.ts +0 -37
  1967. package/src/utils/settings/managedPath.ts +0 -34
  1968. package/src/utils/settings/mdm/constants.ts +0 -81
  1969. package/src/utils/settings/mdm/rawRead.ts +0 -130
  1970. package/src/utils/settings/mdm/settings.ts +0 -316
  1971. package/src/utils/settings/permissionValidation.ts +0 -262
  1972. package/src/utils/settings/pluginOnlyPolicy.ts +0 -60
  1973. package/src/utils/settings/schemaOutput.ts +0 -8
  1974. package/src/utils/settings/settings.ts +0 -1015
  1975. package/src/utils/settings/settingsCache.ts +0 -80
  1976. package/src/utils/settings/toolValidationConfig.ts +0 -103
  1977. package/src/utils/settings/types.ts +0 -1148
  1978. package/src/utils/settings/validateEditTool.ts +0 -45
  1979. package/src/utils/settings/validation.ts +0 -265
  1980. package/src/utils/settings/validationTips.ts +0 -164
  1981. package/src/utils/shell/bashProvider.ts +0 -255
  1982. package/src/utils/shell/outputLimits.ts +0 -14
  1983. package/src/utils/shell/powershellDetection.ts +0 -107
  1984. package/src/utils/shell/powershellProvider.ts +0 -123
  1985. package/src/utils/shell/prefix.ts +0 -367
  1986. package/src/utils/shell/readOnlyCommandValidation.ts +0 -1893
  1987. package/src/utils/shell/resolveDefaultShell.ts +0 -14
  1988. package/src/utils/shell/shellProvider.ts +0 -33
  1989. package/src/utils/shell/shellToolUtils.ts +0 -22
  1990. package/src/utils/shell/specPrefix.ts +0 -241
  1991. package/src/utils/shellConfig.ts +0 -167
  1992. package/src/utils/sideQuery.ts +0 -222
  1993. package/src/utils/sideQuestion.ts +0 -155
  1994. package/src/utils/signal.ts +0 -43
  1995. package/src/utils/sinks.ts +0 -16
  1996. package/src/utils/skills/skillChangeDetector.ts +0 -311
  1997. package/src/utils/slashCommandParsing.ts +0 -60
  1998. package/src/utils/sleep.ts +0 -84
  1999. package/src/utils/sliceAnsi.ts +0 -91
  2000. package/src/utils/slowOperations.ts +0 -286
  2001. package/src/utils/standaloneAgent.ts +0 -23
  2002. package/src/utils/startupProfiler.ts +0 -194
  2003. package/src/utils/staticRender.tsx +0 -116
  2004. package/src/utils/stats.ts +0 -1061
  2005. package/src/utils/statsCache.ts +0 -434
  2006. package/src/utils/status.tsx +0 -362
  2007. package/src/utils/statusNoticeDefinitions.tsx +0 -198
  2008. package/src/utils/statusNoticeHelpers.ts +0 -20
  2009. package/src/utils/stream.ts +0 -76
  2010. package/src/utils/streamJsonStdoutGuard.ts +0 -123
  2011. package/src/utils/streamlinedTransform.ts +0 -201
  2012. package/src/utils/stringUtils.ts +0 -235
  2013. package/src/utils/subprocessEnv.ts +0 -99
  2014. package/src/utils/suggestions/commandSuggestions.ts +0 -567
  2015. package/src/utils/suggestions/directoryCompletion.ts +0 -263
  2016. package/src/utils/suggestions/shellHistoryCompletion.ts +0 -119
  2017. package/src/utils/suggestions/skillUsageTracking.ts +0 -55
  2018. package/src/utils/suggestions/slackChannelSuggestions.ts +0 -209
  2019. package/src/utils/swarm/It2SetupPrompt.tsx +0 -380
  2020. package/src/utils/swarm/backends/ITermBackend.ts +0 -370
  2021. package/src/utils/swarm/backends/InProcessBackend.ts +0 -339
  2022. package/src/utils/swarm/backends/PaneBackendExecutor.ts +0 -354
  2023. package/src/utils/swarm/backends/TmuxBackend.ts +0 -764
  2024. package/src/utils/swarm/backends/detection.ts +0 -128
  2025. package/src/utils/swarm/backends/it2Setup.ts +0 -245
  2026. package/src/utils/swarm/backends/registry.ts +0 -464
  2027. package/src/utils/swarm/backends/teammateModeSnapshot.ts +0 -87
  2028. package/src/utils/swarm/backends/types.ts +0 -311
  2029. package/src/utils/swarm/constants.ts +0 -33
  2030. package/src/utils/swarm/inProcessRunner.ts +0 -1552
  2031. package/src/utils/swarm/leaderPermissionBridge.ts +0 -54
  2032. package/src/utils/swarm/permissionSync.ts +0 -928
  2033. package/src/utils/swarm/reconnection.ts +0 -119
  2034. package/src/utils/swarm/spawnInProcess.ts +0 -328
  2035. package/src/utils/swarm/spawnUtils.ts +0 -146
  2036. package/src/utils/swarm/teamHelpers.ts +0 -683
  2037. package/src/utils/swarm/teammateInit.ts +0 -129
  2038. package/src/utils/swarm/teammateLayoutManager.ts +0 -107
  2039. package/src/utils/swarm/teammateModel.ts +0 -10
  2040. package/src/utils/swarm/teammatePromptAddendum.ts +0 -18
  2041. package/src/utils/systemDirectories.ts +0 -74
  2042. package/src/utils/systemPrompt.ts +0 -123
  2043. package/src/utils/systemPromptType.ts +0 -14
  2044. package/src/utils/systemTheme.ts +0 -119
  2045. package/src/utils/systemThemeWatcher.ts +0 -2
  2046. package/src/utils/taggedId.ts +0 -54
  2047. package/src/utils/task/TaskOutput.ts +0 -390
  2048. package/src/utils/task/diskOutput.ts +0 -451
  2049. package/src/utils/task/framework.ts +0 -308
  2050. package/src/utils/task/outputFormatting.ts +0 -38
  2051. package/src/utils/task/sdkProgress.ts +0 -36
  2052. package/src/utils/taskSummary.ts +0 -2
  2053. package/src/utils/tasks.ts +0 -862
  2054. package/src/utils/teamDiscovery.ts +0 -81
  2055. package/src/utils/teamMemoryOps.ts +0 -88
  2056. package/src/utils/teammate.ts +0 -292
  2057. package/src/utils/teammateContext.ts +0 -96
  2058. package/src/utils/teammateMailbox.ts +0 -1183
  2059. package/src/utils/telemetry/betaSessionTracing.ts +0 -491
  2060. package/src/utils/telemetry/bigqueryExporter.ts +0 -252
  2061. package/src/utils/telemetry/events.ts +0 -75
  2062. package/src/utils/telemetry/instrumentation.ts +0 -825
  2063. package/src/utils/telemetry/logger.ts +0 -26
  2064. package/src/utils/telemetry/perfettoTracing.ts +0 -1120
  2065. package/src/utils/telemetry/pluginTelemetry.ts +0 -289
  2066. package/src/utils/telemetry/sessionTracing.ts +0 -927
  2067. package/src/utils/telemetry/skillLoadedEvent.ts +0 -39
  2068. package/src/utils/telemetryAttributes.ts +0 -71
  2069. package/src/utils/teleport/api.ts +0 -466
  2070. package/src/utils/teleport/environmentSelection.ts +0 -77
  2071. package/src/utils/teleport/environments.ts +0 -120
  2072. package/src/utils/teleport/gitBundle.ts +0 -292
  2073. package/src/utils/teleport.tsx +0 -1226
  2074. package/src/utils/tempfile.ts +0 -31
  2075. package/src/utils/terminal.ts +0 -131
  2076. package/src/utils/terminalPanel.ts +0 -191
  2077. package/src/utils/textHighlighting.ts +0 -166
  2078. package/src/utils/theme.ts +0 -639
  2079. package/src/utils/thinking.ts +0 -162
  2080. package/src/utils/timeouts.ts +0 -39
  2081. package/src/utils/tmuxSocket.ts +0 -427
  2082. package/src/utils/todo/types.ts +0 -18
  2083. package/src/utils/tokenBudget.ts +0 -73
  2084. package/src/utils/tokens.ts +0 -261
  2085. package/src/utils/toolErrors.ts +0 -132
  2086. package/src/utils/toolPool.ts +0 -79
  2087. package/src/utils/toolResultStorage.ts +0 -1040
  2088. package/src/utils/toolSchemaCache.ts +0 -26
  2089. package/src/utils/toolSearch.ts +0 -756
  2090. package/src/utils/transcriptSearch.ts +0 -202
  2091. package/src/utils/treeify.ts +0 -170
  2092. package/src/utils/truncate.ts +0 -179
  2093. package/src/utils/udsClient.ts +0 -2
  2094. package/src/utils/udsMessaging.ts +0 -2
  2095. package/src/utils/ultraplan/ccrSession.ts +0 -349
  2096. package/src/utils/ultraplan/keyword.ts +0 -127
  2097. package/src/utils/ultraplan/prompt.txt +0 -1
  2098. package/src/utils/unaryLogging.ts +0 -39
  2099. package/src/utils/undercover.ts +0 -89
  2100. package/src/utils/user.ts +0 -194
  2101. package/src/utils/userAgent.ts +0 -10
  2102. package/src/utils/userPromptKeywords.ts +0 -27
  2103. package/src/utils/uuid.ts +0 -27
  2104. package/src/utils/warningHandler.ts +0 -121
  2105. package/src/utils/which.ts +0 -82
  2106. package/src/utils/windowsPaths.ts +0 -173
  2107. package/src/utils/withResolvers.ts +0 -13
  2108. package/src/utils/words.ts +0 -800
  2109. package/src/utils/workloadContext.ts +0 -57
  2110. package/src/utils/worktree.ts +0 -1519
  2111. package/src/utils/worktreeModeEnabled.ts +0 -11
  2112. package/src/utils/xdg.ts +0 -65
  2113. package/src/utils/xml.ts +0 -16
  2114. package/src/utils/yaml.ts +0 -15
  2115. package/src/utils/zodToJsonSchema.ts +0 -23
  2116. package/src/vim/motions.ts +0 -82
  2117. package/src/vim/operators.ts +0 -556
  2118. package/src/vim/textObjects.ts +0 -186
  2119. package/src/vim/transitions.ts +0 -490
  2120. package/src/vim/types.ts +0 -199
  2121. package/src/voice/voiceModeEnabled.ts +0 -54
  2122. package/stubs/@ant/claude-for-chrome-mcp/index.js +0 -4
  2123. package/stubs/@ant/claude-for-chrome-mcp/index.ts +0 -4
  2124. package/stubs/@ant/claude-for-chrome-mcp/package.json +0 -6
  2125. package/stubs/@ant/computer-use-input/index.js +0 -2
  2126. package/stubs/@ant/computer-use-input/index.ts +0 -3
  2127. package/stubs/@ant/computer-use-input/package.json +0 -6
  2128. package/stubs/@ant/computer-use-mcp/index.js +0 -5
  2129. package/stubs/@ant/computer-use-mcp/index.ts +0 -5
  2130. package/stubs/@ant/computer-use-mcp/package.json +0 -11
  2131. package/stubs/@ant/computer-use-mcp/sentinelApps.js +0 -3
  2132. package/stubs/@ant/computer-use-mcp/sentinelApps.ts +0 -3
  2133. package/stubs/@ant/computer-use-mcp/types.js +0 -2
  2134. package/stubs/@ant/computer-use-mcp/types.ts +0 -6
  2135. package/stubs/@ant/computer-use-swift/index.js +0 -2
  2136. package/stubs/@ant/computer-use-swift/index.ts +0 -2
  2137. package/stubs/@ant/computer-use-swift/package.json +0 -6
  2138. package/stubs/@anthropic-ai/claude-agent-sdk/index.js +0 -2
  2139. package/stubs/@anthropic-ai/claude-agent-sdk/index.ts +0 -2
  2140. package/stubs/@anthropic-ai/claude-agent-sdk/package.json +0 -6
  2141. package/stubs/@anthropic-ai/mcpb/index.js +0 -2
  2142. package/stubs/@anthropic-ai/mcpb/index.ts +0 -3
  2143. package/stubs/@anthropic-ai/mcpb/package.json +0 -6
  2144. package/stubs/@anthropic-ai/sandbox-runtime/index.js +0 -42
  2145. package/stubs/@anthropic-ai/sandbox-runtime/index.ts +0 -49
  2146. package/stubs/@anthropic-ai/sandbox-runtime/package.json +0 -6
  2147. package/stubs/globals.ts +0 -11
  2148. package/stubs/macro.d.ts +0 -9
  2149. package/tsconfig.json +0 -28
@@ -1,1777 +0,0 @@
1
- import { feature } from 'src/_stubs/bun-bundle.js'
2
- import { randomBytes } from 'crypto'
3
- import ignore from 'ignore'
4
- import memoize from 'lodash-es/memoize.js'
5
- import { homedir, tmpdir } from 'os'
6
- import { join, normalize, posix, sep } from 'path'
7
- import { hasAutoMemPathOverride, isAutoMemPath } from 'src/memdir/paths.js'
8
- import { isAgentMemoryPath } from 'src/tools/AgentTool/agentMemory.js'
9
- import {
10
- CLAUDE_FOLDER_PERMISSION_PATTERN,
11
- FILE_EDIT_TOOL_NAME,
12
- GLOBAL_CLAUDE_FOLDER_PERMISSION_PATTERN,
13
- } from 'src/tools/FileEditTool/constants.js'
14
- import type { z } from 'zod/v4'
15
- import { getOriginalCwd, getSessionId } from '../../bootstrap/state.js'
16
- import { checkStatsigFeatureGate_CACHED_MAY_BE_STALE } from '../../services/analytics/growthbook.js'
17
- import type { AnyObject, Tool, ToolPermissionContext } from '../../Tool.js'
18
- import { FILE_READ_TOOL_NAME } from '../../tools/FileReadTool/prompt.js'
19
- import { getCwd } from '../cwd.js'
20
- import { getClaudeConfigHomeDir } from '../envUtils.js'
21
- import {
22
- getFsImplementation,
23
- getPathsForPermissionCheck,
24
- } from '../fsOperations.js'
25
- import {
26
- containsPathTraversal,
27
- expandPath,
28
- getDirectoryForPath,
29
- sanitizePath,
30
- } from '../path.js'
31
- import { getPlanSlug, getPlansDirectory } from '../plans.js'
32
- import { getPlatform } from '../platform.js'
33
- import { getProjectDir } from '../sessionStorage.js'
34
- import { SETTING_SOURCES } from '../settings/constants.js'
35
- import {
36
- getSettingsFilePathForSource,
37
- getSettingsRootPathForSource,
38
- } from '../settings/settings.js'
39
- import { containsVulnerableUncPath } from '../shell/readOnlyCommandValidation.js'
40
- import { getToolResultsDir } from '../toolResultStorage.js'
41
- import { windowsPathToPosixPath } from '../windowsPaths.js'
42
- import type {
43
- PermissionDecision,
44
- PermissionResult,
45
- } from './PermissionResult.js'
46
- import type { PermissionRule, PermissionRuleSource } from './PermissionRule.js'
47
- import { createReadRuleSuggestion } from './PermissionUpdate.js'
48
- import type { PermissionUpdate } from './PermissionUpdateSchema.js'
49
- import { getRuleByContentsForToolName } from './permissions.js'
50
-
51
- declare const MACRO: { VERSION: string }
52
-
53
- /**
54
- * Dangerous files that should be protected from auto-editing.
55
- * These files can be used for code execution or data exfiltration.
56
- */
57
- export const DANGEROUS_FILES = [
58
- '.gitconfig',
59
- '.gitmodules',
60
- '.bashrc',
61
- '.bash_profile',
62
- '.zshrc',
63
- '.zprofile',
64
- '.profile',
65
- '.ripgreprc',
66
- '.mcp.json',
67
- '.claude.json',
68
- ] as const
69
-
70
- /**
71
- * Dangerous directories that should be protected from auto-editing.
72
- * These directories contain sensitive configuration or executable files.
73
- */
74
- export const DANGEROUS_DIRECTORIES = [
75
- '.git',
76
- '.vscode',
77
- '.idea',
78
- '.claude',
79
- ] as const
80
-
81
- /**
82
- * Normalizes a path for case-insensitive comparison.
83
- * This prevents bypassing security checks using mixed-case paths on case-insensitive
84
- * filesystems (macOS/Windows) like `.cLauDe/Settings.locaL.json`.
85
- *
86
- * We always normalize to lowercase regardless of platform for consistent security.
87
- * @param path The path to normalize
88
- * @returns The lowercase path for safe comparison
89
- */
90
- export function normalizeCaseForComparison(path: string): string {
91
- return path.toLowerCase()
92
- }
93
-
94
- /**
95
- * If filePath is inside a .claude/skills/{name}/ directory (project or global),
96
- * return the skill name and a session-allow pattern scoped to just that skill.
97
- * Used to offer a narrower "allow edits to this skill only" option in the
98
- * permission dialog and SDK suggestions, so iterating on one skill doesn't
99
- * require granting session access to all of .claude/ (settings.json, hooks/, etc.).
100
- */
101
- export function getClaudeSkillScope(
102
- filePath: string,
103
- ): { skillName: string; pattern: string } | null {
104
- const absolutePath = expandPath(filePath)
105
- const absolutePathLower = normalizeCaseForComparison(absolutePath)
106
-
107
- const bases = [
108
- {
109
- dir: expandPath(join(getOriginalCwd(), '.claude', 'skills')),
110
- prefix: '/.claude/skills/',
111
- },
112
- {
113
- dir: expandPath(join(homedir(), '.claude', 'skills')),
114
- prefix: '~/.claude/skills/',
115
- },
116
- ]
117
-
118
- for (const { dir, prefix } of bases) {
119
- const dirLower = normalizeCaseForComparison(dir)
120
- // Try both path separators (Windows paths may not be normalized to /)
121
- for (const s of [sep, '/']) {
122
- if (absolutePathLower.startsWith(dirLower + s.toLowerCase())) {
123
- // Match on lowercase, but slice the ORIGINAL path so the skill name
124
- // preserves case (pattern matching downstream is case-sensitive)
125
- const rest = absolutePath.slice(dir.length + s.length)
126
- const slash = rest.indexOf('/')
127
- const bslash = sep === '\\' ? rest.indexOf('\\') : -1
128
- const cut =
129
- slash === -1
130
- ? bslash
131
- : bslash === -1
132
- ? slash
133
- : Math.min(slash, bslash)
134
- // Require a separator: file must be INSIDE the skill dir, not a
135
- // file directly under skills/ (no skill scope for that)
136
- if (cut <= 0) return null
137
- const skillName = rest.slice(0, cut)
138
- // Reject traversal and empty. Use includes('..') not === '..' to
139
- // match step 1.6's ruleContent.includes('..') guard: a skillName like
140
- // 'v2..beta' would otherwise produce a suggestion step 1.7 emits but
141
- // step 1.6 always rejects (dead suggestion, infinite re-prompt).
142
- if (!skillName || skillName === '.' || skillName.includes('..')) {
143
- return null
144
- }
145
- // Reject glob metacharacters. skillName is interpolated into a
146
- // gitignore pattern consumed by ignore().add() in matchingRuleForInput
147
- // at step 1.6. A directory literally named '*' (valid on POSIX) would
148
- // produce '/.claude/skills/*/**' which matches ALL skills. Return null
149
- // to fall through to generateSuggestions() instead.
150
- if (/[*?[\]]/.test(skillName)) return null
151
- return { skillName, pattern: prefix + skillName + '/**' }
152
- }
153
- }
154
- }
155
-
156
- return null
157
- }
158
-
159
- // Always use / as the path separator per gitignore spec
160
- // https://git-scm.com/docs/gitignore
161
- const DIR_SEP = posix.sep
162
-
163
- /**
164
- * Cross-platform relative path calculation that returns POSIX-style paths.
165
- * Handles Windows path conversion internally.
166
- * @param from The base path
167
- * @param to The target path
168
- * @returns A POSIX-style relative path
169
- */
170
- export function relativePath(from: string, to: string): string {
171
- if (getPlatform() === 'windows') {
172
- // Convert Windows paths to POSIX for consistent comparison
173
- const posixFrom = windowsPathToPosixPath(from)
174
- const posixTo = windowsPathToPosixPath(to)
175
- return posix.relative(posixFrom, posixTo)
176
- }
177
- // Use POSIX paths directly
178
- return posix.relative(from, to)
179
- }
180
-
181
- /**
182
- * Converts a path to POSIX format for pattern matching.
183
- * Handles Windows path conversion internally.
184
- * @param path The path to convert
185
- * @returns A POSIX-style path
186
- */
187
- export function toPosixPath(path: string): string {
188
- if (getPlatform() === 'windows') {
189
- return windowsPathToPosixPath(path)
190
- }
191
- return path
192
- }
193
-
194
- function getSettingsPaths(): string[] {
195
- return SETTING_SOURCES.map(source =>
196
- getSettingsFilePathForSource(source),
197
- ).filter(path => path !== undefined)
198
- }
199
-
200
- export function isClaudeSettingsPath(filePath: string): boolean {
201
- // SECURITY: Normalize path structure first to prevent bypass via redundant ./
202
- // sequences like `./.claude/./settings.json` which would evade the endsWith() check
203
- const expandedPath = expandPath(filePath)
204
-
205
- // Normalize for case-insensitive comparison to prevent bypassing security
206
- // with paths like .cLauDe/Settings.locaL.json
207
- const normalizedPath = normalizeCaseForComparison(expandedPath)
208
-
209
- // Use platform separator so endsWith checks work on both Unix (/) and Windows (\)
210
- if (
211
- normalizedPath.endsWith(`${sep}.claude${sep}settings.json`) ||
212
- normalizedPath.endsWith(`${sep}.claude${sep}settings.local.json`)
213
- ) {
214
- // Include .claude/settings.json even for other projects
215
- return true
216
- }
217
- // Check for current project's settings files (including managed settings and CLI args)
218
- // Both paths are now absolute and normalized for consistent comparison
219
- return getSettingsPaths().some(
220
- settingsPath => normalizeCaseForComparison(settingsPath) === normalizedPath,
221
- )
222
- }
223
-
224
- // Always ask when Claude Code tries to edit its own config files
225
- function isClaudeConfigFilePath(filePath: string): boolean {
226
- if (isClaudeSettingsPath(filePath)) {
227
- return true
228
- }
229
-
230
- // Check if file is within .claude/commands or .claude/agents directories
231
- // using proper path segment validation (not string matching with includes())
232
- // pathInWorkingPath now handles case-insensitive comparison to prevent bypasses
233
- const commandsDir = join(getOriginalCwd(), '.claude', 'commands')
234
- const agentsDir = join(getOriginalCwd(), '.claude', 'agents')
235
- const skillsDir = join(getOriginalCwd(), '.claude', 'skills')
236
-
237
- return (
238
- pathInWorkingPath(filePath, commandsDir) ||
239
- pathInWorkingPath(filePath, agentsDir) ||
240
- pathInWorkingPath(filePath, skillsDir)
241
- )
242
- }
243
-
244
- // Check if file is the plan file for the current session
245
- function isSessionPlanFile(absolutePath: string): boolean {
246
- // Check if path is a plan file for this session (main or agent-specific)
247
- // Main plan file: {plansDir}/{planSlug}.md
248
- // Agent plan file: {plansDir}/{planSlug}-agent-{agentId}.md
249
- const expectedPrefix = join(getPlansDirectory(), getPlanSlug())
250
- // SECURITY: Normalize to prevent path traversal bypasses via .. segments
251
- const normalizedPath = normalize(absolutePath)
252
- return (
253
- normalizedPath.startsWith(expectedPrefix) && normalizedPath.endsWith('.md')
254
- )
255
- }
256
-
257
- /**
258
- * Returns the session memory directory path for the current session with trailing separator.
259
- * Path format: {projectDir}/{sessionId}/session-memory/
260
- */
261
- export function getSessionMemoryDir(): string {
262
- return join(getProjectDir(getCwd()), getSessionId(), 'session-memory') + sep
263
- }
264
-
265
- /**
266
- * Returns the session memory file path for the current session.
267
- * Path format: {projectDir}/{sessionId}/session-memory/summary.md
268
- */
269
- export function getSessionMemoryPath(): string {
270
- return join(getSessionMemoryDir(), 'summary.md')
271
- }
272
-
273
- // Check if file is within the session memory directory
274
- function isSessionMemoryPath(absolutePath: string): boolean {
275
- // SECURITY: Normalize to prevent path traversal bypasses via .. segments
276
- const normalizedPath = normalize(absolutePath)
277
- return normalizedPath.startsWith(getSessionMemoryDir())
278
- }
279
-
280
- /**
281
- * Check if file is within the current project's directory.
282
- * Path format: ~/.claude/projects/{sanitized-cwd}/...
283
- */
284
- function isProjectDirPath(absolutePath: string): boolean {
285
- const projectDir = getProjectDir(getCwd())
286
- // SECURITY: Normalize to prevent path traversal bypasses via .. segments
287
- const normalizedPath = normalize(absolutePath)
288
- return (
289
- normalizedPath === projectDir || normalizedPath.startsWith(projectDir + sep)
290
- )
291
- }
292
-
293
- /**
294
- * Checks if the scratchpad directory feature is enabled.
295
- * The scratchpad is a per-session directory for Claude to write temporary files.
296
- * Controlled by the tengu_scratch Statsig gate.
297
- */
298
- export function isScratchpadEnabled(): boolean {
299
- return checkStatsigFeatureGate_CACHED_MAY_BE_STALE('tengu_scratch')
300
- }
301
-
302
- /**
303
- * Returns the user-specific Claude temp directory name.
304
- * On Unix: 'claude-{uid}' to prevent multi-user permission conflicts
305
- * On Windows: 'claude' (tmpdir() is already per-user)
306
- */
307
- export function getClaudeTempDirName(): string {
308
- if (getPlatform() === 'windows') {
309
- return 'claude'
310
- }
311
- // Use UID to create per-user directories, preventing permission conflicts
312
- // when multiple users share the same /tmp directory
313
- const uid = process.getuid?.() ?? 0
314
- return `claude-${uid}`
315
- }
316
-
317
- /**
318
- * Returns the Claude temp directory path with symlinks resolved.
319
- * Uses TMPDIR env var if set, otherwise:
320
- * - On Unix: /tmp/claude-{uid}/ (resolved to /private/tmp/claude-{uid}/ on macOS)
321
- * - On Windows: {tmpdir}/claude/ (e.g., C:\Users\{user}\AppData\Local\Temp\claude\)
322
- * This is a per-user temporary directory used by Claude Code for all temp files.
323
- *
324
- * NOTE: We resolve symlinks to ensure this path matches the resolved paths used
325
- * in permission checks. On macOS, /tmp is a symlink to /private/tmp, so without
326
- * resolution, paths like /tmp/claude-{uid}/... wouldn't match /private/tmp/claude-{uid}/...
327
- */
328
- // Memoized: called per-tool from permission checks (yoloClassifier, sandbox-adapter)
329
- // and per-turn from BashTool prompt. Inputs (CLAUDE_CODE_TMPDIR env + platform) are
330
- // fixed at startup, and the realpath of the system tmp dir does not change mid-session.
331
- export const getClaudeTempDir = memoize(function getClaudeTempDir(): string {
332
- const baseTmpDir =
333
- process.env.CLAUDE_CODE_TMPDIR ||
334
- (getPlatform() === 'windows' ? tmpdir() : '/tmp')
335
-
336
- // Resolve symlinks in the base temp directory (e.g., /tmp -> /private/tmp on macOS)
337
- // This ensures the path matches resolved paths in permission checks
338
- const fs = getFsImplementation()
339
- let resolvedBaseTmpDir = baseTmpDir
340
- try {
341
- resolvedBaseTmpDir = fs.realpathSync(baseTmpDir)
342
- } catch {
343
- // If resolution fails, use the original path
344
- }
345
-
346
- return join(resolvedBaseTmpDir, getClaudeTempDirName()) + sep
347
- })
348
-
349
- /**
350
- * Root for bundled-skill file extraction (see bundledSkills.ts).
351
- *
352
- * SECURITY: The per-process random nonce is the load-bearing defense here.
353
- * Every other path component (uid, VERSION, skill name, file keys) is public
354
- * knowledge, so without it a local attacker can pre-create the tree on a
355
- * shared /tmp — sticky bit prevents deletion, not creation — and either
356
- * symlink an intermediate directory (O_NOFOLLOW only checks the final
357
- * component) or own a parent dir and swap file contents post-write for prompt
358
- * injection via the read allowlist. diskOutput.ts gets the same property from
359
- * the session-ID UUID in its path.
360
- *
361
- * Memoized so the extraction writes and the permission check agree on the
362
- * path for the life of the process. Version-scoped so stale extractions from
363
- * other binaries don't fall under the allowlist.
364
- */
365
- export const getBundledSkillsRoot = memoize(
366
- function getBundledSkillsRoot(): string {
367
- const nonce = randomBytes(16).toString('hex')
368
- return join(getClaudeTempDir(), 'bundled-skills', MACRO.VERSION, nonce)
369
- },
370
- )
371
-
372
- /**
373
- * Returns the project temp directory path with trailing separator.
374
- * Path format: /tmp/claude-{uid}/{sanitized-cwd}/
375
- */
376
- export function getProjectTempDir(): string {
377
- return join(getClaudeTempDir(), sanitizePath(getOriginalCwd())) + sep
378
- }
379
-
380
- /**
381
- * Returns the scratchpad directory path for the current session.
382
- * Path format: /tmp/claude-{uid}/{sanitized-cwd}/{sessionId}/scratchpad/
383
- */
384
- export function getScratchpadDir(): string {
385
- return join(getProjectTempDir(), getSessionId(), 'scratchpad')
386
- }
387
-
388
- /**
389
- * Ensures the scratchpad directory exists for the current session.
390
- * Creates the directory with secure permissions (0o700) if it doesn't exist.
391
- * Returns the path to the scratchpad directory.
392
- * @throws If scratchpad feature is not enabled
393
- */
394
- export async function ensureScratchpadDir(): Promise<string> {
395
- if (!isScratchpadEnabled()) {
396
- throw new Error('Scratchpad directory feature is not enabled')
397
- }
398
-
399
- const fs = getFsImplementation()
400
- const scratchpadDir = getScratchpadDir()
401
-
402
- // Create directory recursively with secure permissions (owner-only access)
403
- // FsOperations.mkdir handles recursive: true internally and is a no-op if dir exists
404
- await fs.mkdir(scratchpadDir, { mode: 0o700 })
405
-
406
- return scratchpadDir
407
- }
408
-
409
- // Check if file is within the scratchpad directory
410
- function isScratchpadPath(absolutePath: string): boolean {
411
- if (!isScratchpadEnabled()) {
412
- return false
413
- }
414
- const scratchpadDir = getScratchpadDir()
415
- // SECURITY: Normalize the path to resolve .. segments before checking
416
- // This prevents path traversal bypasses like:
417
- // echo "malicious" > /tmp/claude-0/proj/session/scratchpad/../../../etc/passwd
418
- // Without normalization, the path would pass the startsWith check but write to /etc/passwd
419
- const normalizedPath = normalize(absolutePath)
420
- return (
421
- normalizedPath === scratchpadDir ||
422
- normalizedPath.startsWith(scratchpadDir + sep)
423
- )
424
- }
425
-
426
- /**
427
- * Check if a file path is dangerous to auto-edit without explicit permission.
428
- * This includes:
429
- * - Files in .git directories or .gitconfig files (to prevent git-based data exfiltration and code execution)
430
- * - Files in .vscode directories (to prevent VS Code settings manipulation and potential code execution)
431
- * - Files in .idea directories (to prevent JetBrains IDE settings manipulation)
432
- * - Shell configuration files (to prevent shell startup script manipulation)
433
- * - UNC paths (to prevent network file access and WebDAV attacks)
434
- */
435
- function isDangerousFilePathToAutoEdit(path: string): boolean {
436
- const absolutePath = expandPath(path)
437
- const pathSegments = absolutePath.split(sep)
438
- const fileName = pathSegments.at(-1)
439
-
440
- // Check for UNC paths (defense-in-depth to catch any patterns that might not be caught by containsVulnerableUncPath)
441
- // Block anything starting with \\ or // as these are potentially UNC paths that could access network resources
442
- if (path.startsWith('\\\\') || path.startsWith('//')) {
443
- return true
444
- }
445
-
446
- // Check if path is within dangerous directories (case-insensitive to prevent bypasses)
447
- for (let i = 0; i < pathSegments.length; i++) {
448
- const segment = pathSegments[i]!
449
- const normalizedSegment = normalizeCaseForComparison(segment)
450
-
451
- for (const dir of DANGEROUS_DIRECTORIES) {
452
- if (normalizedSegment !== normalizeCaseForComparison(dir)) {
453
- continue
454
- }
455
-
456
- // Special case: .claude/worktrees/ is a structural path (where Claude stores
457
- // git worktrees), not a user-created dangerous directory. Skip the .claude
458
- // segment when it's followed by 'worktrees'. Any nested .claude directories
459
- // within the worktree (not followed by 'worktrees') are still blocked.
460
- if (dir === '.claude') {
461
- const nextSegment = pathSegments[i + 1]
462
- if (
463
- nextSegment &&
464
- normalizeCaseForComparison(nextSegment) === 'worktrees'
465
- ) {
466
- break // Skip this .claude, continue checking other segments
467
- }
468
- }
469
-
470
- return true
471
- }
472
- }
473
-
474
- // Check for dangerous configuration files (case-insensitive)
475
- if (fileName) {
476
- const normalizedFileName = normalizeCaseForComparison(fileName)
477
- if (
478
- (DANGEROUS_FILES as readonly string[]).some(
479
- dangerousFile =>
480
- normalizeCaseForComparison(dangerousFile) === normalizedFileName,
481
- )
482
- ) {
483
- return true
484
- }
485
- }
486
-
487
- return false
488
- }
489
-
490
- /**
491
- * Detects suspicious Windows path patterns that could bypass security checks.
492
- * These patterns include:
493
- * - NTFS Alternate Data Streams (e.g., file.txt::$DATA or file.txt:stream)
494
- * - 8.3 short names (e.g., GIT~1, CLAUDE~1, SETTIN~1.JSON)
495
- * - Long path prefixes (e.g., \\?\C:\..., \\.\C:\..., //?/C:/..., //./C:/...)
496
- * - Trailing dots and spaces (e.g., .git., .claude , .bashrc...)
497
- * - DOS device names (e.g., .git.CON, settings.json.PRN, .bashrc.AUX)
498
- * - Three or more consecutive dots (e.g., .../file.txt, path/.../file, file...txt)
499
- *
500
- * When detected, these paths should always require manual approval to prevent
501
- * bypassing security checks through path canonicalization vulnerabilities.
502
- *
503
- * ## Why Check on All Platforms?
504
- *
505
- * While these patterns are primarily Windows-specific, NTFS filesystems can be
506
- * mounted on Linux and macOS (e.g., using ntfs-3g). On these systems, the same
507
- * bypass techniques would work - an attacker could use short names or long path
508
- * prefixes to bypass security checks. Therefore, we check for these patterns on
509
- * all platforms to ensure comprehensive protection. (Note: the ADS colon check
510
- * is Windows/WSL-only, since colon syntax is only interpreted by the Windows
511
- * kernel; on Linux/macOS, NTFS ADS is accessed via xattrs, not colon syntax.)
512
- *
513
- * ## Why Detection Instead of Normalization?
514
- *
515
- * An alternative approach would be to normalize these paths using Windows APIs
516
- * (e.g., GetLongPathNameW). However, this approach has significant challenges:
517
- *
518
- * 1. **Filesystem dependency**: Short path normalization is relative to files that
519
- * currently exist on the filesystem. This creates issues when writing to new
520
- * files since they don't exist yet and cannot be normalized.
521
- *
522
- * 2. **Race conditions**: The filesystem state can change between normalization
523
- * and actual file access, creating TOCTOU (Time-Of-Check-Time-Of-Use) vulnerabilities.
524
- *
525
- * 3. **Complexity**: Proper normalization requires Windows-specific APIs, handling
526
- * multiple edge cases, and dealing with various path formats (UNC, device paths, etc.).
527
- *
528
- * 4. **Reliability**: Pattern detection is more predictable and doesn't depend on
529
- * external system state.
530
- *
531
- * If you are considering adding normalization for these paths, please reach out to
532
- * AppSec first to discuss the security implications and implementation approach.
533
- *
534
- * @param path The path to check for suspicious patterns
535
- * @returns true if suspicious Windows path patterns are detected
536
- */
537
- function hasSuspiciousWindowsPathPattern(path: string): boolean {
538
- // Check for NTFS Alternate Data Streams
539
- // Look for ':' after position 2 to skip drive letters (e.g., C:\)
540
- // Examples: file.txt::$DATA, .bashrc:hidden, settings.json:stream
541
- // Note: ADS colon syntax is only interpreted by the Windows kernel. On WSL,
542
- // DrvFs mounts route file operations through the Windows kernel, so colon
543
- // syntax is still interpreted as ADS separators. On Linux/macOS (non-WSL),
544
- // even when NTFS is mounted, ADS is accessed via xattrs (ntfs-3g) not colon
545
- // syntax, and colons are valid filename characters.
546
- if (getPlatform() === 'windows' || getPlatform() === 'wsl') {
547
- const colonIndex = path.indexOf(':', 2)
548
- if (colonIndex !== -1) {
549
- return true
550
- }
551
- }
552
-
553
- // Check for 8.3 short names
554
- // Look for '~' followed by a digit
555
- // Examples: GIT~1, CLAUDE~1, SETTIN~1.JSON, BASHRC~1
556
- if (/~\d/.test(path)) {
557
- return true
558
- }
559
-
560
- // Check for long path prefixes (both backslash and forward slash variants)
561
- // Examples: \\?\C:\Users\..., \\.\C:\..., //?/C:/..., //./C:/...
562
- if (
563
- path.startsWith('\\\\?\\') ||
564
- path.startsWith('\\\\.\\') ||
565
- path.startsWith('//?/') ||
566
- path.startsWith('//./')
567
- ) {
568
- return true
569
- }
570
-
571
- // Check for trailing dots and spaces that Windows strips during path resolution
572
- // Examples: .git., .claude , .bashrc..., settings.json.
573
- // This can bypass string matching if ".git" is blocked but ".git." is used
574
- if (/[.\s]+$/.test(path)) {
575
- return true
576
- }
577
-
578
- // Check for DOS device names that Windows treats as special devices
579
- // Examples: .git.CON, settings.json.PRN, .bashrc.AUX
580
- // Device names: CON, PRN, AUX, NUL, COM1-9, LPT1-9
581
- if (/\.(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])$/i.test(path)) {
582
- return true
583
- }
584
-
585
- // Check for three or more consecutive dots (...) when used as a path component
586
- // This pattern can be used to bypass security checks or create confusion
587
- // Examples: .../file.txt, path/.../file
588
- // Only block when dots are preceded AND followed by path separators (/ or \)
589
- // This allows legitimate uses like Next.js catch-all routes [...]name]
590
- if (/(^|\/|\\)\.{3,}(\/|\\|$)/.test(path)) {
591
- return true
592
- }
593
-
594
- // Check for UNC paths (on all platforms for defense-in-depth)
595
- // Examples: \\server\share, \\foo.com\file, //server/share, \\192.168.1.1\share
596
- // UNC paths can access remote resources, leak credentials, and bypass working directory restrictions
597
- if (containsVulnerableUncPath(path)) {
598
- return true
599
- }
600
-
601
- return false
602
- }
603
-
604
- /**
605
- * Checks if a path is safe for auto-editing (acceptEdits mode).
606
- * Returns information about why the path is unsafe, or null if all checks pass.
607
- *
608
- * This function performs comprehensive safety checks including:
609
- * - Suspicious Windows path patterns (NTFS streams, 8.3 names, long path prefixes, etc.)
610
- * - Claude config files (.claude/settings.json, .claude/commands/, .claude/agents/)
611
- * - MCP CLI state files (managed internally by Claude Code)
612
- * - Dangerous files (.bashrc, .gitconfig, .git/, .vscode/, .idea/, etc.)
613
- *
614
- * IMPORTANT: This function checks BOTH the original path AND resolved symlink paths
615
- * to prevent bypasses via symlinks pointing to protected files.
616
- *
617
- * @param path The path to check for safety
618
- * @returns Object with safe=false and message if unsafe, or { safe: true } if all checks pass
619
- */
620
- export function checkPathSafetyForAutoEdit(
621
- path: string,
622
- precomputedPathsToCheck?: readonly string[],
623
- ):
624
- | { safe: true }
625
- | { safe: false; message: string; classifierApprovable: boolean } {
626
- // Get all paths to check (original + symlink resolved paths)
627
- const pathsToCheck =
628
- precomputedPathsToCheck ?? getPathsForPermissionCheck(path)
629
-
630
- // Check for suspicious Windows path patterns on all paths
631
- for (const pathToCheck of pathsToCheck) {
632
- if (hasSuspiciousWindowsPathPattern(pathToCheck)) {
633
- return {
634
- safe: false,
635
- message: `Claude requested permissions to write to ${path}, which contains a suspicious Windows path pattern that requires manual approval.`,
636
- classifierApprovable: false,
637
- }
638
- }
639
- }
640
-
641
- // Check for Claude config files on all paths
642
- for (const pathToCheck of pathsToCheck) {
643
- if (isClaudeConfigFilePath(pathToCheck)) {
644
- return {
645
- safe: false,
646
- message: `Claude requested permissions to write to ${path}, but you haven't granted it yet.`,
647
- classifierApprovable: true,
648
- }
649
- }
650
- }
651
-
652
- // Check for dangerous files on all paths
653
- for (const pathToCheck of pathsToCheck) {
654
- if (isDangerousFilePathToAutoEdit(pathToCheck)) {
655
- return {
656
- safe: false,
657
- message: `Claude requested permissions to edit ${path} which is a sensitive file.`,
658
- classifierApprovable: true,
659
- }
660
- }
661
- }
662
-
663
- // All safety checks passed
664
- return { safe: true }
665
- }
666
-
667
- export function allWorkingDirectories(
668
- context: ToolPermissionContext,
669
- ): Set<string> {
670
- return new Set([
671
- getOriginalCwd(),
672
- ...context.additionalWorkingDirectories.keys(),
673
- ])
674
- }
675
-
676
- // Working directories are session-stable; memoize their resolved forms to
677
- // avoid repeated existsSync/lstatSync/realpathSync syscalls on every
678
- // permission check. Keyed by path string — getPathsForPermissionCheck is
679
- // deterministic for existing directories within a session.
680
- // Exported for test/preload.ts cache clearing (shard-isolation).
681
- export const getResolvedWorkingDirPaths = memoize(getPathsForPermissionCheck)
682
-
683
- export function pathInAllowedWorkingPath(
684
- path: string,
685
- toolPermissionContext: ToolPermissionContext,
686
- precomputedPathsToCheck?: readonly string[],
687
- ): boolean {
688
- // Check both the original path and the resolved symlink path
689
- const pathsToCheck =
690
- precomputedPathsToCheck ?? getPathsForPermissionCheck(path)
691
-
692
- // Resolve working directories the same way we resolve input paths so
693
- // comparisons are symmetric. Without this, a resolved input path
694
- // (e.g. /System/Volumes/Data/home/... on macOS) would not match an
695
- // unresolved working directory (/home/...), causing false denials.
696
- const workingPaths = Array.from(
697
- allWorkingDirectories(toolPermissionContext),
698
- ).flatMap(wp => getResolvedWorkingDirPaths(wp))
699
-
700
- // All paths must be within allowed working paths
701
- // If any resolved path is outside, deny access
702
- return pathsToCheck.every(pathToCheck =>
703
- workingPaths.some(workingPath =>
704
- pathInWorkingPath(pathToCheck, workingPath),
705
- ),
706
- )
707
- }
708
-
709
- export function pathInWorkingPath(path: string, workingPath: string): boolean {
710
- const absolutePath = expandPath(path)
711
- const absoluteWorkingPath = expandPath(workingPath)
712
-
713
- // On macOS, handle common symlink issues:
714
- // - /var -> /private/var
715
- // - /tmp -> /private/tmp
716
- const normalizedPath = absolutePath
717
- .replace(/^\/private\/var\//, '/var/')
718
- .replace(/^\/private\/tmp(\/|$)/, '/tmp$1')
719
- const normalizedWorkingPath = absoluteWorkingPath
720
- .replace(/^\/private\/var\//, '/var/')
721
- .replace(/^\/private\/tmp(\/|$)/, '/tmp$1')
722
-
723
- // Normalize case for case-insensitive comparison to prevent bypassing security
724
- // checks on case-insensitive filesystems (macOS/Windows) like .cLauDe/CoMmAnDs
725
- const caseNormalizedPath = normalizeCaseForComparison(normalizedPath)
726
- const caseNormalizedWorkingPath = normalizeCaseForComparison(
727
- normalizedWorkingPath,
728
- )
729
-
730
- // Use cross-platform relative path helper
731
- const relative = relativePath(caseNormalizedWorkingPath, caseNormalizedPath)
732
-
733
- // Same path
734
- if (relative === '') {
735
- return true
736
- }
737
-
738
- if (containsPathTraversal(relative)) {
739
- return false
740
- }
741
-
742
- // Path is inside (relative path that doesn't go up)
743
- return !posix.isAbsolute(relative)
744
- }
745
-
746
- function rootPathForSource(source: PermissionRuleSource): string {
747
- switch (source) {
748
- case 'cliArg':
749
- case 'command':
750
- case 'session':
751
- return expandPath(getOriginalCwd())
752
- case 'userSettings':
753
- case 'policySettings':
754
- case 'projectSettings':
755
- case 'localSettings':
756
- case 'flagSettings':
757
- return getSettingsRootPathForSource(source)
758
- }
759
- }
760
-
761
- function prependDirSep(path: string): string {
762
- return posix.join(DIR_SEP, path)
763
- }
764
-
765
- function normalizePatternToPath({
766
- patternRoot,
767
- pattern,
768
- rootPath,
769
- }: {
770
- patternRoot: string
771
- pattern: string
772
- rootPath: string
773
- }): string | null {
774
- // If the pattern root + pattern combination starts with our reference root
775
- const fullPattern = posix.join(patternRoot, pattern)
776
- if (patternRoot === rootPath) {
777
- // If the pattern root exactly matches our reference root no need to change
778
- return prependDirSep(pattern)
779
- } else if (fullPattern.startsWith(`${rootPath}${DIR_SEP}`)) {
780
- // Extract the relative part
781
- const relativePart = fullPattern.slice(rootPath.length)
782
- return prependDirSep(relativePart)
783
- } else {
784
- // Handle patterns that are inside the reference root but not starting with it
785
- const relativePath = posix.relative(rootPath, patternRoot)
786
- if (
787
- !relativePath ||
788
- relativePath.startsWith(`..${DIR_SEP}`) ||
789
- relativePath === '..'
790
- ) {
791
- // Pattern is outside the reference root, so it can be skipped
792
- return null
793
- } else {
794
- const relativePattern = posix.join(relativePath, pattern)
795
- return prependDirSep(relativePattern)
796
- }
797
- }
798
- }
799
-
800
- export function normalizePatternsToPath(
801
- patternsByRoot: Map<string | null, string[]>,
802
- root: string,
803
- ): string[] {
804
- // null root means the pattern can match anywhere
805
- const result = new Set(patternsByRoot.get(null) ?? [])
806
-
807
- for (const [patternRoot, patterns] of patternsByRoot.entries()) {
808
- if (patternRoot === null) {
809
- // already added
810
- continue
811
- }
812
-
813
- // Check each pattern to see if the full path starts with our reference root
814
- for (const pattern of patterns) {
815
- const normalizedPattern = normalizePatternToPath({
816
- patternRoot,
817
- pattern,
818
- rootPath: root,
819
- })
820
- if (normalizedPattern) {
821
- result.add(normalizedPattern)
822
- }
823
- }
824
- }
825
- return Array.from(result)
826
- }
827
-
828
- /**
829
- * Collects all deny rules for file read permissions and returns their ignore patterns
830
- * Each pattern must be resolved relative to its root (map key)
831
- * Null keys are used for patterns that don't have a root
832
- *
833
- * This is used to hide files that are blocked by Read deny rules.
834
- *
835
- * @param toolPermissionContext
836
- */
837
- export function getFileReadIgnorePatterns(
838
- toolPermissionContext: ToolPermissionContext,
839
- ): Map<string | null, string[]> {
840
- const patternsByRoot = getPatternsByRoot(
841
- toolPermissionContext,
842
- 'read',
843
- 'deny',
844
- )
845
- const result = new Map<string | null, string[]>()
846
- for (const [patternRoot, patternMap] of patternsByRoot.entries()) {
847
- result.set(patternRoot, Array.from(patternMap.keys()))
848
- }
849
-
850
- return result
851
- }
852
-
853
- function patternWithRoot(
854
- pattern: string,
855
- source: PermissionRuleSource,
856
- ): {
857
- relativePattern: string
858
- root: string | null
859
- } {
860
- if (pattern.startsWith(`${DIR_SEP}${DIR_SEP}`)) {
861
- // Patterns starting with // resolve relative to /
862
- const patternWithoutDoubleSlash = pattern.slice(1)
863
-
864
- // On Windows, check if this is a POSIX-style drive path like //c/Users/...
865
- // Note: UNC paths (//server/share) will not match this regex and will be treated
866
- // as root-relative patterns, which may need separate handling in the future
867
- if (
868
- getPlatform() === 'windows' &&
869
- patternWithoutDoubleSlash.match(/^\/[a-z]\//i)
870
- ) {
871
- // Convert POSIX path to Windows format
872
- // The pattern is like /c/Users/... so we convert it to C:\Users\...
873
- const driveLetter = patternWithoutDoubleSlash[1]?.toUpperCase() ?? 'C'
874
- // Keep the pattern in POSIX format since relativePath returns POSIX paths
875
- const pathAfterDrive = patternWithoutDoubleSlash.slice(2)
876
-
877
- // Extract the drive root (C:\) and the rest of the pattern
878
- const driveRoot = `${driveLetter}:\\`
879
- const relativeFromDrive = pathAfterDrive.startsWith('/')
880
- ? pathAfterDrive.slice(1)
881
- : pathAfterDrive
882
-
883
- return {
884
- relativePattern: relativeFromDrive,
885
- root: driveRoot,
886
- }
887
- }
888
-
889
- return {
890
- relativePattern: patternWithoutDoubleSlash,
891
- root: DIR_SEP,
892
- }
893
- } else if (pattern.startsWith(`~${DIR_SEP}`)) {
894
- // Patterns starting with ~/ resolve relative to homedir
895
- return {
896
- relativePattern: pattern.slice(1),
897
- root: homedir().normalize('NFC'),
898
- }
899
- } else if (pattern.startsWith(DIR_SEP)) {
900
- // Patterns starting with / resolve relative to the directory where settings are stored (without .claude/)
901
- return {
902
- relativePattern: pattern,
903
- root: rootPathForSource(source),
904
- }
905
- }
906
- // No root specified, put it with all the other patterns
907
- // Normalize patterns that start with "./" to remove the prefix
908
- // This ensures that patterns like "./.env" match files like ".env"
909
- let normalizedPattern = pattern
910
- if (pattern.startsWith(`.${DIR_SEP}`)) {
911
- normalizedPattern = pattern.slice(2)
912
- }
913
- return {
914
- relativePattern: normalizedPattern,
915
- root: null,
916
- }
917
- }
918
-
919
- function getPatternsByRoot(
920
- toolPermissionContext: ToolPermissionContext,
921
- toolType: 'edit' | 'read',
922
- behavior: 'allow' | 'deny' | 'ask',
923
- ): Map<string | null, Map<string, PermissionRule>> {
924
- const toolName = (() => {
925
- switch (toolType) {
926
- case 'edit':
927
- // Apply Edit tool rules to any tool editing files
928
- return FILE_EDIT_TOOL_NAME
929
- case 'read':
930
- // Apply Read tool rules to any tool reading files
931
- return FILE_READ_TOOL_NAME
932
- }
933
- })()
934
-
935
- const rules = getRuleByContentsForToolName(
936
- toolPermissionContext,
937
- toolName,
938
- behavior,
939
- )
940
- // Resolve rules relative to path based on source
941
- const patternsByRoot = new Map<string | null, Map<string, PermissionRule>>()
942
- for (const [pattern, rule] of rules.entries()) {
943
- const { relativePattern, root } = patternWithRoot(pattern, rule.source)
944
- let patternsForRoot = patternsByRoot.get(root)
945
- if (patternsForRoot === undefined) {
946
- patternsForRoot = new Map<string, PermissionRule>()
947
- patternsByRoot.set(root, patternsForRoot)
948
- }
949
- // Store the rule keyed by the root
950
- patternsForRoot.set(relativePattern, rule)
951
- }
952
- return patternsByRoot
953
- }
954
-
955
- export function matchingRuleForInput(
956
- path: string,
957
- toolPermissionContext: ToolPermissionContext,
958
- toolType: 'edit' | 'read',
959
- behavior: 'allow' | 'deny' | 'ask',
960
- ): PermissionRule | null {
961
- let fileAbsolutePath = expandPath(path)
962
-
963
- // On Windows, convert to POSIX format to match against permission patterns
964
- if (getPlatform() === 'windows' && fileAbsolutePath.includes('\\')) {
965
- fileAbsolutePath = windowsPathToPosixPath(fileAbsolutePath)
966
- }
967
-
968
- const patternsByRoot = getPatternsByRoot(
969
- toolPermissionContext,
970
- toolType,
971
- behavior,
972
- )
973
-
974
- // Check each root for a matching pattern
975
- for (const [root, patternMap] of patternsByRoot.entries()) {
976
- // Transform patterns for the ignore library
977
- const patterns = Array.from(patternMap.keys()).map(pattern => {
978
- let adjustedPattern = pattern
979
-
980
- // Remove /** suffix - ignore library treats 'path' as matching both
981
- // the path itself and everything inside it
982
- if (adjustedPattern.endsWith('/**')) {
983
- adjustedPattern = adjustedPattern.slice(0, -3)
984
- }
985
-
986
- return adjustedPattern
987
- })
988
-
989
- const ig = ignore().add(patterns)
990
-
991
- // Use cross-platform relative path helper for POSIX-style patterns
992
- const relativePathStr = relativePath(
993
- root ?? getCwd(),
994
- fileAbsolutePath ?? getCwd(),
995
- )
996
-
997
- if (relativePathStr.startsWith(`..${DIR_SEP}`)) {
998
- // The path is outside the root, so ignore it
999
- continue
1000
- }
1001
-
1002
- // Important: ig.test throws if you give it an empty string
1003
- if (!relativePathStr) {
1004
- continue
1005
- }
1006
-
1007
- const igResult = ig.test(relativePathStr)
1008
-
1009
- if (igResult.ignored && igResult.rule) {
1010
- // Map the matched pattern back to the original rule
1011
- const originalPattern = igResult.rule.pattern
1012
-
1013
- // Check if this was a /** pattern we simplified
1014
- const withWildcard = originalPattern + '/**'
1015
- if (patternMap.has(withWildcard)) {
1016
- return patternMap.get(withWildcard) ?? null
1017
- }
1018
-
1019
- return patternMap.get(originalPattern) ?? null
1020
- }
1021
- }
1022
-
1023
- // No matching rule found
1024
- return null
1025
- }
1026
-
1027
- /**
1028
- * Permission result for read permission for the specified tool & tool input
1029
- */
1030
- export function checkReadPermissionForTool(
1031
- tool: Tool,
1032
- input: { [key: string]: unknown },
1033
- toolPermissionContext: ToolPermissionContext,
1034
- ): PermissionDecision {
1035
- if (typeof tool.getPath !== 'function') {
1036
- return {
1037
- behavior: 'ask',
1038
- message: `Claude requested permissions to use ${tool.name}, but you haven't granted it yet.`,
1039
- }
1040
- }
1041
- const path = tool.getPath(input)
1042
-
1043
- // Get paths to check (includes both original and resolved symlinks).
1044
- // Computed once here and threaded through checkWritePermissionForTool →
1045
- // checkPathSafetyForAutoEdit → pathInAllowedWorkingPath to avoid redundant
1046
- // existsSync/lstatSync/realpathSync syscalls on the same path (previously
1047
- // 6× = 30 syscalls per Read permission check).
1048
- const pathsToCheck = getPathsForPermissionCheck(path)
1049
-
1050
- // 1. Defense-in-depth: Block UNC paths early (before other checks)
1051
- // This catches paths starting with \\ or // that could access network resources
1052
- // This may catch some UNC patterns not detected by containsVulnerableUncPath
1053
- for (const pathToCheck of pathsToCheck) {
1054
- if (pathToCheck.startsWith('\\\\') || pathToCheck.startsWith('//')) {
1055
- return {
1056
- behavior: 'ask',
1057
- message: `Claude requested permissions to read from ${path}, which appears to be a UNC path that could access network resources.`,
1058
- decisionReason: {
1059
- type: 'other',
1060
- reason: 'UNC path detected (defense-in-depth check)',
1061
- },
1062
- }
1063
- }
1064
- }
1065
-
1066
- // 2. Check for suspicious Windows path patterns (defense in depth)
1067
- for (const pathToCheck of pathsToCheck) {
1068
- if (hasSuspiciousWindowsPathPattern(pathToCheck)) {
1069
- return {
1070
- behavior: 'ask',
1071
- message: `Claude requested permissions to read from ${path}, which contains a suspicious Windows path pattern that requires manual approval.`,
1072
- decisionReason: {
1073
- type: 'other',
1074
- reason:
1075
- 'Path contains suspicious Windows-specific patterns (alternate data streams, short names, long path prefixes, or three or more consecutive dots) that require manual verification',
1076
- },
1077
- }
1078
- }
1079
- }
1080
-
1081
- // 3. Check for READ-SPECIFIC deny rules first - check both the original path and resolved symlink path
1082
- // SECURITY: This must come before any allow checks (including "edit access implies read access")
1083
- // to prevent bypassing explicit read deny rules
1084
- for (const pathToCheck of pathsToCheck) {
1085
- const denyRule = matchingRuleForInput(
1086
- pathToCheck,
1087
- toolPermissionContext,
1088
- 'read',
1089
- 'deny',
1090
- )
1091
- if (denyRule) {
1092
- return {
1093
- behavior: 'deny',
1094
- message: `Permission to read ${path} has been denied.`,
1095
- decisionReason: {
1096
- type: 'rule',
1097
- rule: denyRule,
1098
- },
1099
- }
1100
- }
1101
- }
1102
-
1103
- // 4. Check for READ-SPECIFIC ask rules - check both the original path and resolved symlink path
1104
- // SECURITY: This must come before implicit allow checks to ensure explicit ask rules are honored
1105
- for (const pathToCheck of pathsToCheck) {
1106
- const askRule = matchingRuleForInput(
1107
- pathToCheck,
1108
- toolPermissionContext,
1109
- 'read',
1110
- 'ask',
1111
- )
1112
- if (askRule) {
1113
- return {
1114
- behavior: 'ask',
1115
- message: `Claude requested permissions to read from ${path}, but you haven't granted it yet.`,
1116
- decisionReason: {
1117
- type: 'rule',
1118
- rule: askRule,
1119
- },
1120
- }
1121
- }
1122
- }
1123
-
1124
- // 5. Edit access implies read access (but only if no read-specific deny/ask rules exist)
1125
- // We check this after read-specific rules so that explicit read restrictions take precedence
1126
- const editResult = checkWritePermissionForTool(
1127
- tool,
1128
- input,
1129
- toolPermissionContext,
1130
- pathsToCheck,
1131
- )
1132
- if (editResult.behavior === 'allow') {
1133
- return editResult
1134
- }
1135
-
1136
- // 6. Allow reads in working directories
1137
- const isInWorkingDir = pathInAllowedWorkingPath(
1138
- path,
1139
- toolPermissionContext,
1140
- pathsToCheck,
1141
- )
1142
- if (isInWorkingDir) {
1143
- return {
1144
- behavior: 'allow',
1145
- updatedInput: input,
1146
- decisionReason: {
1147
- type: 'mode',
1148
- mode: 'default',
1149
- },
1150
- }
1151
- }
1152
-
1153
- // 7. Allow reads from internal harness paths (session-memory, plans, tool-results)
1154
- const absolutePath = expandPath(path)
1155
- const internalReadResult = checkReadableInternalPath(absolutePath, input)
1156
- if (internalReadResult.behavior !== 'passthrough') {
1157
- return internalReadResult
1158
- }
1159
-
1160
- // 8. Check for allow rules
1161
- const allowRule = matchingRuleForInput(
1162
- path,
1163
- toolPermissionContext,
1164
- 'read',
1165
- 'allow',
1166
- )
1167
- if (allowRule) {
1168
- return {
1169
- behavior: 'allow',
1170
- updatedInput: input,
1171
- decisionReason: {
1172
- type: 'rule',
1173
- rule: allowRule,
1174
- },
1175
- }
1176
- }
1177
-
1178
- // 12. Default to asking for permission
1179
- // At this point, isInWorkingDir is false (from step #6), so path is outside working directories
1180
- return {
1181
- behavior: 'ask',
1182
- message: `Claude requested permissions to read from ${path}, but you haven't granted it yet.`,
1183
- suggestions: generateSuggestions(
1184
- path,
1185
- 'read',
1186
- toolPermissionContext,
1187
- pathsToCheck,
1188
- ),
1189
- decisionReason: {
1190
- type: 'workingDir',
1191
- reason: 'Path is outside allowed working directories',
1192
- },
1193
- }
1194
- }
1195
-
1196
- /**
1197
- * Permission result for write permission for the specified tool & tool input.
1198
- *
1199
- * @param precomputedPathsToCheck - Optional cached result of
1200
- * `getPathsForPermissionCheck(tool.getPath(input))`. Callers MUST derive this
1201
- * from the same `tool` and `input` in the same synchronous frame — `path` is
1202
- * re-derived internally for error messages and internal-path checks, so a
1203
- * stale value would silently check deny rules for the wrong path.
1204
- */
1205
- export function checkWritePermissionForTool<Input extends AnyObject>(
1206
- tool: Tool<Input>,
1207
- input: z.infer<Input>,
1208
- toolPermissionContext: ToolPermissionContext,
1209
- precomputedPathsToCheck?: readonly string[],
1210
- ): PermissionDecision {
1211
- if (typeof tool.getPath !== 'function') {
1212
- return {
1213
- behavior: 'ask',
1214
- message: `Claude requested permissions to use ${tool.name}, but you haven't granted it yet.`,
1215
- }
1216
- }
1217
- const path = tool.getPath(input)
1218
-
1219
- // 1. Check for deny rules - check both the original path and resolved symlink path
1220
- const pathsToCheck =
1221
- precomputedPathsToCheck ?? getPathsForPermissionCheck(path)
1222
- for (const pathToCheck of pathsToCheck) {
1223
- const denyRule = matchingRuleForInput(
1224
- pathToCheck,
1225
- toolPermissionContext,
1226
- 'edit',
1227
- 'deny',
1228
- )
1229
- if (denyRule) {
1230
- return {
1231
- behavior: 'deny',
1232
- message: `Permission to edit ${path} has been denied.`,
1233
- decisionReason: {
1234
- type: 'rule',
1235
- rule: denyRule,
1236
- },
1237
- }
1238
- }
1239
- }
1240
-
1241
- // 1.5. Allow writes to internal editable paths (plan files, scratchpad)
1242
- // This MUST come before isDangerousFilePathToAutoEdit check since .claude is a dangerous directory
1243
- const absolutePathForEdit = expandPath(path)
1244
- const internalEditResult = checkEditableInternalPath(
1245
- absolutePathForEdit,
1246
- input,
1247
- )
1248
- if (internalEditResult.behavior !== 'passthrough') {
1249
- return internalEditResult
1250
- }
1251
-
1252
- // 1.6. Check for .claude/** allow rules BEFORE safety checks
1253
- // This allows session-level permissions to bypass the safety blocks for .claude/
1254
- // We only allow this for session-level rules to prevent users from accidentally
1255
- // permanently granting broad access to their .claude/ folder.
1256
- //
1257
- // matchingRuleForInput returns the first match across all sources. If the user
1258
- // also has a broader Edit(.claude) rule in userSettings (e.g. from sandbox
1259
- // write-allow conversion), that rule would be found first and its source check
1260
- // below would fail. Scope the search to session-only rules so the dialog's
1261
- // "allow Claude to edit its own settings for this session" option actually works.
1262
- const claudeFolderAllowRule = matchingRuleForInput(
1263
- path,
1264
- {
1265
- ...toolPermissionContext,
1266
- alwaysAllowRules: {
1267
- session: toolPermissionContext.alwaysAllowRules.session ?? [],
1268
- },
1269
- },
1270
- 'edit',
1271
- 'allow',
1272
- )
1273
- if (claudeFolderAllowRule) {
1274
- // Check if this rule is scoped under .claude/ (project or global).
1275
- // Accepts both the broad patterns ('/.claude/**', '~/.claude/**') and
1276
- // narrowed ones like '/.claude/skills/my-skill/**' so users can grant
1277
- // session access to a single skill without also exposing settings.json
1278
- // or hooks/. The rule already matched the path via matchingRuleForInput;
1279
- // this is an additional scope check. Reject '..' to prevent a rule like
1280
- // '/.claude/../**' from leaking this bypass outside .claude/.
1281
- const ruleContent = claudeFolderAllowRule.ruleValue.ruleContent
1282
- if (
1283
- ruleContent &&
1284
- (ruleContent.startsWith(CLAUDE_FOLDER_PERMISSION_PATTERN.slice(0, -2)) ||
1285
- ruleContent.startsWith(
1286
- GLOBAL_CLAUDE_FOLDER_PERMISSION_PATTERN.slice(0, -2),
1287
- )) &&
1288
- !ruleContent.includes('..') &&
1289
- ruleContent.endsWith('/**')
1290
- ) {
1291
- return {
1292
- behavior: 'allow',
1293
- updatedInput: input,
1294
- decisionReason: {
1295
- type: 'rule',
1296
- rule: claudeFolderAllowRule,
1297
- },
1298
- }
1299
- }
1300
- }
1301
-
1302
- // 1.7. Check comprehensive safety validations (Windows patterns, Claude config, dangerous files)
1303
- // This MUST come before checking allow rules to prevent users from accidentally granting
1304
- // permission to edit protected files
1305
- const safetyCheck = checkPathSafetyForAutoEdit(path, pathsToCheck)
1306
- if (!safetyCheck.safe) {
1307
- // SDK suggestion: if under .claude/skills/{name}/, emit the narrowed
1308
- // session-scoped addRules that step 1.6 will honor on the next call.
1309
- // Everything else (.claude/settings.json, .git/, .vscode/, .idea/) falls
1310
- // back to generateSuggestions — its setMode suggestion doesn't bypass
1311
- // this check, but preserving it avoids a surprising empty array.
1312
- const skillScope = getClaudeSkillScope(path)
1313
- const safetySuggestions: PermissionUpdate[] = skillScope
1314
- ? [
1315
- {
1316
- type: 'addRules',
1317
- rules: [
1318
- {
1319
- toolName: FILE_EDIT_TOOL_NAME,
1320
- ruleContent: skillScope.pattern,
1321
- },
1322
- ],
1323
- behavior: 'allow',
1324
- destination: 'session',
1325
- },
1326
- ]
1327
- : generateSuggestions(path, 'write', toolPermissionContext, pathsToCheck)
1328
- return {
1329
- behavior: 'ask',
1330
- message: safetyCheck.message,
1331
- suggestions: safetySuggestions,
1332
- decisionReason: {
1333
- type: 'safetyCheck',
1334
- reason: safetyCheck.message,
1335
- classifierApprovable: safetyCheck.classifierApprovable,
1336
- },
1337
- }
1338
- }
1339
-
1340
- // 2. Check for ask rules - check both the original path and resolved symlink path
1341
- for (const pathToCheck of pathsToCheck) {
1342
- const askRule = matchingRuleForInput(
1343
- pathToCheck,
1344
- toolPermissionContext,
1345
- 'edit',
1346
- 'ask',
1347
- )
1348
- if (askRule) {
1349
- return {
1350
- behavior: 'ask',
1351
- message: `Claude requested permissions to write to ${path}, but you haven't granted it yet.`,
1352
- decisionReason: {
1353
- type: 'rule',
1354
- rule: askRule,
1355
- },
1356
- }
1357
- }
1358
- }
1359
-
1360
- // 3. If in acceptEdits or sandboxBashMode mode, allow all writes in original cwd
1361
- const isInWorkingDir = pathInAllowedWorkingPath(
1362
- path,
1363
- toolPermissionContext,
1364
- pathsToCheck,
1365
- )
1366
- if (toolPermissionContext.mode === 'acceptEdits' && isInWorkingDir) {
1367
- return {
1368
- behavior: 'allow',
1369
- updatedInput: input,
1370
- decisionReason: {
1371
- type: 'mode',
1372
- mode: toolPermissionContext.mode,
1373
- },
1374
- }
1375
- }
1376
-
1377
- // 4. Check for allow rules
1378
- const allowRule = matchingRuleForInput(
1379
- path,
1380
- toolPermissionContext,
1381
- 'edit',
1382
- 'allow',
1383
- )
1384
- if (allowRule) {
1385
- return {
1386
- behavior: 'allow',
1387
- updatedInput: input,
1388
- decisionReason: {
1389
- type: 'rule',
1390
- rule: allowRule,
1391
- },
1392
- }
1393
- }
1394
-
1395
- // 5. Default to asking for permission
1396
- return {
1397
- behavior: 'ask',
1398
- message: `Claude requested permissions to write to ${path}, but you haven't granted it yet.`,
1399
- suggestions: generateSuggestions(
1400
- path,
1401
- 'write',
1402
- toolPermissionContext,
1403
- pathsToCheck,
1404
- ),
1405
- decisionReason: !isInWorkingDir
1406
- ? {
1407
- type: 'workingDir',
1408
- reason: 'Path is outside allowed working directories',
1409
- }
1410
- : undefined,
1411
- }
1412
- }
1413
-
1414
- export function generateSuggestions(
1415
- filePath: string,
1416
- operationType: 'read' | 'write' | 'create',
1417
- toolPermissionContext: ToolPermissionContext,
1418
- precomputedPathsToCheck?: readonly string[],
1419
- ): PermissionUpdate[] {
1420
- const isOutsideWorkingDir = !pathInAllowedWorkingPath(
1421
- filePath,
1422
- toolPermissionContext,
1423
- precomputedPathsToCheck,
1424
- )
1425
-
1426
- if (operationType === 'read' && isOutsideWorkingDir) {
1427
- // For read operations outside working directories, add Read rules
1428
- // IMPORTANT: Include both the symlink path and resolved path so subsequent checks pass
1429
- const dirPath = getDirectoryForPath(filePath)
1430
- const dirsToAdd = getPathsForPermissionCheck(dirPath)
1431
-
1432
- const suggestions = dirsToAdd
1433
- .map(dir => createReadRuleSuggestion(dir, 'session'))
1434
- .filter((s): s is PermissionUpdate => s !== undefined)
1435
-
1436
- return suggestions
1437
- }
1438
-
1439
- // Only suggest setMode:acceptEdits when it would be an upgrade. In auto
1440
- // mode the classifier already auto-approves edits; in bypassPermissions
1441
- // everything is allowed; in acceptEdits it's a no-op. Suggesting it
1442
- // anyway and having the SDK host apply it on "Always allow" silently
1443
- // downgrades auto → acceptEdits, which then prompts for MCP/Bash.
1444
- const shouldSuggestAcceptEdits =
1445
- toolPermissionContext.mode === 'default' ||
1446
- toolPermissionContext.mode === 'plan'
1447
-
1448
- if (operationType === 'write' || operationType === 'create') {
1449
- const updates: PermissionUpdate[] = shouldSuggestAcceptEdits
1450
- ? [{ type: 'setMode', mode: 'acceptEdits', destination: 'session' }]
1451
- : []
1452
-
1453
- if (isOutsideWorkingDir) {
1454
- // For write operations outside working directories, also add the directory
1455
- // IMPORTANT: Include both the symlink path and resolved path so subsequent checks pass
1456
- const dirPath = getDirectoryForPath(filePath)
1457
- const dirsToAdd = getPathsForPermissionCheck(dirPath)
1458
-
1459
- updates.push({
1460
- type: 'addDirectories',
1461
- directories: dirsToAdd,
1462
- destination: 'session',
1463
- })
1464
- }
1465
-
1466
- return updates
1467
- }
1468
-
1469
- // For read operations inside working directories, just change mode
1470
- return shouldSuggestAcceptEdits
1471
- ? [{ type: 'setMode', mode: 'acceptEdits', destination: 'session' }]
1472
- : []
1473
- }
1474
-
1475
- /**
1476
- * Check if a path is an internal path that can be edited without permission.
1477
- * Returns a PermissionResult - either 'allow' if matched, or 'passthrough' to continue checking.
1478
- */
1479
- export function checkEditableInternalPath(
1480
- absolutePath: string,
1481
- input: { [key: string]: unknown },
1482
- ): PermissionResult {
1483
- // SECURITY: Normalize path to prevent traversal bypasses via .. segments
1484
- // This is defense-in-depth; individual helper functions also normalize
1485
- const normalizedPath = normalize(absolutePath)
1486
-
1487
- // Plan files for current session
1488
- if (isSessionPlanFile(normalizedPath)) {
1489
- return {
1490
- behavior: 'allow',
1491
- updatedInput: input,
1492
- decisionReason: {
1493
- type: 'other',
1494
- reason: 'Plan files for current session are allowed for writing',
1495
- },
1496
- }
1497
- }
1498
-
1499
- // Scratchpad directory for current session
1500
- if (isScratchpadPath(normalizedPath)) {
1501
- return {
1502
- behavior: 'allow',
1503
- updatedInput: input,
1504
- decisionReason: {
1505
- type: 'other',
1506
- reason: 'Scratchpad files for current session are allowed for writing',
1507
- },
1508
- }
1509
- }
1510
-
1511
- // Template job's own directory. Env key hardcoded (vs importing JOB_ENV_KEY
1512
- // from jobs/state) so tree-shaking eliminates the string from external
1513
- // builds — spawn.test.ts asserts the string matches. Hijack guard: the env
1514
- // var value must itself resolve under ~/.claude/jobs/. Symlink guard: every
1515
- // resolved form of the target (lexical + symlink chain) must fall under some
1516
- // resolved form of the job dir, so a symlink inside the job dir pointing at
1517
- // e.g. ~/.ssh/authorized_keys does not get a free write. Resolving both
1518
- // sides handles the macOS /tmp → /private/tmp case where the config dir
1519
- // lives under a symlinked root.
1520
- if (feature('TEMPLATES')) {
1521
- const jobDir = process.env.CLAUDE_JOB_DIR
1522
- if (jobDir) {
1523
- const jobsRoot = join(getClaudeConfigHomeDir(), 'jobs')
1524
- const jobDirForms = getPathsForPermissionCheck(jobDir).map(normalize)
1525
- const jobsRootForms = getPathsForPermissionCheck(jobsRoot).map(normalize)
1526
- // Hijack guard: every resolved form of the job dir must sit under
1527
- // some resolved form of the jobs root. Resolving both sides handles
1528
- // the case where ~/.claude is a symlink (e.g. to /data/claude-config).
1529
- const isUnderJobsRoot = jobDirForms.every(jd =>
1530
- jobsRootForms.some(jr => jd.startsWith(jr + sep)),
1531
- )
1532
- if (isUnderJobsRoot) {
1533
- const targetForms = getPathsForPermissionCheck(absolutePath)
1534
- const allInsideJobDir = targetForms.every(p => {
1535
- const np = normalize(p)
1536
- return jobDirForms.some(jd => np === jd || np.startsWith(jd + sep))
1537
- })
1538
- if (allInsideJobDir) {
1539
- return {
1540
- behavior: 'allow',
1541
- updatedInput: input,
1542
- decisionReason: {
1543
- type: 'other',
1544
- reason:
1545
- 'Job directory files for current job are allowed for writing',
1546
- },
1547
- }
1548
- }
1549
- }
1550
- }
1551
- }
1552
-
1553
- // Agent memory directory (for self-improving agents)
1554
- if (isAgentMemoryPath(normalizedPath)) {
1555
- return {
1556
- behavior: 'allow',
1557
- updatedInput: input,
1558
- decisionReason: {
1559
- type: 'other',
1560
- reason: 'Agent memory files are allowed for writing',
1561
- },
1562
- }
1563
- }
1564
-
1565
- // Memdir directory (persistent memory for cross-session learning)
1566
- // This pre-safety-check carve-out exists because the default path is under
1567
- // ~/.claude/, which is in DANGEROUS_DIRECTORIES. The CLAUDE_COWORK_MEMORY_PATH_OVERRIDE
1568
- // override is an arbitrary caller-designated directory with no such conflict,
1569
- // so it gets NO special permission treatment here — writes go through normal
1570
- // permission flow (step 5 → ask). SDK callers who want silent memory should
1571
- // pass an allow rule for the override path.
1572
- if (!hasAutoMemPathOverride() && isAutoMemPath(normalizedPath)) {
1573
- return {
1574
- behavior: 'allow',
1575
- updatedInput: input,
1576
- decisionReason: {
1577
- type: 'other',
1578
- reason: 'auto memory files are allowed for writing',
1579
- },
1580
- }
1581
- }
1582
-
1583
- // .claude/launch.json — desktop preview config (dev server command + port).
1584
- // The desktop's preview_start MCP tool instructs Claude to create/update
1585
- // this file as part of the preview workflow. Without this carve-out the
1586
- // .claude/ DANGEROUS_DIRECTORIES check prompts for it, which in SDK mode
1587
- // cascades: user clicks "Always allow" → setMode:acceptEdits suggestion
1588
- // applied → silent downgrade from auto mode. Matches the project-level
1589
- // .claude/ only (not ~/.claude/) since launch.json is per-project.
1590
- if (
1591
- normalizeCaseForComparison(normalizedPath) ===
1592
- normalizeCaseForComparison(join(getOriginalCwd(), '.claude', 'launch.json'))
1593
- ) {
1594
- return {
1595
- behavior: 'allow',
1596
- updatedInput: input,
1597
- decisionReason: {
1598
- type: 'other',
1599
- reason: 'Preview launch config is allowed for writing',
1600
- },
1601
- }
1602
- }
1603
-
1604
- return { behavior: 'passthrough', message: '' }
1605
- }
1606
-
1607
- /**
1608
- * Check if a path is an internal path that can be read without permission.
1609
- * Returns a PermissionResult - either 'allow' if matched, or 'passthrough' to continue checking.
1610
- */
1611
- export function checkReadableInternalPath(
1612
- absolutePath: string,
1613
- input: { [key: string]: unknown },
1614
- ): PermissionResult {
1615
- // SECURITY: Normalize path to prevent traversal bypasses via .. segments
1616
- // This is defense-in-depth; individual helper functions also normalize
1617
- const normalizedPath = normalize(absolutePath)
1618
-
1619
- // Session memory directory
1620
- if (isSessionMemoryPath(normalizedPath)) {
1621
- return {
1622
- behavior: 'allow',
1623
- updatedInput: input,
1624
- decisionReason: {
1625
- type: 'other',
1626
- reason: 'Session memory files are allowed for reading',
1627
- },
1628
- }
1629
- }
1630
-
1631
- // Project directory (for reading past session memories)
1632
- // Path format: ~/.claude/projects/{sanitized-cwd}/...
1633
- if (isProjectDirPath(normalizedPath)) {
1634
- return {
1635
- behavior: 'allow',
1636
- updatedInput: input,
1637
- decisionReason: {
1638
- type: 'other',
1639
- reason: 'Project directory files are allowed for reading',
1640
- },
1641
- }
1642
- }
1643
-
1644
- // Plan files for current session
1645
- if (isSessionPlanFile(normalizedPath)) {
1646
- return {
1647
- behavior: 'allow',
1648
- updatedInput: input,
1649
- decisionReason: {
1650
- type: 'other',
1651
- reason: 'Plan files for current session are allowed for reading',
1652
- },
1653
- }
1654
- }
1655
-
1656
- // Tool results directory (persisted large outputs)
1657
- // Use path separator suffix to prevent path traversal (e.g., tool-results-evil/)
1658
- const toolResultsDir = getToolResultsDir()
1659
- const toolResultsDirWithSep = toolResultsDir.endsWith(sep)
1660
- ? toolResultsDir
1661
- : toolResultsDir + sep
1662
- if (
1663
- normalizedPath === toolResultsDir ||
1664
- normalizedPath.startsWith(toolResultsDirWithSep)
1665
- ) {
1666
- return {
1667
- behavior: 'allow',
1668
- updatedInput: input,
1669
- decisionReason: {
1670
- type: 'other',
1671
- reason: 'Tool result files are allowed for reading',
1672
- },
1673
- }
1674
- }
1675
-
1676
- // Scratchpad directory for current session
1677
- if (isScratchpadPath(normalizedPath)) {
1678
- return {
1679
- behavior: 'allow',
1680
- updatedInput: input,
1681
- decisionReason: {
1682
- type: 'other',
1683
- reason: 'Scratchpad files for current session are allowed for reading',
1684
- },
1685
- }
1686
- }
1687
-
1688
- // Project temp directory (/tmp/claude/{sanitized-cwd}/)
1689
- // Intentionally allows reading files from all sessions in this project, not just the current session.
1690
- // This enables cross-session file access within the same project's temp space.
1691
- const projectTempDir = getProjectTempDir()
1692
- if (normalizedPath.startsWith(projectTempDir)) {
1693
- return {
1694
- behavior: 'allow',
1695
- updatedInput: input,
1696
- decisionReason: {
1697
- type: 'other',
1698
- reason: 'Project temp directory files are allowed for reading',
1699
- },
1700
- }
1701
- }
1702
-
1703
- // Agent memory directory (for self-improving agents)
1704
- if (isAgentMemoryPath(normalizedPath)) {
1705
- return {
1706
- behavior: 'allow',
1707
- updatedInput: input,
1708
- decisionReason: {
1709
- type: 'other',
1710
- reason: 'Agent memory files are allowed for reading',
1711
- },
1712
- }
1713
- }
1714
-
1715
- // Memdir directory (persistent memory for cross-session learning)
1716
- if (isAutoMemPath(normalizedPath)) {
1717
- return {
1718
- behavior: 'allow',
1719
- updatedInput: input,
1720
- decisionReason: {
1721
- type: 'other',
1722
- reason: 'auto memory files are allowed for reading',
1723
- },
1724
- }
1725
- }
1726
-
1727
- // Tasks directory (~/.claude/tasks/) for swarm task coordination
1728
- const tasksDir = join(getClaudeConfigHomeDir(), 'tasks') + sep
1729
- if (
1730
- normalizedPath === tasksDir.slice(0, -1) ||
1731
- normalizedPath.startsWith(tasksDir)
1732
- ) {
1733
- return {
1734
- behavior: 'allow',
1735
- updatedInput: input,
1736
- decisionReason: {
1737
- type: 'other',
1738
- reason: 'Task files are allowed for reading',
1739
- },
1740
- }
1741
- }
1742
-
1743
- // Teams directory (~/.claude/teams/) for swarm coordination
1744
- const teamsReadDir = join(getClaudeConfigHomeDir(), 'teams') + sep
1745
- if (
1746
- normalizedPath === teamsReadDir.slice(0, -1) ||
1747
- normalizedPath.startsWith(teamsReadDir)
1748
- ) {
1749
- return {
1750
- behavior: 'allow',
1751
- updatedInput: input,
1752
- decisionReason: {
1753
- type: 'other',
1754
- reason: 'Team files are allowed for reading',
1755
- },
1756
- }
1757
- }
1758
-
1759
- // Bundled skill reference files extracted on first invocation.
1760
- // SECURITY: See getBundledSkillsRoot() — the per-process nonce in the path
1761
- // is the load-bearing defense; uid/VERSION alone are public knowledge and
1762
- // squattable. We always write-before-read on invocation, so content under
1763
- // this subtree is harness-controlled.
1764
- const bundledSkillsRoot = getBundledSkillsRoot() + sep
1765
- if (normalizedPath.startsWith(bundledSkillsRoot)) {
1766
- return {
1767
- behavior: 'allow',
1768
- updatedInput: input,
1769
- decisionReason: {
1770
- type: 'other',
1771
- reason: 'Bundled skill reference files are allowed for reading',
1772
- },
1773
- }
1774
- }
1775
-
1776
- return { behavior: 'passthrough', message: '' }
1777
- }