subagent-cli 0.3.0 → 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 (2177) hide show
  1. package/dist/sa +0 -0
  2. package/package.json +2 -8
  3. package/_entry.ts +0 -2
  4. package/bunfig.toml +0 -2
  5. package/src/QueryEngine.ts +0 -1295
  6. package/src/Task.ts +0 -125
  7. package/src/Tool.ts +0 -792
  8. package/src/_stubs/bun-bundle.ts +0 -6
  9. package/src/assistant/AssistantSessionChooser.ts +0 -2
  10. package/src/assistant/gate.ts +0 -2
  11. package/src/assistant/index.ts +0 -2
  12. package/src/assistant/sessionDiscovery.ts +0 -1
  13. package/src/assistant/sessionHistory.ts +0 -87
  14. package/src/bootstrap/state.ts +0 -1762
  15. package/src/bridge/bridgeApi.ts +0 -539
  16. package/src/bridge/bridgeConfig.ts +0 -48
  17. package/src/bridge/bridgeDebug.ts +0 -135
  18. package/src/bridge/bridgeEnabled.ts +0 -202
  19. package/src/bridge/bridgeMain.ts +0 -2999
  20. package/src/bridge/bridgeMessaging.ts +0 -461
  21. package/src/bridge/bridgePermissionCallbacks.ts +0 -43
  22. package/src/bridge/bridgePointer.ts +0 -210
  23. package/src/bridge/bridgeStatusUtil.ts +0 -163
  24. package/src/bridge/bridgeUI.ts +0 -530
  25. package/src/bridge/capacityWake.ts +0 -56
  26. package/src/bridge/codeSessionApi.ts +0 -168
  27. package/src/bridge/createSession.ts +0 -384
  28. package/src/bridge/debugUtils.ts +0 -141
  29. package/src/bridge/envLessBridgeConfig.ts +0 -165
  30. package/src/bridge/flushGate.ts +0 -71
  31. package/src/bridge/inboundAttachments.ts +0 -175
  32. package/src/bridge/inboundMessages.ts +0 -80
  33. package/src/bridge/initReplBridge.ts +0 -569
  34. package/src/bridge/jwtUtils.ts +0 -256
  35. package/src/bridge/peerSessions.ts +0 -2
  36. package/src/bridge/pollConfig.ts +0 -110
  37. package/src/bridge/pollConfigDefaults.ts +0 -82
  38. package/src/bridge/remoteBridgeCore.ts +0 -1008
  39. package/src/bridge/replBridge.ts +0 -2406
  40. package/src/bridge/replBridgeHandle.ts +0 -36
  41. package/src/bridge/replBridgeTransport.ts +0 -370
  42. package/src/bridge/sessionIdCompat.ts +0 -57
  43. package/src/bridge/sessionRunner.ts +0 -550
  44. package/src/bridge/trustedDevice.ts +0 -210
  45. package/src/bridge/types.ts +0 -262
  46. package/src/bridge/webhookSanitizer.ts +0 -2
  47. package/src/bridge/workSecret.ts +0 -127
  48. package/src/buddy/CompanionSprite.tsx +0 -371
  49. package/src/buddy/companion.ts +0 -133
  50. package/src/buddy/prompt.ts +0 -36
  51. package/src/buddy/sprites.ts +0 -514
  52. package/src/buddy/types.ts +0 -148
  53. package/src/buddy/useBuddyNotification.tsx +0 -98
  54. package/src/cli/bg.ts +0 -2
  55. package/src/cli/exit.ts +0 -31
  56. package/src/cli/handlers/agents.ts +0 -70
  57. package/src/cli/handlers/ant.ts +0 -2
  58. package/src/cli/handlers/auth.ts +0 -330
  59. package/src/cli/handlers/autoMode.ts +0 -170
  60. package/src/cli/handlers/mcp.tsx +0 -362
  61. package/src/cli/handlers/plugins.ts +0 -878
  62. package/src/cli/handlers/templateJobs.ts +0 -2
  63. package/src/cli/handlers/util.tsx +0 -110
  64. package/src/cli/ndjsonSafeStringify.ts +0 -32
  65. package/src/cli/print.ts +0 -5594
  66. package/src/cli/remoteIO.ts +0 -255
  67. package/src/cli/rollback.ts +0 -3
  68. package/src/cli/structuredIO.ts +0 -859
  69. package/src/cli/transports/HybridTransport.ts +0 -282
  70. package/src/cli/transports/SSETransport.ts +0 -711
  71. package/src/cli/transports/SerialBatchEventUploader.ts +0 -275
  72. package/src/cli/transports/Transport.ts +0 -1
  73. package/src/cli/transports/WebSocketTransport.ts +0 -800
  74. package/src/cli/transports/WorkerStateUploader.ts +0 -131
  75. package/src/cli/transports/ccrClient.ts +0 -998
  76. package/src/cli/transports/transportUtils.ts +0 -45
  77. package/src/cli/up.ts +0 -3
  78. package/src/cli/update.ts +0 -422
  79. package/src/commands/add-dir/add-dir.tsx +0 -126
  80. package/src/commands/add-dir/index.ts +0 -11
  81. package/src/commands/add-dir/validation.ts +0 -110
  82. package/src/commands/advisor.ts +0 -109
  83. package/src/commands/agents/agents.tsx +0 -12
  84. package/src/commands/agents/index.ts +0 -10
  85. package/src/commands/agents-platform/index.ts +0 -1
  86. package/src/commands/ant-trace/index.js +0 -1
  87. package/src/commands/assistant/assistant.ts +0 -2
  88. package/src/commands/assistant/index.ts +0 -1
  89. package/src/commands/autofix-pr/index.js +0 -1
  90. package/src/commands/backfill-sessions/index.js +0 -1
  91. package/src/commands/branch/branch.ts +0 -296
  92. package/src/commands/branch/index.ts +0 -14
  93. package/src/commands/break-cache/index.js +0 -1
  94. package/src/commands/bridge/bridge.tsx +0 -509
  95. package/src/commands/bridge/index.ts +0 -26
  96. package/src/commands/bridge-kick.ts +0 -200
  97. package/src/commands/brief.ts +0 -130
  98. package/src/commands/btw/btw.tsx +0 -243
  99. package/src/commands/btw/index.ts +0 -13
  100. package/src/commands/buddy/index.ts +0 -2
  101. package/src/commands/bughunter/index.js +0 -1
  102. package/src/commands/chrome/chrome.tsx +0 -285
  103. package/src/commands/chrome/index.ts +0 -13
  104. package/src/commands/clear/caches.ts +0 -144
  105. package/src/commands/clear/clear.ts +0 -7
  106. package/src/commands/clear/conversation.ts +0 -251
  107. package/src/commands/clear/index.ts +0 -19
  108. package/src/commands/color/color.ts +0 -93
  109. package/src/commands/color/index.ts +0 -16
  110. package/src/commands/commit-push-pr.ts +0 -158
  111. package/src/commands/commit.ts +0 -92
  112. package/src/commands/compact/compact.ts +0 -287
  113. package/src/commands/compact/index.ts +0 -15
  114. package/src/commands/config/config.tsx +0 -7
  115. package/src/commands/config/index.ts +0 -11
  116. package/src/commands/context/context-noninteractive.ts +0 -325
  117. package/src/commands/context/context.tsx +0 -64
  118. package/src/commands/context/index.ts +0 -24
  119. package/src/commands/copy/copy.tsx +0 -371
  120. package/src/commands/copy/index.ts +0 -15
  121. package/src/commands/cost/cost.ts +0 -24
  122. package/src/commands/cost/index.ts +0 -23
  123. package/src/commands/createMovedToPluginCommand.ts +0 -65
  124. package/src/commands/ctx_viz/index.js +0 -1
  125. package/src/commands/debug-tool-call/index.js +0 -1
  126. package/src/commands/desktop/desktop.tsx +0 -9
  127. package/src/commands/desktop/index.ts +0 -26
  128. package/src/commands/diff/diff.tsx +0 -9
  129. package/src/commands/diff/index.ts +0 -8
  130. package/src/commands/doctor/doctor.tsx +0 -7
  131. package/src/commands/doctor/index.ts +0 -12
  132. package/src/commands/effort/effort.tsx +0 -183
  133. package/src/commands/effort/index.ts +0 -13
  134. package/src/commands/env/index.js +0 -1
  135. package/src/commands/exit/exit.tsx +0 -33
  136. package/src/commands/exit/index.ts +0 -12
  137. package/src/commands/export/export.tsx +0 -91
  138. package/src/commands/export/index.ts +0 -11
  139. package/src/commands/extra-usage/extra-usage-core.ts +0 -118
  140. package/src/commands/extra-usage/extra-usage-noninteractive.ts +0 -16
  141. package/src/commands/extra-usage/extra-usage.tsx +0 -17
  142. package/src/commands/extra-usage/index.ts +0 -31
  143. package/src/commands/fast/fast.tsx +0 -269
  144. package/src/commands/fast/index.ts +0 -26
  145. package/src/commands/feedback/feedback.tsx +0 -25
  146. package/src/commands/feedback/index.ts +0 -26
  147. package/src/commands/files/files.ts +0 -19
  148. package/src/commands/files/index.ts +0 -12
  149. package/src/commands/force-snip.ts +0 -1
  150. package/src/commands/fork/index.ts +0 -2
  151. package/src/commands/good-claude/index.js +0 -1
  152. package/src/commands/heapdump/heapdump.ts +0 -17
  153. package/src/commands/heapdump/index.ts +0 -12
  154. package/src/commands/help/help.tsx +0 -11
  155. package/src/commands/help/index.ts +0 -10
  156. package/src/commands/hooks/hooks.tsx +0 -13
  157. package/src/commands/hooks/index.ts +0 -11
  158. package/src/commands/ide/ide.tsx +0 -646
  159. package/src/commands/ide/index.ts +0 -11
  160. package/src/commands/init-verifiers.ts +0 -262
  161. package/src/commands/init.ts +0 -256
  162. package/src/commands/insights.ts +0 -3200
  163. package/src/commands/install-github-app/ApiKeyStep.tsx +0 -231
  164. package/src/commands/install-github-app/CheckExistingSecretStep.tsx +0 -190
  165. package/src/commands/install-github-app/CheckGitHubStep.tsx +0 -15
  166. package/src/commands/install-github-app/ChooseRepoStep.tsx +0 -211
  167. package/src/commands/install-github-app/CreatingStep.tsx +0 -65
  168. package/src/commands/install-github-app/ErrorStep.tsx +0 -85
  169. package/src/commands/install-github-app/ExistingWorkflowStep.tsx +0 -103
  170. package/src/commands/install-github-app/InstallAppStep.tsx +0 -94
  171. package/src/commands/install-github-app/OAuthFlowStep.tsx +0 -276
  172. package/src/commands/install-github-app/SuccessStep.tsx +0 -96
  173. package/src/commands/install-github-app/WarningsStep.tsx +0 -73
  174. package/src/commands/install-github-app/index.ts +0 -13
  175. package/src/commands/install-github-app/install-github-app.tsx +0 -587
  176. package/src/commands/install-github-app/setupGitHubActions.ts +0 -325
  177. package/src/commands/install-github-app/types.ts +0 -3
  178. package/src/commands/install-slack-app/index.ts +0 -12
  179. package/src/commands/install-slack-app/install-slack-app.ts +0 -30
  180. package/src/commands/install.tsx +0 -300
  181. package/src/commands/issue/index.js +0 -1
  182. package/src/commands/keybindings/index.ts +0 -13
  183. package/src/commands/keybindings/keybindings.ts +0 -53
  184. package/src/commands/login/index.ts +0 -14
  185. package/src/commands/login/login.tsx +0 -104
  186. package/src/commands/logout/index.ts +0 -10
  187. package/src/commands/logout/logout.tsx +0 -82
  188. package/src/commands/mcp/addCommand.ts +0 -280
  189. package/src/commands/mcp/index.ts +0 -12
  190. package/src/commands/mcp/mcp.tsx +0 -85
  191. package/src/commands/mcp/xaaIdpCommand.ts +0 -266
  192. package/src/commands/memory/index.ts +0 -10
  193. package/src/commands/memory/memory.tsx +0 -90
  194. package/src/commands/mobile/index.ts +0 -11
  195. package/src/commands/mobile/mobile.tsx +0 -274
  196. package/src/commands/mock-limits/index.js +0 -1
  197. package/src/commands/model/index.ts +0 -16
  198. package/src/commands/model/model.tsx +0 -297
  199. package/src/commands/oauth-refresh/index.js +0 -1
  200. package/src/commands/onboarding/index.js +0 -1
  201. package/src/commands/output-style/index.ts +0 -11
  202. package/src/commands/output-style/output-style.tsx +0 -7
  203. package/src/commands/passes/index.ts +0 -22
  204. package/src/commands/passes/passes.tsx +0 -24
  205. package/src/commands/peers/index.ts +0 -2
  206. package/src/commands/perf-issue/index.js +0 -1
  207. package/src/commands/permissions/index.ts +0 -11
  208. package/src/commands/permissions/permissions.tsx +0 -10
  209. package/src/commands/plan/index.ts +0 -11
  210. package/src/commands/plan/plan.tsx +0 -122
  211. package/src/commands/plugin/AddMarketplace.tsx +0 -162
  212. package/src/commands/plugin/BrowseMarketplace.tsx +0 -802
  213. package/src/commands/plugin/DiscoverPlugins.tsx +0 -781
  214. package/src/commands/plugin/ManageMarketplaces.tsx +0 -838
  215. package/src/commands/plugin/ManagePlugins.tsx +0 -2215
  216. package/src/commands/plugin/PluginErrors.tsx +0 -124
  217. package/src/commands/plugin/PluginOptionsDialog.tsx +0 -357
  218. package/src/commands/plugin/PluginOptionsFlow.tsx +0 -135
  219. package/src/commands/plugin/PluginSettings.tsx +0 -1072
  220. package/src/commands/plugin/PluginTrustWarning.tsx +0 -32
  221. package/src/commands/plugin/UnifiedInstalledCell.tsx +0 -565
  222. package/src/commands/plugin/ValidatePlugin.tsx +0 -98
  223. package/src/commands/plugin/index.tsx +0 -11
  224. package/src/commands/plugin/parseArgs.ts +0 -103
  225. package/src/commands/plugin/plugin.tsx +0 -7
  226. package/src/commands/plugin/pluginDetailsHelpers.tsx +0 -117
  227. package/src/commands/plugin/types.ts +0 -2
  228. package/src/commands/plugin/unifiedTypes.ts +0 -4
  229. package/src/commands/plugin/usePagination.ts +0 -171
  230. package/src/commands/pr_comments/index.ts +0 -50
  231. package/src/commands/privacy-settings/index.ts +0 -14
  232. package/src/commands/privacy-settings/privacy-settings.tsx +0 -58
  233. package/src/commands/proactive.ts +0 -1
  234. package/src/commands/rate-limit-options/index.ts +0 -19
  235. package/src/commands/rate-limit-options/rate-limit-options.tsx +0 -210
  236. package/src/commands/release-notes/index.ts +0 -11
  237. package/src/commands/release-notes/release-notes.ts +0 -50
  238. package/src/commands/reload-plugins/index.ts +0 -18
  239. package/src/commands/reload-plugins/reload-plugins.ts +0 -61
  240. package/src/commands/remote-env/index.ts +0 -15
  241. package/src/commands/remote-env/remote-env.tsx +0 -7
  242. package/src/commands/remote-setup/api.ts +0 -182
  243. package/src/commands/remote-setup/index.ts +0 -20
  244. package/src/commands/remote-setup/remote-setup.tsx +0 -187
  245. package/src/commands/remoteControlServer/index.ts +0 -1
  246. package/src/commands/rename/generateSessionName.ts +0 -67
  247. package/src/commands/rename/index.ts +0 -12
  248. package/src/commands/rename/rename.ts +0 -87
  249. package/src/commands/reset-limits/index.js +0 -4
  250. package/src/commands/resume/index.ts +0 -12
  251. package/src/commands/resume/resume.tsx +0 -275
  252. package/src/commands/review/UltrareviewOverageDialog.tsx +0 -96
  253. package/src/commands/review/reviewRemote.ts +0 -316
  254. package/src/commands/review/ultrareviewCommand.tsx +0 -58
  255. package/src/commands/review/ultrareviewEnabled.ts +0 -14
  256. package/src/commands/review.ts +0 -57
  257. package/src/commands/rewind/index.ts +0 -13
  258. package/src/commands/rewind/rewind.ts +0 -13
  259. package/src/commands/sandbox-toggle/index.ts +0 -50
  260. package/src/commands/sandbox-toggle/sandbox-toggle.tsx +0 -83
  261. package/src/commands/security-review.ts +0 -243
  262. package/src/commands/session/index.ts +0 -16
  263. package/src/commands/session/session.tsx +0 -140
  264. package/src/commands/share/index.js +0 -1
  265. package/src/commands/skills/index.ts +0 -10
  266. package/src/commands/skills/skills.tsx +0 -8
  267. package/src/commands/stats/index.ts +0 -10
  268. package/src/commands/stats/stats.tsx +0 -7
  269. package/src/commands/status/index.ts +0 -12
  270. package/src/commands/status/status.tsx +0 -8
  271. package/src/commands/statusline.tsx +0 -24
  272. package/src/commands/stickers/index.ts +0 -11
  273. package/src/commands/stickers/stickers.ts +0 -16
  274. package/src/commands/subscribe-pr.ts +0 -1
  275. package/src/commands/summary/index.js +0 -1
  276. package/src/commands/tag/index.ts +0 -12
  277. package/src/commands/tag/tag.tsx +0 -215
  278. package/src/commands/tasks/index.ts +0 -11
  279. package/src/commands/tasks/tasks.tsx +0 -8
  280. package/src/commands/teleport/index.js +0 -1
  281. package/src/commands/terminalSetup/index.ts +0 -23
  282. package/src/commands/terminalSetup/terminalSetup.tsx +0 -531
  283. package/src/commands/theme/index.ts +0 -10
  284. package/src/commands/theme/theme.tsx +0 -57
  285. package/src/commands/thinkback/index.ts +0 -13
  286. package/src/commands/thinkback/thinkback.tsx +0 -554
  287. package/src/commands/thinkback-play/index.ts +0 -17
  288. package/src/commands/thinkback-play/thinkback-play.ts +0 -43
  289. package/src/commands/torch.ts +0 -1
  290. package/src/commands/ultraplan.tsx +0 -471
  291. package/src/commands/upgrade/index.ts +0 -16
  292. package/src/commands/upgrade/upgrade.tsx +0 -38
  293. package/src/commands/usage/index.ts +0 -9
  294. package/src/commands/usage/usage.tsx +0 -7
  295. package/src/commands/version.ts +0 -22
  296. package/src/commands/vim/index.ts +0 -11
  297. package/src/commands/vim/vim.ts +0 -38
  298. package/src/commands/voice/index.ts +0 -20
  299. package/src/commands/voice/voice.ts +0 -150
  300. package/src/commands/workflows/index.ts +0 -2
  301. package/src/commands.ts +0 -754
  302. package/src/components/AgentProgressLine.tsx +0 -136
  303. package/src/components/App.tsx +0 -56
  304. package/src/components/ApproveApiKey.tsx +0 -123
  305. package/src/components/AutoModeOptInDialog.tsx +0 -142
  306. package/src/components/AutoUpdater.tsx +0 -198
  307. package/src/components/AutoUpdaterWrapper.tsx +0 -91
  308. package/src/components/AwsAuthStatusBox.tsx +0 -82
  309. package/src/components/BaseTextInput.tsx +0 -136
  310. package/src/components/BashModeProgress.tsx +0 -56
  311. package/src/components/BridgeDialog.tsx +0 -401
  312. package/src/components/BypassPermissionsModeDialog.tsx +0 -87
  313. package/src/components/ChannelDowngradeDialog.tsx +0 -102
  314. package/src/components/ClaudeCodeHint/PluginHintMenu.tsx +0 -78
  315. package/src/components/ClaudeInChromeOnboarding.tsx +0 -121
  316. package/src/components/ClaudeMdExternalIncludesDialog.tsx +0 -137
  317. package/src/components/ClickableImageRef.tsx +0 -73
  318. package/src/components/CompactSummary.tsx +0 -118
  319. package/src/components/ConfigurableShortcutHint.tsx +0 -57
  320. package/src/components/ConsoleOAuthFlow.tsx +0 -631
  321. package/src/components/ContextSuggestions.tsx +0 -47
  322. package/src/components/ContextVisualization.tsx +0 -489
  323. package/src/components/CoordinatorAgentStatus.tsx +0 -273
  324. package/src/components/CostThresholdDialog.tsx +0 -50
  325. package/src/components/CtrlOToExpand.tsx +0 -51
  326. package/src/components/CustomSelect/SelectMulti.tsx +0 -213
  327. package/src/components/CustomSelect/index.ts +0 -3
  328. package/src/components/CustomSelect/option-map.ts +0 -50
  329. package/src/components/CustomSelect/select-input-option.tsx +0 -488
  330. package/src/components/CustomSelect/select-option.tsx +0 -68
  331. package/src/components/CustomSelect/select.tsx +0 -690
  332. package/src/components/CustomSelect/use-multi-select-state.ts +0 -414
  333. package/src/components/CustomSelect/use-select-input.ts +0 -287
  334. package/src/components/CustomSelect/use-select-navigation.ts +0 -653
  335. package/src/components/CustomSelect/use-select-state.ts +0 -157
  336. package/src/components/DesktopHandoff.tsx +0 -193
  337. package/src/components/DesktopUpsell/DesktopUpsellStartup.tsx +0 -171
  338. package/src/components/DevBar.tsx +0 -49
  339. package/src/components/DevChannelsDialog.tsx +0 -105
  340. package/src/components/DiagnosticsDisplay.tsx +0 -95
  341. package/src/components/EffortCallout.tsx +0 -265
  342. package/src/components/EffortIndicator.ts +0 -42
  343. package/src/components/ExitFlow.tsx +0 -48
  344. package/src/components/ExportDialog.tsx +0 -128
  345. package/src/components/FallbackToolUseErrorMessage.tsx +0 -116
  346. package/src/components/FallbackToolUseRejectedMessage.tsx +0 -16
  347. package/src/components/FastIcon.tsx +0 -46
  348. package/src/components/Feedback.tsx +0 -592
  349. package/src/components/FeedbackSurvey/FeedbackSurvey.tsx +0 -174
  350. package/src/components/FeedbackSurvey/FeedbackSurveyView.tsx +0 -108
  351. package/src/components/FeedbackSurvey/TranscriptSharePrompt.tsx +0 -88
  352. package/src/components/FeedbackSurvey/submitTranscriptShare.ts +0 -112
  353. package/src/components/FeedbackSurvey/useDebouncedDigitInput.ts +0 -82
  354. package/src/components/FeedbackSurvey/useFeedbackSurvey.tsx +0 -296
  355. package/src/components/FeedbackSurvey/useFrustrationDetection.ts +0 -2
  356. package/src/components/FeedbackSurvey/useMemorySurvey.tsx +0 -213
  357. package/src/components/FeedbackSurvey/usePostCompactSurvey.tsx +0 -206
  358. package/src/components/FeedbackSurvey/useSurveyState.tsx +0 -100
  359. package/src/components/FeedbackSurvey/utils.ts +0 -2
  360. package/src/components/FileEditToolDiff.tsx +0 -181
  361. package/src/components/FileEditToolUpdatedMessage.tsx +0 -124
  362. package/src/components/FileEditToolUseRejectedMessage.tsx +0 -170
  363. package/src/components/FilePathLink.tsx +0 -43
  364. package/src/components/FullscreenLayout.tsx +0 -637
  365. package/src/components/GlobalSearchDialog.tsx +0 -343
  366. package/src/components/HelpV2/Commands.tsx +0 -82
  367. package/src/components/HelpV2/General.tsx +0 -23
  368. package/src/components/HelpV2/HelpV2.tsx +0 -184
  369. package/src/components/HighlightedCode/Fallback.tsx +0 -193
  370. package/src/components/HighlightedCode.tsx +0 -190
  371. package/src/components/HistorySearchDialog.tsx +0 -118
  372. package/src/components/IdeAutoConnectDialog.tsx +0 -154
  373. package/src/components/IdeOnboardingDialog.tsx +0 -167
  374. package/src/components/IdeStatusIndicator.tsx +0 -58
  375. package/src/components/IdleReturnDialog.tsx +0 -118
  376. package/src/components/InterruptedByUser.tsx +0 -15
  377. package/src/components/InvalidConfigDialog.tsx +0 -156
  378. package/src/components/InvalidSettingsDialog.tsx +0 -89
  379. package/src/components/KeybindingWarnings.tsx +0 -55
  380. package/src/components/LanguagePicker.tsx +0 -86
  381. package/src/components/LogSelector.tsx +0 -1575
  382. package/src/components/LogoV2/AnimatedAsterisk.tsx +0 -50
  383. package/src/components/LogoV2/AnimatedClawd.tsx +0 -124
  384. package/src/components/LogoV2/ChannelsNotice.tsx +0 -266
  385. package/src/components/LogoV2/Clawd.tsx +0 -25
  386. package/src/components/LogoV2/CondensedLogo.tsx +0 -161
  387. package/src/components/LogoV2/EmergencyTip.tsx +0 -58
  388. package/src/components/LogoV2/Feed.tsx +0 -112
  389. package/src/components/LogoV2/FeedColumn.tsx +0 -59
  390. package/src/components/LogoV2/GuestPassesUpsell.tsx +0 -70
  391. package/src/components/LogoV2/LogoV2.tsx +0 -543
  392. package/src/components/LogoV2/Opus1mMergeNotice.tsx +0 -55
  393. package/src/components/LogoV2/OverageCreditUpsell.tsx +0 -166
  394. package/src/components/LogoV2/VoiceModeNotice.tsx +0 -68
  395. package/src/components/LogoV2/WelcomeV2.tsx +0 -433
  396. package/src/components/LogoV2/feedConfigs.tsx +0 -92
  397. package/src/components/LspRecommendation/LspRecommendationMenu.tsx +0 -88
  398. package/src/components/MCPServerApprovalDialog.tsx +0 -115
  399. package/src/components/MCPServerDesktopImportDialog.tsx +0 -203
  400. package/src/components/MCPServerDialogCopy.tsx +0 -15
  401. package/src/components/MCPServerMultiselectDialog.tsx +0 -133
  402. package/src/components/ManagedSettingsSecurityDialog/ManagedSettingsSecurityDialog.tsx +0 -149
  403. package/src/components/ManagedSettingsSecurityDialog/utils.ts +0 -144
  404. package/src/components/Markdown.tsx +0 -236
  405. package/src/components/MarkdownTable.tsx +0 -322
  406. package/src/components/MemoryUsageIndicator.tsx +0 -37
  407. package/src/components/Message.tsx +0 -627
  408. package/src/components/MessageModel.tsx +0 -43
  409. package/src/components/MessageResponse.tsx +0 -78
  410. package/src/components/MessageRow.tsx +0 -383
  411. package/src/components/MessageSelector.tsx +0 -831
  412. package/src/components/MessageTimestamp.tsx +0 -63
  413. package/src/components/Messages.tsx +0 -834
  414. package/src/components/ModelPicker.tsx +0 -448
  415. package/src/components/NativeAutoUpdater.tsx +0 -193
  416. package/src/components/NotebookEditToolUseRejectedMessage.tsx +0 -92
  417. package/src/components/OffscreenFreeze.tsx +0 -44
  418. package/src/components/Onboarding.tsx +0 -244
  419. package/src/components/OutputStylePicker.tsx +0 -112
  420. package/src/components/PackageManagerAutoUpdater.tsx +0 -104
  421. package/src/components/Passes/Passes.tsx +0 -184
  422. package/src/components/PrBadge.tsx +0 -97
  423. package/src/components/PressEnterToContinue.tsx +0 -15
  424. package/src/components/PromptInput/HistorySearchInput.tsx +0 -51
  425. package/src/components/PromptInput/IssueFlagBanner.tsx +0 -12
  426. package/src/components/PromptInput/Notifications.tsx +0 -332
  427. package/src/components/PromptInput/PromptInput.tsx +0 -2339
  428. package/src/components/PromptInput/PromptInputFooter.tsx +0 -191
  429. package/src/components/PromptInput/PromptInputFooterLeftSide.tsx +0 -517
  430. package/src/components/PromptInput/PromptInputFooterSuggestions.tsx +0 -293
  431. package/src/components/PromptInput/PromptInputHelpMenu.tsx +0 -358
  432. package/src/components/PromptInput/PromptInputModeIndicator.tsx +0 -93
  433. package/src/components/PromptInput/PromptInputQueuedCommands.tsx +0 -117
  434. package/src/components/PromptInput/PromptInputStashNotice.tsx +0 -25
  435. package/src/components/PromptInput/SandboxPromptFooterHint.tsx +0 -64
  436. package/src/components/PromptInput/ShimmeredInput.tsx +0 -143
  437. package/src/components/PromptInput/VoiceIndicator.tsx +0 -137
  438. package/src/components/PromptInput/inputModes.ts +0 -33
  439. package/src/components/PromptInput/inputPaste.ts +0 -90
  440. package/src/components/PromptInput/useMaybeTruncateInput.ts +0 -58
  441. package/src/components/PromptInput/usePromptInputPlaceholder.ts +0 -76
  442. package/src/components/PromptInput/useShowFastIconHint.ts +0 -31
  443. package/src/components/PromptInput/useSwarmBanner.ts +0 -155
  444. package/src/components/PromptInput/utils.ts +0 -60
  445. package/src/components/QuickOpenDialog.tsx +0 -244
  446. package/src/components/RemoteCallout.tsx +0 -76
  447. package/src/components/RemoteEnvironmentDialog.tsx +0 -340
  448. package/src/components/ResumeTask.tsx +0 -268
  449. package/src/components/SandboxViolationExpandedView.tsx +0 -99
  450. package/src/components/ScrollKeybindingHandler.tsx +0 -1012
  451. package/src/components/SearchBox.tsx +0 -72
  452. package/src/components/SentryErrorBoundary.ts +0 -28
  453. package/src/components/SessionBackgroundHint.tsx +0 -108
  454. package/src/components/SessionPreview.tsx +0 -194
  455. package/src/components/Settings/Config.tsx +0 -1822
  456. package/src/components/Settings/Settings.tsx +0 -137
  457. package/src/components/Settings/Status.tsx +0 -241
  458. package/src/components/Settings/Usage.tsx +0 -377
  459. package/src/components/ShowInIDEPrompt.tsx +0 -170
  460. package/src/components/SkillImprovementSurvey.tsx +0 -152
  461. package/src/components/Spinner/FlashingChar.tsx +0 -61
  462. package/src/components/Spinner/GlimmerMessage.tsx +0 -328
  463. package/src/components/Spinner/ShimmerChar.tsx +0 -36
  464. package/src/components/Spinner/SpinnerAnimationRow.tsx +0 -265
  465. package/src/components/Spinner/SpinnerGlyph.tsx +0 -80
  466. package/src/components/Spinner/TeammateSpinnerLine.tsx +0 -233
  467. package/src/components/Spinner/TeammateSpinnerTree.tsx +0 -272
  468. package/src/components/Spinner/index.ts +0 -10
  469. package/src/components/Spinner/teammateSelectHint.ts +0 -1
  470. package/src/components/Spinner/types.ts +0 -2
  471. package/src/components/Spinner/useShimmerAnimation.ts +0 -31
  472. package/src/components/Spinner/useStalledAnimation.ts +0 -75
  473. package/src/components/Spinner/utils.ts +0 -84
  474. package/src/components/Spinner.tsx +0 -562
  475. package/src/components/Stats.tsx +0 -1228
  476. package/src/components/StatusLine.tsx +0 -324
  477. package/src/components/StatusNotices.tsx +0 -55
  478. package/src/components/StructuredDiff/Fallback.tsx +0 -487
  479. package/src/components/StructuredDiff/colorDiff.ts +0 -37
  480. package/src/components/StructuredDiff.tsx +0 -190
  481. package/src/components/StructuredDiffList.tsx +0 -30
  482. package/src/components/TagTabs.tsx +0 -139
  483. package/src/components/TaskListV2.tsx +0 -378
  484. package/src/components/TeammateViewHeader.tsx +0 -82
  485. package/src/components/TeleportError.tsx +0 -189
  486. package/src/components/TeleportProgress.tsx +0 -140
  487. package/src/components/TeleportRepoMismatchDialog.tsx +0 -104
  488. package/src/components/TeleportResumeWrapper.tsx +0 -167
  489. package/src/components/TeleportStash.tsx +0 -116
  490. package/src/components/TextInput.tsx +0 -124
  491. package/src/components/ThemePicker.tsx +0 -333
  492. package/src/components/ThinkingToggle.tsx +0 -153
  493. package/src/components/TokenWarning.tsx +0 -179
  494. package/src/components/ToolUseLoader.tsx +0 -42
  495. package/src/components/TrustDialog/TrustDialog.tsx +0 -290
  496. package/src/components/TrustDialog/utils.ts +0 -245
  497. package/src/components/ValidationErrorsList.tsx +0 -148
  498. package/src/components/VimTextInput.tsx +0 -140
  499. package/src/components/VirtualMessageList.tsx +0 -1082
  500. package/src/components/WorkflowMultiselectDialog.tsx +0 -128
  501. package/src/components/WorktreeExitDialog.tsx +0 -231
  502. package/src/components/agents/AgentDetail.tsx +0 -220
  503. package/src/components/agents/AgentEditor.tsx +0 -178
  504. package/src/components/agents/AgentNavigationFooter.tsx +0 -26
  505. package/src/components/agents/AgentsList.tsx +0 -440
  506. package/src/components/agents/AgentsMenu.tsx +0 -800
  507. package/src/components/agents/ColorPicker.tsx +0 -112
  508. package/src/components/agents/ModelSelector.tsx +0 -68
  509. package/src/components/agents/SnapshotUpdateDialog.ts +0 -2
  510. package/src/components/agents/ToolSelector.tsx +0 -562
  511. package/src/components/agents/agentFileUtils.ts +0 -272
  512. package/src/components/agents/generateAgent.ts +0 -197
  513. package/src/components/agents/new-agent-creation/CreateAgentWizard.tsx +0 -97
  514. package/src/components/agents/new-agent-creation/types.ts +0 -1
  515. package/src/components/agents/new-agent-creation/wizard-steps/ColorStep.tsx +0 -84
  516. package/src/components/agents/new-agent-creation/wizard-steps/ConfirmStep.tsx +0 -378
  517. package/src/components/agents/new-agent-creation/wizard-steps/ConfirmStepWrapper.tsx +0 -74
  518. package/src/components/agents/new-agent-creation/wizard-steps/DescriptionStep.tsx +0 -123
  519. package/src/components/agents/new-agent-creation/wizard-steps/GenerateStep.tsx +0 -143
  520. package/src/components/agents/new-agent-creation/wizard-steps/LocationStep.tsx +0 -80
  521. package/src/components/agents/new-agent-creation/wizard-steps/MemoryStep.tsx +0 -113
  522. package/src/components/agents/new-agent-creation/wizard-steps/MethodStep.tsx +0 -80
  523. package/src/components/agents/new-agent-creation/wizard-steps/ModelStep.tsx +0 -52
  524. package/src/components/agents/new-agent-creation/wizard-steps/PromptStep.tsx +0 -128
  525. package/src/components/agents/new-agent-creation/wizard-steps/ToolsStep.tsx +0 -61
  526. package/src/components/agents/new-agent-creation/wizard-steps/TypeStep.tsx +0 -103
  527. package/src/components/agents/types.ts +0 -27
  528. package/src/components/agents/utils.ts +0 -18
  529. package/src/components/agents/validateAgent.ts +0 -109
  530. package/src/components/design-system/Byline.tsx +0 -77
  531. package/src/components/design-system/Dialog.tsx +0 -138
  532. package/src/components/design-system/Divider.tsx +0 -149
  533. package/src/components/design-system/FuzzyPicker.tsx +0 -312
  534. package/src/components/design-system/KeyboardShortcutHint.tsx +0 -81
  535. package/src/components/design-system/ListItem.tsx +0 -244
  536. package/src/components/design-system/LoadingState.tsx +0 -94
  537. package/src/components/design-system/Pane.tsx +0 -77
  538. package/src/components/design-system/ProgressBar.tsx +0 -86
  539. package/src/components/design-system/Ratchet.tsx +0 -80
  540. package/src/components/design-system/StatusIcon.tsx +0 -95
  541. package/src/components/design-system/Tabs.tsx +0 -340
  542. package/src/components/design-system/ThemeProvider.tsx +0 -170
  543. package/src/components/design-system/ThemedBox.tsx +0 -156
  544. package/src/components/design-system/ThemedText.tsx +0 -124
  545. package/src/components/design-system/color.ts +0 -30
  546. package/src/components/diff/DiffDetailView.tsx +0 -281
  547. package/src/components/diff/DiffDialog.tsx +0 -383
  548. package/src/components/diff/DiffFileList.tsx +0 -292
  549. package/src/components/grove/Grove.tsx +0 -463
  550. package/src/components/hooks/HooksConfigMenu.tsx +0 -578
  551. package/src/components/hooks/PromptDialog.tsx +0 -90
  552. package/src/components/hooks/SelectEventMode.tsx +0 -127
  553. package/src/components/hooks/SelectHookMode.tsx +0 -112
  554. package/src/components/hooks/SelectMatcherMode.tsx +0 -144
  555. package/src/components/hooks/ViewHookMode.tsx +0 -199
  556. package/src/components/mcp/CapabilitiesSection.tsx +0 -61
  557. package/src/components/mcp/ElicitationDialog.tsx +0 -1169
  558. package/src/components/mcp/MCPAgentServerMenu.tsx +0 -183
  559. package/src/components/mcp/MCPListPanel.tsx +0 -504
  560. package/src/components/mcp/MCPReconnect.tsx +0 -167
  561. package/src/components/mcp/MCPRemoteServerMenu.tsx +0 -649
  562. package/src/components/mcp/MCPSettings.tsx +0 -398
  563. package/src/components/mcp/MCPStdioServerMenu.tsx +0 -177
  564. package/src/components/mcp/MCPToolDetailView.tsx +0 -212
  565. package/src/components/mcp/MCPToolListView.tsx +0 -141
  566. package/src/components/mcp/McpParsingWarnings.tsx +0 -213
  567. package/src/components/mcp/index.ts +0 -9
  568. package/src/components/mcp/types.ts +0 -7
  569. package/src/components/mcp/utils/reconnectHelpers.tsx +0 -49
  570. package/src/components/memory/MemoryFileSelector.tsx +0 -438
  571. package/src/components/memory/MemoryUpdateNotification.tsx +0 -45
  572. package/src/components/messageActions.tsx +0 -450
  573. package/src/components/messages/AdvisorMessage.tsx +0 -158
  574. package/src/components/messages/AssistantRedactedThinkingMessage.tsx +0 -31
  575. package/src/components/messages/AssistantTextMessage.tsx +0 -270
  576. package/src/components/messages/AssistantThinkingMessage.tsx +0 -86
  577. package/src/components/messages/AssistantToolUseMessage.tsx +0 -368
  578. package/src/components/messages/AttachmentMessage.tsx +0 -536
  579. package/src/components/messages/CollapsedReadSearchContent.tsx +0 -484
  580. package/src/components/messages/CompactBoundaryMessage.tsx +0 -18
  581. package/src/components/messages/GroupedToolUseContent.tsx +0 -58
  582. package/src/components/messages/HighlightedThinkingText.tsx +0 -162
  583. package/src/components/messages/HookProgressMessage.tsx +0 -116
  584. package/src/components/messages/PlanApprovalMessage.tsx +0 -222
  585. package/src/components/messages/RateLimitMessage.tsx +0 -161
  586. package/src/components/messages/ShutdownMessage.tsx +0 -132
  587. package/src/components/messages/SnipBoundaryMessage.ts +0 -2
  588. package/src/components/messages/SystemAPIErrorMessage.tsx +0 -141
  589. package/src/components/messages/SystemTextMessage.tsx +0 -827
  590. package/src/components/messages/TaskAssignmentMessage.tsx +0 -76
  591. package/src/components/messages/UserAgentNotificationMessage.tsx +0 -83
  592. package/src/components/messages/UserBashInputMessage.tsx +0 -58
  593. package/src/components/messages/UserBashOutputMessage.tsx +0 -54
  594. package/src/components/messages/UserChannelMessage.tsx +0 -137
  595. package/src/components/messages/UserCommandMessage.tsx +0 -108
  596. package/src/components/messages/UserCrossSessionMessage.ts +0 -2
  597. package/src/components/messages/UserForkBoilerplateMessage.ts +0 -2
  598. package/src/components/messages/UserGitHubWebhookMessage.ts +0 -2
  599. package/src/components/messages/UserImageMessage.tsx +0 -59
  600. package/src/components/messages/UserLocalCommandOutputMessage.tsx +0 -167
  601. package/src/components/messages/UserMemoryInputMessage.tsx +0 -75
  602. package/src/components/messages/UserPlanMessage.tsx +0 -42
  603. package/src/components/messages/UserPromptMessage.tsx +0 -80
  604. package/src/components/messages/UserResourceUpdateMessage.tsx +0 -121
  605. package/src/components/messages/UserTeammateMessage.tsx +0 -206
  606. package/src/components/messages/UserTextMessage.tsx +0 -275
  607. package/src/components/messages/UserToolResultMessage/RejectedPlanMessage.tsx +0 -31
  608. package/src/components/messages/UserToolResultMessage/RejectedToolUseMessage.tsx +0 -16
  609. package/src/components/messages/UserToolResultMessage/UserToolCanceledMessage.tsx +0 -16
  610. package/src/components/messages/UserToolResultMessage/UserToolErrorMessage.tsx +0 -103
  611. package/src/components/messages/UserToolResultMessage/UserToolRejectMessage.tsx +0 -95
  612. package/src/components/messages/UserToolResultMessage/UserToolResultMessage.tsx +0 -106
  613. package/src/components/messages/UserToolResultMessage/UserToolSuccessMessage.tsx +0 -104
  614. package/src/components/messages/UserToolResultMessage/utils.tsx +0 -44
  615. package/src/components/messages/nullRenderingAttachments.ts +0 -70
  616. package/src/components/messages/teamMemCollapsed.tsx +0 -140
  617. package/src/components/messages/teamMemSaved.ts +0 -19
  618. package/src/components/permissions/AskUserQuestionPermissionRequest/AskUserQuestionPermissionRequest.tsx +0 -645
  619. package/src/components/permissions/AskUserQuestionPermissionRequest/PreviewBox.tsx +0 -229
  620. package/src/components/permissions/AskUserQuestionPermissionRequest/PreviewQuestionView.tsx +0 -328
  621. package/src/components/permissions/AskUserQuestionPermissionRequest/QuestionNavigationBar.tsx +0 -178
  622. package/src/components/permissions/AskUserQuestionPermissionRequest/QuestionView.tsx +0 -465
  623. package/src/components/permissions/AskUserQuestionPermissionRequest/SubmitQuestionsView.tsx +0 -144
  624. package/src/components/permissions/AskUserQuestionPermissionRequest/use-multiple-choice-state.ts +0 -179
  625. package/src/components/permissions/BashPermissionRequest/BashPermissionRequest.tsx +0 -482
  626. package/src/components/permissions/BashPermissionRequest/bashToolUseOptions.tsx +0 -147
  627. package/src/components/permissions/ComputerUseApproval/ComputerUseApproval.tsx +0 -441
  628. package/src/components/permissions/EnterPlanModePermissionRequest/EnterPlanModePermissionRequest.tsx +0 -122
  629. package/src/components/permissions/ExitPlanModePermissionRequest/ExitPlanModePermissionRequest.tsx +0 -768
  630. package/src/components/permissions/FallbackPermissionRequest.tsx +0 -333
  631. package/src/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.tsx +0 -182
  632. package/src/components/permissions/FilePermissionDialog/FilePermissionDialog.tsx +0 -204
  633. package/src/components/permissions/FilePermissionDialog/ideDiffConfig.ts +0 -42
  634. package/src/components/permissions/FilePermissionDialog/permissionOptions.tsx +0 -177
  635. package/src/components/permissions/FilePermissionDialog/useFilePermissionDialog.ts +0 -212
  636. package/src/components/permissions/FilePermissionDialog/usePermissionHandler.ts +0 -185
  637. package/src/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.tsx +0 -161
  638. package/src/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.tsx +0 -89
  639. package/src/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.tsx +0 -115
  640. package/src/components/permissions/MonitorPermissionRequest/MonitorPermissionRequest.ts +0 -2
  641. package/src/components/permissions/NotebookEditPermissionRequest/NotebookEditPermissionRequest.tsx +0 -166
  642. package/src/components/permissions/NotebookEditPermissionRequest/NotebookEditToolDiff.tsx +0 -235
  643. package/src/components/permissions/PermissionDecisionDebugInfo.tsx +0 -460
  644. package/src/components/permissions/PermissionDialog.tsx +0 -72
  645. package/src/components/permissions/PermissionExplanation.tsx +0 -272
  646. package/src/components/permissions/PermissionPrompt.tsx +0 -336
  647. package/src/components/permissions/PermissionRequest.tsx +0 -217
  648. package/src/components/permissions/PermissionRequestTitle.tsx +0 -66
  649. package/src/components/permissions/PermissionRuleExplanation.tsx +0 -121
  650. package/src/components/permissions/PowerShellPermissionRequest/PowerShellPermissionRequest.tsx +0 -235
  651. package/src/components/permissions/PowerShellPermissionRequest/powershellToolUseOptions.tsx +0 -91
  652. package/src/components/permissions/ReviewArtifactPermissionRequest/ReviewArtifactPermissionRequest.ts +0 -2
  653. package/src/components/permissions/SandboxPermissionRequest.tsx +0 -163
  654. package/src/components/permissions/SedEditPermissionRequest/SedEditPermissionRequest.tsx +0 -230
  655. package/src/components/permissions/SkillPermissionRequest/SkillPermissionRequest.tsx +0 -369
  656. package/src/components/permissions/WebFetchPermissionRequest/WebFetchPermissionRequest.tsx +0 -258
  657. package/src/components/permissions/WorkerBadge.tsx +0 -49
  658. package/src/components/permissions/WorkerPendingPermission.tsx +0 -105
  659. package/src/components/permissions/hooks.ts +0 -209
  660. package/src/components/permissions/rules/AddPermissionRules.tsx +0 -180
  661. package/src/components/permissions/rules/AddWorkspaceDirectory.tsx +0 -340
  662. package/src/components/permissions/rules/PermissionRuleDescription.tsx +0 -76
  663. package/src/components/permissions/rules/PermissionRuleInput.tsx +0 -138
  664. package/src/components/permissions/rules/PermissionRuleList.tsx +0 -1179
  665. package/src/components/permissions/rules/RecentDenialsTab.tsx +0 -207
  666. package/src/components/permissions/rules/RemoveWorkspaceDirectory.tsx +0 -110
  667. package/src/components/permissions/rules/WorkspaceTab.tsx +0 -150
  668. package/src/components/permissions/shellPermissionHelpers.tsx +0 -164
  669. package/src/components/permissions/useShellPermissionFeedback.ts +0 -148
  670. package/src/components/permissions/utils.ts +0 -25
  671. package/src/components/sandbox/SandboxConfigTab.tsx +0 -45
  672. package/src/components/sandbox/SandboxDependenciesTab.tsx +0 -120
  673. package/src/components/sandbox/SandboxDoctorSection.tsx +0 -46
  674. package/src/components/sandbox/SandboxOverridesTab.tsx +0 -193
  675. package/src/components/sandbox/SandboxSettings.tsx +0 -296
  676. package/src/components/shell/ExpandShellOutputContext.tsx +0 -36
  677. package/src/components/shell/OutputLine.tsx +0 -118
  678. package/src/components/shell/ShellProgressMessage.tsx +0 -150
  679. package/src/components/shell/ShellTimeDisplay.tsx +0 -74
  680. package/src/components/skills/SkillsMenu.tsx +0 -237
  681. package/src/components/tasks/AsyncAgentDetailDialog.tsx +0 -229
  682. package/src/components/tasks/BackgroundTask.tsx +0 -345
  683. package/src/components/tasks/BackgroundTaskStatus.tsx +0 -429
  684. package/src/components/tasks/BackgroundTasksDialog.tsx +0 -652
  685. package/src/components/tasks/DreamDetailDialog.tsx +0 -251
  686. package/src/components/tasks/InProcessTeammateDetailDialog.tsx +0 -266
  687. package/src/components/tasks/MonitorMcpDetailDialog.ts +0 -2
  688. package/src/components/tasks/RemoteSessionDetailDialog.tsx +0 -904
  689. package/src/components/tasks/RemoteSessionProgress.tsx +0 -243
  690. package/src/components/tasks/ShellDetailDialog.tsx +0 -404
  691. package/src/components/tasks/ShellProgress.tsx +0 -87
  692. package/src/components/tasks/WorkflowDetailDialog.ts +0 -2
  693. package/src/components/tasks/renderToolActivity.tsx +0 -33
  694. package/src/components/tasks/taskStatusUtils.tsx +0 -107
  695. package/src/components/teams/TeamStatus.tsx +0 -80
  696. package/src/components/teams/TeamsDialog.tsx +0 -715
  697. package/src/components/ui/OrderedList.tsx +0 -71
  698. package/src/components/ui/OrderedListItem.tsx +0 -45
  699. package/src/components/ui/TreeSelect.tsx +0 -397
  700. package/src/components/ui/option.ts +0 -4
  701. package/src/components/wizard/WizardDialogLayout.tsx +0 -65
  702. package/src/components/wizard/WizardNavigationFooter.tsx +0 -24
  703. package/src/components/wizard/WizardProvider.tsx +0 -213
  704. package/src/components/wizard/index.ts +0 -9
  705. package/src/components/wizard/types.ts +0 -3
  706. package/src/components/wizard/useWizard.ts +0 -13
  707. package/src/constants/apiLimits.ts +0 -94
  708. package/src/constants/betas.ts +0 -52
  709. package/src/constants/common.ts +0 -33
  710. package/src/constants/cyberRiskInstruction.ts +0 -24
  711. package/src/constants/errorIds.ts +0 -15
  712. package/src/constants/figures.ts +0 -45
  713. package/src/constants/files.ts +0 -156
  714. package/src/constants/github-app.ts +0 -144
  715. package/src/constants/keys.ts +0 -11
  716. package/src/constants/messages.ts +0 -1
  717. package/src/constants/oauth.ts +0 -234
  718. package/src/constants/outputStyles.ts +0 -216
  719. package/src/constants/product.ts +0 -76
  720. package/src/constants/prompts.ts +0 -915
  721. package/src/constants/querySource.ts +0 -1
  722. package/src/constants/spinnerVerbs.ts +0 -204
  723. package/src/constants/system.ts +0 -95
  724. package/src/constants/systemPromptSections.ts +0 -68
  725. package/src/constants/toolLimits.ts +0 -56
  726. package/src/constants/tools.ts +0 -112
  727. package/src/constants/turnCompletionVerbs.ts +0 -12
  728. package/src/constants/xml.ts +0 -86
  729. package/src/context/QueuedMessageContext.tsx +0 -63
  730. package/src/context/fpsMetrics.tsx +0 -30
  731. package/src/context/mailbox.tsx +0 -38
  732. package/src/context/modalContext.tsx +0 -58
  733. package/src/context/notifications.tsx +0 -240
  734. package/src/context/overlayContext.tsx +0 -151
  735. package/src/context/promptOverlayContext.tsx +0 -125
  736. package/src/context/stats.tsx +0 -220
  737. package/src/context/voice.tsx +0 -88
  738. package/src/context.ts +0 -189
  739. package/src/coordinator/coordinatorMode.ts +0 -369
  740. package/src/coordinator/workerAgent.ts +0 -2
  741. package/src/cost-tracker.ts +0 -323
  742. package/src/costHook.ts +0 -22
  743. package/src/daemon/main.ts +0 -2
  744. package/src/daemon/workerRegistry.ts +0 -2
  745. package/src/dialogLaunchers.tsx +0 -133
  746. package/src/engine/CostMapper.ts +0 -57
  747. package/src/engine/MessageMapper.ts +0 -276
  748. package/src/engine/ModelResolver.ts +0 -153
  749. package/src/engine/PermissionBridge.ts +0 -114
  750. package/src/engine/PiAgentAdapter.ts +0 -299
  751. package/src/engine/SubagentTools.ts +0 -92
  752. package/src/engine/ToolAdapter.ts +0 -122
  753. package/src/engine/engine-backup/CostMapper.ts +0 -57
  754. package/src/engine/engine-backup/MessageMapper.ts +0 -276
  755. package/src/engine/engine-backup/ModelResolver.ts +0 -153
  756. package/src/engine/engine-backup/PermissionBridge.ts +0 -114
  757. package/src/engine/engine-backup/PiAgentAdapter.ts +0 -299
  758. package/src/engine/engine-backup/SubagentTools.ts +0 -92
  759. package/src/engine/engine-backup/ToolAdapter.ts +0 -122
  760. package/src/engine/engine-backup/index.ts +0 -14
  761. package/src/engine/engine-backup/piQueryBridge.ts +0 -396
  762. package/src/engine/index.ts +0 -14
  763. package/src/engine/piQueryBridge.ts +0 -396
  764. package/src/entrypoints/agentSdkTypes.ts +0 -443
  765. package/src/entrypoints/cli.tsx +0 -303
  766. package/src/entrypoints/init.ts +0 -340
  767. package/src/entrypoints/mcp.ts +0 -196
  768. package/src/entrypoints/sandboxTypes.ts +0 -156
  769. package/src/entrypoints/sdk/controlSchemas.ts +0 -663
  770. package/src/entrypoints/sdk/controlTypes.ts +0 -12
  771. package/src/entrypoints/sdk/coreSchemas.ts +0 -1889
  772. package/src/entrypoints/sdk/coreTypes.generated.ts +0 -1
  773. package/src/entrypoints/sdk/coreTypes.ts +0 -62
  774. package/src/entrypoints/sdk/runtimeTypes.ts +0 -18
  775. package/src/entrypoints/sdk/sdkUtilityTypes.ts +0 -1
  776. package/src/entrypoints/sdk/settingsTypes.generated.ts +0 -1
  777. package/src/entrypoints/sdk/toolTypes.ts +0 -2
  778. package/src/environment-runner/main.ts +0 -2
  779. package/src/history.ts +0 -464
  780. package/src/hooks/fileSuggestions.ts +0 -811
  781. package/src/hooks/notifs/useAntOrgWarningNotification.ts +0 -2
  782. package/src/hooks/notifs/useAutoModeUnavailableNotification.ts +0 -56
  783. package/src/hooks/notifs/useCanSwitchToExistingSubscription.tsx +0 -60
  784. package/src/hooks/notifs/useDeprecationWarningNotification.tsx +0 -44
  785. package/src/hooks/notifs/useFastModeNotification.tsx +0 -162
  786. package/src/hooks/notifs/useIDEStatusIndicator.tsx +0 -186
  787. package/src/hooks/notifs/useInstallMessages.tsx +0 -26
  788. package/src/hooks/notifs/useLspInitializationNotification.tsx +0 -143
  789. package/src/hooks/notifs/useMcpConnectivityStatus.tsx +0 -88
  790. package/src/hooks/notifs/useModelMigrationNotifications.tsx +0 -52
  791. package/src/hooks/notifs/useNpmDeprecationNotification.tsx +0 -25
  792. package/src/hooks/notifs/usePluginAutoupdateNotification.tsx +0 -83
  793. package/src/hooks/notifs/usePluginInstallationStatus.tsx +0 -128
  794. package/src/hooks/notifs/useRateLimitWarningNotification.tsx +0 -114
  795. package/src/hooks/notifs/useSettingsErrors.tsx +0 -69
  796. package/src/hooks/notifs/useStartupNotification.ts +0 -41
  797. package/src/hooks/notifs/useTeammateShutdownNotification.ts +0 -78
  798. package/src/hooks/renderPlaceholder.ts +0 -51
  799. package/src/hooks/toolPermission/PermissionContext.ts +0 -388
  800. package/src/hooks/toolPermission/handlers/coordinatorHandler.ts +0 -65
  801. package/src/hooks/toolPermission/handlers/interactiveHandler.ts +0 -536
  802. package/src/hooks/toolPermission/handlers/swarmWorkerHandler.ts +0 -159
  803. package/src/hooks/toolPermission/permissionLogging.ts +0 -238
  804. package/src/hooks/unifiedSuggestions.ts +0 -202
  805. package/src/hooks/useAfterFirstRender.ts +0 -17
  806. package/src/hooks/useApiKeyVerification.ts +0 -84
  807. package/src/hooks/useArrowKeyHistory.tsx +0 -229
  808. package/src/hooks/useAssistantHistory.ts +0 -250
  809. package/src/hooks/useAwaySummary.ts +0 -125
  810. package/src/hooks/useBackgroundTaskNavigation.ts +0 -251
  811. package/src/hooks/useBlink.ts +0 -34
  812. package/src/hooks/useCanUseTool.tsx +0 -204
  813. package/src/hooks/useCancelRequest.ts +0 -276
  814. package/src/hooks/useChromeExtensionNotification.tsx +0 -50
  815. package/src/hooks/useClaudeCodeHintRecommendation.tsx +0 -129
  816. package/src/hooks/useClipboardImageHint.ts +0 -77
  817. package/src/hooks/useCommandKeybindings.tsx +0 -108
  818. package/src/hooks/useCommandQueue.ts +0 -15
  819. package/src/hooks/useCopyOnSelect.ts +0 -98
  820. package/src/hooks/useDeferredHookMessages.ts +0 -46
  821. package/src/hooks/useDiffData.ts +0 -110
  822. package/src/hooks/useDiffInIDE.ts +0 -379
  823. package/src/hooks/useDirectConnect.ts +0 -229
  824. package/src/hooks/useDoublePress.ts +0 -62
  825. package/src/hooks/useDynamicConfig.ts +0 -22
  826. package/src/hooks/useElapsedTime.ts +0 -37
  827. package/src/hooks/useExitOnCtrlCD.ts +0 -95
  828. package/src/hooks/useExitOnCtrlCDWithKeybindings.ts +0 -24
  829. package/src/hooks/useFileHistorySnapshotInit.ts +0 -25
  830. package/src/hooks/useGlobalKeybindings.tsx +0 -249
  831. package/src/hooks/useHistorySearch.ts +0 -303
  832. package/src/hooks/useIDEIntegration.tsx +0 -70
  833. package/src/hooks/useIdeAtMentioned.ts +0 -76
  834. package/src/hooks/useIdeConnectionStatus.ts +0 -33
  835. package/src/hooks/useIdeLogging.ts +0 -41
  836. package/src/hooks/useIdeSelection.ts +0 -150
  837. package/src/hooks/useInboxPoller.ts +0 -969
  838. package/src/hooks/useInputBuffer.ts +0 -132
  839. package/src/hooks/useIssueFlagBanner.ts +0 -133
  840. package/src/hooks/useLogMessages.ts +0 -119
  841. package/src/hooks/useLspPluginRecommendation.tsx +0 -194
  842. package/src/hooks/useMailboxBridge.ts +0 -21
  843. package/src/hooks/useMainLoopModel.ts +0 -34
  844. package/src/hooks/useManagePlugins.ts +0 -304
  845. package/src/hooks/useMemoryUsage.ts +0 -39
  846. package/src/hooks/useMergedClients.ts +0 -23
  847. package/src/hooks/useMergedCommands.ts +0 -15
  848. package/src/hooks/useMergedTools.ts +0 -44
  849. package/src/hooks/useMinDisplayTime.ts +0 -35
  850. package/src/hooks/useNotifyAfterTimeout.ts +0 -65
  851. package/src/hooks/useOfficialMarketplaceNotification.tsx +0 -48
  852. package/src/hooks/usePasteHandler.ts +0 -285
  853. package/src/hooks/usePluginRecommendationBase.tsx +0 -105
  854. package/src/hooks/usePrStatus.ts +0 -106
  855. package/src/hooks/usePromptSuggestion.ts +0 -177
  856. package/src/hooks/usePromptsFromClaudeInChrome.tsx +0 -71
  857. package/src/hooks/useQueueProcessor.ts +0 -68
  858. package/src/hooks/useRemoteSession.ts +0 -605
  859. package/src/hooks/useReplBridge.tsx +0 -723
  860. package/src/hooks/useSSHSession.ts +0 -241
  861. package/src/hooks/useScheduledTasks.ts +0 -139
  862. package/src/hooks/useSearchInput.ts +0 -364
  863. package/src/hooks/useSessionBackgrounding.ts +0 -158
  864. package/src/hooks/useSettings.ts +0 -17
  865. package/src/hooks/useSettingsChange.ts +0 -25
  866. package/src/hooks/useSkillImprovementSurvey.ts +0 -105
  867. package/src/hooks/useSkillsChange.ts +0 -62
  868. package/src/hooks/useSwarmInitialization.ts +0 -81
  869. package/src/hooks/useSwarmPermissionPoller.ts +0 -330
  870. package/src/hooks/useTaskListWatcher.ts +0 -221
  871. package/src/hooks/useTasksV2.ts +0 -250
  872. package/src/hooks/useTeammateViewAutoExit.ts +0 -63
  873. package/src/hooks/useTeleportResume.tsx +0 -85
  874. package/src/hooks/useTerminalSize.ts +0 -15
  875. package/src/hooks/useTextInput.ts +0 -529
  876. package/src/hooks/useTimeout.ts +0 -14
  877. package/src/hooks/useTurnDiffs.ts +0 -213
  878. package/src/hooks/useTypeahead.tsx +0 -1385
  879. package/src/hooks/useUpdateNotification.ts +0 -34
  880. package/src/hooks/useVimInput.ts +0 -316
  881. package/src/hooks/useVirtualScroll.ts +0 -721
  882. package/src/hooks/useVoice.ts +0 -1144
  883. package/src/hooks/useVoiceEnabled.ts +0 -25
  884. package/src/hooks/useVoiceIntegration.tsx +0 -677
  885. package/src/hunter.ts +0 -1
  886. package/src/ink/Ansi.tsx +0 -292
  887. package/src/ink/bidi.ts +0 -139
  888. package/src/ink/clearTerminal.ts +0 -74
  889. package/src/ink/colorize.ts +0 -231
  890. package/src/ink/components/AlternateScreen.tsx +0 -80
  891. package/src/ink/components/App.tsx +0 -658
  892. package/src/ink/components/AppContext.ts +0 -21
  893. package/src/ink/components/Box.tsx +0 -214
  894. package/src/ink/components/Button.tsx +0 -192
  895. package/src/ink/components/ClockContext.tsx +0 -112
  896. package/src/ink/components/CursorDeclarationContext.ts +0 -32
  897. package/src/ink/components/ErrorOverview.tsx +0 -109
  898. package/src/ink/components/Link.tsx +0 -42
  899. package/src/ink/components/Newline.tsx +0 -39
  900. package/src/ink/components/NoSelect.tsx +0 -68
  901. package/src/ink/components/RawAnsi.tsx +0 -57
  902. package/src/ink/components/ScrollBox.tsx +0 -237
  903. package/src/ink/components/Spacer.tsx +0 -20
  904. package/src/ink/components/StdinContext.ts +0 -49
  905. package/src/ink/components/TerminalFocusContext.tsx +0 -52
  906. package/src/ink/components/TerminalSizeContext.tsx +0 -7
  907. package/src/ink/components/Text.tsx +0 -254
  908. package/src/ink/constants.ts +0 -2
  909. package/src/ink/cursor.ts +0 -1
  910. package/src/ink/devtools.ts +0 -2
  911. package/src/ink/dom.ts +0 -484
  912. package/src/ink/events/click-event.ts +0 -38
  913. package/src/ink/events/dispatcher.ts +0 -233
  914. package/src/ink/events/emitter.ts +0 -39
  915. package/src/ink/events/event-handlers.ts +0 -73
  916. package/src/ink/events/event.ts +0 -11
  917. package/src/ink/events/focus-event.ts +0 -21
  918. package/src/ink/events/input-event.ts +0 -205
  919. package/src/ink/events/keyboard-event.ts +0 -51
  920. package/src/ink/events/paste-event.ts +0 -1
  921. package/src/ink/events/resize-event.ts +0 -1
  922. package/src/ink/events/terminal-event.ts +0 -107
  923. package/src/ink/events/terminal-focus-event.ts +0 -19
  924. package/src/ink/focus.ts +0 -181
  925. package/src/ink/frame.ts +0 -124
  926. package/src/ink/get-max-width.ts +0 -27
  927. package/src/ink/global.d.ts +0 -1
  928. package/src/ink/hit-test.ts +0 -130
  929. package/src/ink/hooks/use-animation-frame.ts +0 -57
  930. package/src/ink/hooks/use-app.ts +0 -8
  931. package/src/ink/hooks/use-declared-cursor.ts +0 -73
  932. package/src/ink/hooks/use-input.ts +0 -92
  933. package/src/ink/hooks/use-interval.ts +0 -67
  934. package/src/ink/hooks/use-search-highlight.ts +0 -53
  935. package/src/ink/hooks/use-selection.ts +0 -104
  936. package/src/ink/hooks/use-stdin.ts +0 -8
  937. package/src/ink/hooks/use-tab-status.ts +0 -72
  938. package/src/ink/hooks/use-terminal-focus.ts +0 -16
  939. package/src/ink/hooks/use-terminal-title.ts +0 -31
  940. package/src/ink/hooks/use-terminal-viewport.ts +0 -96
  941. package/src/ink/ink.tsx +0 -1723
  942. package/src/ink/instances.ts +0 -10
  943. package/src/ink/layout/engine.ts +0 -6
  944. package/src/ink/layout/geometry.ts +0 -97
  945. package/src/ink/layout/node.ts +0 -152
  946. package/src/ink/layout/yoga.ts +0 -308
  947. package/src/ink/line-width-cache.ts +0 -24
  948. package/src/ink/log-update.ts +0 -773
  949. package/src/ink/measure-element.ts +0 -23
  950. package/src/ink/measure-text.ts +0 -47
  951. package/src/ink/node-cache.ts +0 -54
  952. package/src/ink/optimizer.ts +0 -93
  953. package/src/ink/output.ts +0 -797
  954. package/src/ink/parse-keypress.ts +0 -801
  955. package/src/ink/reconciler.ts +0 -512
  956. package/src/ink/render-border.ts +0 -231
  957. package/src/ink/render-node-to-output.ts +0 -1462
  958. package/src/ink/render-to-screen.ts +0 -231
  959. package/src/ink/renderer.ts +0 -178
  960. package/src/ink/root.ts +0 -184
  961. package/src/ink/screen.ts +0 -1486
  962. package/src/ink/searchHighlight.ts +0 -93
  963. package/src/ink/selection.ts +0 -917
  964. package/src/ink/squash-text-nodes.ts +0 -92
  965. package/src/ink/stringWidth.ts +0 -222
  966. package/src/ink/styles.ts +0 -771
  967. package/src/ink/supports-hyperlinks.ts +0 -57
  968. package/src/ink/tabstops.ts +0 -46
  969. package/src/ink/terminal-focus-state.ts +0 -47
  970. package/src/ink/terminal-querier.ts +0 -212
  971. package/src/ink/terminal.ts +0 -248
  972. package/src/ink/termio/ansi.ts +0 -75
  973. package/src/ink/termio/csi.ts +0 -319
  974. package/src/ink/termio/dec.ts +0 -60
  975. package/src/ink/termio/esc.ts +0 -67
  976. package/src/ink/termio/osc.ts +0 -493
  977. package/src/ink/termio/parser.ts +0 -394
  978. package/src/ink/termio/sgr.ts +0 -308
  979. package/src/ink/termio/tokenize.ts +0 -319
  980. package/src/ink/termio/types.ts +0 -236
  981. package/src/ink/termio.ts +0 -42
  982. package/src/ink/useTerminalNotification.ts +0 -126
  983. package/src/ink/warn.ts +0 -9
  984. package/src/ink/widest-line.ts +0 -19
  985. package/src/ink/wrap-text.ts +0 -74
  986. package/src/ink/wrapAnsi.ts +0 -20
  987. package/src/ink.ts +0 -85
  988. package/src/interactiveHelpers.tsx +0 -366
  989. package/src/jobs/classifier.ts +0 -2
  990. package/src/keybindings/KeybindingContext.tsx +0 -243
  991. package/src/keybindings/KeybindingProviderSetup.tsx +0 -308
  992. package/src/keybindings/defaultBindings.ts +0 -340
  993. package/src/keybindings/loadUserBindings.ts +0 -472
  994. package/src/keybindings/match.ts +0 -120
  995. package/src/keybindings/parser.ts +0 -203
  996. package/src/keybindings/reservedShortcuts.ts +0 -127
  997. package/src/keybindings/resolver.ts +0 -244
  998. package/src/keybindings/schema.ts +0 -236
  999. package/src/keybindings/shortcutFormat.ts +0 -63
  1000. package/src/keybindings/template.ts +0 -52
  1001. package/src/keybindings/types.ts +0 -3
  1002. package/src/keybindings/useKeybinding.ts +0 -196
  1003. package/src/keybindings/useShortcutDisplay.ts +0 -59
  1004. package/src/keybindings/validate.ts +0 -498
  1005. package/src/main.tsx +0 -4684
  1006. package/src/memdir/findRelevantMemories.ts +0 -141
  1007. package/src/memdir/memdir.ts +0 -507
  1008. package/src/memdir/memoryAge.ts +0 -53
  1009. package/src/memdir/memoryScan.ts +0 -94
  1010. package/src/memdir/memoryShapeTelemetry.ts +0 -2
  1011. package/src/memdir/memoryTypes.ts +0 -271
  1012. package/src/memdir/paths.ts +0 -278
  1013. package/src/memdir/teamMemPaths.ts +0 -292
  1014. package/src/memdir/teamMemPrompts.ts +0 -100
  1015. package/src/migrations/migrateAutoUpdatesToSettings.ts +0 -61
  1016. package/src/migrations/migrateBypassPermissionsAcceptedToSettings.ts +0 -40
  1017. package/src/migrations/migrateEnableAllProjectMcpServersToSettings.ts +0 -118
  1018. package/src/migrations/migrateFennecToOpus.ts +0 -45
  1019. package/src/migrations/migrateLegacyOpusToCurrent.ts +0 -57
  1020. package/src/migrations/migrateOpusToOpus1m.ts +0 -43
  1021. package/src/migrations/migrateReplBridgeEnabledToRemoteControlAtStartup.ts +0 -22
  1022. package/src/migrations/migrateSonnet1mToSonnet45.ts +0 -48
  1023. package/src/migrations/migrateSonnet45ToSonnet46.ts +0 -67
  1024. package/src/migrations/resetAutoModeOptInForDefaultOffer.ts +0 -51
  1025. package/src/migrations/resetProToOpusDefault.ts +0 -51
  1026. package/src/moreright/useMoreRight.tsx +0 -26
  1027. package/src/native-ts/color-diff/index.ts +0 -1001
  1028. package/src/native-ts/file-index/index.ts +0 -370
  1029. package/src/native-ts/yoga-layout/enums.ts +0 -134
  1030. package/src/native-ts/yoga-layout/index.ts +0 -2578
  1031. package/src/outputStyles/loadOutputStylesDir.ts +0 -98
  1032. package/src/plugins/builtinPlugins.ts +0 -159
  1033. package/src/plugins/bundled/index.ts +0 -23
  1034. package/src/proactive/index.ts +0 -1
  1035. package/src/proactive/useProactive.ts +0 -1
  1036. package/src/projectOnboardingState.ts +0 -83
  1037. package/src/query/config.ts +0 -46
  1038. package/src/query/deps.ts +0 -33
  1039. package/src/query/stopHooks.ts +0 -473
  1040. package/src/query/tokenBudget.ts +0 -93
  1041. package/src/query/transitions.ts +0 -2
  1042. package/src/query.ts +0 -1729
  1043. package/src/remote/RemoteSessionManager.ts +0 -343
  1044. package/src/remote/SessionsWebSocket.ts +0 -404
  1045. package/src/remote/remotePermissionBridge.ts +0 -78
  1046. package/src/remote/sdkMessageAdapter.ts +0 -302
  1047. package/src/replLauncher.tsx +0 -23
  1048. package/src/schemas/hooks.ts +0 -222
  1049. package/src/screens/Doctor.tsx +0 -575
  1050. package/src/screens/REPL.tsx +0 -5006
  1051. package/src/screens/ResumeConversation.tsx +0 -399
  1052. package/src/self-hosted-runner/main.ts +0 -2
  1053. package/src/server/backends/dangerousBackend.ts +0 -2
  1054. package/src/server/connectHeadless.ts +0 -2
  1055. package/src/server/createDirectConnectSession.ts +0 -88
  1056. package/src/server/directConnectManager.ts +0 -213
  1057. package/src/server/lockfile.ts +0 -2
  1058. package/src/server/parseConnectUrl.ts +0 -2
  1059. package/src/server/server.ts +0 -2
  1060. package/src/server/serverBanner.ts +0 -2
  1061. package/src/server/serverLog.ts +0 -2
  1062. package/src/server/sessionManager.ts +0 -2
  1063. package/src/server/types.ts +0 -57
  1064. package/src/services/AgentSummary/agentSummary.ts +0 -179
  1065. package/src/services/MagicDocs/magicDocs.ts +0 -254
  1066. package/src/services/MagicDocs/prompts.ts +0 -127
  1067. package/src/services/PromptSuggestion/promptSuggestion.ts +0 -523
  1068. package/src/services/PromptSuggestion/speculation.ts +0 -991
  1069. package/src/services/SessionMemory/prompts.ts +0 -324
  1070. package/src/services/SessionMemory/sessionMemory.ts +0 -495
  1071. package/src/services/SessionMemory/sessionMemoryUtils.ts +0 -207
  1072. package/src/services/analytics/config.ts +0 -38
  1073. package/src/services/analytics/datadog.ts +0 -307
  1074. package/src/services/analytics/firstPartyEventLogger.ts +0 -449
  1075. package/src/services/analytics/firstPartyEventLoggingExporter.ts +0 -806
  1076. package/src/services/analytics/growthbook.ts +0 -1155
  1077. package/src/services/analytics/index.ts +0 -173
  1078. package/src/services/analytics/metadata.ts +0 -973
  1079. package/src/services/analytics/sink.ts +0 -114
  1080. package/src/services/analytics/sinkKillswitch.ts +0 -25
  1081. package/src/services/api/adminRequests.ts +0 -119
  1082. package/src/services/api/bootstrap.ts +0 -141
  1083. package/src/services/api/claude.ts +0 -3419
  1084. package/src/services/api/client.ts +0 -389
  1085. package/src/services/api/dumpPrompts.ts +0 -226
  1086. package/src/services/api/emptyUsage.ts +0 -22
  1087. package/src/services/api/errorUtils.ts +0 -260
  1088. package/src/services/api/errors.ts +0 -1205
  1089. package/src/services/api/filesApi.ts +0 -748
  1090. package/src/services/api/firstTokenDate.ts +0 -60
  1091. package/src/services/api/grove.ts +0 -357
  1092. package/src/services/api/logging.ts +0 -788
  1093. package/src/services/api/metricsOptOut.ts +0 -159
  1094. package/src/services/api/overageCreditGrant.ts +0 -137
  1095. package/src/services/api/promptCacheBreakDetection.ts +0 -727
  1096. package/src/services/api/referral.ts +0 -281
  1097. package/src/services/api/sessionIngress.ts +0 -514
  1098. package/src/services/api/ultrareviewQuota.ts +0 -38
  1099. package/src/services/api/usage.ts +0 -63
  1100. package/src/services/api/withRetry.ts +0 -818
  1101. package/src/services/autoDream/autoDream.ts +0 -324
  1102. package/src/services/autoDream/config.ts +0 -21
  1103. package/src/services/autoDream/consolidationLock.ts +0 -140
  1104. package/src/services/autoDream/consolidationPrompt.ts +0 -65
  1105. package/src/services/autoDream/dream.ts +0 -1
  1106. package/src/services/awaySummary.ts +0 -74
  1107. package/src/services/claudeAiLimits.ts +0 -515
  1108. package/src/services/claudeAiLimitsHook.ts +0 -23
  1109. package/src/services/compact/apiMicrocompact.ts +0 -153
  1110. package/src/services/compact/autoCompact.ts +0 -351
  1111. package/src/services/compact/cachedMCConfig.ts +0 -2
  1112. package/src/services/compact/cachedMicrocompact.ts +0 -2
  1113. package/src/services/compact/compact.ts +0 -1705
  1114. package/src/services/compact/compactWarningHook.ts +0 -16
  1115. package/src/services/compact/compactWarningState.ts +0 -18
  1116. package/src/services/compact/grouping.ts +0 -63
  1117. package/src/services/compact/microCompact.ts +0 -530
  1118. package/src/services/compact/postCompactCleanup.ts +0 -77
  1119. package/src/services/compact/prompt.ts +0 -374
  1120. package/src/services/compact/reactiveCompact.ts +0 -2
  1121. package/src/services/compact/sessionMemoryCompact.ts +0 -630
  1122. package/src/services/compact/snipCompact.ts +0 -1
  1123. package/src/services/compact/snipProjection.ts +0 -2
  1124. package/src/services/compact/timeBasedMCConfig.ts +0 -43
  1125. package/src/services/contextCollapse/index.ts +0 -2
  1126. package/src/services/contextCollapse/operations.ts +0 -2
  1127. package/src/services/contextCollapse/persist.ts +0 -2
  1128. package/src/services/diagnosticTracking.ts +0 -397
  1129. package/src/services/extractMemories/extractMemories.ts +0 -615
  1130. package/src/services/extractMemories/prompts.ts +0 -154
  1131. package/src/services/internalLogging.ts +0 -90
  1132. package/src/services/lsp/LSPClient.ts +0 -447
  1133. package/src/services/lsp/LSPDiagnosticRegistry.ts +0 -386
  1134. package/src/services/lsp/LSPServerInstance.ts +0 -511
  1135. package/src/services/lsp/LSPServerManager.ts +0 -420
  1136. package/src/services/lsp/config.ts +0 -79
  1137. package/src/services/lsp/manager.ts +0 -289
  1138. package/src/services/lsp/passiveFeedback.ts +0 -328
  1139. package/src/services/lsp/types.ts +0 -3
  1140. package/src/services/mcp/InProcessTransport.ts +0 -63
  1141. package/src/services/mcp/MCPConnectionManager.tsx +0 -73
  1142. package/src/services/mcp/SdkControlTransport.ts +0 -136
  1143. package/src/services/mcp/auth.ts +0 -2465
  1144. package/src/services/mcp/channelAllowlist.ts +0 -76
  1145. package/src/services/mcp/channelNotification.ts +0 -316
  1146. package/src/services/mcp/channelPermissions.ts +0 -240
  1147. package/src/services/mcp/claudeai.ts +0 -164
  1148. package/src/services/mcp/client.ts +0 -3348
  1149. package/src/services/mcp/config.ts +0 -1578
  1150. package/src/services/mcp/elicitationHandler.ts +0 -313
  1151. package/src/services/mcp/envExpansion.ts +0 -38
  1152. package/src/services/mcp/headersHelper.ts +0 -138
  1153. package/src/services/mcp/mcpStringUtils.ts +0 -106
  1154. package/src/services/mcp/normalization.ts +0 -23
  1155. package/src/services/mcp/oauthPort.ts +0 -78
  1156. package/src/services/mcp/officialRegistry.ts +0 -72
  1157. package/src/services/mcp/types.ts +0 -258
  1158. package/src/services/mcp/useManageMCPConnections.ts +0 -1141
  1159. package/src/services/mcp/utils.ts +0 -575
  1160. package/src/services/mcp/vscodeSdkMcp.ts +0 -112
  1161. package/src/services/mcp/xaa.ts +0 -511
  1162. package/src/services/mcp/xaaIdpLogin.ts +0 -487
  1163. package/src/services/mcpServerApproval.tsx +0 -41
  1164. package/src/services/mockRateLimits.ts +0 -882
  1165. package/src/services/notifier.ts +0 -156
  1166. package/src/services/oauth/auth-code-listener.ts +0 -211
  1167. package/src/services/oauth/client.ts +0 -566
  1168. package/src/services/oauth/crypto.ts +0 -23
  1169. package/src/services/oauth/getOauthProfile.ts +0 -53
  1170. package/src/services/oauth/index.ts +0 -198
  1171. package/src/services/oauth/types.ts +0 -7
  1172. package/src/services/plugins/PluginInstallationManager.ts +0 -184
  1173. package/src/services/plugins/pluginCliCommands.ts +0 -344
  1174. package/src/services/plugins/pluginOperations.ts +0 -1088
  1175. package/src/services/policyLimits/index.ts +0 -663
  1176. package/src/services/policyLimits/types.ts +0 -27
  1177. package/src/services/preventSleep.ts +0 -165
  1178. package/src/services/rateLimitMessages.ts +0 -344
  1179. package/src/services/rateLimitMocking.ts +0 -144
  1180. package/src/services/remoteManagedSettings/index.ts +0 -638
  1181. package/src/services/remoteManagedSettings/securityCheck.tsx +0 -74
  1182. package/src/services/remoteManagedSettings/syncCache.ts +0 -112
  1183. package/src/services/remoteManagedSettings/syncCacheState.ts +0 -96
  1184. package/src/services/remoteManagedSettings/types.ts +0 -31
  1185. package/src/services/sessionTranscript/sessionTranscript.ts +0 -2
  1186. package/src/services/settingsSync/index.ts +0 -581
  1187. package/src/services/settingsSync/types.ts +0 -67
  1188. package/src/services/skillSearch/featureCheck.ts +0 -2
  1189. package/src/services/skillSearch/localSearch.ts +0 -2
  1190. package/src/services/skillSearch/prefetch.ts +0 -2
  1191. package/src/services/skillSearch/remoteSkillLoader.ts +0 -2
  1192. package/src/services/skillSearch/remoteSkillState.ts +0 -2
  1193. package/src/services/skillSearch/signals.ts +0 -1
  1194. package/src/services/skillSearch/telemetry.ts +0 -2
  1195. package/src/services/teamMemorySync/index.ts +0 -1256
  1196. package/src/services/teamMemorySync/secretScanner.ts +0 -324
  1197. package/src/services/teamMemorySync/teamMemSecretGuard.ts +0 -44
  1198. package/src/services/teamMemorySync/types.ts +0 -156
  1199. package/src/services/teamMemorySync/watcher.ts +0 -387
  1200. package/src/services/tips/tipHistory.ts +0 -17
  1201. package/src/services/tips/tipRegistry.ts +0 -686
  1202. package/src/services/tips/tipScheduler.ts +0 -58
  1203. package/src/services/tips/types.ts +0 -5
  1204. package/src/services/tokenEstimation.ts +0 -495
  1205. package/src/services/toolUseSummary/toolUseSummaryGenerator.ts +0 -112
  1206. package/src/services/tools/StreamingToolExecutor.ts +0 -530
  1207. package/src/services/tools/toolExecution.ts +0 -1745
  1208. package/src/services/tools/toolHooks.ts +0 -650
  1209. package/src/services/tools/toolOrchestration.ts +0 -188
  1210. package/src/services/vcr.ts +0 -406
  1211. package/src/services/voice.ts +0 -525
  1212. package/src/services/voiceKeyterms.ts +0 -106
  1213. package/src/services/voiceStreamSTT.ts +0 -544
  1214. package/src/setup.ts +0 -477
  1215. package/src/shims/bun-bundle.ts +0 -18
  1216. package/src/shims/macro.ts +0 -12
  1217. package/src/skills/bundled/batch.ts +0 -124
  1218. package/src/skills/bundled/claude-api/SKILL.md +0 -1
  1219. package/src/skills/bundled/claude-api/SKILL.md.ts +0 -1
  1220. package/src/skills/bundled/claude-api/csharp/claude-api.md +0 -1
  1221. package/src/skills/bundled/claude-api/csharp/claude-api.md.ts +0 -1
  1222. package/src/skills/bundled/claude-api/curl/examples.md +0 -1
  1223. package/src/skills/bundled/claude-api/curl/examples.md.ts +0 -1
  1224. package/src/skills/bundled/claude-api/go/claude-api.md +0 -1
  1225. package/src/skills/bundled/claude-api/go/claude-api.md.ts +0 -1
  1226. package/src/skills/bundled/claude-api/java/claude-api.md +0 -1
  1227. package/src/skills/bundled/claude-api/java/claude-api.md.ts +0 -1
  1228. package/src/skills/bundled/claude-api/php/claude-api.md +0 -1
  1229. package/src/skills/bundled/claude-api/php/claude-api.md.ts +0 -1
  1230. package/src/skills/bundled/claude-api/python/agent-sdk/README.md +0 -1
  1231. package/src/skills/bundled/claude-api/python/agent-sdk/README.md.ts +0 -1
  1232. package/src/skills/bundled/claude-api/python/agent-sdk/patterns.md +0 -1
  1233. package/src/skills/bundled/claude-api/python/agent-sdk/patterns.md.ts +0 -1
  1234. package/src/skills/bundled/claude-api/python/claude-api/README.md +0 -1
  1235. package/src/skills/bundled/claude-api/python/claude-api/README.md.ts +0 -1
  1236. package/src/skills/bundled/claude-api/python/claude-api/batches.md +0 -1
  1237. package/src/skills/bundled/claude-api/python/claude-api/batches.md.ts +0 -1
  1238. package/src/skills/bundled/claude-api/python/claude-api/files-api.md +0 -1
  1239. package/src/skills/bundled/claude-api/python/claude-api/files-api.md.ts +0 -1
  1240. package/src/skills/bundled/claude-api/python/claude-api/streaming.md +0 -1
  1241. package/src/skills/bundled/claude-api/python/claude-api/streaming.md.ts +0 -1
  1242. package/src/skills/bundled/claude-api/python/claude-api/tool-use.md +0 -1
  1243. package/src/skills/bundled/claude-api/python/claude-api/tool-use.md.ts +0 -1
  1244. package/src/skills/bundled/claude-api/ruby/claude-api.md +0 -1
  1245. package/src/skills/bundled/claude-api/ruby/claude-api.md.ts +0 -1
  1246. package/src/skills/bundled/claude-api/shared/error-codes.md +0 -1
  1247. package/src/skills/bundled/claude-api/shared/error-codes.md.ts +0 -1
  1248. package/src/skills/bundled/claude-api/shared/live-sources.md +0 -1
  1249. package/src/skills/bundled/claude-api/shared/live-sources.md.ts +0 -1
  1250. package/src/skills/bundled/claude-api/shared/models.md +0 -1
  1251. package/src/skills/bundled/claude-api/shared/models.md.ts +0 -1
  1252. package/src/skills/bundled/claude-api/shared/prompt-caching.md +0 -1
  1253. package/src/skills/bundled/claude-api/shared/prompt-caching.md.ts +0 -1
  1254. package/src/skills/bundled/claude-api/shared/tool-use-concepts.md +0 -1
  1255. package/src/skills/bundled/claude-api/shared/tool-use-concepts.md.ts +0 -1
  1256. package/src/skills/bundled/claude-api/typescript/agent-sdk/README.md +0 -1
  1257. package/src/skills/bundled/claude-api/typescript/agent-sdk/README.md.ts +0 -1
  1258. package/src/skills/bundled/claude-api/typescript/agent-sdk/patterns.md +0 -1
  1259. package/src/skills/bundled/claude-api/typescript/agent-sdk/patterns.md.ts +0 -1
  1260. package/src/skills/bundled/claude-api/typescript/claude-api/README.md +0 -1
  1261. package/src/skills/bundled/claude-api/typescript/claude-api/README.md.ts +0 -1
  1262. package/src/skills/bundled/claude-api/typescript/claude-api/batches.md +0 -1
  1263. package/src/skills/bundled/claude-api/typescript/claude-api/batches.md.ts +0 -1
  1264. package/src/skills/bundled/claude-api/typescript/claude-api/files-api.md +0 -1
  1265. package/src/skills/bundled/claude-api/typescript/claude-api/files-api.md.ts +0 -1
  1266. package/src/skills/bundled/claude-api/typescript/claude-api/streaming.md +0 -1
  1267. package/src/skills/bundled/claude-api/typescript/claude-api/streaming.md.ts +0 -1
  1268. package/src/skills/bundled/claude-api/typescript/claude-api/tool-use.md +0 -1
  1269. package/src/skills/bundled/claude-api/typescript/claude-api/tool-use.md.ts +0 -1
  1270. package/src/skills/bundled/claudeApi.ts +0 -196
  1271. package/src/skills/bundled/claudeApiContent.ts +0 -75
  1272. package/src/skills/bundled/claudeInChrome.ts +0 -34
  1273. package/src/skills/bundled/debug.ts +0 -103
  1274. package/src/skills/bundled/dream.ts +0 -1
  1275. package/src/skills/bundled/hunter.ts +0 -1
  1276. package/src/skills/bundled/index.ts +0 -79
  1277. package/src/skills/bundled/keybindings.ts +0 -339
  1278. package/src/skills/bundled/loop.ts +0 -92
  1279. package/src/skills/bundled/loremIpsum.ts +0 -282
  1280. package/src/skills/bundled/remember.ts +0 -82
  1281. package/src/skills/bundled/runSkillGenerator.ts +0 -1
  1282. package/src/skills/bundled/scheduleRemoteAgents.ts +0 -447
  1283. package/src/skills/bundled/simplify.ts +0 -69
  1284. package/src/skills/bundled/skillify.ts +0 -197
  1285. package/src/skills/bundled/stuck.ts +0 -79
  1286. package/src/skills/bundled/updateConfig.ts +0 -475
  1287. package/src/skills/bundled/verify/SKILL.md +0 -1
  1288. package/src/skills/bundled/verify/SKILL.md.ts +0 -1
  1289. package/src/skills/bundled/verify/examples/cli.md +0 -1
  1290. package/src/skills/bundled/verify/examples/cli.md.ts +0 -1
  1291. package/src/skills/bundled/verify/examples/server.md +0 -1
  1292. package/src/skills/bundled/verify/examples/server.md.ts +0 -1
  1293. package/src/skills/bundled/verify.ts +0 -30
  1294. package/src/skills/bundled/verifyContent.ts +0 -13
  1295. package/src/skills/bundledSkills.ts +0 -220
  1296. package/src/skills/loadSkillsDir.ts +0 -1086
  1297. package/src/skills/mcpSkillBuilders.ts +0 -44
  1298. package/src/skills/mcpSkills.ts +0 -2
  1299. package/src/ssh/SSHSessionManager.ts +0 -1
  1300. package/src/ssh/createSSHSession.ts +0 -1
  1301. package/src/state/AppState.tsx +0 -200
  1302. package/src/state/AppStateStore.ts +0 -569
  1303. package/src/state/onChangeAppState.ts +0 -171
  1304. package/src/state/selectors.ts +0 -76
  1305. package/src/state/store.ts +0 -34
  1306. package/src/state/teammateViewHelpers.ts +0 -141
  1307. package/src/tasks/DreamTask/DreamTask.ts +0 -157
  1308. package/src/tasks/InProcessTeammateTask/InProcessTeammateTask.tsx +0 -126
  1309. package/src/tasks/InProcessTeammateTask/types.ts +0 -121
  1310. package/src/tasks/LocalAgentTask/LocalAgentTask.tsx +0 -683
  1311. package/src/tasks/LocalMainSessionTask.ts +0 -479
  1312. package/src/tasks/LocalShellTask/LocalShellTask.tsx +0 -523
  1313. package/src/tasks/LocalShellTask/guards.ts +0 -41
  1314. package/src/tasks/LocalShellTask/killShellTasks.ts +0 -76
  1315. package/src/tasks/LocalWorkflowTask/LocalWorkflowTask.ts +0 -1
  1316. package/src/tasks/MonitorMcpTask/MonitorMcpTask.ts +0 -1
  1317. package/src/tasks/RemoteAgentTask/RemoteAgentTask.tsx +0 -856
  1318. package/src/tasks/pillLabel.ts +0 -82
  1319. package/src/tasks/stopTask.ts +0 -100
  1320. package/src/tasks/types.ts +0 -46
  1321. package/src/tasks.ts +0 -39
  1322. package/src/tools/AgentTool/AgentTool.tsx +0 -1398
  1323. package/src/tools/AgentTool/UI.tsx +0 -872
  1324. package/src/tools/AgentTool/agentColorManager.ts +0 -66
  1325. package/src/tools/AgentTool/agentDisplay.ts +0 -104
  1326. package/src/tools/AgentTool/agentMemory.ts +0 -177
  1327. package/src/tools/AgentTool/agentMemorySnapshot.ts +0 -197
  1328. package/src/tools/AgentTool/agentToolUtils.ts +0 -686
  1329. package/src/tools/AgentTool/built-in/claudeCodeGuideAgent.ts +0 -205
  1330. package/src/tools/AgentTool/built-in/exploreAgent.ts +0 -87
  1331. package/src/tools/AgentTool/built-in/generalPurposeAgent.ts +0 -34
  1332. package/src/tools/AgentTool/built-in/planAgent.ts +0 -92
  1333. package/src/tools/AgentTool/built-in/statuslineSetup.ts +0 -144
  1334. package/src/tools/AgentTool/built-in/verificationAgent.ts +0 -152
  1335. package/src/tools/AgentTool/built-in/warpGrepAgent.ts +0 -67
  1336. package/src/tools/AgentTool/builtInAgents.ts +0 -73
  1337. package/src/tools/AgentTool/constants.ts +0 -12
  1338. package/src/tools/AgentTool/forkSubagent.ts +0 -210
  1339. package/src/tools/AgentTool/loadAgentsDir.ts +0 -755
  1340. package/src/tools/AgentTool/prompt.ts +0 -288
  1341. package/src/tools/AgentTool/resumeAgent.ts +0 -265
  1342. package/src/tools/AgentTool/runAgent.ts +0 -973
  1343. package/src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx +0 -266
  1344. package/src/tools/AskUserQuestionTool/prompt.ts +0 -44
  1345. package/src/tools/BashTool/BashTool.tsx +0 -1144
  1346. package/src/tools/BashTool/BashToolResultMessage.tsx +0 -191
  1347. package/src/tools/BashTool/UI.tsx +0 -185
  1348. package/src/tools/BashTool/bashCommandHelpers.ts +0 -265
  1349. package/src/tools/BashTool/bashPermissions.ts +0 -2621
  1350. package/src/tools/BashTool/bashSecurity.ts +0 -2592
  1351. package/src/tools/BashTool/commandSemantics.ts +0 -140
  1352. package/src/tools/BashTool/commentLabel.ts +0 -13
  1353. package/src/tools/BashTool/destructiveCommandWarning.ts +0 -102
  1354. package/src/tools/BashTool/modeValidation.ts +0 -115
  1355. package/src/tools/BashTool/pathValidation.ts +0 -1303
  1356. package/src/tools/BashTool/prompt.ts +0 -369
  1357. package/src/tools/BashTool/readOnlyValidation.ts +0 -1990
  1358. package/src/tools/BashTool/sedEditParser.ts +0 -322
  1359. package/src/tools/BashTool/sedValidation.ts +0 -684
  1360. package/src/tools/BashTool/shouldUseSandbox.ts +0 -153
  1361. package/src/tools/BashTool/toolName.ts +0 -2
  1362. package/src/tools/BashTool/utils.ts +0 -223
  1363. package/src/tools/BriefTool/BriefTool.ts +0 -204
  1364. package/src/tools/BriefTool/UI.tsx +0 -101
  1365. package/src/tools/BriefTool/attachments.ts +0 -110
  1366. package/src/tools/BriefTool/prompt.ts +0 -22
  1367. package/src/tools/BriefTool/upload.ts +0 -174
  1368. package/src/tools/ConfigTool/ConfigTool.ts +0 -467
  1369. package/src/tools/ConfigTool/UI.tsx +0 -38
  1370. package/src/tools/ConfigTool/constants.ts +0 -1
  1371. package/src/tools/ConfigTool/prompt.ts +0 -93
  1372. package/src/tools/ConfigTool/supportedSettings.ts +0 -211
  1373. package/src/tools/CtxInspectTool/CtxInspectTool.ts +0 -1
  1374. package/src/tools/DiscoverSkillsTool/prompt.ts +0 -2
  1375. package/src/tools/EnterPlanModeTool/EnterPlanModeTool.ts +0 -126
  1376. package/src/tools/EnterPlanModeTool/UI.tsx +0 -33
  1377. package/src/tools/EnterPlanModeTool/constants.ts +0 -1
  1378. package/src/tools/EnterPlanModeTool/prompt.ts +0 -170
  1379. package/src/tools/EnterWorktreeTool/EnterWorktreeTool.ts +0 -127
  1380. package/src/tools/EnterWorktreeTool/UI.tsx +0 -20
  1381. package/src/tools/EnterWorktreeTool/constants.ts +0 -1
  1382. package/src/tools/EnterWorktreeTool/prompt.ts +0 -30
  1383. package/src/tools/ExitPlanModeTool/ExitPlanModeV2Tool.ts +0 -493
  1384. package/src/tools/ExitPlanModeTool/UI.tsx +0 -82
  1385. package/src/tools/ExitPlanModeTool/constants.ts +0 -2
  1386. package/src/tools/ExitPlanModeTool/prompt.ts +0 -29
  1387. package/src/tools/ExitWorktreeTool/ExitWorktreeTool.ts +0 -329
  1388. package/src/tools/ExitWorktreeTool/UI.tsx +0 -25
  1389. package/src/tools/ExitWorktreeTool/constants.ts +0 -1
  1390. package/src/tools/ExitWorktreeTool/prompt.ts +0 -32
  1391. package/src/tools/FileEditTool/FileEditTool.ts +0 -625
  1392. package/src/tools/FileEditTool/UI.tsx +0 -289
  1393. package/src/tools/FileEditTool/constants.ts +0 -11
  1394. package/src/tools/FileEditTool/prompt.ts +0 -28
  1395. package/src/tools/FileEditTool/types.ts +0 -85
  1396. package/src/tools/FileEditTool/utils.ts +0 -775
  1397. package/src/tools/FileReadTool/FileReadTool.ts +0 -1183
  1398. package/src/tools/FileReadTool/UI.tsx +0 -185
  1399. package/src/tools/FileReadTool/imageProcessor.ts +0 -94
  1400. package/src/tools/FileReadTool/limits.ts +0 -92
  1401. package/src/tools/FileReadTool/prompt.ts +0 -49
  1402. package/src/tools/FileWriteTool/FileWriteTool.ts +0 -434
  1403. package/src/tools/FileWriteTool/UI.tsx +0 -405
  1404. package/src/tools/FileWriteTool/prompt.ts +0 -18
  1405. package/src/tools/GlobTool/GlobTool.ts +0 -198
  1406. package/src/tools/GlobTool/UI.tsx +0 -63
  1407. package/src/tools/GlobTool/prompt.ts +0 -7
  1408. package/src/tools/GrepTool/GrepTool.ts +0 -577
  1409. package/src/tools/GrepTool/UI.tsx +0 -201
  1410. package/src/tools/GrepTool/prompt.ts +0 -18
  1411. package/src/tools/LSPTool/LSPTool.ts +0 -860
  1412. package/src/tools/LSPTool/UI.tsx +0 -228
  1413. package/src/tools/LSPTool/formatters.ts +0 -592
  1414. package/src/tools/LSPTool/prompt.ts +0 -21
  1415. package/src/tools/LSPTool/schemas.ts +0 -215
  1416. package/src/tools/LSPTool/symbolContext.ts +0 -90
  1417. package/src/tools/ListMcpResourcesTool/ListMcpResourcesTool.ts +0 -123
  1418. package/src/tools/ListMcpResourcesTool/UI.tsx +0 -29
  1419. package/src/tools/ListMcpResourcesTool/prompt.ts +0 -20
  1420. package/src/tools/ListPeersTool/ListPeersTool.ts +0 -1
  1421. package/src/tools/MCPTool/MCPTool.ts +0 -77
  1422. package/src/tools/MCPTool/UI.tsx +0 -403
  1423. package/src/tools/MCPTool/classifyForCollapse.ts +0 -604
  1424. package/src/tools/MCPTool/prompt.ts +0 -3
  1425. package/src/tools/McpAuthTool/McpAuthTool.ts +0 -215
  1426. package/src/tools/MonitorTool/MonitorTool.ts +0 -2
  1427. package/src/tools/NotebookEditTool/NotebookEditTool.ts +0 -490
  1428. package/src/tools/NotebookEditTool/UI.tsx +0 -93
  1429. package/src/tools/NotebookEditTool/constants.ts +0 -2
  1430. package/src/tools/NotebookEditTool/prompt.ts +0 -3
  1431. package/src/tools/OverflowTestTool/OverflowTestTool.ts +0 -2
  1432. package/src/tools/PowerShellTool/PowerShellTool.tsx +0 -1001
  1433. package/src/tools/PowerShellTool/UI.tsx +0 -131
  1434. package/src/tools/PowerShellTool/clmTypes.ts +0 -211
  1435. package/src/tools/PowerShellTool/commandSemantics.ts +0 -142
  1436. package/src/tools/PowerShellTool/commonParameters.ts +0 -30
  1437. package/src/tools/PowerShellTool/destructiveCommandWarning.ts +0 -109
  1438. package/src/tools/PowerShellTool/gitSafety.ts +0 -176
  1439. package/src/tools/PowerShellTool/modeValidation.ts +0 -404
  1440. package/src/tools/PowerShellTool/pathValidation.ts +0 -2049
  1441. package/src/tools/PowerShellTool/powershellPermissions.ts +0 -1648
  1442. package/src/tools/PowerShellTool/powershellSecurity.ts +0 -1090
  1443. package/src/tools/PowerShellTool/prompt.ts +0 -145
  1444. package/src/tools/PowerShellTool/readOnlyValidation.ts +0 -1823
  1445. package/src/tools/PowerShellTool/toolName.ts +0 -2
  1446. package/src/tools/PushNotificationTool/PushNotificationTool.ts +0 -1
  1447. package/src/tools/REPLTool/REPLTool.ts +0 -1
  1448. package/src/tools/REPLTool/constants.ts +0 -46
  1449. package/src/tools/REPLTool/primitiveTools.ts +0 -39
  1450. package/src/tools/ReadMcpResourceTool/ReadMcpResourceTool.ts +0 -158
  1451. package/src/tools/ReadMcpResourceTool/UI.tsx +0 -37
  1452. package/src/tools/ReadMcpResourceTool/prompt.ts +0 -16
  1453. package/src/tools/RemoteTriggerTool/RemoteTriggerTool.ts +0 -161
  1454. package/src/tools/RemoteTriggerTool/UI.tsx +0 -17
  1455. package/src/tools/RemoteTriggerTool/prompt.ts +0 -15
  1456. package/src/tools/ReviewArtifactTool/ReviewArtifactTool.ts +0 -2
  1457. package/src/tools/ScheduleCronTool/CronCreateTool.ts +0 -157
  1458. package/src/tools/ScheduleCronTool/CronDeleteTool.ts +0 -95
  1459. package/src/tools/ScheduleCronTool/CronListTool.ts +0 -97
  1460. package/src/tools/ScheduleCronTool/UI.tsx +0 -60
  1461. package/src/tools/ScheduleCronTool/prompt.ts +0 -135
  1462. package/src/tools/SendMessageTool/SendMessageTool.ts +0 -917
  1463. package/src/tools/SendMessageTool/UI.tsx +0 -31
  1464. package/src/tools/SendMessageTool/constants.ts +0 -1
  1465. package/src/tools/SendMessageTool/prompt.ts +0 -49
  1466. package/src/tools/SendUserFileTool/SendUserFileTool.ts +0 -1
  1467. package/src/tools/SendUserFileTool/prompt.ts +0 -2
  1468. package/src/tools/SkillTool/SkillTool.ts +0 -1108
  1469. package/src/tools/SkillTool/UI.tsx +0 -128
  1470. package/src/tools/SkillTool/constants.ts +0 -1
  1471. package/src/tools/SkillTool/prompt.ts +0 -241
  1472. package/src/tools/SleepTool/SleepTool.ts +0 -1
  1473. package/src/tools/SleepTool/prompt.ts +0 -17
  1474. package/src/tools/SnipTool/SnipTool.ts +0 -1
  1475. package/src/tools/SnipTool/prompt.ts +0 -2
  1476. package/src/tools/SubscribePRTool/SubscribePRTool.ts +0 -1
  1477. package/src/tools/SuggestBackgroundPRTool/SuggestBackgroundPRTool.ts +0 -1
  1478. package/src/tools/SyntheticOutputTool/SyntheticOutputTool.ts +0 -163
  1479. package/src/tools/TaskCreateTool/TaskCreateTool.ts +0 -138
  1480. package/src/tools/TaskCreateTool/constants.ts +0 -1
  1481. package/src/tools/TaskCreateTool/prompt.ts +0 -56
  1482. package/src/tools/TaskGetTool/TaskGetTool.ts +0 -128
  1483. package/src/tools/TaskGetTool/constants.ts +0 -1
  1484. package/src/tools/TaskGetTool/prompt.ts +0 -24
  1485. package/src/tools/TaskListTool/TaskListTool.ts +0 -116
  1486. package/src/tools/TaskListTool/constants.ts +0 -1
  1487. package/src/tools/TaskListTool/prompt.ts +0 -49
  1488. package/src/tools/TaskOutputTool/TaskOutputTool.tsx +0 -584
  1489. package/src/tools/TaskOutputTool/constants.ts +0 -1
  1490. package/src/tools/TaskStopTool/TaskStopTool.ts +0 -131
  1491. package/src/tools/TaskStopTool/UI.tsx +0 -41
  1492. package/src/tools/TaskStopTool/prompt.ts +0 -8
  1493. package/src/tools/TaskUpdateTool/TaskUpdateTool.ts +0 -406
  1494. package/src/tools/TaskUpdateTool/constants.ts +0 -1
  1495. package/src/tools/TaskUpdateTool/prompt.ts +0 -77
  1496. package/src/tools/TeamCreateTool/TeamCreateTool.ts +0 -240
  1497. package/src/tools/TeamCreateTool/UI.tsx +0 -6
  1498. package/src/tools/TeamCreateTool/constants.ts +0 -1
  1499. package/src/tools/TeamCreateTool/prompt.ts +0 -113
  1500. package/src/tools/TeamDeleteTool/TeamDeleteTool.ts +0 -139
  1501. package/src/tools/TeamDeleteTool/UI.tsx +0 -20
  1502. package/src/tools/TeamDeleteTool/constants.ts +0 -1
  1503. package/src/tools/TeamDeleteTool/prompt.ts +0 -16
  1504. package/src/tools/TerminalCaptureTool/TerminalCaptureTool.ts +0 -1
  1505. package/src/tools/TerminalCaptureTool/prompt.ts +0 -2
  1506. package/src/tools/TodoWriteTool/TodoWriteTool.ts +0 -115
  1507. package/src/tools/TodoWriteTool/constants.ts +0 -1
  1508. package/src/tools/TodoWriteTool/prompt.ts +0 -184
  1509. package/src/tools/ToolSearchTool/ToolSearchTool.ts +0 -471
  1510. package/src/tools/ToolSearchTool/constants.ts +0 -1
  1511. package/src/tools/ToolSearchTool/prompt.ts +0 -121
  1512. package/src/tools/TungstenTool/TungstenLiveMonitor.ts +0 -3
  1513. package/src/tools/TungstenTool/TungstenLiveMonitor.tsx +0 -6
  1514. package/src/tools/TungstenTool/TungstenTool.ts +0 -26
  1515. package/src/tools/VerifyPlanExecutionTool/VerifyPlanExecutionTool.ts +0 -1
  1516. package/src/tools/VerifyPlanExecutionTool/constants.ts +0 -2
  1517. package/src/tools/WarpGrepTool/WarpGrepTool.ts +0 -106
  1518. package/src/tools/WebBrowserTool/WebBrowserPanel.ts +0 -2
  1519. package/src/tools/WebBrowserTool/WebBrowserTool.ts +0 -1
  1520. package/src/tools/WebFetchTool/UI.tsx +0 -72
  1521. package/src/tools/WebFetchTool/WebFetchTool.ts +0 -318
  1522. package/src/tools/WebFetchTool/preapproved.ts +0 -166
  1523. package/src/tools/WebFetchTool/prompt.ts +0 -46
  1524. package/src/tools/WebFetchTool/utils.ts +0 -530
  1525. package/src/tools/WebSearchTool/UI.tsx +0 -101
  1526. package/src/tools/WebSearchTool/WebSearchTool.ts +0 -435
  1527. package/src/tools/WebSearchTool/prompt.ts +0 -34
  1528. package/src/tools/WorkflowTool/WorkflowPermissionRequest.ts +0 -2
  1529. package/src/tools/WorkflowTool/WorkflowTool.ts +0 -2
  1530. package/src/tools/WorkflowTool/bundled/index.ts +0 -1
  1531. package/src/tools/WorkflowTool/constants.ts +0 -1
  1532. package/src/tools/WorkflowTool/createWorkflowCommand.ts +0 -2
  1533. package/src/tools/shared/gitOperationTracking.ts +0 -277
  1534. package/src/tools/shared/spawnMultiAgent.ts +0 -1093
  1535. package/src/tools/testing/TestingPermissionTool.tsx +0 -74
  1536. package/src/tools/utils.ts +0 -40
  1537. package/src/tools.ts +0 -394
  1538. package/src/types/command.ts +0 -216
  1539. package/src/types/connectorText.ts +0 -3
  1540. package/src/types/declarations/bun-globals.d.ts +0 -19
  1541. package/src/types/declarations/external-modules.d.ts +0 -120
  1542. package/src/types/declarations/react-compiler.d.ts +0 -3
  1543. package/src/types/fileSuggestion.ts +0 -1
  1544. package/src/types/generated/events_mono/claude_code/v1/claude_code_internal_event.ts +0 -865
  1545. package/src/types/generated/events_mono/common/v1/auth.ts +0 -100
  1546. package/src/types/generated/events_mono/growthbook/v1/growthbook_experiment_event.ts +0 -223
  1547. package/src/types/generated/google/protobuf/timestamp.ts +0 -187
  1548. package/src/types/hooks.ts +0 -290
  1549. package/src/types/ids.ts +0 -44
  1550. package/src/types/logs.ts +0 -330
  1551. package/src/types/message.ts +0 -40
  1552. package/src/types/messageQueueTypes.ts +0 -2
  1553. package/src/types/notebook.ts +0 -7
  1554. package/src/types/permissions.ts +0 -441
  1555. package/src/types/plugin.ts +0 -363
  1556. package/src/types/statusLine.ts +0 -1
  1557. package/src/types/textInputTypes.ts +0 -387
  1558. package/src/types/tools.ts +0 -11
  1559. package/src/types/utils.ts +0 -2
  1560. package/src/upstreamproxy/relay.ts +0 -455
  1561. package/src/upstreamproxy/upstreamproxy.ts +0 -285
  1562. package/src/utils/CircularBuffer.ts +0 -84
  1563. package/src/utils/Cursor.ts +0 -1530
  1564. package/src/utils/QueryGuard.ts +0 -121
  1565. package/src/utils/Shell.ts +0 -474
  1566. package/src/utils/ShellCommand.ts +0 -465
  1567. package/src/utils/abortController.ts +0 -99
  1568. package/src/utils/activityManager.ts +0 -164
  1569. package/src/utils/advisor.ts +0 -145
  1570. package/src/utils/agentContext.ts +0 -178
  1571. package/src/utils/agentId.ts +0 -99
  1572. package/src/utils/agentSwarmsEnabled.ts +0 -44
  1573. package/src/utils/agenticSessionSearch.ts +0 -307
  1574. package/src/utils/analyzeContext.ts +0 -1382
  1575. package/src/utils/ansiToPng.ts +0 -334
  1576. package/src/utils/ansiToSvg.ts +0 -272
  1577. package/src/utils/api.ts +0 -718
  1578. package/src/utils/apiPreconnect.ts +0 -71
  1579. package/src/utils/appleTerminalBackup.ts +0 -124
  1580. package/src/utils/argumentSubstitution.ts +0 -145
  1581. package/src/utils/array.ts +0 -13
  1582. package/src/utils/asciicast.ts +0 -239
  1583. package/src/utils/attachments.ts +0 -3997
  1584. package/src/utils/attribution.ts +0 -393
  1585. package/src/utils/attributionHooks.ts +0 -2
  1586. package/src/utils/attributionTrailer.ts +0 -2
  1587. package/src/utils/auth.ts +0 -2002
  1588. package/src/utils/authFileDescriptor.ts +0 -196
  1589. package/src/utils/authPortable.ts +0 -19
  1590. package/src/utils/autoModeDenials.ts +0 -26
  1591. package/src/utils/autoRunIssue.tsx +0 -122
  1592. package/src/utils/autoUpdater.ts +0 -561
  1593. package/src/utils/aws.ts +0 -74
  1594. package/src/utils/awsAuthStatusManager.ts +0 -81
  1595. package/src/utils/background/remote/preconditions.ts +0 -235
  1596. package/src/utils/background/remote/remoteSession.ts +0 -98
  1597. package/src/utils/backgroundHousekeeping.ts +0 -94
  1598. package/src/utils/bash/ParsedCommand.ts +0 -318
  1599. package/src/utils/bash/ShellSnapshot.ts +0 -582
  1600. package/src/utils/bash/ast.ts +0 -2679
  1601. package/src/utils/bash/bashParser.ts +0 -4436
  1602. package/src/utils/bash/bashPipeCommand.ts +0 -294
  1603. package/src/utils/bash/commands.ts +0 -1339
  1604. package/src/utils/bash/heredoc.ts +0 -733
  1605. package/src/utils/bash/parser.ts +0 -230
  1606. package/src/utils/bash/prefix.ts +0 -204
  1607. package/src/utils/bash/registry.ts +0 -53
  1608. package/src/utils/bash/shellCompletion.ts +0 -259
  1609. package/src/utils/bash/shellPrefix.ts +0 -28
  1610. package/src/utils/bash/shellQuote.ts +0 -304
  1611. package/src/utils/bash/shellQuoting.ts +0 -128
  1612. package/src/utils/bash/specs/alias.ts +0 -14
  1613. package/src/utils/bash/specs/index.ts +0 -18
  1614. package/src/utils/bash/specs/nohup.ts +0 -13
  1615. package/src/utils/bash/specs/pyright.ts +0 -91
  1616. package/src/utils/bash/specs/sleep.ts +0 -13
  1617. package/src/utils/bash/specs/srun.ts +0 -31
  1618. package/src/utils/bash/specs/time.ts +0 -13
  1619. package/src/utils/bash/specs/timeout.ts +0 -20
  1620. package/src/utils/bash/treeSitterAnalysis.ts +0 -506
  1621. package/src/utils/betas.ts +0 -434
  1622. package/src/utils/billing.ts +0 -78
  1623. package/src/utils/binaryCheck.ts +0 -53
  1624. package/src/utils/browser.ts +0 -68
  1625. package/src/utils/bufferedWriter.ts +0 -100
  1626. package/src/utils/bundledMode.ts +0 -22
  1627. package/src/utils/caCerts.ts +0 -115
  1628. package/src/utils/caCertsConfig.ts +0 -88
  1629. package/src/utils/cachePaths.ts +0 -38
  1630. package/src/utils/ccshareResume.ts +0 -2
  1631. package/src/utils/classifierApprovals.ts +0 -88
  1632. package/src/utils/classifierApprovalsHook.ts +0 -17
  1633. package/src/utils/claudeCodeHints.ts +0 -193
  1634. package/src/utils/claudeDesktop.ts +0 -152
  1635. package/src/utils/claudeInChrome/chromeNativeHost.ts +0 -527
  1636. package/src/utils/claudeInChrome/common.ts +0 -540
  1637. package/src/utils/claudeInChrome/mcpServer.ts +0 -293
  1638. package/src/utils/claudeInChrome/prompt.ts +0 -83
  1639. package/src/utils/claudeInChrome/setup.ts +0 -400
  1640. package/src/utils/claudeInChrome/setupPortable.ts +0 -233
  1641. package/src/utils/claudeInChrome/toolRendering.tsx +0 -262
  1642. package/src/utils/claudemd.ts +0 -1479
  1643. package/src/utils/cleanup.ts +0 -602
  1644. package/src/utils/cleanupRegistry.ts +0 -25
  1645. package/src/utils/cliArgs.ts +0 -60
  1646. package/src/utils/cliHighlight.ts +0 -54
  1647. package/src/utils/codeIndexing.ts +0 -206
  1648. package/src/utils/collapseBackgroundBashNotifications.ts +0 -84
  1649. package/src/utils/collapseHookSummaries.ts +0 -59
  1650. package/src/utils/collapseReadSearch.ts +0 -1109
  1651. package/src/utils/collapseTeammateShutdowns.ts +0 -55
  1652. package/src/utils/combinedAbortSignal.ts +0 -47
  1653. package/src/utils/commandLifecycle.ts +0 -21
  1654. package/src/utils/commitAttribution.ts +0 -961
  1655. package/src/utils/completionCache.ts +0 -166
  1656. package/src/utils/computerUse/appNames.ts +0 -196
  1657. package/src/utils/computerUse/cleanup.ts +0 -86
  1658. package/src/utils/computerUse/common.ts +0 -61
  1659. package/src/utils/computerUse/computerUseLock.ts +0 -215
  1660. package/src/utils/computerUse/drainRunLoop.ts +0 -79
  1661. package/src/utils/computerUse/escHotkey.ts +0 -54
  1662. package/src/utils/computerUse/executor.ts +0 -658
  1663. package/src/utils/computerUse/gates.ts +0 -72
  1664. package/src/utils/computerUse/hostAdapter.ts +0 -69
  1665. package/src/utils/computerUse/inputLoader.ts +0 -30
  1666. package/src/utils/computerUse/mcpServer.ts +0 -106
  1667. package/src/utils/computerUse/setup.ts +0 -53
  1668. package/src/utils/computerUse/swiftLoader.ts +0 -23
  1669. package/src/utils/computerUse/toolRendering.tsx +0 -125
  1670. package/src/utils/computerUse/wrapper.tsx +0 -336
  1671. package/src/utils/concurrentSessions.ts +0 -204
  1672. package/src/utils/config.ts +0 -1817
  1673. package/src/utils/configConstants.ts +0 -21
  1674. package/src/utils/contentArray.ts +0 -51
  1675. package/src/utils/context.ts +0 -221
  1676. package/src/utils/contextAnalysis.ts +0 -272
  1677. package/src/utils/contextSuggestions.ts +0 -235
  1678. package/src/utils/controlMessageCompat.ts +0 -32
  1679. package/src/utils/conversationRecovery.ts +0 -597
  1680. package/src/utils/cron.ts +0 -308
  1681. package/src/utils/cronJitterConfig.ts +0 -75
  1682. package/src/utils/cronScheduler.ts +0 -565
  1683. package/src/utils/cronTasks.ts +0 -458
  1684. package/src/utils/cronTasksLock.ts +0 -195
  1685. package/src/utils/crossProjectResume.ts +0 -75
  1686. package/src/utils/crypto.ts +0 -13
  1687. package/src/utils/cwd.ts +0 -32
  1688. package/src/utils/debug.ts +0 -268
  1689. package/src/utils/debugFilter.ts +0 -157
  1690. package/src/utils/deepLink/banner.ts +0 -123
  1691. package/src/utils/deepLink/parseDeepLink.ts +0 -170
  1692. package/src/utils/deepLink/protocolHandler.ts +0 -136
  1693. package/src/utils/deepLink/registerProtocol.ts +0 -348
  1694. package/src/utils/deepLink/terminalLauncher.ts +0 -557
  1695. package/src/utils/deepLink/terminalPreference.ts +0 -54
  1696. package/src/utils/desktopDeepLink.ts +0 -236
  1697. package/src/utils/detectRepository.ts +0 -178
  1698. package/src/utils/diagLogs.ts +0 -94
  1699. package/src/utils/diff.ts +0 -177
  1700. package/src/utils/directMemberMessage.ts +0 -69
  1701. package/src/utils/displayTags.ts +0 -51
  1702. package/src/utils/doctorContextWarnings.ts +0 -265
  1703. package/src/utils/doctorDiagnostic.ts +0 -625
  1704. package/src/utils/dxt/helpers.ts +0 -88
  1705. package/src/utils/dxt/zip.ts +0 -226
  1706. package/src/utils/earlyInput.ts +0 -191
  1707. package/src/utils/editor.ts +0 -183
  1708. package/src/utils/effort.ts +0 -329
  1709. package/src/utils/embeddedTools.ts +0 -29
  1710. package/src/utils/env.ts +0 -347
  1711. package/src/utils/envDynamic.ts +0 -151
  1712. package/src/utils/envUtils.ts +0 -183
  1713. package/src/utils/envValidation.ts +0 -38
  1714. package/src/utils/errorLogSink.ts +0 -235
  1715. package/src/utils/errors.ts +0 -238
  1716. package/src/utils/eventLoopStallDetector.ts +0 -2
  1717. package/src/utils/exampleCommands.ts +0 -184
  1718. package/src/utils/execFileNoThrow.ts +0 -150
  1719. package/src/utils/execFileNoThrowPortable.ts +0 -89
  1720. package/src/utils/execSyncWrapper.ts +0 -38
  1721. package/src/utils/exportRenderer.tsx +0 -98
  1722. package/src/utils/extraUsage.ts +0 -23
  1723. package/src/utils/fastMode.ts +0 -532
  1724. package/src/utils/file.ts +0 -584
  1725. package/src/utils/fileHistory.ts +0 -1115
  1726. package/src/utils/fileOperationAnalytics.ts +0 -71
  1727. package/src/utils/filePersistence/filePersistence.ts +0 -287
  1728. package/src/utils/filePersistence/outputsScanner.ts +0 -126
  1729. package/src/utils/filePersistence/types.ts +0 -33
  1730. package/src/utils/fileRead.ts +0 -102
  1731. package/src/utils/fileReadCache.ts +0 -96
  1732. package/src/utils/fileStateCache.ts +0 -142
  1733. package/src/utils/findExecutable.ts +0 -17
  1734. package/src/utils/fingerprint.ts +0 -76
  1735. package/src/utils/forkedAgent.ts +0 -689
  1736. package/src/utils/format.ts +0 -308
  1737. package/src/utils/formatBriefTimestamp.ts +0 -81
  1738. package/src/utils/fpsTracker.ts +0 -47
  1739. package/src/utils/frontmatterParser.ts +0 -370
  1740. package/src/utils/fsOperations.ts +0 -770
  1741. package/src/utils/fullscreen.ts +0 -202
  1742. package/src/utils/generatedFiles.ts +0 -136
  1743. package/src/utils/generators.ts +0 -88
  1744. package/src/utils/genericProcessUtils.ts +0 -184
  1745. package/src/utils/getWorktreePaths.ts +0 -70
  1746. package/src/utils/getWorktreePathsPortable.ts +0 -27
  1747. package/src/utils/ghPrStatus.ts +0 -106
  1748. package/src/utils/git/gitConfigParser.ts +0 -277
  1749. package/src/utils/git/gitFilesystem.ts +0 -699
  1750. package/src/utils/git/gitignore.ts +0 -99
  1751. package/src/utils/git.ts +0 -926
  1752. package/src/utils/gitDiff.ts +0 -532
  1753. package/src/utils/gitSettings.ts +0 -18
  1754. package/src/utils/github/ghAuthStatus.ts +0 -29
  1755. package/src/utils/githubRepoPathMapping.ts +0 -162
  1756. package/src/utils/glob.ts +0 -130
  1757. package/src/utils/gracefulShutdown.ts +0 -529
  1758. package/src/utils/groupToolUses.ts +0 -182
  1759. package/src/utils/handlePromptSubmit.ts +0 -610
  1760. package/src/utils/hash.ts +0 -46
  1761. package/src/utils/headlessProfiler.ts +0 -178
  1762. package/src/utils/heapDumpService.ts +0 -303
  1763. package/src/utils/heatmap.ts +0 -198
  1764. package/src/utils/highlightMatch.tsx +0 -28
  1765. package/src/utils/hooks/AsyncHookRegistry.ts +0 -309
  1766. package/src/utils/hooks/apiQueryHookHelper.ts +0 -141
  1767. package/src/utils/hooks/execAgentHook.ts +0 -339
  1768. package/src/utils/hooks/execHttpHook.ts +0 -242
  1769. package/src/utils/hooks/execPromptHook.ts +0 -211
  1770. package/src/utils/hooks/fileChangedWatcher.ts +0 -191
  1771. package/src/utils/hooks/hookEvents.ts +0 -192
  1772. package/src/utils/hooks/hookHelpers.ts +0 -83
  1773. package/src/utils/hooks/hooksConfigManager.ts +0 -400
  1774. package/src/utils/hooks/hooksConfigSnapshot.ts +0 -133
  1775. package/src/utils/hooks/hooksSettings.ts +0 -271
  1776. package/src/utils/hooks/postSamplingHooks.ts +0 -70
  1777. package/src/utils/hooks/registerFrontmatterHooks.ts +0 -67
  1778. package/src/utils/hooks/registerSkillHooks.ts +0 -64
  1779. package/src/utils/hooks/sessionHooks.ts +0 -447
  1780. package/src/utils/hooks/skillImprovement.ts +0 -267
  1781. package/src/utils/hooks/ssrfGuard.ts +0 -294
  1782. package/src/utils/hooks.ts +0 -5022
  1783. package/src/utils/horizontalScroll.ts +0 -137
  1784. package/src/utils/http.ts +0 -136
  1785. package/src/utils/hyperlink.ts +0 -39
  1786. package/src/utils/iTermBackup.ts +0 -73
  1787. package/src/utils/ide.ts +0 -1494
  1788. package/src/utils/idePathConversion.ts +0 -90
  1789. package/src/utils/idleTimeout.ts +0 -53
  1790. package/src/utils/imagePaste.ts +0 -416
  1791. package/src/utils/imageResizer.ts +0 -880
  1792. package/src/utils/imageStore.ts +0 -167
  1793. package/src/utils/imageValidation.ts +0 -104
  1794. package/src/utils/immediateCommand.ts +0 -15
  1795. package/src/utils/inProcessTeammateHelpers.ts +0 -102
  1796. package/src/utils/ink.ts +0 -26
  1797. package/src/utils/intl.ts +0 -94
  1798. package/src/utils/jetbrains.ts +0 -191
  1799. package/src/utils/json.ts +0 -277
  1800. package/src/utils/jsonRead.ts +0 -16
  1801. package/src/utils/keyboardShortcuts.ts +0 -14
  1802. package/src/utils/lazySchema.ts +0 -8
  1803. package/src/utils/listSessionsImpl.ts +0 -454
  1804. package/src/utils/localInstaller.ts +0 -162
  1805. package/src/utils/lockfile.ts +0 -43
  1806. package/src/utils/log.ts +0 -362
  1807. package/src/utils/logoV2Utils.ts +0 -350
  1808. package/src/utils/mailbox.ts +0 -73
  1809. package/src/utils/managedEnv.ts +0 -199
  1810. package/src/utils/managedEnvConstants.ts +0 -191
  1811. package/src/utils/markdown.ts +0 -381
  1812. package/src/utils/markdownConfigLoader.ts +0 -600
  1813. package/src/utils/mcp/dateTimeParser.ts +0 -121
  1814. package/src/utils/mcp/elicitationValidation.ts +0 -336
  1815. package/src/utils/mcpInstructionsDelta.ts +0 -130
  1816. package/src/utils/mcpOutputStorage.ts +0 -189
  1817. package/src/utils/mcpValidation.ts +0 -208
  1818. package/src/utils/mcpWebSocketTransport.ts +0 -200
  1819. package/src/utils/memoize.ts +0 -269
  1820. package/src/utils/memory/types.ts +0 -12
  1821. package/src/utils/memory/versions.ts +0 -8
  1822. package/src/utils/memoryFileDetection.ts +0 -289
  1823. package/src/utils/messagePredicates.ts +0 -8
  1824. package/src/utils/messageQueueManager.ts +0 -547
  1825. package/src/utils/messages/mappers.ts +0 -290
  1826. package/src/utils/messages/systemInit.ts +0 -96
  1827. package/src/utils/messages.ts +0 -5512
  1828. package/src/utils/model/agent.ts +0 -157
  1829. package/src/utils/model/aliases.ts +0 -25
  1830. package/src/utils/model/antModels.ts +0 -64
  1831. package/src/utils/model/bedrock.ts +0 -265
  1832. package/src/utils/model/check1mAccess.ts +0 -72
  1833. package/src/utils/model/configs.ts +0 -118
  1834. package/src/utils/model/contextWindowUpgradeCheck.ts +0 -47
  1835. package/src/utils/model/deprecation.ts +0 -101
  1836. package/src/utils/model/model.ts +0 -618
  1837. package/src/utils/model/modelAllowlist.ts +0 -170
  1838. package/src/utils/model/modelCapabilities.ts +0 -118
  1839. package/src/utils/model/modelOptions.ts +0 -540
  1840. package/src/utils/model/modelStrings.ts +0 -166
  1841. package/src/utils/model/modelSupportOverrides.ts +0 -50
  1842. package/src/utils/model/providers.ts +0 -40
  1843. package/src/utils/model/validateModel.ts +0 -159
  1844. package/src/utils/modelCost.ts +0 -231
  1845. package/src/utils/modifiers.ts +0 -41
  1846. package/src/utils/mtls.ts +0 -179
  1847. package/src/utils/nativeInstaller/download.ts +0 -523
  1848. package/src/utils/nativeInstaller/index.ts +0 -18
  1849. package/src/utils/nativeInstaller/installer.ts +0 -1708
  1850. package/src/utils/nativeInstaller/packageManagers.ts +0 -336
  1851. package/src/utils/nativeInstaller/pidLock.ts +0 -433
  1852. package/src/utils/notebook.ts +0 -224
  1853. package/src/utils/objectGroupBy.ts +0 -18
  1854. package/src/utils/pasteStore.ts +0 -104
  1855. package/src/utils/path.ts +0 -155
  1856. package/src/utils/pdf.ts +0 -300
  1857. package/src/utils/pdfUtils.ts +0 -70
  1858. package/src/utils/peerAddress.ts +0 -21
  1859. package/src/utils/permissions/PermissionMode.ts +0 -141
  1860. package/src/utils/permissions/PermissionPromptToolResultSchema.ts +0 -127
  1861. package/src/utils/permissions/PermissionResult.ts +0 -35
  1862. package/src/utils/permissions/PermissionRule.ts +0 -40
  1863. package/src/utils/permissions/PermissionUpdate.ts +0 -389
  1864. package/src/utils/permissions/PermissionUpdateSchema.ts +0 -78
  1865. package/src/utils/permissions/autoModeState.ts +0 -39
  1866. package/src/utils/permissions/bashClassifier.ts +0 -61
  1867. package/src/utils/permissions/bypassPermissionsKillswitch.ts +0 -155
  1868. package/src/utils/permissions/classifierDecision.ts +0 -98
  1869. package/src/utils/permissions/classifierShared.ts +0 -39
  1870. package/src/utils/permissions/dangerousPatterns.ts +0 -80
  1871. package/src/utils/permissions/denialTracking.ts +0 -45
  1872. package/src/utils/permissions/filesystem.ts +0 -1777
  1873. package/src/utils/permissions/getNextPermissionMode.ts +0 -101
  1874. package/src/utils/permissions/pathValidation.ts +0 -485
  1875. package/src/utils/permissions/permissionExplainer.ts +0 -250
  1876. package/src/utils/permissions/permissionRuleParser.ts +0 -198
  1877. package/src/utils/permissions/permissionSetup.ts +0 -1532
  1878. package/src/utils/permissions/permissions.ts +0 -1486
  1879. package/src/utils/permissions/permissionsLoader.ts +0 -296
  1880. package/src/utils/permissions/shadowedRuleDetection.ts +0 -234
  1881. package/src/utils/permissions/shellRuleMatching.ts +0 -228
  1882. package/src/utils/permissions/yolo-classifier-prompts/auto_mode_system_prompt.txt +0 -1
  1883. package/src/utils/permissions/yolo-classifier-prompts/permissions_anthropic.txt +0 -1
  1884. package/src/utils/permissions/yolo-classifier-prompts/permissions_external.txt +0 -1
  1885. package/src/utils/permissions/yoloClassifier.ts +0 -1495
  1886. package/src/utils/planModeV2.ts +0 -95
  1887. package/src/utils/plans.ts +0 -397
  1888. package/src/utils/platform.ts +0 -150
  1889. package/src/utils/plugins/addDirPluginSettings.ts +0 -71
  1890. package/src/utils/plugins/cacheUtils.ts +0 -196
  1891. package/src/utils/plugins/dependencyResolver.ts +0 -305
  1892. package/src/utils/plugins/fetchTelemetry.ts +0 -135
  1893. package/src/utils/plugins/gitAvailability.ts +0 -69
  1894. package/src/utils/plugins/headlessPluginInstall.ts +0 -174
  1895. package/src/utils/plugins/hintRecommendation.ts +0 -164
  1896. package/src/utils/plugins/installCounts.ts +0 -292
  1897. package/src/utils/plugins/installedPluginsManager.ts +0 -1268
  1898. package/src/utils/plugins/loadPluginAgents.ts +0 -348
  1899. package/src/utils/plugins/loadPluginCommands.ts +0 -946
  1900. package/src/utils/plugins/loadPluginHooks.ts +0 -287
  1901. package/src/utils/plugins/loadPluginOutputStyles.ts +0 -178
  1902. package/src/utils/plugins/lspPluginIntegration.ts +0 -387
  1903. package/src/utils/plugins/lspRecommendation.ts +0 -374
  1904. package/src/utils/plugins/managedPlugins.ts +0 -27
  1905. package/src/utils/plugins/marketplaceHelpers.ts +0 -592
  1906. package/src/utils/plugins/marketplaceManager.ts +0 -2643
  1907. package/src/utils/plugins/mcpPluginIntegration.ts +0 -634
  1908. package/src/utils/plugins/mcpbHandler.ts +0 -968
  1909. package/src/utils/plugins/officialMarketplace.ts +0 -25
  1910. package/src/utils/plugins/officialMarketplaceGcs.ts +0 -216
  1911. package/src/utils/plugins/officialMarketplaceStartupCheck.ts +0 -439
  1912. package/src/utils/plugins/orphanedPluginFilter.ts +0 -114
  1913. package/src/utils/plugins/parseMarketplaceInput.ts +0 -162
  1914. package/src/utils/plugins/performStartupChecks.tsx +0 -70
  1915. package/src/utils/plugins/pluginAutoupdate.ts +0 -284
  1916. package/src/utils/plugins/pluginBlocklist.ts +0 -127
  1917. package/src/utils/plugins/pluginDirectories.ts +0 -178
  1918. package/src/utils/plugins/pluginFlagging.ts +0 -208
  1919. package/src/utils/plugins/pluginIdentifier.ts +0 -123
  1920. package/src/utils/plugins/pluginInstallationHelpers.ts +0 -595
  1921. package/src/utils/plugins/pluginLoader.ts +0 -3302
  1922. package/src/utils/plugins/pluginOptionsStorage.ts +0 -400
  1923. package/src/utils/plugins/pluginPolicy.ts +0 -20
  1924. package/src/utils/plugins/pluginStartupCheck.ts +0 -341
  1925. package/src/utils/plugins/pluginVersioning.ts +0 -157
  1926. package/src/utils/plugins/reconciler.ts +0 -265
  1927. package/src/utils/plugins/refresh.ts +0 -215
  1928. package/src/utils/plugins/schemas.ts +0 -1681
  1929. package/src/utils/plugins/validatePlugin.ts +0 -903
  1930. package/src/utils/plugins/walkPluginMarkdown.ts +0 -69
  1931. package/src/utils/plugins/zipCache.ts +0 -406
  1932. package/src/utils/plugins/zipCacheAdapters.ts +0 -164
  1933. package/src/utils/postCommitAttribution.ts +0 -2
  1934. package/src/utils/powershell/dangerousCmdlets.ts +0 -185
  1935. package/src/utils/powershell/parser.ts +0 -1804
  1936. package/src/utils/powershell/staticPrefix.ts +0 -316
  1937. package/src/utils/preflightChecks.tsx +0 -151
  1938. package/src/utils/privacyLevel.ts +0 -55
  1939. package/src/utils/process.ts +0 -68
  1940. package/src/utils/processUserInput/processBashCommand.tsx +0 -140
  1941. package/src/utils/processUserInput/processSlashCommand.tsx +0 -922
  1942. package/src/utils/processUserInput/processTextPrompt.ts +0 -100
  1943. package/src/utils/processUserInput/processUserInput.ts +0 -605
  1944. package/src/utils/profilerBase.ts +0 -46
  1945. package/src/utils/promptCategory.ts +0 -49
  1946. package/src/utils/promptEditor.ts +0 -188
  1947. package/src/utils/promptShellExecution.ts +0 -183
  1948. package/src/utils/protectedNamespace.ts +0 -2
  1949. package/src/utils/proxy.ts +0 -426
  1950. package/src/utils/queryContext.ts +0 -179
  1951. package/src/utils/queryHelpers.ts +0 -552
  1952. package/src/utils/queryProfiler.ts +0 -301
  1953. package/src/utils/queueProcessor.ts +0 -95
  1954. package/src/utils/readEditContext.ts +0 -227
  1955. package/src/utils/readFileInRange.ts +0 -383
  1956. package/src/utils/releaseNotes.ts +0 -360
  1957. package/src/utils/renderOptions.ts +0 -77
  1958. package/src/utils/ripgrep.ts +0 -679
  1959. package/src/utils/sandbox/sandbox-adapter.ts +0 -985
  1960. package/src/utils/sandbox/sandbox-ui-utils.ts +0 -12
  1961. package/src/utils/sanitization.ts +0 -91
  1962. package/src/utils/screenshotClipboard.ts +0 -121
  1963. package/src/utils/sdkEventQueue.ts +0 -134
  1964. package/src/utils/sdkHeapDumpMonitor.ts +0 -2
  1965. package/src/utils/secureStorage/fallbackStorage.ts +0 -70
  1966. package/src/utils/secureStorage/index.ts +0 -17
  1967. package/src/utils/secureStorage/keychainPrefetch.ts +0 -116
  1968. package/src/utils/secureStorage/macOsKeychainHelpers.ts +0 -111
  1969. package/src/utils/secureStorage/macOsKeychainStorage.ts +0 -231
  1970. package/src/utils/secureStorage/plainTextStorage.ts +0 -84
  1971. package/src/utils/secureStorage/types.ts +0 -2
  1972. package/src/utils/semanticBoolean.ts +0 -29
  1973. package/src/utils/semanticNumber.ts +0 -36
  1974. package/src/utils/semver.ts +0 -59
  1975. package/src/utils/sequential.ts +0 -56
  1976. package/src/utils/sessionActivity.ts +0 -133
  1977. package/src/utils/sessionDataUploader.ts +0 -2
  1978. package/src/utils/sessionEnvVars.ts +0 -22
  1979. package/src/utils/sessionEnvironment.ts +0 -166
  1980. package/src/utils/sessionFileAccessHooks.ts +0 -250
  1981. package/src/utils/sessionIngressAuth.ts +0 -140
  1982. package/src/utils/sessionRestore.ts +0 -551
  1983. package/src/utils/sessionStart.ts +0 -232
  1984. package/src/utils/sessionState.ts +0 -150
  1985. package/src/utils/sessionStorage.ts +0 -5105
  1986. package/src/utils/sessionStoragePortable.ts +0 -793
  1987. package/src/utils/sessionTitle.ts +0 -129
  1988. package/src/utils/sessionUrl.ts +0 -64
  1989. package/src/utils/set.ts +0 -53
  1990. package/src/utils/settings/allErrors.ts +0 -32
  1991. package/src/utils/settings/applySettingsChange.ts +0 -92
  1992. package/src/utils/settings/changeDetector.ts +0 -488
  1993. package/src/utils/settings/constants.ts +0 -202
  1994. package/src/utils/settings/internalWrites.ts +0 -37
  1995. package/src/utils/settings/managedPath.ts +0 -34
  1996. package/src/utils/settings/mdm/constants.ts +0 -81
  1997. package/src/utils/settings/mdm/rawRead.ts +0 -130
  1998. package/src/utils/settings/mdm/settings.ts +0 -316
  1999. package/src/utils/settings/permissionValidation.ts +0 -262
  2000. package/src/utils/settings/pluginOnlyPolicy.ts +0 -60
  2001. package/src/utils/settings/schemaOutput.ts +0 -8
  2002. package/src/utils/settings/settings.ts +0 -1015
  2003. package/src/utils/settings/settingsCache.ts +0 -80
  2004. package/src/utils/settings/toolValidationConfig.ts +0 -103
  2005. package/src/utils/settings/types.ts +0 -1148
  2006. package/src/utils/settings/validateEditTool.ts +0 -45
  2007. package/src/utils/settings/validation.ts +0 -265
  2008. package/src/utils/settings/validationTips.ts +0 -164
  2009. package/src/utils/shell/bashProvider.ts +0 -255
  2010. package/src/utils/shell/outputLimits.ts +0 -14
  2011. package/src/utils/shell/powershellDetection.ts +0 -107
  2012. package/src/utils/shell/powershellProvider.ts +0 -123
  2013. package/src/utils/shell/prefix.ts +0 -367
  2014. package/src/utils/shell/readOnlyCommandValidation.ts +0 -1893
  2015. package/src/utils/shell/resolveDefaultShell.ts +0 -14
  2016. package/src/utils/shell/shellProvider.ts +0 -33
  2017. package/src/utils/shell/shellToolUtils.ts +0 -22
  2018. package/src/utils/shell/specPrefix.ts +0 -241
  2019. package/src/utils/shellConfig.ts +0 -167
  2020. package/src/utils/sideQuery.ts +0 -222
  2021. package/src/utils/sideQuestion.ts +0 -155
  2022. package/src/utils/signal.ts +0 -43
  2023. package/src/utils/sinks.ts +0 -16
  2024. package/src/utils/skills/skillChangeDetector.ts +0 -311
  2025. package/src/utils/slashCommandParsing.ts +0 -60
  2026. package/src/utils/sleep.ts +0 -84
  2027. package/src/utils/sliceAnsi.ts +0 -91
  2028. package/src/utils/slowOperations.ts +0 -286
  2029. package/src/utils/standaloneAgent.ts +0 -23
  2030. package/src/utils/startupProfiler.ts +0 -194
  2031. package/src/utils/staticRender.tsx +0 -116
  2032. package/src/utils/stats.ts +0 -1061
  2033. package/src/utils/statsCache.ts +0 -434
  2034. package/src/utils/status.tsx +0 -362
  2035. package/src/utils/statusNoticeDefinitions.tsx +0 -198
  2036. package/src/utils/statusNoticeHelpers.ts +0 -20
  2037. package/src/utils/stream.ts +0 -76
  2038. package/src/utils/streamJsonStdoutGuard.ts +0 -123
  2039. package/src/utils/streamlinedTransform.ts +0 -201
  2040. package/src/utils/stringUtils.ts +0 -235
  2041. package/src/utils/subprocessEnv.ts +0 -99
  2042. package/src/utils/suggestions/commandSuggestions.ts +0 -567
  2043. package/src/utils/suggestions/directoryCompletion.ts +0 -263
  2044. package/src/utils/suggestions/shellHistoryCompletion.ts +0 -119
  2045. package/src/utils/suggestions/skillUsageTracking.ts +0 -55
  2046. package/src/utils/suggestions/slackChannelSuggestions.ts +0 -209
  2047. package/src/utils/swarm/It2SetupPrompt.tsx +0 -380
  2048. package/src/utils/swarm/backends/ITermBackend.ts +0 -370
  2049. package/src/utils/swarm/backends/InProcessBackend.ts +0 -339
  2050. package/src/utils/swarm/backends/PaneBackendExecutor.ts +0 -354
  2051. package/src/utils/swarm/backends/TmuxBackend.ts +0 -764
  2052. package/src/utils/swarm/backends/detection.ts +0 -128
  2053. package/src/utils/swarm/backends/it2Setup.ts +0 -245
  2054. package/src/utils/swarm/backends/registry.ts +0 -464
  2055. package/src/utils/swarm/backends/teammateModeSnapshot.ts +0 -87
  2056. package/src/utils/swarm/backends/types.ts +0 -311
  2057. package/src/utils/swarm/constants.ts +0 -33
  2058. package/src/utils/swarm/inProcessRunner.ts +0 -1552
  2059. package/src/utils/swarm/leaderPermissionBridge.ts +0 -54
  2060. package/src/utils/swarm/permissionSync.ts +0 -928
  2061. package/src/utils/swarm/reconnection.ts +0 -119
  2062. package/src/utils/swarm/spawnInProcess.ts +0 -328
  2063. package/src/utils/swarm/spawnUtils.ts +0 -146
  2064. package/src/utils/swarm/teamHelpers.ts +0 -683
  2065. package/src/utils/swarm/teammateInit.ts +0 -129
  2066. package/src/utils/swarm/teammateLayoutManager.ts +0 -107
  2067. package/src/utils/swarm/teammateModel.ts +0 -10
  2068. package/src/utils/swarm/teammatePromptAddendum.ts +0 -18
  2069. package/src/utils/systemDirectories.ts +0 -74
  2070. package/src/utils/systemPrompt.ts +0 -123
  2071. package/src/utils/systemPromptType.ts +0 -14
  2072. package/src/utils/systemTheme.ts +0 -119
  2073. package/src/utils/systemThemeWatcher.ts +0 -2
  2074. package/src/utils/taggedId.ts +0 -54
  2075. package/src/utils/task/TaskOutput.ts +0 -390
  2076. package/src/utils/task/diskOutput.ts +0 -451
  2077. package/src/utils/task/framework.ts +0 -308
  2078. package/src/utils/task/outputFormatting.ts +0 -38
  2079. package/src/utils/task/sdkProgress.ts +0 -36
  2080. package/src/utils/taskSummary.ts +0 -2
  2081. package/src/utils/tasks.ts +0 -862
  2082. package/src/utils/teamDiscovery.ts +0 -81
  2083. package/src/utils/teamMemoryOps.ts +0 -88
  2084. package/src/utils/teammate.ts +0 -292
  2085. package/src/utils/teammateContext.ts +0 -96
  2086. package/src/utils/teammateMailbox.ts +0 -1183
  2087. package/src/utils/telemetry/betaSessionTracing.ts +0 -491
  2088. package/src/utils/telemetry/bigqueryExporter.ts +0 -252
  2089. package/src/utils/telemetry/events.ts +0 -75
  2090. package/src/utils/telemetry/instrumentation.ts +0 -825
  2091. package/src/utils/telemetry/logger.ts +0 -26
  2092. package/src/utils/telemetry/perfettoTracing.ts +0 -1120
  2093. package/src/utils/telemetry/pluginTelemetry.ts +0 -289
  2094. package/src/utils/telemetry/sessionTracing.ts +0 -927
  2095. package/src/utils/telemetry/skillLoadedEvent.ts +0 -39
  2096. package/src/utils/telemetryAttributes.ts +0 -71
  2097. package/src/utils/teleport/api.ts +0 -466
  2098. package/src/utils/teleport/environmentSelection.ts +0 -77
  2099. package/src/utils/teleport/environments.ts +0 -120
  2100. package/src/utils/teleport/gitBundle.ts +0 -292
  2101. package/src/utils/teleport.tsx +0 -1226
  2102. package/src/utils/tempfile.ts +0 -31
  2103. package/src/utils/terminal.ts +0 -131
  2104. package/src/utils/terminalPanel.ts +0 -191
  2105. package/src/utils/textHighlighting.ts +0 -166
  2106. package/src/utils/theme.ts +0 -639
  2107. package/src/utils/thinking.ts +0 -162
  2108. package/src/utils/timeouts.ts +0 -39
  2109. package/src/utils/tmuxSocket.ts +0 -427
  2110. package/src/utils/todo/types.ts +0 -18
  2111. package/src/utils/tokenBudget.ts +0 -73
  2112. package/src/utils/tokens.ts +0 -261
  2113. package/src/utils/toolErrors.ts +0 -132
  2114. package/src/utils/toolPool.ts +0 -79
  2115. package/src/utils/toolResultStorage.ts +0 -1040
  2116. package/src/utils/toolSchemaCache.ts +0 -26
  2117. package/src/utils/toolSearch.ts +0 -756
  2118. package/src/utils/transcriptSearch.ts +0 -202
  2119. package/src/utils/treeify.ts +0 -170
  2120. package/src/utils/truncate.ts +0 -179
  2121. package/src/utils/udsClient.ts +0 -2
  2122. package/src/utils/udsMessaging.ts +0 -2
  2123. package/src/utils/ultraplan/ccrSession.ts +0 -349
  2124. package/src/utils/ultraplan/keyword.ts +0 -127
  2125. package/src/utils/ultraplan/prompt.txt +0 -1
  2126. package/src/utils/unaryLogging.ts +0 -39
  2127. package/src/utils/undercover.ts +0 -89
  2128. package/src/utils/user.ts +0 -194
  2129. package/src/utils/userAgent.ts +0 -10
  2130. package/src/utils/userPromptKeywords.ts +0 -27
  2131. package/src/utils/uuid.ts +0 -27
  2132. package/src/utils/warningHandler.ts +0 -121
  2133. package/src/utils/which.ts +0 -82
  2134. package/src/utils/windowsPaths.ts +0 -173
  2135. package/src/utils/withResolvers.ts +0 -13
  2136. package/src/utils/words.ts +0 -800
  2137. package/src/utils/workloadContext.ts +0 -57
  2138. package/src/utils/worktree.ts +0 -1519
  2139. package/src/utils/worktreeModeEnabled.ts +0 -11
  2140. package/src/utils/xdg.ts +0 -65
  2141. package/src/utils/xml.ts +0 -16
  2142. package/src/utils/yaml.ts +0 -15
  2143. package/src/utils/zodToJsonSchema.ts +0 -23
  2144. package/src/vim/motions.ts +0 -82
  2145. package/src/vim/operators.ts +0 -556
  2146. package/src/vim/textObjects.ts +0 -186
  2147. package/src/vim/transitions.ts +0 -490
  2148. package/src/vim/types.ts +0 -199
  2149. package/src/voice/voiceModeEnabled.ts +0 -54
  2150. package/stubs/@ant/claude-for-chrome-mcp/index.js +0 -1
  2151. package/stubs/@ant/claude-for-chrome-mcp/index.ts +0 -4
  2152. package/stubs/@ant/claude-for-chrome-mcp/package.json +0 -6
  2153. package/stubs/@ant/computer-use-input/index.js +0 -2
  2154. package/stubs/@ant/computer-use-input/index.ts +0 -3
  2155. package/stubs/@ant/computer-use-input/package.json +0 -6
  2156. package/stubs/@ant/computer-use-mcp/index.js +0 -1
  2157. package/stubs/@ant/computer-use-mcp/index.ts +0 -1
  2158. package/stubs/@ant/computer-use-mcp/package.json +0 -11
  2159. package/stubs/@ant/computer-use-mcp/sentinelApps.js +0 -3
  2160. package/stubs/@ant/computer-use-mcp/sentinelApps.ts +0 -3
  2161. package/stubs/@ant/computer-use-mcp/types.js +0 -2
  2162. package/stubs/@ant/computer-use-mcp/types.ts +0 -6
  2163. package/stubs/@ant/computer-use-swift/index.js +0 -2
  2164. package/stubs/@ant/computer-use-swift/index.ts +0 -2
  2165. package/stubs/@ant/computer-use-swift/package.json +0 -6
  2166. package/stubs/@anthropic-ai/claude-agent-sdk/index.js +0 -2
  2167. package/stubs/@anthropic-ai/claude-agent-sdk/index.ts +0 -2
  2168. package/stubs/@anthropic-ai/claude-agent-sdk/package.json +0 -6
  2169. package/stubs/@anthropic-ai/mcpb/index.js +0 -2
  2170. package/stubs/@anthropic-ai/mcpb/index.ts +0 -3
  2171. package/stubs/@anthropic-ai/mcpb/package.json +0 -6
  2172. package/stubs/@anthropic-ai/sandbox-runtime/index.js +0 -4
  2173. package/stubs/@anthropic-ai/sandbox-runtime/index.ts +0 -49
  2174. package/stubs/@anthropic-ai/sandbox-runtime/package.json +0 -6
  2175. package/stubs/globals.ts +0 -11
  2176. package/stubs/macro.d.ts +0 -9
  2177. 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
- }