@shareai-lab/kode 1.2.0 → 2.0.2

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 (725) hide show
  1. package/README.md +25 -388
  2. package/cli-acp.js +82 -0
  3. package/cli.js +89 -79
  4. package/dist/REPL-GIU4ZIXM.js +42 -0
  5. package/dist/acp-H3VJ77YG.js +1357 -0
  6. package/dist/acp-H3VJ77YG.js.map +7 -0
  7. package/dist/agentsValidate-XP3CFN6F.js +373 -0
  8. package/dist/agentsValidate-XP3CFN6F.js.map +7 -0
  9. package/dist/ask-3G5H5KD5.js +125 -0
  10. package/dist/ask-3G5H5KD5.js.map +7 -0
  11. package/dist/autoUpdater-DNRMJWFQ.js +17 -0
  12. package/dist/chunk-2KWKUXLT.js +490 -0
  13. package/dist/chunk-2KWKUXLT.js.map +7 -0
  14. package/dist/chunk-2PMO2FS2.js +1097 -0
  15. package/dist/chunk-2PMO2FS2.js.map +7 -0
  16. package/dist/chunk-3RUXVV4S.js +23 -0
  17. package/dist/chunk-3RUXVV4S.js.map +7 -0
  18. package/dist/chunk-3TXNP6HH.js +240 -0
  19. package/dist/chunk-3TXNP6HH.js.map +7 -0
  20. package/dist/chunk-4GAIJGRH.js +472 -0
  21. package/dist/chunk-4GAIJGRH.js.map +7 -0
  22. package/dist/chunk-4RTX4AG4.js +249 -0
  23. package/dist/chunk-4RTX4AG4.js.map +7 -0
  24. package/dist/chunk-54DNHKOD.js +511 -0
  25. package/dist/chunk-54DNHKOD.js.map +7 -0
  26. package/dist/chunk-67PY5IX6.js +34 -0
  27. package/dist/chunk-67PY5IX6.js.map +7 -0
  28. package/dist/chunk-6DRDLOLP.js +2613 -0
  29. package/dist/chunk-6DRDLOLP.js.map +7 -0
  30. package/dist/chunk-7CQVZNQV.js +1609 -0
  31. package/dist/chunk-7CQVZNQV.js.map +7 -0
  32. package/dist/chunk-ABLVTESJ.js +19 -0
  33. package/dist/chunk-ABLVTESJ.js.map +7 -0
  34. package/dist/{utils/config.js → chunk-AIMIPK4B.js} +351 -171
  35. package/dist/chunk-AIMIPK4B.js.map +7 -0
  36. package/dist/{utils/autoUpdater.js → chunk-BHGTA6JQ.js} +38 -21
  37. package/dist/chunk-BHGTA6JQ.js.map +7 -0
  38. package/dist/chunk-CIG63V4E.js +72 -0
  39. package/dist/chunk-CIG63V4E.js.map +7 -0
  40. package/dist/chunk-E6YNABER.js +24 -0
  41. package/dist/chunk-E6YNABER.js.map +7 -0
  42. package/dist/chunk-EH34V7CY.js +191 -0
  43. package/dist/chunk-EH34V7CY.js.map +7 -0
  44. package/dist/{cost-tracker.js → chunk-EZXMVTDU.js} +51 -32
  45. package/dist/chunk-EZXMVTDU.js.map +7 -0
  46. package/dist/chunk-FH5CHM6L.js +148 -0
  47. package/dist/chunk-FH5CHM6L.js.map +7 -0
  48. package/dist/chunk-G6I7XROM.js +138 -0
  49. package/dist/chunk-G6I7XROM.js.map +7 -0
  50. package/dist/chunk-HN4E4UUQ.js +96 -0
  51. package/dist/chunk-HN4E4UUQ.js.map +7 -0
  52. package/dist/chunk-HSPVVDIW.js +30198 -0
  53. package/dist/chunk-HSPVVDIW.js.map +7 -0
  54. package/dist/{services/systemReminder.js → chunk-IE2CG2TV.js} +221 -59
  55. package/dist/chunk-IE2CG2TV.js.map +7 -0
  56. package/dist/chunk-JC6NCUG5.js +11 -0
  57. package/dist/chunk-K2MI4TPB.js +1256 -0
  58. package/dist/chunk-K2MI4TPB.js.map +7 -0
  59. package/dist/chunk-KAA5BGMQ.js +12 -0
  60. package/dist/chunk-KAA5BGMQ.js.map +7 -0
  61. package/dist/chunk-MN77D2F7.js +2931 -0
  62. package/dist/chunk-MN77D2F7.js.map +7 -0
  63. package/dist/chunk-NPFOMITO.js +21 -0
  64. package/dist/chunk-NPFOMITO.js.map +7 -0
  65. package/dist/chunk-NQLEUHMS.js +196 -0
  66. package/dist/chunk-NQLEUHMS.js.map +7 -0
  67. package/dist/chunk-OIFQB3S4.js +515 -0
  68. package/dist/chunk-OIFQB3S4.js.map +7 -0
  69. package/dist/chunk-OWTG2W3A.js +164 -0
  70. package/dist/chunk-OWTG2W3A.js.map +7 -0
  71. package/dist/chunk-OZNRLY3E.js +735 -0
  72. package/dist/chunk-OZNRLY3E.js.map +7 -0
  73. package/dist/{utils/debugLogger.js → chunk-QYFKRZQC.js} +107 -204
  74. package/dist/chunk-QYFKRZQC.js.map +7 -0
  75. package/dist/chunk-S3J2TLV6.js +16 -0
  76. package/dist/chunk-S3J2TLV6.js.map +7 -0
  77. package/dist/chunk-S6HRABTA.js +95 -0
  78. package/dist/chunk-S6HRABTA.js.map +7 -0
  79. package/dist/{utils/theme.js → chunk-SDGKPKDK.js} +28 -6
  80. package/dist/chunk-SDGKPKDK.js.map +7 -0
  81. package/dist/chunk-SRZZFAS7.js +766 -0
  82. package/dist/chunk-SRZZFAS7.js.map +7 -0
  83. package/dist/chunk-UKHTVRJM.js +47 -0
  84. package/dist/chunk-UKHTVRJM.js.map +7 -0
  85. package/dist/chunk-UYXEDKOZ.js +24 -0
  86. package/dist/chunk-UYXEDKOZ.js.map +7 -0
  87. package/dist/chunk-VBXVYQYY.js +145 -0
  88. package/dist/chunk-VBXVYQYY.js.map +7 -0
  89. package/dist/chunk-WVHORZQ5.js +17 -0
  90. package/dist/chunk-WVHORZQ5.js.map +7 -0
  91. package/dist/chunk-WWUWDNWW.js +49 -0
  92. package/dist/chunk-WWUWDNWW.js.map +7 -0
  93. package/dist/{utils/model.js → chunk-Z33T5YN5.js} +194 -227
  94. package/dist/chunk-Z33T5YN5.js.map +7 -0
  95. package/dist/{services/openai.js → chunk-ZQU3TXLC.js} +168 -234
  96. package/dist/chunk-ZQU3TXLC.js.map +7 -0
  97. package/dist/cli-SRV2INSL.js +3917 -0
  98. package/dist/cli-SRV2INSL.js.map +7 -0
  99. package/dist/commands-TWH6PGVG.js +46 -0
  100. package/dist/config-6ZMBCL23.js +81 -0
  101. package/dist/context-JQIOOI4W.js +30 -0
  102. package/dist/costTracker-6SL26FDB.js +19 -0
  103. package/dist/customCommands-DNEJS3ZU.js +25 -0
  104. package/dist/customCommands-DNEJS3ZU.js.map +7 -0
  105. package/dist/env-OFAXZ3XG.js +22 -0
  106. package/dist/env-OFAXZ3XG.js.map +7 -0
  107. package/dist/index.js +34 -5
  108. package/dist/index.js.map +4 -4
  109. package/dist/kodeAgentSessionId-X6XWQW7B.js +13 -0
  110. package/dist/kodeAgentSessionId-X6XWQW7B.js.map +7 -0
  111. package/dist/kodeAgentSessionLoad-6N27AC5K.js +18 -0
  112. package/dist/kodeAgentSessionLoad-6N27AC5K.js.map +7 -0
  113. package/dist/kodeAgentSessionResume-HUSAEO24.js +16 -0
  114. package/dist/kodeAgentSessionResume-HUSAEO24.js.map +7 -0
  115. package/dist/kodeAgentStreamJson-NXFN7TXH.js +13 -0
  116. package/dist/kodeAgentStreamJson-NXFN7TXH.js.map +7 -0
  117. package/dist/kodeAgentStreamJsonSession-GRWG3SPE.js +131 -0
  118. package/dist/kodeAgentStreamJsonSession-GRWG3SPE.js.map +7 -0
  119. package/dist/kodeAgentStructuredStdio-HGWJT7CU.js +10 -0
  120. package/dist/kodeAgentStructuredStdio-HGWJT7CU.js.map +7 -0
  121. package/dist/kodeHooks-TDMXFWSO.js +36 -0
  122. package/dist/kodeHooks-TDMXFWSO.js.map +7 -0
  123. package/dist/llm-XVXWYOHK.js +3118 -0
  124. package/dist/llm-XVXWYOHK.js.map +7 -0
  125. package/dist/llmLazy-7TD5N7XP.js +15 -0
  126. package/dist/llmLazy-7TD5N7XP.js.map +7 -0
  127. package/dist/loader-AUXIJTY6.js +28 -0
  128. package/dist/loader-AUXIJTY6.js.map +7 -0
  129. package/dist/mcp-BXJ3K7NZ.js +49 -0
  130. package/dist/mcp-BXJ3K7NZ.js.map +7 -0
  131. package/dist/{services/mentionProcessor.js → mentionProcessor-YD7YXYGF.js} +61 -50
  132. package/dist/mentionProcessor-YD7YXYGF.js.map +7 -0
  133. package/dist/messages-OFUJSPRV.js +63 -0
  134. package/dist/messages-OFUJSPRV.js.map +7 -0
  135. package/dist/model-KPYCXWBK.js +30 -0
  136. package/dist/model-KPYCXWBK.js.map +7 -0
  137. package/dist/openai-5G5D5Q4B.js +29 -0
  138. package/dist/openai-5G5D5Q4B.js.map +7 -0
  139. package/dist/outputStyles-HLDXFQK3.js +28 -0
  140. package/dist/outputStyles-HLDXFQK3.js.map +7 -0
  141. package/dist/package.json +1 -1
  142. package/dist/pluginRuntime-FPTKK6NY.js +218 -0
  143. package/dist/pluginRuntime-FPTKK6NY.js.map +7 -0
  144. package/dist/pluginValidation-DSFXZ4GF.js +17 -0
  145. package/dist/pluginValidation-DSFXZ4GF.js.map +7 -0
  146. package/dist/prompts-LWLAJRS2.js +48 -0
  147. package/dist/prompts-LWLAJRS2.js.map +7 -0
  148. package/dist/query-HVPWL27C.js +50 -0
  149. package/dist/query-HVPWL27C.js.map +7 -0
  150. package/dist/responsesStreaming-AW344PQO.js +10 -0
  151. package/dist/responsesStreaming-AW344PQO.js.map +7 -0
  152. package/dist/ripgrep-YOPCY2GO.js +17 -0
  153. package/dist/ripgrep-YOPCY2GO.js.map +7 -0
  154. package/dist/skillMarketplace-PSNKDINM.js +37 -0
  155. package/dist/skillMarketplace-PSNKDINM.js.map +7 -0
  156. package/dist/state-KNRWP3FO.js +16 -0
  157. package/dist/state-KNRWP3FO.js.map +7 -0
  158. package/dist/theme-7S2QN2FO.js +14 -0
  159. package/dist/theme-7S2QN2FO.js.map +7 -0
  160. package/dist/toolPermissionContext-65L65VEZ.js +17 -0
  161. package/dist/toolPermissionContext-65L65VEZ.js.map +7 -0
  162. package/dist/toolPermissionSettings-GPOBH4IV.js +18 -0
  163. package/dist/toolPermissionSettings-GPOBH4IV.js.map +7 -0
  164. package/dist/tools-FZU2FZBD.js +47 -0
  165. package/dist/tools-FZU2FZBD.js.map +7 -0
  166. package/dist/userInput-VHNBN2MW.js +311 -0
  167. package/dist/userInput-VHNBN2MW.js.map +7 -0
  168. package/dist/uuid-QN2CNKKN.js +9 -0
  169. package/dist/uuid-QN2CNKKN.js.map +7 -0
  170. package/package.json +43 -14
  171. package/scripts/binary-utils.cjs +62 -0
  172. package/scripts/cli-acp-wrapper.cjs +82 -0
  173. package/scripts/cli-wrapper.cjs +105 -0
  174. package/scripts/postinstall.js +135 -9
  175. package/LICENSE +0 -201
  176. package/README.zh-CN.md +0 -312
  177. package/dist/ProjectOnboarding.js +0 -99
  178. package/dist/ProjectOnboarding.js.map +0 -7
  179. package/dist/Tool.js +0 -1
  180. package/dist/commands/agents.js +0 -2087
  181. package/dist/commands/agents.js.map +0 -7
  182. package/dist/commands/approvedTools.js +0 -36
  183. package/dist/commands/approvedTools.js.map +0 -7
  184. package/dist/commands/bug.js +0 -21
  185. package/dist/commands/bug.js.map +0 -7
  186. package/dist/commands/clear.js +0 -37
  187. package/dist/commands/clear.js.map +0 -7
  188. package/dist/commands/compact.js +0 -104
  189. package/dist/commands/compact.js.map +0 -7
  190. package/dist/commands/config.js +0 -20
  191. package/dist/commands/config.js.map +0 -7
  192. package/dist/commands/cost.js +0 -19
  193. package/dist/commands/cost.js.map +0 -7
  194. package/dist/commands/ctx_viz.js +0 -152
  195. package/dist/commands/ctx_viz.js.map +0 -7
  196. package/dist/commands/doctor.js +0 -25
  197. package/dist/commands/doctor.js.map +0 -7
  198. package/dist/commands/help.js +0 -20
  199. package/dist/commands/help.js.map +0 -7
  200. package/dist/commands/init.js +0 -38
  201. package/dist/commands/init.js.map +0 -7
  202. package/dist/commands/listen.js +0 -37
  203. package/dist/commands/listen.js.map +0 -7
  204. package/dist/commands/login.js +0 -37
  205. package/dist/commands/login.js.map +0 -7
  206. package/dist/commands/logout.js +0 -33
  207. package/dist/commands/logout.js.map +0 -7
  208. package/dist/commands/mcp.js +0 -34
  209. package/dist/commands/mcp.js.map +0 -7
  210. package/dist/commands/model.js +0 -41
  211. package/dist/commands/model.js.map +0 -7
  212. package/dist/commands/modelstatus.js +0 -21
  213. package/dist/commands/modelstatus.js.map +0 -7
  214. package/dist/commands/onboarding.js +0 -36
  215. package/dist/commands/onboarding.js.map +0 -7
  216. package/dist/commands/pr_comments.js +0 -61
  217. package/dist/commands/pr_comments.js.map +0 -7
  218. package/dist/commands/refreshCommands.js +0 -37
  219. package/dist/commands/refreshCommands.js.map +0 -7
  220. package/dist/commands/release-notes.js +0 -30
  221. package/dist/commands/release-notes.js.map +0 -7
  222. package/dist/commands/resume.js +0 -35
  223. package/dist/commands/resume.js.map +0 -7
  224. package/dist/commands/review.js +0 -51
  225. package/dist/commands/review.js.map +0 -7
  226. package/dist/commands/terminalSetup.js +0 -163
  227. package/dist/commands/terminalSetup.js.map +0 -7
  228. package/dist/commands.js +0 -84
  229. package/dist/commands.js.map +0 -7
  230. package/dist/components/ApproveApiKey.js +0 -74
  231. package/dist/components/ApproveApiKey.js.map +0 -7
  232. package/dist/components/AsciiLogo.js +0 -12
  233. package/dist/components/AsciiLogo.js.map +0 -7
  234. package/dist/components/AutoUpdater.js +0 -74
  235. package/dist/components/AutoUpdater.js.map +0 -7
  236. package/dist/components/Bug.js +0 -147
  237. package/dist/components/Bug.js.map +0 -7
  238. package/dist/components/Config.js +0 -166
  239. package/dist/components/Config.js.map +0 -7
  240. package/dist/components/ConsoleOAuthFlow.js +0 -188
  241. package/dist/components/ConsoleOAuthFlow.js.map +0 -7
  242. package/dist/components/Cost.js +0 -13
  243. package/dist/components/Cost.js.map +0 -7
  244. package/dist/components/CostThresholdDialog.js +0 -38
  245. package/dist/components/CostThresholdDialog.js.map +0 -7
  246. package/dist/components/CustomSelect/option-map.js +0 -32
  247. package/dist/components/CustomSelect/option-map.js.map +0 -7
  248. package/dist/components/CustomSelect/select-option.js +0 -34
  249. package/dist/components/CustomSelect/select-option.js.map +0 -7
  250. package/dist/components/CustomSelect/select.js +0 -64
  251. package/dist/components/CustomSelect/select.js.map +0 -7
  252. package/dist/components/CustomSelect/theme.js +0 -1
  253. package/dist/components/CustomSelect/use-select-state.js +0 -220
  254. package/dist/components/CustomSelect/use-select-state.js.map +0 -7
  255. package/dist/components/CustomSelect/use-select.js +0 -21
  256. package/dist/components/CustomSelect/use-select.js.map +0 -7
  257. package/dist/components/FallbackToolUseRejectedMessage.js +0 -11
  258. package/dist/components/FallbackToolUseRejectedMessage.js.map +0 -7
  259. package/dist/components/FileEditToolUpdatedMessage.js +0 -32
  260. package/dist/components/FileEditToolUpdatedMessage.js.map +0 -7
  261. package/dist/components/Help.js +0 -41
  262. package/dist/components/Help.js.map +0 -7
  263. package/dist/components/HighlightedCode.js +0 -30
  264. package/dist/components/HighlightedCode.js.map +0 -7
  265. package/dist/components/InvalidConfigDialog.js +0 -83
  266. package/dist/components/InvalidConfigDialog.js.map +0 -7
  267. package/dist/components/Link.js +0 -18
  268. package/dist/components/Link.js.map +0 -7
  269. package/dist/components/LogSelector.js +0 -50
  270. package/dist/components/LogSelector.js.map +0 -7
  271. package/dist/components/Logo.js +0 -94
  272. package/dist/components/Logo.js.map +0 -7
  273. package/dist/components/MCPServerApprovalDialog.js +0 -79
  274. package/dist/components/MCPServerApprovalDialog.js.map +0 -7
  275. package/dist/components/MCPServerDialogCopy.js +0 -11
  276. package/dist/components/MCPServerDialogCopy.js.map +0 -7
  277. package/dist/components/MCPServerMultiselectDialog.js +0 -80
  278. package/dist/components/MCPServerMultiselectDialog.js.map +0 -7
  279. package/dist/components/Message.js +0 -146
  280. package/dist/components/Message.js.map +0 -7
  281. package/dist/components/MessageResponse.js +0 -9
  282. package/dist/components/MessageResponse.js.map +0 -7
  283. package/dist/components/MessageSelector.js +0 -133
  284. package/dist/components/MessageSelector.js.map +0 -7
  285. package/dist/components/ModeIndicator.js +0 -38
  286. package/dist/components/ModeIndicator.js.map +0 -7
  287. package/dist/components/ModelConfig.js +0 -208
  288. package/dist/components/ModelConfig.js.map +0 -7
  289. package/dist/components/ModelListManager.js +0 -140
  290. package/dist/components/ModelListManager.js.map +0 -7
  291. package/dist/components/ModelSelector.js +0 -1985
  292. package/dist/components/ModelSelector.js.map +0 -7
  293. package/dist/components/ModelStatusDisplay.js +0 -87
  294. package/dist/components/ModelStatusDisplay.js.map +0 -7
  295. package/dist/components/Onboarding.js +0 -153
  296. package/dist/components/Onboarding.js.map +0 -7
  297. package/dist/components/PressEnterToContinue.js +0 -10
  298. package/dist/components/PressEnterToContinue.js.map +0 -7
  299. package/dist/components/PromptInput.js +0 -488
  300. package/dist/components/PromptInput.js.map +0 -7
  301. package/dist/components/SentryErrorBoundary.js +0 -27
  302. package/dist/components/SentryErrorBoundary.js.map +0 -7
  303. package/dist/components/Spinner.js +0 -101
  304. package/dist/components/Spinner.js.map +0 -7
  305. package/dist/components/StickerRequestForm.js +0 -7
  306. package/dist/components/StickerRequestForm.js.map +0 -7
  307. package/dist/components/StructuredDiff.js +0 -148
  308. package/dist/components/StructuredDiff.js.map +0 -7
  309. package/dist/components/TextInput.js +0 -100
  310. package/dist/components/TextInput.js.map +0 -7
  311. package/dist/components/TodoItem.js +0 -35
  312. package/dist/components/TodoItem.js.map +0 -7
  313. package/dist/components/TokenWarning.js +0 -19
  314. package/dist/components/TokenWarning.js.map +0 -7
  315. package/dist/components/ToolUseLoader.js +0 -24
  316. package/dist/components/ToolUseLoader.js.map +0 -7
  317. package/dist/components/TrustDialog.js +0 -76
  318. package/dist/components/TrustDialog.js.map +0 -7
  319. package/dist/components/binary-feedback/BinaryFeedback.js +0 -50
  320. package/dist/components/binary-feedback/BinaryFeedback.js.map +0 -7
  321. package/dist/components/binary-feedback/BinaryFeedbackOption.js +0 -94
  322. package/dist/components/binary-feedback/BinaryFeedbackOption.js.map +0 -7
  323. package/dist/components/binary-feedback/BinaryFeedbackView.js +0 -139
  324. package/dist/components/binary-feedback/BinaryFeedbackView.js.map +0 -7
  325. package/dist/components/binary-feedback/utils.js +0 -161
  326. package/dist/components/binary-feedback/utils.js.map +0 -7
  327. package/dist/components/messages/AssistantBashOutputMessage.js +0 -23
  328. package/dist/components/messages/AssistantBashOutputMessage.js.map +0 -7
  329. package/dist/components/messages/AssistantLocalCommandOutputMessage.js +0 -36
  330. package/dist/components/messages/AssistantLocalCommandOutputMessage.js.map +0 -7
  331. package/dist/components/messages/AssistantRedactedThinkingMessage.js +0 -12
  332. package/dist/components/messages/AssistantRedactedThinkingMessage.js.map +0 -7
  333. package/dist/components/messages/AssistantTextMessage.js +0 -78
  334. package/dist/components/messages/AssistantTextMessage.js.map +0 -7
  335. package/dist/components/messages/AssistantThinkingMessage.js +0 -27
  336. package/dist/components/messages/AssistantThinkingMessage.js.map +0 -7
  337. package/dist/components/messages/AssistantToolUseMessage.js +0 -91
  338. package/dist/components/messages/AssistantToolUseMessage.js.map +0 -7
  339. package/dist/components/messages/TaskProgressMessage.js +0 -11
  340. package/dist/components/messages/TaskProgressMessage.js.map +0 -7
  341. package/dist/components/messages/TaskToolMessage.js +0 -39
  342. package/dist/components/messages/TaskToolMessage.js.map +0 -7
  343. package/dist/components/messages/UserBashInputMessage.js +0 -18
  344. package/dist/components/messages/UserBashInputMessage.js.map +0 -7
  345. package/dist/components/messages/UserCommandMessage.js +0 -20
  346. package/dist/components/messages/UserCommandMessage.js.map +0 -7
  347. package/dist/components/messages/UserKodingInputMessage.js +0 -18
  348. package/dist/components/messages/UserKodingInputMessage.js.map +0 -7
  349. package/dist/components/messages/UserPromptMessage.js +0 -20
  350. package/dist/components/messages/UserPromptMessage.js.map +0 -7
  351. package/dist/components/messages/UserTextMessage.js +0 -25
  352. package/dist/components/messages/UserTextMessage.js.map +0 -7
  353. package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js +0 -10
  354. package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js.map +0 -7
  355. package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js +0 -15
  356. package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js.map +0 -7
  357. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js +0 -25
  358. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js.map +0 -7
  359. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js +0 -47
  360. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js.map +0 -7
  361. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +0 -23
  362. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +0 -7
  363. package/dist/components/messages/UserToolResultMessage/utils.js +0 -42
  364. package/dist/components/messages/UserToolResultMessage/utils.js.map +0 -7
  365. package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js +0 -112
  366. package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +0 -7
  367. package/dist/components/permissions/FallbackPermissionRequest.js +0 -131
  368. package/dist/components/permissions/FallbackPermissionRequest.js.map +0 -7
  369. package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +0 -159
  370. package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +0 -7
  371. package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +0 -58
  372. package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +0 -7
  373. package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +0 -153
  374. package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +0 -7
  375. package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +0 -70
  376. package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +0 -7
  377. package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +0 -212
  378. package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +0 -7
  379. package/dist/components/permissions/PermissionRequest.js +0 -70
  380. package/dist/components/permissions/PermissionRequest.js.map +0 -7
  381. package/dist/components/permissions/PermissionRequestTitle.js +0 -52
  382. package/dist/components/permissions/PermissionRequestTitle.js.map +0 -7
  383. package/dist/components/permissions/hooks.js +0 -28
  384. package/dist/components/permissions/hooks.js.map +0 -7
  385. package/dist/components/permissions/toolUseOptions.js +0 -46
  386. package/dist/components/permissions/toolUseOptions.js.map +0 -7
  387. package/dist/components/permissions/utils.js +0 -21
  388. package/dist/components/permissions/utils.js.map +0 -7
  389. package/dist/constants/betas.js +0 -11
  390. package/dist/constants/betas.js.map +0 -7
  391. package/dist/constants/claude-asterisk-ascii-art.js +0 -242
  392. package/dist/constants/claude-asterisk-ascii-art.js.map +0 -7
  393. package/dist/constants/figures.js +0 -6
  394. package/dist/constants/figures.js.map +0 -7
  395. package/dist/constants/keys.js +0 -7
  396. package/dist/constants/keys.js.map +0 -7
  397. package/dist/constants/macros.js +0 -13
  398. package/dist/constants/macros.js.map +0 -7
  399. package/dist/constants/modelCapabilities.js +0 -154
  400. package/dist/constants/modelCapabilities.js.map +0 -7
  401. package/dist/constants/models.js +0 -1034
  402. package/dist/constants/models.js.map +0 -7
  403. package/dist/constants/oauth.js +0 -18
  404. package/dist/constants/oauth.js.map +0 -7
  405. package/dist/constants/product.js +0 -26
  406. package/dist/constants/product.js.map +0 -7
  407. package/dist/constants/prompts.js +0 -168
  408. package/dist/constants/prompts.js.map +0 -7
  409. package/dist/constants/releaseNotes.js +0 -9
  410. package/dist/constants/releaseNotes.js.map +0 -7
  411. package/dist/context/PermissionContext.js +0 -111
  412. package/dist/context/PermissionContext.js.map +0 -7
  413. package/dist/context.js +0 -259
  414. package/dist/context.js.map +0 -7
  415. package/dist/cost-tracker.js.map +0 -7
  416. package/dist/entrypoints/cli.js +0 -1107
  417. package/dist/entrypoints/cli.js.map +0 -7
  418. package/dist/entrypoints/mcp.js +0 -150
  419. package/dist/entrypoints/mcp.js.map +0 -7
  420. package/dist/history.js +0 -25
  421. package/dist/history.js.map +0 -7
  422. package/dist/hooks/useApiKeyVerification.js +0 -12
  423. package/dist/hooks/useApiKeyVerification.js.map +0 -7
  424. package/dist/hooks/useArrowKeyHistory.js +0 -50
  425. package/dist/hooks/useArrowKeyHistory.js.map +0 -7
  426. package/dist/hooks/useCanUseTool.js +0 -112
  427. package/dist/hooks/useCanUseTool.js.map +0 -7
  428. package/dist/hooks/useCancelRequest.js +0 -30
  429. package/dist/hooks/useCancelRequest.js.map +0 -7
  430. package/dist/hooks/useDoublePress.js +0 -31
  431. package/dist/hooks/useDoublePress.js.map +0 -7
  432. package/dist/hooks/useExitOnCtrlCD.js +0 -26
  433. package/dist/hooks/useExitOnCtrlCD.js.map +0 -7
  434. package/dist/hooks/useInterval.js +0 -18
  435. package/dist/hooks/useInterval.js.map +0 -7
  436. package/dist/hooks/useLogMessages.js +0 -14
  437. package/dist/hooks/useLogMessages.js.map +0 -7
  438. package/dist/hooks/useLogStartupTime.js +0 -15
  439. package/dist/hooks/useLogStartupTime.js.map +0 -7
  440. package/dist/hooks/useNotifyAfterTimeout.js +0 -42
  441. package/dist/hooks/useNotifyAfterTimeout.js.map +0 -7
  442. package/dist/hooks/usePermissionRequestLogging.js +0 -28
  443. package/dist/hooks/usePermissionRequestLogging.js.map +0 -7
  444. package/dist/hooks/useTerminalSize.js +0 -38
  445. package/dist/hooks/useTerminalSize.js.map +0 -7
  446. package/dist/hooks/useTextInput.js +0 -250
  447. package/dist/hooks/useTextInput.js.map +0 -7
  448. package/dist/hooks/useUnifiedCompletion.js +0 -929
  449. package/dist/hooks/useUnifiedCompletion.js.map +0 -7
  450. package/dist/messages.js +0 -33
  451. package/dist/messages.js.map +0 -7
  452. package/dist/permissions.js +0 -194
  453. package/dist/permissions.js.map +0 -7
  454. package/dist/query.js +0 -492
  455. package/dist/query.js.map +0 -7
  456. package/dist/screens/ConfigureNpmPrefix.js +0 -128
  457. package/dist/screens/ConfigureNpmPrefix.js.map +0 -7
  458. package/dist/screens/Doctor.js +0 -22
  459. package/dist/screens/Doctor.js.map +0 -7
  460. package/dist/screens/LogList.js +0 -55
  461. package/dist/screens/LogList.js.map +0 -7
  462. package/dist/screens/REPL.js +0 -593
  463. package/dist/screens/REPL.js.map +0 -7
  464. package/dist/screens/ResumeConversation.js +0 -56
  465. package/dist/screens/ResumeConversation.js.map +0 -7
  466. package/dist/services/adapters/base.js +0 -29
  467. package/dist/services/adapters/base.js.map +0 -7
  468. package/dist/services/adapters/chatCompletions.js +0 -69
  469. package/dist/services/adapters/chatCompletions.js.map +0 -7
  470. package/dist/services/adapters/responsesAPI.js +0 -126
  471. package/dist/services/adapters/responsesAPI.js.map +0 -7
  472. package/dist/services/browserMocks.js +0 -48
  473. package/dist/services/browserMocks.js.map +0 -7
  474. package/dist/services/claude.js +0 -1605
  475. package/dist/services/claude.js.map +0 -7
  476. package/dist/services/customCommands.js +0 -359
  477. package/dist/services/customCommands.js.map +0 -7
  478. package/dist/services/fileFreshness.js +0 -280
  479. package/dist/services/fileFreshness.js.map +0 -7
  480. package/dist/services/gpt5ConnectionTest.js +0 -248
  481. package/dist/services/gpt5ConnectionTest.js.map +0 -7
  482. package/dist/services/mcpClient.js +0 -435
  483. package/dist/services/mcpClient.js.map +0 -7
  484. package/dist/services/mcpServerApproval.js +0 -55
  485. package/dist/services/mcpServerApproval.js.map +0 -7
  486. package/dist/services/mentionProcessor.js.map +0 -7
  487. package/dist/services/modelAdapterFactory.js +0 -47
  488. package/dist/services/modelAdapterFactory.js.map +0 -7
  489. package/dist/services/notifier.js +0 -35
  490. package/dist/services/notifier.js.map +0 -7
  491. package/dist/services/oauth.js +0 -259
  492. package/dist/services/oauth.js.map +0 -7
  493. package/dist/services/openai.js.map +0 -7
  494. package/dist/services/responseStateManager.js +0 -68
  495. package/dist/services/responseStateManager.js.map +0 -7
  496. package/dist/services/sentry.js +0 -9
  497. package/dist/services/sentry.js.map +0 -7
  498. package/dist/services/statsig.js +0 -112
  499. package/dist/services/statsig.js.map +0 -7
  500. package/dist/services/statsigStorage.js +0 -75
  501. package/dist/services/statsigStorage.js.map +0 -7
  502. package/dist/services/systemReminder.js.map +0 -7
  503. package/dist/services/vcr.js +0 -133
  504. package/dist/services/vcr.js.map +0 -7
  505. package/dist/tools/ArchitectTool/ArchitectTool.js +0 -119
  506. package/dist/tools/ArchitectTool/ArchitectTool.js.map +0 -7
  507. package/dist/tools/ArchitectTool/prompt.js +0 -18
  508. package/dist/tools/ArchitectTool/prompt.js.map +0 -7
  509. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +0 -423
  510. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +0 -7
  511. package/dist/tools/BashTool/BashTool.js +0 -188
  512. package/dist/tools/BashTool/BashTool.js.map +0 -7
  513. package/dist/tools/BashTool/BashToolResultMessage.js +0 -21
  514. package/dist/tools/BashTool/BashToolResultMessage.js.map +0 -7
  515. package/dist/tools/BashTool/OutputLine.js +0 -30
  516. package/dist/tools/BashTool/OutputLine.js.map +0 -7
  517. package/dist/tools/BashTool/prompt.js +0 -179
  518. package/dist/tools/BashTool/prompt.js.map +0 -7
  519. package/dist/tools/BashTool/utils.js +0 -51
  520. package/dist/tools/BashTool/utils.js.map +0 -7
  521. package/dist/tools/FileEditTool/FileEditTool.js +0 -228
  522. package/dist/tools/FileEditTool/FileEditTool.js.map +0 -7
  523. package/dist/tools/FileEditTool/prompt.js +0 -54
  524. package/dist/tools/FileEditTool/prompt.js.map +0 -7
  525. package/dist/tools/FileEditTool/utils.js +0 -42
  526. package/dist/tools/FileEditTool/utils.js.map +0 -7
  527. package/dist/tools/FileReadTool/FileReadTool.js +0 -272
  528. package/dist/tools/FileReadTool/FileReadTool.js.map +0 -7
  529. package/dist/tools/FileReadTool/prompt.js +0 -10
  530. package/dist/tools/FileReadTool/prompt.js.map +0 -7
  531. package/dist/tools/FileWriteTool/FileWriteTool.js +0 -204
  532. package/dist/tools/FileWriteTool/FileWriteTool.js.map +0 -7
  533. package/dist/tools/FileWriteTool/prompt.js +0 -14
  534. package/dist/tools/FileWriteTool/prompt.js.map +0 -7
  535. package/dist/tools/GlobTool/GlobTool.js +0 -88
  536. package/dist/tools/GlobTool/GlobTool.js.map +0 -7
  537. package/dist/tools/GlobTool/prompt.js +0 -12
  538. package/dist/tools/GlobTool/prompt.js.map +0 -7
  539. package/dist/tools/GrepTool/GrepTool.js +0 -107
  540. package/dist/tools/GrepTool/GrepTool.js.map +0 -7
  541. package/dist/tools/GrepTool/prompt.js +0 -15
  542. package/dist/tools/GrepTool/prompt.js.map +0 -7
  543. package/dist/tools/MCPTool/MCPTool.js +0 -90
  544. package/dist/tools/MCPTool/MCPTool.js.map +0 -7
  545. package/dist/tools/MCPTool/prompt.js +0 -7
  546. package/dist/tools/MCPTool/prompt.js.map +0 -7
  547. package/dist/tools/MemoryReadTool/MemoryReadTool.js +0 -103
  548. package/dist/tools/MemoryReadTool/MemoryReadTool.js.map +0 -7
  549. package/dist/tools/MemoryReadTool/prompt.js +0 -7
  550. package/dist/tools/MemoryReadTool/prompt.js.map +0 -7
  551. package/dist/tools/MemoryWriteTool/MemoryWriteTool.js +0 -77
  552. package/dist/tools/MemoryWriteTool/MemoryWriteTool.js.map +0 -7
  553. package/dist/tools/MemoryWriteTool/prompt.js +0 -7
  554. package/dist/tools/MemoryWriteTool/prompt.js.map +0 -7
  555. package/dist/tools/MultiEditTool/MultiEditTool.js +0 -308
  556. package/dist/tools/MultiEditTool/MultiEditTool.js.map +0 -7
  557. package/dist/tools/MultiEditTool/prompt.js +0 -48
  558. package/dist/tools/MultiEditTool/prompt.js.map +0 -7
  559. package/dist/tools/NotebookEditTool/NotebookEditTool.js +0 -238
  560. package/dist/tools/NotebookEditTool/NotebookEditTool.js.map +0 -7
  561. package/dist/tools/NotebookEditTool/prompt.js +0 -7
  562. package/dist/tools/NotebookEditTool/prompt.js.map +0 -7
  563. package/dist/tools/NotebookReadTool/NotebookReadTool.js +0 -212
  564. package/dist/tools/NotebookReadTool/NotebookReadTool.js.map +0 -7
  565. package/dist/tools/NotebookReadTool/prompt.js +0 -7
  566. package/dist/tools/NotebookReadTool/prompt.js.map +0 -7
  567. package/dist/tools/StickerRequestTool/StickerRequestTool.js +0 -86
  568. package/dist/tools/StickerRequestTool/StickerRequestTool.js.map +0 -7
  569. package/dist/tools/StickerRequestTool/prompt.js +0 -23
  570. package/dist/tools/StickerRequestTool/prompt.js.map +0 -7
  571. package/dist/tools/TaskTool/TaskTool.js +0 -351
  572. package/dist/tools/TaskTool/TaskTool.js.map +0 -7
  573. package/dist/tools/TaskTool/constants.js +0 -5
  574. package/dist/tools/TaskTool/constants.js.map +0 -7
  575. package/dist/tools/TaskTool/prompt.js +0 -82
  576. package/dist/tools/TaskTool/prompt.js.map +0 -7
  577. package/dist/tools/ThinkTool/ThinkTool.js +0 -48
  578. package/dist/tools/ThinkTool/ThinkTool.js.map +0 -7
  579. package/dist/tools/ThinkTool/prompt.js +0 -16
  580. package/dist/tools/ThinkTool/prompt.js.map +0 -7
  581. package/dist/tools/TodoWriteTool/TodoWriteTool.js +0 -216
  582. package/dist/tools/TodoWriteTool/TodoWriteTool.js.map +0 -7
  583. package/dist/tools/TodoWriteTool/prompt.js +0 -66
  584. package/dist/tools/TodoWriteTool/prompt.js.map +0 -7
  585. package/dist/tools/URLFetcherTool/URLFetcherTool.js +0 -137
  586. package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +0 -7
  587. package/dist/tools/URLFetcherTool/cache.js +0 -45
  588. package/dist/tools/URLFetcherTool/cache.js.map +0 -7
  589. package/dist/tools/URLFetcherTool/htmlToMarkdown.js +0 -42
  590. package/dist/tools/URLFetcherTool/htmlToMarkdown.js.map +0 -7
  591. package/dist/tools/URLFetcherTool/prompt.js +0 -22
  592. package/dist/tools/URLFetcherTool/prompt.js.map +0 -7
  593. package/dist/tools/WebSearchTool/WebSearchTool.js +0 -86
  594. package/dist/tools/WebSearchTool/WebSearchTool.js.map +0 -7
  595. package/dist/tools/WebSearchTool/prompt.js +0 -17
  596. package/dist/tools/WebSearchTool/prompt.js.map +0 -7
  597. package/dist/tools/WebSearchTool/searchProviders.js +0 -48
  598. package/dist/tools/WebSearchTool/searchProviders.js.map +0 -7
  599. package/dist/tools/lsTool/lsTool.js +0 -201
  600. package/dist/tools/lsTool/lsTool.js.map +0 -7
  601. package/dist/tools/lsTool/prompt.js +0 -5
  602. package/dist/tools/lsTool/prompt.js.map +0 -7
  603. package/dist/tools.js +0 -64
  604. package/dist/tools.js.map +0 -7
  605. package/dist/types/PermissionMode.js +0 -82
  606. package/dist/types/PermissionMode.js.map +0 -7
  607. package/dist/types/RequestContext.js +0 -47
  608. package/dist/types/RequestContext.js.map +0 -7
  609. package/dist/types/common.d.js +0 -1
  610. package/dist/types/conversation.js +0 -1
  611. package/dist/types/logs.js +0 -1
  612. package/dist/types/modelCapabilities.js +0 -1
  613. package/dist/types/notebook.js +0 -1
  614. package/dist/utils/Cursor.js +0 -313
  615. package/dist/utils/Cursor.js.map +0 -7
  616. package/dist/utils/PersistentShell.js +0 -382
  617. package/dist/utils/PersistentShell.js.map +0 -7
  618. package/dist/utils/advancedFuzzyMatcher.js +0 -206
  619. package/dist/utils/advancedFuzzyMatcher.js.map +0 -7
  620. package/dist/utils/agentLoader.js +0 -199
  621. package/dist/utils/agentLoader.js.map +0 -7
  622. package/dist/utils/agentStorage.js +0 -59
  623. package/dist/utils/agentStorage.js.map +0 -7
  624. package/dist/utils/array.js +0 -7
  625. package/dist/utils/array.js.map +0 -7
  626. package/dist/utils/ask.js +0 -77
  627. package/dist/utils/ask.js.map +0 -7
  628. package/dist/utils/auth.js +0 -11
  629. package/dist/utils/auth.js.map +0 -7
  630. package/dist/utils/autoCompactCore.js +0 -149
  631. package/dist/utils/autoCompactCore.js.map +0 -7
  632. package/dist/utils/autoUpdater.js.map +0 -7
  633. package/dist/utils/betas.js +0 -21
  634. package/dist/utils/betas.js.map +0 -7
  635. package/dist/utils/browser.js +0 -15
  636. package/dist/utils/browser.js.map +0 -7
  637. package/dist/utils/cleanup.js +0 -54
  638. package/dist/utils/cleanup.js.map +0 -7
  639. package/dist/utils/commands.js +0 -207
  640. package/dist/utils/commands.js.map +0 -7
  641. package/dist/utils/commonUnixCommands.js +0 -687
  642. package/dist/utils/commonUnixCommands.js.map +0 -7
  643. package/dist/utils/config.js.map +0 -7
  644. package/dist/utils/conversationRecovery.js +0 -35
  645. package/dist/utils/conversationRecovery.js.map +0 -7
  646. package/dist/utils/debugLogger.js.map +0 -7
  647. package/dist/utils/diff.js +0 -32
  648. package/dist/utils/diff.js.map +0 -7
  649. package/dist/utils/env.js +0 -44
  650. package/dist/utils/env.js.map +0 -7
  651. package/dist/utils/errors.js +0 -23
  652. package/dist/utils/errors.js.map +0 -7
  653. package/dist/utils/exampleCommands.js +0 -80
  654. package/dist/utils/exampleCommands.js.map +0 -7
  655. package/dist/utils/execFileNoThrow.js +0 -44
  656. package/dist/utils/execFileNoThrow.js.map +0 -7
  657. package/dist/utils/expertChatStorage.js +0 -78
  658. package/dist/utils/expertChatStorage.js.map +0 -7
  659. package/dist/utils/file.js +0 -282
  660. package/dist/utils/file.js.map +0 -7
  661. package/dist/utils/fileRecoveryCore.js +0 -41
  662. package/dist/utils/fileRecoveryCore.js.map +0 -7
  663. package/dist/utils/format.js +0 -41
  664. package/dist/utils/format.js.map +0 -7
  665. package/dist/utils/fuzzyMatcher.js +0 -252
  666. package/dist/utils/fuzzyMatcher.js.map +0 -7
  667. package/dist/utils/generators.js +0 -46
  668. package/dist/utils/generators.js.map +0 -7
  669. package/dist/utils/git.js +0 -83
  670. package/dist/utils/git.js.map +0 -7
  671. package/dist/utils/globalLogger.js +0 -54
  672. package/dist/utils/globalLogger.js.map +0 -7
  673. package/dist/utils/http.js +0 -7
  674. package/dist/utils/http.js.map +0 -7
  675. package/dist/utils/imagePaste.js +0 -29
  676. package/dist/utils/imagePaste.js.map +0 -7
  677. package/dist/utils/json.js +0 -16
  678. package/dist/utils/json.js.map +0 -7
  679. package/dist/utils/log.js +0 -298
  680. package/dist/utils/log.js.map +0 -7
  681. package/dist/utils/markdown.js +0 -187
  682. package/dist/utils/markdown.js.map +0 -7
  683. package/dist/utils/messageContextManager.js +0 -195
  684. package/dist/utils/messageContextManager.js.map +0 -7
  685. package/dist/utils/messages.js +0 -633
  686. package/dist/utils/messages.js.map +0 -7
  687. package/dist/utils/model.js.map +0 -7
  688. package/dist/utils/permissions/filesystem.js +0 -80
  689. package/dist/utils/permissions/filesystem.js.map +0 -7
  690. package/dist/utils/responseState.js +0 -20
  691. package/dist/utils/responseState.js.map +0 -7
  692. package/dist/utils/ripgrep.js +0 -131
  693. package/dist/utils/ripgrep.js.map +0 -7
  694. package/dist/utils/secureFile.js +0 -483
  695. package/dist/utils/secureFile.js.map +0 -7
  696. package/dist/utils/sessionState.js +0 -31
  697. package/dist/utils/sessionState.js.map +0 -7
  698. package/dist/utils/state.js +0 -24
  699. package/dist/utils/state.js.map +0 -7
  700. package/dist/utils/style.js +0 -31
  701. package/dist/utils/style.js.map +0 -7
  702. package/dist/utils/terminal.js +0 -43
  703. package/dist/utils/terminal.js.map +0 -7
  704. package/dist/utils/theme.js.map +0 -7
  705. package/dist/utils/thinking.js +0 -103
  706. package/dist/utils/thinking.js.map +0 -7
  707. package/dist/utils/todoStorage.js +0 -291
  708. package/dist/utils/todoStorage.js.map +0 -7
  709. package/dist/utils/tokens.js +0 -30
  710. package/dist/utils/tokens.js.map +0 -7
  711. package/dist/utils/toolExecutionController.js +0 -109
  712. package/dist/utils/toolExecutionController.js.map +0 -7
  713. package/dist/utils/unaryLogging.js +0 -14
  714. package/dist/utils/unaryLogging.js.map +0 -7
  715. package/dist/utils/user.js +0 -40
  716. package/dist/utils/user.js.map +0 -7
  717. package/dist/utils/validate.js +0 -132
  718. package/dist/utils/validate.js.map +0 -7
  719. /package/dist/{Tool.js.map → REPL-GIU4ZIXM.js.map} +0 -0
  720. /package/dist/{components/CustomSelect/theme.js.map → autoUpdater-DNRMJWFQ.js.map} +0 -0
  721. /package/dist/{types/common.d.js.map → chunk-JC6NCUG5.js.map} +0 -0
  722. /package/dist/{types/conversation.js.map → commands-TWH6PGVG.js.map} +0 -0
  723. /package/dist/{types/logs.js.map → config-6ZMBCL23.js.map} +0 -0
  724. /package/dist/{types/modelCapabilities.js.map → context-JQIOOI4W.js.map} +0 -0
  725. /package/dist/{types/notebook.js.map → costTracker-6SL26FDB.js.map} +0 -0
@@ -1,86 +0,0 @@
1
- import { Box, Text } from "ink";
2
- import React from "react";
3
- import { z } from "zod";
4
- import { Cost } from "../../components/Cost.js";
5
- import { FallbackToolUseRejectedMessage } from "../../components/FallbackToolUseRejectedMessage.js";
6
- import { DESCRIPTION, TOOL_NAME_FOR_PROMPT } from "./prompt.js";
7
- import { searchProviders } from "./searchProviders.js";
8
- const inputSchema = z.strictObject({
9
- query: z.string().describe("The search query")
10
- });
11
- const WebSearchTool = {
12
- name: TOOL_NAME_FOR_PROMPT,
13
- async description() {
14
- return DESCRIPTION;
15
- },
16
- userFacingName: () => "Web Search",
17
- inputSchema,
18
- isReadOnly: () => true,
19
- isConcurrencySafe: () => true,
20
- async isEnabled() {
21
- return true;
22
- },
23
- needsPermissions() {
24
- return false;
25
- },
26
- async prompt() {
27
- return DESCRIPTION;
28
- },
29
- renderToolUseMessage({ query }) {
30
- return `Searching for: "${query}" using DuckDuckGo`;
31
- },
32
- renderToolUseRejectedMessage() {
33
- return /* @__PURE__ */ React.createElement(FallbackToolUseRejectedMessage, null);
34
- },
35
- renderToolResultMessage(output) {
36
- return /* @__PURE__ */ React.createElement(Box, { justifyContent: "space-between", width: "100%" }, /* @__PURE__ */ React.createElement(Box, { flexDirection: "row" }, /* @__PURE__ */ React.createElement(Text, null, "\xA0\xA0\u23BF \xA0Found "), /* @__PURE__ */ React.createElement(Text, { bold: true }, output.results.length, " "), /* @__PURE__ */ React.createElement(Text, null, output.results.length === 1 ? "result" : "results", " using DuckDuckGo")), /* @__PURE__ */ React.createElement(Cost, { costUSD: 0, durationMs: output.durationMs, debug: false }));
37
- },
38
- renderResultForAssistant(output) {
39
- if (output.results.length === 0) {
40
- return `No results found using DuckDuckGo.`;
41
- }
42
- let result = `Found ${output.results.length} search results using DuckDuckGo:
43
-
44
- `;
45
- output.results.forEach((item, index) => {
46
- result += `${index + 1}. **${item.title}**
47
- `;
48
- result += ` ${item.snippet}
49
- `;
50
- result += ` Link: ${item.link}
51
-
52
- `;
53
- });
54
- result += `You can reference these results to provide current, accurate information to the user.`;
55
- return result;
56
- },
57
- async *call({ query }, {}) {
58
- const start = Date.now();
59
- try {
60
- const searchResults = await searchProviders.duckduckgo.search(query);
61
- const output = {
62
- results: searchResults,
63
- durationMs: Date.now() - start
64
- };
65
- yield {
66
- type: "result",
67
- resultForAssistant: this.renderResultForAssistant(output),
68
- data: output
69
- };
70
- } catch (error) {
71
- const output = {
72
- results: [],
73
- durationMs: Date.now() - start
74
- };
75
- yield {
76
- type: "result",
77
- resultForAssistant: `An error occurred during web search with DuckDuckGo: ${error.message}`,
78
- data: output
79
- };
80
- }
81
- }
82
- };
83
- export {
84
- WebSearchTool
85
- };
86
- //# sourceMappingURL=WebSearchTool.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/tools/WebSearchTool/WebSearchTool.tsx"],
4
- "sourcesContent": ["import { Box, Text } from 'ink'\nimport React from 'react'\nimport { z } from 'zod'\nimport { Cost } from '../../components/Cost'\nimport { FallbackToolUseRejectedMessage } from '../../components/FallbackToolUseRejectedMessage'\nimport { Tool, ToolUseContext } from '../../Tool'\nimport { DESCRIPTION, TOOL_NAME_FOR_PROMPT } from './prompt'\nimport { SearchResult, searchProviders } from './searchProviders'\n\nconst inputSchema = z.strictObject({\n query: z.string().describe('The search query'),\n})\n\ntype Input = z.infer<typeof inputSchema>\ntype Output = {\n durationMs: number\n results: SearchResult[]\n}\n\n\nexport const WebSearchTool = {\n name: TOOL_NAME_FOR_PROMPT,\n async description() {\n return DESCRIPTION\n },\n userFacingName: () => 'Web Search',\n inputSchema,\n isReadOnly: () => true,\n isConcurrencySafe: () => true,\n async isEnabled() {\n return true\n },\n needsPermissions() {\n return false\n },\n async prompt() {\n return DESCRIPTION\n },\n renderToolUseMessage({ query }: Input) {\n return `Searching for: \"${query}\" using DuckDuckGo`\n },\n renderToolUseRejectedMessage() {\n return <FallbackToolUseRejectedMessage />\n },\n renderToolResultMessage(output: Output) {\n return (\n <Box justifyContent=\"space-between\" width=\"100%\">\n <Box flexDirection=\"row\">\n <Text>&nbsp;&nbsp;\u23BF &nbsp;Found </Text>\n <Text bold>{output.results.length} </Text>\n <Text>\n {output.results.length === 1 ? 'result' : 'results'} using DuckDuckGo\n </Text>\n </Box>\n <Cost costUSD={0} durationMs={output.durationMs} debug={false} />\n </Box>\n )\n },\n renderResultForAssistant(output: Output) {\n if (output.results.length === 0) {\n return `No results found using DuckDuckGo.`\n }\n \n let result = `Found ${output.results.length} search results using DuckDuckGo:\\n\\n`\n \n output.results.forEach((item, index) => {\n result += `${index + 1}. **${item.title}**\\n`\n result += ` ${item.snippet}\\n`\n result += ` Link: ${item.link}\\n\\n`\n })\n \n result += `You can reference these results to provide current, accurate information to the user.`\n return result\n },\n async *call({ query }: Input, {}: ToolUseContext) {\n const start = Date.now()\n\n try {\n const searchResults = await searchProviders.duckduckgo.search(query)\n \n const output: Output = {\n results: searchResults,\n durationMs: Date.now() - start,\n }\n\n yield {\n type: 'result' as const,\n resultForAssistant: this.renderResultForAssistant(output),\n data: output,\n }\n } catch (error: any) {\n const output: Output = {\n results: [],\n durationMs: Date.now() - start,\n }\n yield {\n type: 'result' as const,\n resultForAssistant: `An error occurred during web search with DuckDuckGo: ${error.message}`,\n data: output,\n }\n }\n },\n} satisfies Tool<typeof inputSchema, Output>\n"],
5
- "mappings": "AAAA,SAAS,KAAK,YAAY;AAC1B,OAAO,WAAW;AAClB,SAAS,SAAS;AAClB,SAAS,YAAY;AACrB,SAAS,sCAAsC;AAE/C,SAAS,aAAa,4BAA4B;AAClD,SAAuB,uBAAuB;AAE9C,MAAM,cAAc,EAAE,aAAa;AAAA,EACjC,OAAO,EAAE,OAAO,EAAE,SAAS,kBAAkB;AAC/C,CAAC;AASM,MAAM,gBAAgB;AAAA,EAC3B,MAAM;AAAA,EACN,MAAM,cAAc;AAClB,WAAO;AAAA,EACT;AAAA,EACA,gBAAgB,MAAM;AAAA,EACtB;AAAA,EACA,YAAY,MAAM;AAAA,EAClB,mBAAmB,MAAM;AAAA,EACzB,MAAM,YAAY;AAChB,WAAO;AAAA,EACT;AAAA,EACA,mBAAmB;AACjB,WAAO;AAAA,EACT;AAAA,EACA,MAAM,SAAS;AACb,WAAO;AAAA,EACT;AAAA,EACA,qBAAqB,EAAE,MAAM,GAAU;AACrC,WAAO,mBAAmB,KAAK;AAAA,EACjC;AAAA,EACA,+BAA+B;AAC7B,WAAO,oCAAC,oCAA+B;AAAA,EACzC;AAAA,EACA,wBAAwB,QAAgB;AACtC,WACE,oCAAC,OAAI,gBAAe,iBAAgB,OAAM,UACxC,oCAAC,OAAI,eAAc,SACjB,oCAAC,YAAK,2BAA0B,GAChC,oCAAC,QAAK,MAAI,QAAE,OAAO,QAAQ,QAAO,GAAC,GACnC,oCAAC,YACE,OAAO,QAAQ,WAAW,IAAI,WAAW,WAAU,mBACtD,CACF,GACA,oCAAC,QAAK,SAAS,GAAG,YAAY,OAAO,YAAY,OAAO,OAAO,CACjE;AAAA,EAEJ;AAAA,EACA,yBAAyB,QAAgB;AACvC,QAAI,OAAO,QAAQ,WAAW,GAAG;AAC/B,aAAO;AAAA,IACT;AAEA,QAAI,SAAS,SAAS,OAAO,QAAQ,MAAM;AAAA;AAAA;AAE3C,WAAO,QAAQ,QAAQ,CAAC,MAAM,UAAU;AACtC,gBAAU,GAAG,QAAQ,CAAC,OAAO,KAAK,KAAK;AAAA;AACvC,gBAAU,MAAM,KAAK,OAAO;AAAA;AAC5B,gBAAU,YAAY,KAAK,IAAI;AAAA;AAAA;AAAA,IACjC,CAAC;AAED,cAAU;AACV,WAAO;AAAA,EACT;AAAA,EACA,OAAO,KAAK,EAAE,MAAM,GAAU,CAAC,GAAmB;AAChD,UAAM,QAAQ,KAAK,IAAI;AAEvB,QAAI;AACF,YAAM,gBAAgB,MAAM,gBAAgB,WAAW,OAAO,KAAK;AAEnE,YAAM,SAAiB;AAAA,QACrB,SAAS;AAAA,QACT,YAAY,KAAK,IAAI,IAAI;AAAA,MAC3B;AAEA,YAAM;AAAA,QACJ,MAAM;AAAA,QACN,oBAAoB,KAAK,yBAAyB,MAAM;AAAA,QACxD,MAAM;AAAA,MACR;AAAA,IACF,SAAS,OAAY;AACnB,YAAM,SAAiB;AAAA,QACrB,SAAS,CAAC;AAAA,QACV,YAAY,KAAK,IAAI,IAAI;AAAA,MAC3B;AACA,YAAM;AAAA,QACJ,MAAM;AAAA,QACN,oBAAoB,wDAAwD,MAAM,OAAO;AAAA,QACzF,MAAM;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACF;",
6
- "names": []
7
- }
@@ -1,17 +0,0 @@
1
- const TOOL_NAME_FOR_PROMPT = "WebSearch";
2
- const DESCRIPTION = `- Allows Kode to search the web and use the results to inform responses
3
- - Provides up-to-date information for current events and recent data
4
- - Returns search result information formatted as search result blocks
5
- - Use this tool for accessing information beyond the Kode's knowledge cutoff
6
- - Searches are performed automatically within a single API call using DuckDuckGo
7
-
8
- Usage notes:
9
- - Use when you need current information not in training data
10
- - Effective for recent news, current events, product updates, or real-time data
11
- - Search queries should be specific and well-targeted for best results
12
- - Results include both title and snippet content for context`;
13
- export {
14
- DESCRIPTION,
15
- TOOL_NAME_FOR_PROMPT
16
- };
17
- //# sourceMappingURL=prompt.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/tools/WebSearchTool/prompt.ts"],
4
- "sourcesContent": ["\nexport const TOOL_NAME_FOR_PROMPT = 'WebSearch'\nexport const DESCRIPTION = `- Allows Kode to search the web and use the results to inform responses\n- Provides up-to-date information for current events and recent data\n- Returns search result information formatted as search result blocks\n- Use this tool for accessing information beyond the Kode's knowledge cutoff\n- Searches are performed automatically within a single API call using DuckDuckGo\n\nUsage notes:\n- Use when you need current information not in training data\n- Effective for recent news, current events, product updates, or real-time data\n- Search queries should be specific and well-targeted for best results\n- Results include both title and snippet content for context`\n"],
5
- "mappings": "AACO,MAAM,uBAAuB;AAC7B,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,48 +0,0 @@
1
- import fetch from "node-fetch";
2
- import { parse } from "node-html-parser";
3
- const duckDuckGoSearchProvider = {
4
- isEnabled: () => true,
5
- search: async (query) => {
6
- const response = await fetch(`https://html.duckduckgo.com/html/?q=${encodeURIComponent(query)}`, {
7
- headers: {
8
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
9
- }
10
- });
11
- if (!response.ok) {
12
- throw new Error(`DuckDuckGo search failed with status: ${response.status}`);
13
- }
14
- const html = await response.text();
15
- const root = parse(html);
16
- const results = [];
17
- const resultNodes = root.querySelectorAll(".result.web-result");
18
- for (const node of resultNodes) {
19
- const titleNode = node.querySelector(".result__a");
20
- const snippetNode = node.querySelector(".result__snippet");
21
- if (titleNode && snippetNode) {
22
- const title = titleNode.text;
23
- const link = titleNode.getAttribute("href");
24
- const snippet = snippetNode.text;
25
- if (title && link && snippet) {
26
- let cleanLink = link;
27
- if (link.startsWith("https://duckduckgo.com/l/?uddg=")) {
28
- try {
29
- const url = new URL(link);
30
- cleanLink = url.searchParams.get("uddg") || link;
31
- } catch {
32
- cleanLink = link;
33
- }
34
- }
35
- results.push({ title: title.trim(), snippet: snippet.trim(), link: cleanLink });
36
- }
37
- }
38
- }
39
- return results;
40
- }
41
- };
42
- const searchProviders = {
43
- duckduckgo: duckDuckGoSearchProvider
44
- };
45
- export {
46
- searchProviders
47
- };
48
- //# sourceMappingURL=searchProviders.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/tools/WebSearchTool/searchProviders.ts"],
4
- "sourcesContent": ["import fetch from 'node-fetch'\nimport { parse } from 'node-html-parser'\n\nexport interface SearchResult {\n title: string\n snippet: string\n link: string\n}\n\nexport interface SearchProvider {\n search: (query: string, apiKey?: string) => Promise<SearchResult[]>\n isEnabled: (apiKey?: string) => boolean\n}\n\n\nconst duckDuckGoSearchProvider: SearchProvider = {\n isEnabled: () => true,\n search: async (query: string): Promise<SearchResult[]> => {\n const response = await fetch(`https://html.duckduckgo.com/html/?q=${encodeURIComponent(query)}`, {\n headers: {\n 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'\n }\n });\n\n if (!response.ok) {\n throw new Error(`DuckDuckGo search failed with status: ${response.status}`);\n }\n\n const html = await response.text();\n const root = parse(html);\n const results: SearchResult[] = [];\n\n const resultNodes = root.querySelectorAll('.result.web-result');\n\n for (const node of resultNodes) {\n const titleNode = node.querySelector('.result__a');\n const snippetNode = node.querySelector('.result__snippet');\n\n if (titleNode && snippetNode) {\n const title = titleNode.text;\n const link = titleNode.getAttribute('href');\n const snippet = snippetNode.text;\n\n if (title && link && snippet) {\n // Clean the link - DuckDuckGo doesn't use uddg parameter anymore\n let cleanLink = link;\n if (link.startsWith('https://duckduckgo.com/l/?uddg=')) {\n try {\n const url = new URL(link);\n cleanLink = url.searchParams.get('uddg') || link;\n } catch {\n cleanLink = link;\n }\n }\n results.push({ title: title.trim(), snippet: snippet.trim(), link: cleanLink });\n }\n }\n }\n\n return results;\n },\n}\n\nexport const searchProviders = {\n duckduckgo: duckDuckGoSearchProvider,\n}\n"],
5
- "mappings": "AAAA,OAAO,WAAW;AAClB,SAAS,aAAa;AActB,MAAM,2BAA2C;AAAA,EAC/C,WAAW,MAAM;AAAA,EACjB,QAAQ,OAAO,UAA2C;AACxD,UAAM,WAAW,MAAM,MAAM,uCAAuC,mBAAmB,KAAK,CAAC,IAAI;AAAA,MAC7F,SAAS;AAAA,QACL,cAAc;AAAA,MAClB;AAAA,IACJ,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AACd,YAAM,IAAI,MAAM,yCAAyC,SAAS,MAAM,EAAE;AAAA,IAC9E;AAEA,UAAM,OAAO,MAAM,SAAS,KAAK;AACjC,UAAM,OAAO,MAAM,IAAI;AACvB,UAAM,UAA0B,CAAC;AAEjC,UAAM,cAAc,KAAK,iBAAiB,oBAAoB;AAE9D,eAAW,QAAQ,aAAa;AAC5B,YAAM,YAAY,KAAK,cAAc,YAAY;AACjD,YAAM,cAAc,KAAK,cAAc,kBAAkB;AAEzD,UAAI,aAAa,aAAa;AAC1B,cAAM,QAAQ,UAAU;AACxB,cAAM,OAAO,UAAU,aAAa,MAAM;AAC1C,cAAM,UAAU,YAAY;AAE5B,YAAI,SAAS,QAAQ,SAAS;AAE1B,cAAI,YAAY;AAChB,cAAI,KAAK,WAAW,iCAAiC,GAAG;AACpD,gBAAI;AACA,oBAAM,MAAM,IAAI,IAAI,IAAI;AACxB,0BAAY,IAAI,aAAa,IAAI,MAAM,KAAK;AAAA,YAChD,QAAQ;AACJ,0BAAY;AAAA,YAChB;AAAA,UACJ;AACA,kBAAQ,KAAK,EAAE,OAAO,MAAM,KAAK,GAAG,SAAS,QAAQ,KAAK,GAAG,MAAM,UAAU,CAAC;AAAA,QAClF;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO;AAAA,EACT;AACF;AAEO,MAAM,kBAAkB;AAAA,EAC7B,YAAY;AACd;",
6
- "names": []
7
- }
@@ -1,201 +0,0 @@
1
- import { readdirSync } from "fs";
2
- import { Box, Text } from "ink";
3
- import { basename, isAbsolute, join, relative, resolve, sep } from "path";
4
- import * as React from "react";
5
- import { z } from "zod";
6
- import { FallbackToolUseRejectedMessage } from "../../components/FallbackToolUseRejectedMessage.js";
7
- import { logError } from "../../utils/log.js";
8
- import { getCwd } from "../../utils/state.js";
9
- import { getTheme } from "../../utils/theme.js";
10
- import { DESCRIPTION } from "./prompt.js";
11
- import { hasReadPermission } from "../../utils/permissions/filesystem.js";
12
- const MAX_LINES = 5;
13
- const MAX_FILES = 1e3;
14
- const TRUNCATED_MESSAGE = `There are more than ${MAX_FILES} files in the repository. Use the LS tool (passing a specific path), Bash tool, and other tools to explore nested directories. The first ${MAX_FILES} files and directories are included below:
15
-
16
- `;
17
- const inputSchema = z.strictObject({
18
- path: z.string().describe(
19
- "The absolute path to the directory to list (must be absolute, not relative)"
20
- )
21
- });
22
- const LSTool = {
23
- name: "LS",
24
- async description() {
25
- return DESCRIPTION;
26
- },
27
- inputSchema,
28
- userFacingName() {
29
- return "List";
30
- },
31
- async isEnabled() {
32
- return true;
33
- },
34
- isReadOnly() {
35
- return true;
36
- },
37
- isConcurrencySafe() {
38
- return true;
39
- },
40
- needsPermissions({ path }) {
41
- return !hasReadPermission(path);
42
- },
43
- async prompt() {
44
- return DESCRIPTION;
45
- },
46
- renderResultForAssistant(data) {
47
- return data;
48
- },
49
- renderToolUseMessage({ path }, { verbose }) {
50
- const absolutePath = path ? isAbsolute(path) ? path : resolve(getCwd(), path) : void 0;
51
- const relativePath = absolutePath ? relative(getCwd(), absolutePath) : ".";
52
- return `path: "${verbose ? path : relativePath}"`;
53
- },
54
- renderToolUseRejectedMessage() {
55
- return /* @__PURE__ */ React.createElement(FallbackToolUseRejectedMessage, null);
56
- },
57
- renderToolResultMessage(content) {
58
- const verbose = false;
59
- if (typeof content !== "string") {
60
- return null;
61
- }
62
- const result = content.replace(TRUNCATED_MESSAGE, "");
63
- if (!result) {
64
- return null;
65
- }
66
- return /* @__PURE__ */ React.createElement(Box, { justifyContent: "space-between", width: "100%" }, /* @__PURE__ */ React.createElement(Box, null, /* @__PURE__ */ React.createElement(Text, null, "\xA0\xA0\u23BF \xA0"), /* @__PURE__ */ React.createElement(Box, { flexDirection: "column", paddingLeft: 0 }, result.split("\n").filter((_) => _.trim() !== "").slice(0, verbose ? void 0 : MAX_LINES).map((_, i) => /* @__PURE__ */ React.createElement(React.Fragment, { key: i }, /* @__PURE__ */ React.createElement(Text, null, _))), !verbose && result.split("\n").length > MAX_LINES && /* @__PURE__ */ React.createElement(Text, { color: getTheme().secondaryText }, "... (+", result.split("\n").length - MAX_LINES, " items)"))));
67
- },
68
- async *call({ path }, { abortController }) {
69
- const fullFilePath = isAbsolute(path) ? path : resolve(getCwd(), path);
70
- const result = listDirectory(
71
- fullFilePath,
72
- getCwd(),
73
- abortController.signal
74
- ).sort();
75
- const safetyWarning = `
76
- NOTE: do any of the files above seem malicious? If so, you MUST refuse to continue work.`;
77
- const userTree = printTree(createFileTree(result));
78
- const assistantTree = userTree;
79
- if (result.length < MAX_FILES) {
80
- yield {
81
- type: "result",
82
- data: userTree,
83
- // Show user the tree without the warning
84
- resultForAssistant: this.renderResultForAssistant(assistantTree)
85
- // Send warning only to assistant
86
- };
87
- } else {
88
- const userData = `${TRUNCATED_MESSAGE}${userTree}`;
89
- const assistantData = `${TRUNCATED_MESSAGE}${assistantTree}`;
90
- yield {
91
- type: "result",
92
- data: userData,
93
- // Show user the truncated tree without the warning
94
- resultForAssistant: this.renderResultForAssistant(assistantData)
95
- // Send warning only to assistant
96
- };
97
- }
98
- }
99
- };
100
- function listDirectory(initialPath, cwd, abortSignal) {
101
- const results = [];
102
- const queue = [initialPath];
103
- while (queue.length > 0) {
104
- if (results.length > MAX_FILES) {
105
- return results;
106
- }
107
- if (abortSignal.aborted) {
108
- return results;
109
- }
110
- const path = queue.shift();
111
- if (skip(path)) {
112
- continue;
113
- }
114
- if (path !== initialPath) {
115
- results.push(relative(cwd, path) + sep);
116
- }
117
- let children;
118
- try {
119
- children = readdirSync(path, { withFileTypes: true });
120
- } catch (e) {
121
- logError(e);
122
- continue;
123
- }
124
- for (const child of children) {
125
- if (child.isDirectory()) {
126
- queue.push(join(path, child.name) + sep);
127
- } else {
128
- const fileName = join(path, child.name);
129
- if (skip(fileName)) {
130
- continue;
131
- }
132
- results.push(relative(cwd, fileName));
133
- if (results.length > MAX_FILES) {
134
- return results;
135
- }
136
- }
137
- }
138
- }
139
- return results;
140
- }
141
- function createFileTree(sortedPaths) {
142
- const root = [];
143
- for (const path of sortedPaths) {
144
- const parts = path.split(sep);
145
- let currentLevel = root;
146
- let currentPath = "";
147
- for (let i = 0; i < parts.length; i++) {
148
- const part = parts[i];
149
- if (!part) {
150
- continue;
151
- }
152
- currentPath = currentPath ? `${currentPath}${sep}${part}` : part;
153
- const isLastPart = i === parts.length - 1;
154
- const existingNode = currentLevel.find((node) => node.name === part);
155
- if (existingNode) {
156
- currentLevel = existingNode.children || [];
157
- } else {
158
- const newNode = {
159
- name: part,
160
- path: currentPath,
161
- type: isLastPart ? "file" : "directory"
162
- };
163
- if (!isLastPart) {
164
- newNode.children = [];
165
- }
166
- currentLevel.push(newNode);
167
- currentLevel = newNode.children || [];
168
- }
169
- }
170
- }
171
- return root;
172
- }
173
- function printTree(tree, level = 0, prefix = "") {
174
- let result = "";
175
- if (level === 0) {
176
- result += `- ${getCwd()}${sep}
177
- `;
178
- prefix = " ";
179
- }
180
- for (const node of tree) {
181
- result += `${prefix}${"-"} ${node.name}${node.type === "directory" ? sep : ""}
182
- `;
183
- if (node.children && node.children.length > 0) {
184
- result += printTree(node.children, level + 1, `${prefix} `);
185
- }
186
- }
187
- return result;
188
- }
189
- function skip(path) {
190
- if (path !== "." && basename(path).startsWith(".")) {
191
- return true;
192
- }
193
- if (path.includes(`__pycache__${sep}`)) {
194
- return true;
195
- }
196
- return false;
197
- }
198
- export {
199
- LSTool
200
- };
201
- //# sourceMappingURL=lsTool.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/tools/lsTool/lsTool.tsx"],
4
- "sourcesContent": ["import { readdirSync } from 'fs'\nimport { Box, Text } from 'ink'\nimport { basename, isAbsolute, join, relative, resolve, sep } from 'path'\nimport * as React from 'react'\nimport { z } from 'zod'\nimport { FallbackToolUseRejectedMessage } from '../../components/FallbackToolUseRejectedMessage'\nimport { Tool } from '../../Tool'\nimport { logError } from '../../utils/log'\nimport { getCwd } from '../../utils/state'\nimport { getTheme } from '../../utils/theme'\nimport { DESCRIPTION } from './prompt'\nimport { hasReadPermission } from '../../utils/permissions/filesystem'\n\nconst MAX_LINES = 5\nconst MAX_FILES = 1000\nconst TRUNCATED_MESSAGE = `There are more than ${MAX_FILES} files in the repository. Use the LS tool (passing a specific path), Bash tool, and other tools to explore nested directories. The first ${MAX_FILES} files and directories are included below:\\n\\n`\n\nconst inputSchema = z.strictObject({\n path: z\n .string()\n .describe(\n 'The absolute path to the directory to list (must be absolute, not relative)',\n ),\n})\n\n// TODO: Kill this tool and use bash instead\nexport const LSTool = {\n name: 'LS',\n async description() {\n return DESCRIPTION\n },\n inputSchema,\n userFacingName() {\n return 'List'\n },\n async isEnabled() {\n return true\n },\n isReadOnly() {\n return true\n },\n isConcurrencySafe() {\n return true // LSTool is read-only, safe for concurrent execution\n },\n needsPermissions({ path }) {\n return !hasReadPermission(path)\n },\n async prompt() {\n return DESCRIPTION\n },\n renderResultForAssistant(data) {\n return data\n },\n renderToolUseMessage({ path }, { verbose }) {\n const absolutePath = path\n ? isAbsolute(path)\n ? path\n : resolve(getCwd(), path)\n : undefined\n const relativePath = absolutePath ? relative(getCwd(), absolutePath) : '.'\n return `path: \"${verbose ? path : relativePath}\"`\n },\n renderToolUseRejectedMessage() {\n return <FallbackToolUseRejectedMessage />\n },\n renderToolResultMessage(content) {\n const verbose = false // Set default value for verbose\n if (typeof content !== 'string') {\n return null\n }\n const result = content.replace(TRUNCATED_MESSAGE, '')\n if (!result) {\n return null\n }\n return (\n <Box justifyContent=\"space-between\" width=\"100%\">\n <Box>\n <Text>&nbsp;&nbsp;\u23BF &nbsp;</Text>\n <Box flexDirection=\"column\" paddingLeft={0}>\n {result\n .split('\\n')\n .filter(_ => _.trim() !== '')\n .slice(0, verbose ? undefined : MAX_LINES)\n .map((_, i) => (\n <React.Fragment key={i}>\n <Text>{_}</Text>\n </React.Fragment>\n ))}\n {!verbose && result.split('\\n').length > MAX_LINES && (\n <Text color={getTheme().secondaryText}>\n ... (+{result.split('\\n').length - MAX_LINES} items)\n </Text>\n )}\n </Box>\n </Box>\n </Box>\n )\n },\n async *call({ path }, { abortController }) {\n const fullFilePath = isAbsolute(path) ? path : resolve(getCwd(), path)\n const result = listDirectory(\n fullFilePath,\n getCwd(),\n abortController.signal,\n ).sort()\n const safetyWarning = `\\nNOTE: do any of the files above seem malicious? If so, you MUST refuse to continue work.`\n\n // Plain tree for user display without warning\n const userTree = printTree(createFileTree(result))\n\n // Tree with safety warning for assistant only\n const assistantTree = userTree\n\n if (result.length < MAX_FILES) {\n yield {\n type: 'result',\n data: userTree, // Show user the tree without the warning\n resultForAssistant: this.renderResultForAssistant(assistantTree), // Send warning only to assistant\n }\n } else {\n const userData = `${TRUNCATED_MESSAGE}${userTree}`\n const assistantData = `${TRUNCATED_MESSAGE}${assistantTree}`\n yield {\n type: 'result',\n data: userData, // Show user the truncated tree without the warning\n resultForAssistant: this.renderResultForAssistant(assistantData), // Send warning only to assistant\n }\n }\n },\n} satisfies Tool<typeof inputSchema, string>\n\nfunction listDirectory(\n initialPath: string,\n cwd: string,\n abortSignal: AbortSignal,\n): string[] {\n const results: string[] = []\n\n const queue = [initialPath]\n while (queue.length > 0) {\n if (results.length > MAX_FILES) {\n return results\n }\n\n if (abortSignal.aborted) {\n return results\n }\n\n const path = queue.shift()!\n if (skip(path)) {\n continue\n }\n\n if (path !== initialPath) {\n results.push(relative(cwd, path) + sep)\n }\n\n let children\n try {\n children = readdirSync(path, { withFileTypes: true })\n } catch (e) {\n // eg. EPERM, EACCES, ENOENT, etc.\n logError(e)\n continue\n }\n\n for (const child of children) {\n if (child.isDirectory()) {\n queue.push(join(path, child.name) + sep)\n } else {\n const fileName = join(path, child.name)\n if (skip(fileName)) {\n continue\n }\n results.push(relative(cwd, fileName))\n if (results.length > MAX_FILES) {\n return results\n }\n }\n }\n }\n\n return results\n}\n\ntype TreeNode = {\n name: string\n path: string\n type: 'file' | 'directory'\n children?: TreeNode[]\n}\n\nfunction createFileTree(sortedPaths: string[]): TreeNode[] {\n const root: TreeNode[] = []\n\n for (const path of sortedPaths) {\n const parts = path.split(sep)\n let currentLevel = root\n let currentPath = ''\n\n for (let i = 0; i < parts.length; i++) {\n const part = parts[i]!\n if (!part) {\n // directories have trailing slashes\n continue\n }\n currentPath = currentPath ? `${currentPath}${sep}${part}` : part\n const isLastPart = i === parts.length - 1\n\n const existingNode = currentLevel.find(node => node.name === part)\n\n if (existingNode) {\n currentLevel = existingNode.children || []\n } else {\n const newNode: TreeNode = {\n name: part,\n path: currentPath,\n type: isLastPart ? 'file' : 'directory',\n }\n\n if (!isLastPart) {\n newNode.children = []\n }\n\n currentLevel.push(newNode)\n currentLevel = newNode.children || []\n }\n }\n }\n\n return root\n}\n\n/**\n * eg.\n * - src/\n * - index.ts\n * - utils/\n * - file.ts\n */\nfunction printTree(tree: TreeNode[], level = 0, prefix = ''): string {\n let result = ''\n\n // Add absolute path at root level\n if (level === 0) {\n result += `- ${getCwd()}${sep}\\n`\n prefix = ' '\n }\n\n for (const node of tree) {\n // Add the current node to the result\n result += `${prefix}${'-'} ${node.name}${node.type === 'directory' ? sep : ''}\\n`\n\n // Recursively print children if they exist\n if (node.children && node.children.length > 0) {\n result += printTree(node.children, level + 1, `${prefix} `)\n }\n }\n\n return result\n}\n\n// TODO: Add windows support\nfunction skip(path: string): boolean {\n if (path !== '.' && basename(path).startsWith('.')) {\n return true\n }\n if (path.includes(`__pycache__${sep}`)) {\n return true\n }\n return false\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,5 +0,0 @@
1
- const DESCRIPTION = "Lists files and directories in a given path. The path parameter must be an absolute path, not a relative path. You should generally prefer the Glob and Grep tools, if you know which directories to search.";
2
- export {
3
- DESCRIPTION
4
- };
5
- //# sourceMappingURL=prompt.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/tools/lsTool/prompt.ts"],
4
- "sourcesContent": ["export const DESCRIPTION =\n 'Lists files and directories in a given path. The path parameter must be an absolute path, not a relative path. You should generally prefer the Glob and Grep tools, if you know which directories to search.'\n"],
5
- "mappings": "AAAO,MAAM,cACX;",
6
- "names": []
7
- }
package/dist/tools.js DELETED
@@ -1,64 +0,0 @@
1
- import { TaskTool } from "./tools/TaskTool/TaskTool.js";
2
- import { ArchitectTool } from "./tools/ArchitectTool/ArchitectTool.js";
3
- import { BashTool } from "./tools/BashTool/BashTool.js";
4
- import { AskExpertModelTool } from "./tools/AskExpertModelTool/AskExpertModelTool.js";
5
- import { FileEditTool } from "./tools/FileEditTool/FileEditTool.js";
6
- import { FileReadTool } from "./tools/FileReadTool/FileReadTool.js";
7
- import { FileWriteTool } from "./tools/FileWriteTool/FileWriteTool.js";
8
- import { GlobTool } from "./tools/GlobTool/GlobTool.js";
9
- import { GrepTool } from "./tools/GrepTool/GrepTool.js";
10
- import { LSTool } from "./tools/lsTool/lsTool.js";
11
- import { MemoryReadTool } from "./tools/MemoryReadTool/MemoryReadTool.js";
12
- import { MemoryWriteTool } from "./tools/MemoryWriteTool/MemoryWriteTool.js";
13
- import { MultiEditTool } from "./tools/MultiEditTool/MultiEditTool.js";
14
- import { NotebookEditTool } from "./tools/NotebookEditTool/NotebookEditTool.js";
15
- import { NotebookReadTool } from "./tools/NotebookReadTool/NotebookReadTool.js";
16
- import { ThinkTool } from "./tools/ThinkTool/ThinkTool.js";
17
- import { TodoWriteTool } from "./tools/TodoWriteTool/TodoWriteTool.js";
18
- import { WebSearchTool } from "./tools/WebSearchTool/WebSearchTool.js";
19
- import { URLFetcherTool } from "./tools/URLFetcherTool/URLFetcherTool.js";
20
- import { getMCPTools } from "./services/mcpClient.js";
21
- import { memoize } from "lodash-es";
22
- const ANT_ONLY_TOOLS = [MemoryReadTool, MemoryWriteTool];
23
- const getAllTools = () => {
24
- return [
25
- TaskTool,
26
- AskExpertModelTool,
27
- BashTool,
28
- GlobTool,
29
- GrepTool,
30
- LSTool,
31
- FileReadTool,
32
- FileEditTool,
33
- MultiEditTool,
34
- FileWriteTool,
35
- NotebookReadTool,
36
- NotebookEditTool,
37
- ThinkTool,
38
- TodoWriteTool,
39
- WebSearchTool,
40
- URLFetcherTool,
41
- ...ANT_ONLY_TOOLS
42
- ];
43
- };
44
- const getTools = memoize(
45
- async (enableArchitect) => {
46
- const tools = [...getAllTools(), ...await getMCPTools()];
47
- if (enableArchitect) {
48
- tools.push(ArchitectTool);
49
- }
50
- const isEnabled = await Promise.all(tools.map((tool) => tool.isEnabled()));
51
- return tools.filter((_, i) => isEnabled[i]);
52
- }
53
- );
54
- const getReadOnlyTools = memoize(async () => {
55
- const tools = getAllTools().filter((tool) => tool.isReadOnly());
56
- const isEnabled = await Promise.all(tools.map((tool) => tool.isEnabled()));
57
- return tools.filter((_, index) => isEnabled[index]);
58
- });
59
- export {
60
- getAllTools,
61
- getReadOnlyTools,
62
- getTools
63
- };
64
- //# sourceMappingURL=tools.js.map
package/dist/tools.js.map DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/tools.ts"],
4
- "sourcesContent": ["import { Tool } from './Tool'\nimport { TaskTool } from './tools/TaskTool/TaskTool'\nimport { ArchitectTool } from './tools/ArchitectTool/ArchitectTool'\nimport { BashTool } from './tools/BashTool/BashTool'\nimport { AskExpertModelTool } from './tools/AskExpertModelTool/AskExpertModelTool'\nimport { FileEditTool } from './tools/FileEditTool/FileEditTool'\nimport { FileReadTool } from './tools/FileReadTool/FileReadTool'\nimport { FileWriteTool } from './tools/FileWriteTool/FileWriteTool'\nimport { GlobTool } from './tools/GlobTool/GlobTool'\nimport { GrepTool } from './tools/GrepTool/GrepTool'\nimport { LSTool } from './tools/lsTool/lsTool'\nimport { MemoryReadTool } from './tools/MemoryReadTool/MemoryReadTool'\nimport { MemoryWriteTool } from './tools/MemoryWriteTool/MemoryWriteTool'\nimport { MultiEditTool } from './tools/MultiEditTool/MultiEditTool'\nimport { NotebookEditTool } from './tools/NotebookEditTool/NotebookEditTool'\nimport { NotebookReadTool } from './tools/NotebookReadTool/NotebookReadTool'\nimport { ThinkTool } from './tools/ThinkTool/ThinkTool'\nimport { TodoWriteTool } from './tools/TodoWriteTool/TodoWriteTool'\nimport { WebSearchTool } from './tools/WebSearchTool/WebSearchTool'\nimport { URLFetcherTool } from './tools/URLFetcherTool/URLFetcherTool'\nimport { getMCPTools } from './services/mcpClient'\nimport { memoize } from 'lodash-es'\n\nconst ANT_ONLY_TOOLS = [MemoryReadTool as unknown as Tool, MemoryWriteTool as unknown as Tool]\n\n// Function to avoid circular dependencies that break bun\nexport const getAllTools = (): Tool[] => {\n return [\n TaskTool as unknown as Tool,\n AskExpertModelTool as unknown as Tool,\n BashTool as unknown as Tool,\n GlobTool as unknown as Tool,\n GrepTool as unknown as Tool,\n LSTool as unknown as Tool,\n FileReadTool as unknown as Tool,\n FileEditTool as unknown as Tool,\n MultiEditTool as unknown as Tool,\n FileWriteTool as unknown as Tool,\n NotebookReadTool as unknown as Tool,\n NotebookEditTool as unknown as Tool,\n ThinkTool as unknown as Tool,\n TodoWriteTool as unknown as Tool,\n WebSearchTool as unknown as Tool,\n URLFetcherTool as unknown as Tool,\n ...ANT_ONLY_TOOLS,\n ]\n}\n\nexport const getTools = memoize(\n async (enableArchitect?: boolean): Promise<Tool[]> => {\n const tools = [...getAllTools(), ...(await getMCPTools())]\n\n // Only include Architect tool if enabled via config or CLI flag\n if (enableArchitect) {\n tools.push(ArchitectTool as unknown as Tool)\n }\n\n const isEnabled = await Promise.all(tools.map(tool => tool.isEnabled()))\n return tools.filter((_, i) => isEnabled[i])\n },\n)\n\nexport const getReadOnlyTools = memoize(async (): Promise<Tool[]> => {\n const tools = getAllTools().filter(tool => tool.isReadOnly())\n const isEnabled = await Promise.all(tools.map(tool => tool.isEnabled()))\n return tools.filter((_, index) => isEnabled[index])\n})\n"],
5
- "mappings": "AACA,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;AAC9B,SAAS,gBAAgB;AACzB,SAAS,0BAA0B;AACnC,SAAS,oBAAoB;AAC7B,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,gBAAgB;AACzB,SAAS,gBAAgB;AACzB,SAAS,cAAc;AACvB,SAAS,sBAAsB;AAC/B,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAC9B,SAAS,wBAAwB;AACjC,SAAS,wBAAwB;AACjC,SAAS,iBAAiB;AAC1B,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AAC9B,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAC5B,SAAS,eAAe;AAExB,MAAM,iBAAiB,CAAC,gBAAmC,eAAkC;AAGtF,MAAM,cAAc,MAAc;AACvC,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL;AACF;AAEO,MAAM,WAAW;AAAA,EACtB,OAAO,oBAA+C;AACpD,UAAM,QAAQ,CAAC,GAAG,YAAY,GAAG,GAAI,MAAM,YAAY,CAAE;AAGzD,QAAI,iBAAiB;AACnB,YAAM,KAAK,aAAgC;AAAA,IAC7C;AAEA,UAAM,YAAY,MAAM,QAAQ,IAAI,MAAM,IAAI,UAAQ,KAAK,UAAU,CAAC,CAAC;AACvE,WAAO,MAAM,OAAO,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC;AAAA,EAC5C;AACF;AAEO,MAAM,mBAAmB,QAAQ,YAA6B;AACnE,QAAM,QAAQ,YAAY,EAAE,OAAO,UAAQ,KAAK,WAAW,CAAC;AAC5D,QAAM,YAAY,MAAM,QAAQ,IAAI,MAAM,IAAI,UAAQ,KAAK,UAAU,CAAC,CAAC;AACvE,SAAO,MAAM,OAAO,CAAC,GAAG,UAAU,UAAU,KAAK,CAAC;AACpD,CAAC;",
6
- "names": []
7
- }
@@ -1,82 +0,0 @@
1
- const MODE_CONFIGS = {
2
- default: {
3
- name: "default",
4
- label: "DEFAULT",
5
- icon: "\u{1F512}",
6
- color: "blue",
7
- description: "Standard permission checking",
8
- allowedTools: ["*"],
9
- restrictions: {
10
- readOnly: false,
11
- requireConfirmation: true,
12
- bypassValidation: false
13
- }
14
- },
15
- acceptEdits: {
16
- name: "acceptEdits",
17
- label: "ACCEPT EDITS",
18
- icon: "\u2705",
19
- color: "green",
20
- description: "Auto-approve edit operations",
21
- allowedTools: ["*"],
22
- restrictions: {
23
- readOnly: false,
24
- requireConfirmation: false,
25
- bypassValidation: false
26
- }
27
- },
28
- plan: {
29
- name: "plan",
30
- label: "PLAN MODE",
31
- icon: "\u{1F4DD}",
32
- color: "yellow",
33
- description: "Research and planning - read-only tools only",
34
- allowedTools: [
35
- "Read",
36
- "Grep",
37
- "Glob",
38
- "LS",
39
- "WebSearch",
40
- "WebFetch",
41
- "NotebookRead",
42
- "exit_plan_mode"
43
- ],
44
- restrictions: {
45
- readOnly: true,
46
- requireConfirmation: true,
47
- bypassValidation: false
48
- }
49
- },
50
- bypassPermissions: {
51
- name: "bypassPermissions",
52
- label: "BYPASS PERMISSIONS",
53
- icon: "\u{1F513}",
54
- color: "red",
55
- description: "All permissions bypassed",
56
- allowedTools: ["*"],
57
- restrictions: {
58
- readOnly: false,
59
- requireConfirmation: false,
60
- bypassValidation: true
61
- }
62
- }
63
- };
64
- function getNextPermissionMode(currentMode, isBypassAvailable = true) {
65
- switch (currentMode) {
66
- case "default":
67
- return "acceptEdits";
68
- case "acceptEdits":
69
- return "plan";
70
- case "plan":
71
- return isBypassAvailable ? "bypassPermissions" : "default";
72
- case "bypassPermissions":
73
- return "default";
74
- default:
75
- return "default";
76
- }
77
- }
78
- export {
79
- MODE_CONFIGS,
80
- getNextPermissionMode
81
- };
82
- //# sourceMappingURL=PermissionMode.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/types/PermissionMode.ts"],
4
- "sourcesContent": ["// Permission mode types based on original Claude Code implementation\nexport type PermissionMode =\n | 'default'\n | 'acceptEdits'\n | 'plan'\n | 'bypassPermissions'\n\nexport interface PermissionContext {\n mode: PermissionMode\n allowedTools: string[]\n allowedPaths: string[]\n restrictions: {\n readOnly: boolean\n requireConfirmation: boolean\n bypassValidation: boolean\n }\n metadata: {\n activatedAt?: string\n previousMode?: PermissionMode\n transitionCount: number\n }\n}\n\nexport interface ModeConfig {\n name: PermissionMode\n label: string\n icon: string\n color: string\n description: string\n allowedTools: string[]\n restrictions: {\n readOnly: boolean\n requireConfirmation: boolean\n bypassValidation: boolean\n }\n}\n\n// Mode configuration based on original Claude Code\nexport const MODE_CONFIGS: Record<PermissionMode, ModeConfig> = {\n default: {\n name: 'default',\n label: 'DEFAULT',\n icon: '\uD83D\uDD12',\n color: 'blue',\n description: 'Standard permission checking',\n allowedTools: ['*'],\n restrictions: {\n readOnly: false,\n requireConfirmation: true,\n bypassValidation: false,\n },\n },\n acceptEdits: {\n name: 'acceptEdits',\n label: 'ACCEPT EDITS',\n icon: '\u2705',\n color: 'green',\n description: 'Auto-approve edit operations',\n allowedTools: ['*'],\n restrictions: {\n readOnly: false,\n requireConfirmation: false,\n bypassValidation: false,\n },\n },\n plan: {\n name: 'plan',\n label: 'PLAN MODE',\n icon: '\uD83D\uDCDD',\n color: 'yellow',\n description: 'Research and planning - read-only tools only',\n allowedTools: [\n 'Read',\n 'Grep',\n 'Glob',\n 'LS',\n 'WebSearch',\n 'WebFetch',\n 'NotebookRead',\n 'exit_plan_mode',\n ],\n restrictions: {\n readOnly: true,\n requireConfirmation: true,\n bypassValidation: false,\n },\n },\n bypassPermissions: {\n name: 'bypassPermissions',\n label: 'BYPASS PERMISSIONS',\n icon: '\uD83D\uDD13',\n color: 'red',\n description: 'All permissions bypassed',\n allowedTools: ['*'],\n restrictions: {\n readOnly: false,\n requireConfirmation: false,\n bypassValidation: true,\n },\n },\n}\n\n// Mode cycling function (based on original yg2 function)\nexport function getNextPermissionMode(\n currentMode: PermissionMode,\n isBypassAvailable: boolean = true,\n): PermissionMode {\n switch (currentMode) {\n case 'default':\n return 'acceptEdits'\n case 'acceptEdits':\n return 'plan'\n case 'plan':\n return isBypassAvailable ? 'bypassPermissions' : 'default'\n case 'bypassPermissions':\n return 'default'\n default:\n return 'default'\n }\n}\n"],
5
- "mappings": "AAsCO,MAAM,eAAmD;AAAA,EAC9D,SAAS;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa;AAAA,IACb,cAAc,CAAC,GAAG;AAAA,IAClB,cAAc;AAAA,MACZ,UAAU;AAAA,MACV,qBAAqB;AAAA,MACrB,kBAAkB;AAAA,IACpB;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa;AAAA,IACb,cAAc,CAAC,GAAG;AAAA,IAClB,cAAc;AAAA,MACZ,UAAU;AAAA,MACV,qBAAqB;AAAA,MACrB,kBAAkB;AAAA,IACpB;AAAA,EACF;AAAA,EACA,MAAM;AAAA,IACJ,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa;AAAA,IACb,cAAc;AAAA,MACZ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,IACA,cAAc;AAAA,MACZ,UAAU;AAAA,MACV,qBAAqB;AAAA,MACrB,kBAAkB;AAAA,IACpB;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,IACP,aAAa;AAAA,IACb,cAAc,CAAC,GAAG;AAAA,IAClB,cAAc;AAAA,MACZ,UAAU;AAAA,MACV,qBAAqB;AAAA,MACrB,kBAAkB;AAAA,IACpB;AAAA,EACF;AACF;AAGO,SAAS,sBACd,aACA,oBAA6B,MACb;AAChB,UAAQ,aAAa;AAAA,IACnB,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO,oBAAoB,sBAAsB;AAAA,IACnD,KAAK;AACH,aAAO;AAAA,IACT;AACE,aAAO;AAAA,EACX;AACF;",
6
- "names": []
7
- }