@within-7/minto 0.4.1 → 0.4.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 (391) hide show
  1. package/dist/Tool.js +7 -0
  2. package/dist/Tool.js.map +2 -2
  3. package/dist/commands/agents/AgentsCommand.js +1 -1
  4. package/dist/commands/agents/AgentsCommand.js.map +2 -2
  5. package/dist/commands/agents/constants.js +2 -2
  6. package/dist/commands/agents/constants.js.map +2 -2
  7. package/dist/commands/clear.js +4 -3
  8. package/dist/commands/clear.js.map +2 -2
  9. package/dist/commands/compact.js +2 -2
  10. package/dist/commands/compact.js.map +1 -1
  11. package/dist/commands/context.js +3 -1
  12. package/dist/commands/context.js.map +2 -2
  13. package/dist/commands/login.js +128 -0
  14. package/dist/commands/login.js.map +7 -0
  15. package/dist/commands/memory.js +33 -82
  16. package/dist/commands/memory.js.map +2 -2
  17. package/dist/commands/quit.js +3 -1
  18. package/dist/commands/quit.js.map +2 -2
  19. package/dist/commands/resume.js +39 -239
  20. package/dist/commands/resume.js.map +2 -2
  21. package/dist/commands/tasks.js +1 -1
  22. package/dist/commands/tasks.js.map +2 -2
  23. package/dist/commands/terminalSetup.js +6 -2
  24. package/dist/commands/terminalSetup.js.map +2 -2
  25. package/dist/commands.js +2 -0
  26. package/dist/commands.js.map +2 -2
  27. package/dist/components/AgentDetailView.js +126 -0
  28. package/dist/components/AgentDetailView.js.map +7 -0
  29. package/dist/components/AgentThinkingBlock.js +1 -1
  30. package/dist/components/AgentThinkingBlock.js.map +2 -2
  31. package/dist/components/AgentViewBanner.js +22 -0
  32. package/dist/components/AgentViewBanner.js.map +7 -0
  33. package/dist/components/HeaderBar.js +1 -1
  34. package/dist/components/HeaderBar.js.map +2 -2
  35. package/dist/components/Help.js +8 -1
  36. package/dist/components/Help.js.map +2 -2
  37. package/dist/components/HotkeyHelpPanel.js +26 -8
  38. package/dist/components/HotkeyHelpPanel.js.map +2 -2
  39. package/dist/components/IdleNotificationBar.js +10 -0
  40. package/dist/components/IdleNotificationBar.js.map +7 -0
  41. package/dist/components/ModelSelector/ModelSelector.js +55 -20
  42. package/dist/components/ModelSelector/ModelSelector.js.map +2 -2
  43. package/dist/components/PromptInput.js +186 -115
  44. package/dist/components/PromptInput.js.map +2 -2
  45. package/dist/components/RewindPanel.js +272 -0
  46. package/dist/components/RewindPanel.js.map +7 -0
  47. package/dist/components/Spinner.js +10 -21
  48. package/dist/components/Spinner.js.map +2 -2
  49. package/dist/components/StreamingTextPreview.js +29 -0
  50. package/dist/components/StreamingTextPreview.js.map +7 -0
  51. package/dist/components/SubagentBlock.js +3 -2
  52. package/dist/components/SubagentBlock.js.map +2 -2
  53. package/dist/components/SubagentProgress.js +4 -4
  54. package/dist/components/SubagentProgress.js.map +2 -2
  55. package/dist/components/TabbedListView/SearchInput.js +1 -1
  56. package/dist/components/TabbedListView/SearchInput.js.map +2 -2
  57. package/dist/components/TabbedListView/TabbedListView.js +87 -41
  58. package/dist/components/TabbedListView/TabbedListView.js.map +2 -2
  59. package/dist/components/TaskCard.js +4 -4
  60. package/dist/components/TaskCard.js.map +2 -2
  61. package/dist/components/TeamMemberPanel.js +107 -0
  62. package/dist/components/TeamMemberPanel.js.map +7 -0
  63. package/dist/components/ThinkingSelector.js +84 -0
  64. package/dist/components/ThinkingSelector.js.map +7 -0
  65. package/dist/components/TitledDivider.js +26 -0
  66. package/dist/components/TitledDivider.js.map +7 -0
  67. package/dist/components/TodoPanel.js +31 -30
  68. package/dist/components/TodoPanel.js.map +2 -2
  69. package/dist/components/TokenWarning.js +28 -7
  70. package/dist/components/TokenWarning.js.map +2 -2
  71. package/dist/components/messages/AssistantTextMessage.js +5 -2
  72. package/dist/components/messages/AssistantTextMessage.js.map +2 -2
  73. package/dist/components/messages/AssistantToolUseMessage.js +9 -1
  74. package/dist/components/messages/AssistantToolUseMessage.js.map +2 -2
  75. package/dist/components/messages/DefaultToolResultFallback.js +11 -0
  76. package/dist/components/messages/DefaultToolResultFallback.js.map +7 -0
  77. package/dist/components/messages/ParallelTasksGroupView.js +14 -6
  78. package/dist/components/messages/ParallelTasksGroupView.js.map +2 -2
  79. package/dist/components/messages/TaskInModuleView.js +27 -27
  80. package/dist/components/messages/TaskInModuleView.js.map +2 -2
  81. package/dist/components/messages/UserGuidanceMessage.js +26 -0
  82. package/dist/components/messages/UserGuidanceMessage.js.map +7 -0
  83. package/dist/components/messages/UserPromptMessage.js +2 -1
  84. package/dist/components/messages/UserPromptMessage.js.map +2 -2
  85. package/dist/components/messages/UserTeamNotificationMessage.js +91 -0
  86. package/dist/components/messages/UserTeamNotificationMessage.js.map +7 -0
  87. package/dist/components/messages/UserTextMessage.js +8 -0
  88. package/dist/components/messages/UserTextMessage.js.map +2 -2
  89. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js +4 -2
  90. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js.map +2 -2
  91. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js +18 -1
  92. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js.map +2 -2
  93. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +12 -1
  94. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +2 -2
  95. package/dist/components/permissions/PermissionRequest.js +4 -0
  96. package/dist/components/permissions/PermissionRequest.js.map +2 -2
  97. package/dist/components/permissions/PlanApprovalRequest.js +164 -0
  98. package/dist/components/permissions/PlanApprovalRequest.js.map +7 -0
  99. package/dist/constants/agentTeams.js +17 -0
  100. package/dist/constants/agentTeams.js.map +7 -0
  101. package/dist/constants/macros.js +2 -1
  102. package/dist/constants/macros.js.map +2 -2
  103. package/dist/constants/prompts/agentPrompt.js +1 -0
  104. package/dist/constants/prompts/agentPrompt.js.map +2 -2
  105. package/dist/constants/prompts/autoMemory.js +39 -0
  106. package/dist/constants/prompts/autoMemory.js.map +7 -0
  107. package/dist/constants/prompts/codeConventions.js +1 -13
  108. package/dist/constants/prompts/codeConventions.js.map +2 -2
  109. package/dist/constants/prompts/doingTasks.js +21 -2
  110. package/dist/constants/prompts/doingTasks.js.map +2 -2
  111. package/dist/constants/prompts/envInfo.js +6 -7
  112. package/dist/constants/prompts/envInfo.js.map +2 -2
  113. package/dist/constants/prompts/index.js +27 -5
  114. package/dist/constants/prompts/index.js.map +2 -2
  115. package/dist/constants/prompts/taskManagement.js +2 -43
  116. package/dist/constants/prompts/taskManagement.js.map +2 -2
  117. package/dist/constants/prompts/teamOverlays.js +50 -0
  118. package/dist/constants/prompts/teamOverlays.js.map +7 -0
  119. package/dist/constants/prompts/toneAndStyle.js +4 -29
  120. package/dist/constants/prompts/toneAndStyle.js.map +2 -2
  121. package/dist/constants/prompts/toolUsagePolicy.js +7 -22
  122. package/dist/constants/prompts/toolUsagePolicy.js.map +2 -2
  123. package/dist/constants/toolInputExamples.js +2 -2
  124. package/dist/constants/toolInputExamples.js.map +2 -2
  125. package/dist/context.js +39 -6
  126. package/dist/context.js.map +2 -2
  127. package/dist/core/backupManager.js +1 -1
  128. package/dist/core/backupManager.js.map +2 -2
  129. package/dist/core/permissions/rules/planModeRule.js +1 -1
  130. package/dist/core/permissions/rules/planModeRule.js.map +1 -1
  131. package/dist/core/permissions/rules/safeModeRule.js +1 -1
  132. package/dist/core/permissions/rules/safeModeRule.js.map +1 -1
  133. package/dist/engine/AgentEngine.js +902 -0
  134. package/dist/engine/AgentEngine.js.map +7 -0
  135. package/dist/engine/EngineRegistry.js +89 -0
  136. package/dist/engine/EngineRegistry.js.map +7 -0
  137. package/dist/engine/foregroundAdapter.js +191 -0
  138. package/dist/engine/foregroundAdapter.js.map +7 -0
  139. package/dist/engine/index.js +15 -0
  140. package/dist/engine/index.js.map +7 -0
  141. package/dist/engine/types.js +1 -0
  142. package/dist/engine/types.js.map +7 -0
  143. package/dist/entrypoints/cli.js +410 -79
  144. package/dist/entrypoints/cli.js.map +3 -3
  145. package/dist/hooks/useAgentEngine.js +129 -0
  146. package/dist/hooks/useAgentEngine.js.map +7 -0
  147. package/dist/hooks/useAgentTokenStats.js +0 -16
  148. package/dist/hooks/useAgentTokenStats.js.map +2 -2
  149. package/dist/hooks/useCanUseTool.js +47 -2
  150. package/dist/hooks/useCanUseTool.js.map +2 -2
  151. package/dist/hooks/useDeferredLoading.js +4 -1
  152. package/dist/hooks/useDeferredLoading.js.map +2 -2
  153. package/dist/hooks/useIdleNotifications.js +66 -0
  154. package/dist/hooks/useIdleNotifications.js.map +7 -0
  155. package/dist/hooks/useSessionTracking.js +9 -7
  156. package/dist/hooks/useSessionTracking.js.map +2 -2
  157. package/dist/hooks/useTeamMembers.js +51 -0
  158. package/dist/hooks/useTeamMembers.js.map +7 -0
  159. package/dist/i18n/locales/en.js +77 -12
  160. package/dist/i18n/locales/en.js.map +2 -2
  161. package/dist/i18n/locales/zh-CN.js +77 -12
  162. package/dist/i18n/locales/zh-CN.js.map +2 -2
  163. package/dist/i18n/types.js.map +1 -1
  164. package/dist/messages.js.map +2 -2
  165. package/dist/permissions.js +113 -7
  166. package/dist/permissions.js.map +2 -2
  167. package/dist/query.js +135 -37
  168. package/dist/query.js.map +2 -2
  169. package/dist/screens/REPL.js +504 -361
  170. package/dist/screens/REPL.js.map +3 -3
  171. package/dist/screens/ResumeConversation.js +199 -14
  172. package/dist/screens/ResumeConversation.js.map +2 -2
  173. package/dist/services/adapters/base.js.map +1 -1
  174. package/dist/services/agentTeams/backends/headless.js +108 -0
  175. package/dist/services/agentTeams/backends/headless.js.map +7 -0
  176. package/dist/services/agentTeams/backends/inProcess.js +102 -0
  177. package/dist/services/agentTeams/backends/inProcess.js.map +7 -0
  178. package/dist/services/agentTeams/backends/resolver.js +18 -0
  179. package/dist/services/agentTeams/backends/resolver.js.map +7 -0
  180. package/dist/services/agentTeams/backends/tmux.js +168 -0
  181. package/dist/services/agentTeams/backends/tmux.js.map +7 -0
  182. package/dist/services/agentTeams/backends/types.js +1 -0
  183. package/dist/services/agentTeams/backends/types.js.map +7 -0
  184. package/dist/services/agentTeams/heartbeat.js +88 -0
  185. package/dist/services/agentTeams/heartbeat.js.map +7 -0
  186. package/dist/services/agentTeams/index.js +42 -2
  187. package/dist/services/agentTeams/index.js.map +2 -2
  188. package/dist/services/agentTeams/injectionChannel.js +105 -0
  189. package/dist/services/agentTeams/injectionChannel.js.map +7 -0
  190. package/dist/services/agentTeams/mailbox.js +410 -30
  191. package/dist/services/agentTeams/mailbox.js.map +2 -2
  192. package/dist/services/agentTeams/messageFormatter.js +80 -0
  193. package/dist/services/agentTeams/messageFormatter.js.map +7 -0
  194. package/dist/services/agentTeams/permissionDelegation.js +71 -0
  195. package/dist/services/agentTeams/permissionDelegation.js.map +7 -0
  196. package/dist/services/agentTeams/teamEvents.js +45 -0
  197. package/dist/services/agentTeams/teamEvents.js.map +7 -0
  198. package/dist/services/agentTeams/teamManager.js +251 -34
  199. package/dist/services/agentTeams/teamManager.js.map +2 -2
  200. package/dist/services/agentTeams/teamTaskStore.js +290 -61
  201. package/dist/services/agentTeams/teamTaskStore.js.map +2 -2
  202. package/dist/services/agentTeams/teammateSpawner.js +99 -18
  203. package/dist/services/agentTeams/teammateSpawner.js.map +2 -2
  204. package/dist/services/hookExecutor.js +51 -8
  205. package/dist/services/hookExecutor.js.map +2 -2
  206. package/dist/services/llm/anthropicProvider.js +56 -59
  207. package/dist/services/llm/anthropicProvider.js.map +2 -2
  208. package/dist/services/llm/dispatch.js +24 -5
  209. package/dist/services/llm/dispatch.js.map +2 -2
  210. package/dist/services/llm/openaiProvider.js +115 -136
  211. package/dist/services/llm/openaiProvider.js.map +3 -3
  212. package/dist/services/llm/types.js +89 -15
  213. package/dist/services/llm/types.js.map +2 -2
  214. package/dist/services/mcpClient.js +80 -4
  215. package/dist/services/mcpClient.js.map +2 -2
  216. package/dist/services/mintoAuth.js +299 -0
  217. package/dist/services/mintoAuth.js.map +7 -0
  218. package/dist/services/oauth.js +3 -3
  219. package/dist/services/oauth.js.map +2 -2
  220. package/dist/services/openai.js +91 -20
  221. package/dist/services/openai.js.map +2 -2
  222. package/dist/services/plugins/pluginRuntime.js +11 -5
  223. package/dist/services/plugins/pluginRuntime.js.map +2 -2
  224. package/dist/services/plugins/pluginValidation.js +4 -2
  225. package/dist/services/plugins/pluginValidation.js.map +2 -2
  226. package/dist/services/sandbox/sandboxController.js +11 -3
  227. package/dist/services/sandbox/sandboxController.js.map +2 -2
  228. package/dist/services/sessionMemoryInjector.js +77 -0
  229. package/dist/services/sessionMemoryInjector.js.map +7 -0
  230. package/dist/services/systemReminder.js +130 -8
  231. package/dist/services/systemReminder.js.map +2 -2
  232. package/dist/services/taskStore.js +199 -8
  233. package/dist/services/taskStore.js.map +3 -3
  234. package/dist/services/topicDetector.js +169 -0
  235. package/dist/services/topicDetector.js.map +7 -0
  236. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +0 -13
  237. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +2 -2
  238. package/dist/tools/BashTool/BashTool.js +51 -28
  239. package/dist/tools/BashTool/BashTool.js.map +2 -2
  240. package/dist/tools/BashTool/prompt.js +95 -118
  241. package/dist/tools/BashTool/prompt.js.map +2 -2
  242. package/dist/tools/BashTool/utils.js +39 -1
  243. package/dist/tools/BashTool/utils.js.map +2 -2
  244. package/dist/tools/EnterWorktreeTool/EnterWorktreeTool.js +121 -0
  245. package/dist/tools/EnterWorktreeTool/EnterWorktreeTool.js.map +7 -0
  246. package/dist/tools/EnterWorktreeTool/prompt.js +22 -0
  247. package/dist/tools/EnterWorktreeTool/prompt.js.map +7 -0
  248. package/dist/tools/FileEditTool/FileEditTool.js +9 -4
  249. package/dist/tools/FileEditTool/FileEditTool.js.map +2 -2
  250. package/dist/tools/FileEditTool/prompt.js +3 -7
  251. package/dist/tools/FileEditTool/prompt.js.map +2 -2
  252. package/dist/tools/FileReadTool/FileReadTool.js +125 -3
  253. package/dist/tools/FileReadTool/FileReadTool.js.map +2 -2
  254. package/dist/tools/FileReadTool/prompt.js +1 -2
  255. package/dist/tools/FileReadTool/prompt.js.map +2 -2
  256. package/dist/tools/FileWriteTool/prompt.js +3 -5
  257. package/dist/tools/FileWriteTool/prompt.js.map +2 -2
  258. package/dist/tools/GlobTool/GlobTool.js +3 -2
  259. package/dist/tools/GlobTool/GlobTool.js.map +2 -2
  260. package/dist/tools/GrepTool/GrepTool.js +16 -5
  261. package/dist/tools/GrepTool/GrepTool.js.map +2 -2
  262. package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js.map +2 -2
  263. package/dist/tools/MCPSearchTool/MCPSearchTool.js +172 -0
  264. package/dist/tools/MCPSearchTool/MCPSearchTool.js.map +7 -0
  265. package/dist/tools/MCPSearchTool/prompt.js +77 -0
  266. package/dist/tools/MCPSearchTool/prompt.js.map +7 -0
  267. package/dist/tools/MultiEditTool/prompt.js +4 -7
  268. package/dist/tools/MultiEditTool/prompt.js.map +2 -2
  269. package/dist/tools/PlanModeTool/EnterPlanModeTool.js +12 -8
  270. package/dist/tools/PlanModeTool/EnterPlanModeTool.js.map +2 -2
  271. package/dist/tools/PlanModeTool/ExitPlanModeTool.js +54 -1
  272. package/dist/tools/PlanModeTool/ExitPlanModeTool.js.map +2 -2
  273. package/dist/tools/PlanModeTool/prompt.js +23 -74
  274. package/dist/tools/PlanModeTool/prompt.js.map +2 -2
  275. package/dist/tools/SendMessageTool/SendMessageTool.js +341 -0
  276. package/dist/tools/SendMessageTool/SendMessageTool.js.map +7 -0
  277. package/dist/tools/SendMessageTool/prompt.js +44 -0
  278. package/dist/tools/SendMessageTool/prompt.js.map +7 -0
  279. package/dist/tools/TaskCreateTool/prompt.js +15 -4
  280. package/dist/tools/TaskCreateTool/prompt.js.map +2 -2
  281. package/dist/tools/TaskListTool/prompt.js +18 -3
  282. package/dist/tools/TaskListTool/prompt.js.map +2 -2
  283. package/dist/tools/TaskOutputTool/prompt.js +4 -3
  284. package/dist/tools/TaskOutputTool/prompt.js.map +2 -2
  285. package/dist/tools/TaskTool/TaskTool.js +762 -98
  286. package/dist/tools/TaskTool/TaskTool.js.map +3 -3
  287. package/dist/tools/TaskTool/constants.js +8 -2
  288. package/dist/tools/TaskTool/constants.js.map +2 -2
  289. package/dist/tools/TaskTool/prompt.js +74 -70
  290. package/dist/tools/TaskTool/prompt.js.map +2 -2
  291. package/dist/tools/TaskUpdateTool/TaskUpdateTool.js +15 -1
  292. package/dist/tools/TaskUpdateTool/TaskUpdateTool.js.map +2 -2
  293. package/dist/tools/TeamCreateTool/TeamCreateTool.js +129 -0
  294. package/dist/tools/TeamCreateTool/TeamCreateTool.js.map +7 -0
  295. package/dist/tools/TeamCreateTool/prompt.js +58 -0
  296. package/dist/tools/TeamCreateTool/prompt.js.map +7 -0
  297. package/dist/tools/TeamDeleteTool/TeamDeleteTool.js +151 -0
  298. package/dist/tools/TeamDeleteTool/TeamDeleteTool.js.map +7 -0
  299. package/dist/tools/TeamDeleteTool/prompt.js +16 -0
  300. package/dist/tools/TeamDeleteTool/prompt.js.map +7 -0
  301. package/dist/tools/URLFetcherTool/URLFetcherTool.js +106 -15
  302. package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +2 -2
  303. package/dist/tools/URLFetcherTool/prompt.js +3 -2
  304. package/dist/tools/URLFetcherTool/prompt.js.map +2 -2
  305. package/dist/tools/WebSearchTool/WebSearchTool.js +2 -1
  306. package/dist/tools/WebSearchTool/WebSearchTool.js.map +2 -2
  307. package/dist/tools/WebSearchTool/prompt.js +5 -4
  308. package/dist/tools/WebSearchTool/prompt.js.map +2 -2
  309. package/dist/tools.js +100 -20
  310. package/dist/tools.js.map +2 -2
  311. package/dist/types/PermissionMode.js +35 -6
  312. package/dist/types/PermissionMode.js.map +2 -2
  313. package/dist/types/hooks.js +2 -0
  314. package/dist/types/hooks.js.map +2 -2
  315. package/dist/types/plugin.js +2 -0
  316. package/dist/types/plugin.js.map +3 -3
  317. package/dist/utils/CircuitBreaker.js +15 -9
  318. package/dist/utils/CircuitBreaker.js.map +2 -2
  319. package/dist/utils/agentLoader.js +249 -112
  320. package/dist/utils/agentLoader.js.map +2 -2
  321. package/dist/utils/animationManager.js +40 -3
  322. package/dist/utils/animationManager.js.map +2 -2
  323. package/dist/utils/ask.js +7 -6
  324. package/dist/utils/ask.js.map +2 -2
  325. package/dist/utils/atomicWrite.js +23 -0
  326. package/dist/utils/atomicWrite.js.map +7 -0
  327. package/dist/utils/autoCompactCore.js +73 -56
  328. package/dist/utils/autoCompactCore.js.map +2 -2
  329. package/dist/utils/autoMemoryPaths.js +89 -0
  330. package/dist/utils/autoMemoryPaths.js.map +7 -0
  331. package/dist/utils/config.js +63 -38
  332. package/dist/utils/config.js.map +2 -2
  333. package/dist/utils/configSchema.js +13 -8
  334. package/dist/utils/configSchema.js.map +2 -2
  335. package/dist/utils/credentials/index.js +14 -0
  336. package/dist/utils/credentials/index.js.map +2 -2
  337. package/dist/utils/dualPath.js +24 -0
  338. package/dist/utils/dualPath.js.map +7 -0
  339. package/dist/utils/exit.js +66 -7
  340. package/dist/utils/exit.js.map +2 -2
  341. package/dist/utils/externalEditor.js +155 -0
  342. package/dist/utils/externalEditor.js.map +7 -0
  343. package/dist/utils/fileLock.js +67 -0
  344. package/dist/utils/fileLock.js.map +7 -0
  345. package/dist/utils/format.js +24 -14
  346. package/dist/utils/format.js.map +2 -2
  347. package/dist/utils/globalErrorHandler.js +5 -96
  348. package/dist/utils/globalErrorHandler.js.map +3 -3
  349. package/dist/utils/groupHandlers/parallelTasksHandler.js +5 -3
  350. package/dist/utils/groupHandlers/parallelTasksHandler.js.map +2 -2
  351. package/dist/utils/groupHandlers/taskHandler.js +2 -2
  352. package/dist/utils/groupHandlers/taskHandler.js.map +2 -2
  353. package/dist/utils/hookManager.js +64 -6
  354. package/dist/utils/hookManager.js.map +2 -2
  355. package/dist/utils/log.js +6 -2
  356. package/dist/utils/log.js.map +2 -2
  357. package/dist/utils/markdown.js +237 -19
  358. package/dist/utils/markdown.js.map +2 -2
  359. package/dist/utils/messageContextManager.js +18 -5
  360. package/dist/utils/messageContextManager.js.map +2 -2
  361. package/dist/utils/messageGroupManager.js +1 -1
  362. package/dist/utils/messageGroupManager.js.map +2 -2
  363. package/dist/utils/messages.js +104 -46
  364. package/dist/utils/messages.js.map +2 -2
  365. package/dist/utils/model.js +2 -2
  366. package/dist/utils/model.js.map +2 -2
  367. package/dist/utils/pasteCache.js +8 -4
  368. package/dist/utils/pasteCache.js.map +2 -2
  369. package/dist/utils/pluginLoader.js +18 -0
  370. package/dist/utils/pluginLoader.js.map +2 -2
  371. package/dist/utils/secureKeyStorage.js +36 -7
  372. package/dist/utils/secureKeyStorage.js.map +2 -2
  373. package/dist/utils/simpleMode.js +7 -0
  374. package/dist/utils/simpleMode.js.map +7 -0
  375. package/dist/utils/streamingState.js +11 -1
  376. package/dist/utils/streamingState.js.map +2 -2
  377. package/dist/utils/taskDisplayUtils.js +2 -1
  378. package/dist/utils/taskDisplayUtils.js.map +2 -2
  379. package/dist/utils/teamConfig.js +2 -2
  380. package/dist/utils/teamConfig.js.map +2 -2
  381. package/dist/utils/thinking.js +6 -2
  382. package/dist/utils/thinking.js.map +3 -3
  383. package/dist/utils/tokenProgress.js +55 -0
  384. package/dist/utils/tokenProgress.js.map +7 -0
  385. package/dist/utils/toolRiskClassification.js +26 -17
  386. package/dist/utils/toolRiskClassification.js.map +2 -2
  387. package/dist/utils/tooling/toolError.js +12 -0
  388. package/dist/utils/tooling/toolError.js.map +7 -0
  389. package/dist/version.js +2 -2
  390. package/dist/version.js.map +1 -1
  391. package/package.json +10 -8
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/toolRiskClassification.ts"],
4
- "sourcesContent": ["/**\n * Tool Risk Classification System\n *\n * Classifies tools into three risk levels for the Smart Safety Mode:\n * - safe: Read-only operations, no side effects\n * - monitored: Has side effects but reversible/low risk\n * - dangerous: Potentially destructive, requires confirmation\n */\n\nexport type RiskLevel = 'safe' | 'monitored' | 'dangerous'\n\n/**\n * Default risk levels for each tool type\n */\nexport const TOOL_RISK_LEVELS: Record<string, RiskLevel> = {\n // \uD83D\uDFE2 Safe layer: Read-only, no side effects\n Read: 'safe',\n Glob: 'safe',\n Grep: 'safe',\n LS: 'safe',\n WebSearch: 'safe',\n WebFetch: 'safe',\n Think: 'safe',\n AskUserQuestion: 'safe',\n MemoryRead: 'safe',\n NotebookRead: 'safe',\n TaskOutput: 'safe',\n EnterPlanMode: 'safe',\n ExitPlanMode: 'safe',\n TaskList: 'safe',\n TaskGet: 'safe',\n Skill: 'safe',\n\n // \uD83D\uDFE1 Monitored layer: Has side effects but reversible/low risk\n Edit: 'monitored',\n Write: 'monitored',\n NotebookEdit: 'monitored',\n MemoryWrite: 'monitored',\n TodoWrite: 'monitored',\n Task: 'monitored',\n TaskCreate: 'monitored',\n TaskUpdate: 'monitored',\n TaskStop: 'monitored',\n\n // \uD83D\uDD34 Dangerous layer: Requires confirmation (Bash handled separately)\n Bash: 'dangerous',\n MCPTool: 'dangerous',\n}\n\n/**\n * Safe Bash command patterns - automatically allowed even in Smart/Strict mode\n * These patterns match common development commands that are low-risk\n */\nexport const SAFE_BASH_PATTERNS: RegExp[] = [\n // Git - all common operations\n /^git\\s+(status|diff|log|branch|show|remote|fetch|pull|push|commit|add|checkout|merge|rebase|stash|tag|clone|init|config|rev-parse|symbolic-ref)/i,\n\n // File viewing (read-only)\n /^ls(\\s|$)/i,\n /^cat\\s/i,\n /^head\\s/i,\n /^tail\\s/i,\n /^pwd$/i,\n /^echo\\s/i,\n /^which\\s/i,\n /^tree(\\s|$)/i,\n /^date$/i,\n /^whoami$/i,\n /^find\\s/i,\n /^wc\\s/i,\n /^grep\\s/i,\n /^rg\\s/i,\n /^less\\s/i,\n /^more\\s/i,\n /^file\\s/i,\n /^stat\\s/i,\n /^du\\s/i,\n /^df\\s/i,\n\n // Package managers - common development operations\n /^npm\\s+(install|i|ci|run|test|start|build|list|ls|outdated|view|info|init|publish|pack|version|audit|dedupe)/i,\n /^npx\\s/i,\n /^bun\\s+(install|i|add|remove|run|test|build|pm|create|init|link|unlink|update|outdated)/i,\n /^bunx\\s/i,\n /^yarn\\s+(install|add|remove|run|test|build|init|create|link|unlink|upgrade|outdated)/i,\n /^pnpm\\s+(install|i|add|remove|run|test|build|init|create|link|unlink|update|outdated)/i,\n /^pip\\s+(install|list|show|freeze|check)/i,\n /^pip3\\s+(install|list|show|freeze|check)/i,\n /^poetry\\s+(install|add|remove|run|build|init|check|show)/i,\n /^cargo\\s+(build|run|test|check|clippy|fmt|doc|bench|new|init|add|remove)/i,\n /^go\\s+(build|run|test|get|mod|fmt|vet|generate)/i,\n /^composer\\s+(install|require|remove|update|dump-autoload)/i,\n /^gem\\s+(install|list|update)/i,\n /^bundle\\s+(install|exec|update)/i,\n\n // Version queries\n /^(node|npm|bun|yarn|pnpm|python|python3|pip|pip3|cargo|rustc|go|java|ruby|php)\\s+(--version|-v|-V)$/i,\n /^(node|npm|bun|yarn|pnpm|python|python3|pip|pip3|cargo|rustc|go|java|ruby|php)\\s+-version$/i,\n\n // Build and test tools\n /^make(\\s|$)/i,\n /^cmake\\s/i,\n /^ninja(\\s|$)/i,\n /^pytest(\\s|$)/i,\n /^jest(\\s|$)/i,\n /^vitest(\\s|$)/i,\n /^mocha(\\s|$)/i,\n /^ava(\\s|$)/i,\n /^tape(\\s|$)/i,\n /^tap(\\s|$)/i,\n /^tsc(\\s|$)/i,\n /^eslint(\\s|$)/i,\n /^prettier(\\s|$)/i,\n /^biome(\\s|$)/i,\n\n // Docker (read-only and common operations)\n /^docker\\s+(ps|images|logs|inspect|version|info|stats|top|port|diff)/i,\n /^docker\\s+(build|run|exec|pull|push|start|stop|restart)/i,\n /^docker-compose\\s+(ps|logs|config|up|down|build|pull|restart)/i,\n\n // Kubernetes (read-only)\n /^kubectl\\s+(get|describe|logs|explain|version|config|cluster-info)/i,\n\n // Process viewing\n /^ps(\\s|$)/i,\n /^top$/i,\n /^htop$/i,\n\n // Network diagnostics (read-only)\n /^ping\\s/i,\n /^traceroute\\s/i,\n /^dig\\s/i,\n /^nslookup\\s/i,\n /^host\\s/i,\n /^ifconfig$/i,\n /^ip\\s+(addr|link|route)/i,\n\n // Archive viewing\n /^tar\\s+(-t|--list)/i,\n /^unzip\\s+-l/i,\n /^zipinfo\\s/i,\n\n // Text processing\n /^sort(\\s|$)/i,\n /^uniq(\\s|$)/i,\n /^cut(\\s|$)/i,\n /^awk\\s/i,\n /^sed\\s/i,\n /^tr\\s/i,\n /^diff\\s/i,\n /^md5sum\\s/i,\n /^sha256sum\\s/i,\n\n // Directory operations (safe)\n /^mkdir\\s/i,\n /^touch\\s/i,\n /^cp\\s/i,\n /^mv\\s/i,\n]\n\n/**\n * Dangerous Bash command patterns - always require confirmation\n * These patterns match potentially destructive commands\n */\nexport const DANGEROUS_BASH_PATTERNS: RegExp[] = [\n // File deletion\n /\\brm\\s/i,\n /\\brmdir\\s/i,\n /\\bunlink\\s/i,\n\n // Privilege escalation\n /\\bsudo\\s/i,\n /\\bsu\\s/i,\n /\\bdoas\\s/i,\n /\\bpkexec\\s/i,\n\n // Permission changes\n /\\bchmod\\s/i,\n /\\bchown\\s/i,\n /\\bchgrp\\s/i,\n\n // Disk operations\n /\\bmkfs\\b/i,\n /\\bfdisk\\s/i,\n /\\bparted\\s/i,\n /\\bdd\\s+if=/i,\n /\\bshred\\s/i,\n\n // System control\n /\\bsystemctl\\s/i,\n /\\bservice\\s/i,\n /\\breboot\\b/i,\n /\\bshutdown\\s/i,\n /\\bhalt\\b/i,\n /\\bpoweroff\\b/i,\n\n // Dangerous redirections\n />\\s*\\/(?!tmp|dev\\/null)/i, // Redirect to root paths (except /tmp and /dev/null)\n />\\s*~\\//i, // Redirect to home directory paths\n\n // Shell execution from network\n /\\|\\s*(bash|sh|zsh|fish)/i,\n /curl.*\\|\\s*(bash|sh)/i,\n /wget.*\\|\\s*(bash|sh)/i,\n\n // Environment destruction\n /\\bkillall\\s/i,\n /\\bpkill\\s/i,\n /kill\\s+-9/i,\n\n // Network dangerous\n /\\bnc\\s+-l/i, // netcat listen mode\n /\\biptables\\s/i,\n /\\bufw\\s/i,\n\n // Crontab\n /\\bcrontab\\s+-r/i,\n\n // Git destructive\n /\\bgit\\s+(reset\\s+--hard|clean\\s+-f|push\\s+--force|push\\s+-f)/i,\n]\n\n/**\n * Classify a Bash command into a risk level\n *\n * @param command The bash command to classify\n * @returns The risk level of the command\n */\nexport function classifyBashCommand(command: string): RiskLevel {\n // Trim and normalize whitespace\n const normalizedCommand = command.trim().replace(/\\s+/g, ' ')\n\n // Check dangerous patterns first (higher priority)\n if (DANGEROUS_BASH_PATTERNS.some(p => p.test(normalizedCommand))) {\n return 'dangerous'\n }\n\n // Check safe patterns\n if (SAFE_BASH_PATTERNS.some(p => p.test(normalizedCommand))) {\n return 'safe'\n }\n\n // Default to monitored (allows in Smart mode, asks in Strict mode)\n return 'monitored'\n}\n\n/**\n * Get the risk level for a tool\n *\n * @param toolName The name of the tool\n * @param input Optional tool input for command-specific classification\n * @returns The risk level of the tool\n */\nexport function getToolRiskLevel(\n toolName: string,\n input?: { command?: string },\n): RiskLevel {\n // Special handling for Bash commands\n if (toolName === 'Bash' && input?.command) {\n return classifyBashCommand(input.command)\n }\n\n // Look up in the static table\n return TOOL_RISK_LEVELS[toolName] ?? 'dangerous'\n}\n"],
5
- "mappings": "AAcO,MAAM,mBAA8C;AAAA;AAAA,EAEzD,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,IAAI;AAAA,EACJ,WAAW;AAAA,EACX,UAAU;AAAA,EACV,OAAO;AAAA,EACP,iBAAiB;AAAA,EACjB,YAAY;AAAA,EACZ,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,eAAe;AAAA,EACf,cAAc;AAAA,EACd,UAAU;AAAA,EACV,SAAS;AAAA,EACT,OAAO;AAAA;AAAA,EAGP,MAAM;AAAA,EACN,OAAO;AAAA,EACP,cAAc;AAAA,EACd,aAAa;AAAA,EACb,WAAW;AAAA,EACX,MAAM;AAAA,EACN,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,UAAU;AAAA;AAAA,EAGV,MAAM;AAAA,EACN,SAAS;AACX;AAMO,MAAM,qBAA+B;AAAA;AAAA,EAE1C;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAMO,MAAM,0BAAoC;AAAA;AAAA,EAE/C;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EACA;AAAA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAGA;AAAA;AAAA,EAGA;AACF;AAQO,SAAS,oBAAoB,SAA4B;AAE9D,QAAM,oBAAoB,QAAQ,KAAK,EAAE,QAAQ,QAAQ,GAAG;AAG5D,MAAI,wBAAwB,KAAK,OAAK,EAAE,KAAK,iBAAiB,CAAC,GAAG;AAChE,WAAO;AAAA,EACT;AAGA,MAAI,mBAAmB,KAAK,OAAK,EAAE,KAAK,iBAAiB,CAAC,GAAG;AAC3D,WAAO;AAAA,EACT;AAGA,SAAO;AACT;AASO,SAAS,iBACd,UACA,OACW;AAEX,MAAI,aAAa,UAAU,OAAO,SAAS;AACzC,WAAO,oBAAoB,MAAM,OAAO;AAAA,EAC1C;AAGA,SAAO,iBAAiB,QAAQ,KAAK;AACvC;",
4
+ "sourcesContent": ["/**\n * Tool Risk Classification System\n *\n * Classifies tools into three risk levels for the Smart Safety Mode:\n * - safe: Read-only operations, no side effects\n * - monitored: Has side effects but reversible/low risk\n * - dangerous: Potentially destructive, requires confirmation\n */\n\nexport type RiskLevel = 'safe' | 'monitored' | 'dangerous'\n\n/**\n * Default risk levels for each tool type\n */\nexport const TOOL_RISK_LEVELS: Record<string, RiskLevel> = {\n // \uD83D\uDFE2 Safe layer: Read-only, no side effects\n Read: 'safe',\n Glob: 'safe',\n Grep: 'safe',\n LS: 'safe',\n WebSearch: 'safe',\n WebFetch: 'safe',\n Think: 'safe',\n AskUserQuestion: 'safe',\n MemoryRead: 'safe',\n NotebookRead: 'safe',\n TaskOutput: 'safe',\n EnterPlanMode: 'safe',\n ExitPlanMode: 'safe',\n TaskList: 'safe',\n TaskGet: 'safe',\n Skill: 'safe',\n\n // \uD83D\uDFE1 Monitored layer: Has side effects but reversible/low risk\n Edit: 'monitored',\n Write: 'monitored',\n NotebookEdit: 'monitored',\n MemoryWrite: 'monitored',\n TodoWrite: 'monitored',\n Task: 'monitored',\n TaskCreate: 'monitored',\n TaskUpdate: 'monitored',\n TaskStop: 'monitored',\n\n // \uD83D\uDD34 Dangerous layer: Requires confirmation (Bash handled separately)\n Bash: 'dangerous',\n MCPTool: 'dangerous',\n}\n\n/**\n * Safe Bash command patterns - automatically allowed even in Smart/Strict mode\n * These patterns match common development commands that are low-risk\n */\nexport const SAFE_BASH_PATTERNS: RegExp[] = [\n // Git - read-only operations (safe)\n /^git\\s+(status|diff|log|branch|show|remote|fetch|rev-parse|symbolic-ref)/i,\n\n // File viewing (read-only)\n /^ls(\\s|$)/i,\n /^cat\\s/i,\n /^head\\s/i,\n /^tail\\s/i,\n /^pwd$/i,\n /^echo\\s/i,\n /^which\\s/i,\n /^tree(\\s|$)/i,\n /^date$/i,\n /^whoami$/i,\n /^find\\s/i,\n /^wc\\s/i,\n /^grep\\s/i,\n /^rg\\s/i,\n /^less\\s/i,\n /^more\\s/i,\n /^file\\s/i,\n /^stat\\s/i,\n /^du\\s/i,\n /^df\\s/i,\n\n // Package managers - common development operations (npx/bunx moved to monitored)\n /^npm\\s+(install|i|ci|run|test|start|build|list|ls|outdated|view|info|init|publish|pack|version|audit|dedupe)/i,\n /^bun\\s+(install|i|add|remove|run|test|build|pm|create|init|link|unlink|update|outdated)/i,\n /^yarn\\s+(install|add|remove|run|test|build|init|create|link|unlink|upgrade|outdated)/i,\n /^pnpm\\s+(install|i|add|remove|run|test|build|init|create|link|unlink|update|outdated)/i,\n /^pip\\s+(install|list|show|freeze|check)/i,\n /^pip3\\s+(install|list|show|freeze|check)/i,\n /^poetry\\s+(install|add|remove|run|build|init|check|show)/i,\n /^cargo\\s+(build|run|test|check|clippy|fmt|doc|bench|new|init|add|remove)/i,\n /^go\\s+(build|run|test|get|mod|fmt|vet|generate)/i,\n /^composer\\s+(install|require|remove|update|dump-autoload)/i,\n /^gem\\s+(install|list|update)/i,\n /^bundle\\s+(install|exec|update)/i,\n\n // Version queries\n /^(node|npm|bun|yarn|pnpm|python|python3|pip|pip3|cargo|rustc|go|java|ruby|php)\\s+(--version|-v|-V)$/i,\n /^(node|npm|bun|yarn|pnpm|python|python3|pip|pip3|cargo|rustc|go|java|ruby|php)\\s+-version$/i,\n\n // Test tools (make/cmake/ninja moved to monitored \u2014 can execute arbitrary code)\n /^pytest(\\s|$)/i,\n /^jest(\\s|$)/i,\n /^vitest(\\s|$)/i,\n /^mocha(\\s|$)/i,\n /^ava(\\s|$)/i,\n /^tape(\\s|$)/i,\n /^tap(\\s|$)/i,\n /^tsc(\\s|$)/i,\n /^eslint(\\s|$)/i,\n /^prettier(\\s|$)/i,\n /^biome(\\s|$)/i,\n\n // Docker (read-only only \u2014 mutating commands moved to monitored)\n /^docker\\s+(ps|images|logs|inspect|version|info|stats|top|port|diff)/i,\n /^docker\\s+(build|pull)/i,\n /^docker-compose\\s+(ps|logs|config)/i,\n\n // Kubernetes (read-only)\n /^kubectl\\s+(get|describe|logs|explain|version|config|cluster-info)/i,\n\n // Process viewing\n /^ps(\\s|$)/i,\n /^top$/i,\n /^htop$/i,\n\n // Network diagnostics (read-only)\n /^ping\\s/i,\n /^traceroute\\s/i,\n /^dig\\s/i,\n /^nslookup\\s/i,\n /^host\\s/i,\n /^ifconfig$/i,\n /^ip\\s+(addr|link|route)/i,\n\n // Archive viewing\n /^tar\\s+(-t|--list)/i,\n /^unzip\\s+-l/i,\n /^zipinfo\\s/i,\n\n // Text processing\n /^sort(\\s|$)/i,\n /^uniq(\\s|$)/i,\n /^cut(\\s|$)/i,\n /^tr\\s/i,\n /^diff\\s/i,\n /^md5sum\\s/i,\n /^sha256sum\\s/i,\n\n // Directory operations (safe creation; cp/mv moved to monitored)\n /^mkdir\\s/i,\n /^touch\\s/i,\n]\n\n/**\n * Monitored Bash command patterns - logged but auto-allowed in Smart mode,\n * require confirmation in Strict mode. Covers mutating but non-destructive commands.\n */\nexport const MONITORED_BASH_PATTERNS: RegExp[] = [\n // Git - mutating operations\n /^git\\s+(commit|add|checkout|merge|rebase|stash|tag|push|pull|clone|init|config)/i,\n // Package runner / arbitrary code execution\n /^npx\\s/i,\n /^bunx\\s/i,\n // Build tools (can execute arbitrary code via Makefiles, etc.)\n /^make(\\s|$)/i,\n /^cmake\\s/i,\n /^ninja(\\s|$)/i,\n // File copy/move\n /^cp\\s/i,\n /^mv\\s/i,\n // Docker mutating operations\n /^docker\\s+(start|stop|restart|push)/i,\n /^docker-compose\\s+(up|down|build|pull|restart)/i,\n]\n\n/**\n * Dangerous Bash command patterns - always require confirmation\n * These patterns match potentially destructive commands\n */\nexport const DANGEROUS_BASH_PATTERNS: RegExp[] = [\n // File deletion\n /\\brm\\s/i,\n /\\brmdir\\s/i,\n /\\bunlink\\s/i,\n\n // Privilege escalation\n /\\bsudo\\s/i,\n /\\bsu\\s/i,\n /\\bdoas\\s/i,\n /\\bpkexec\\s/i,\n\n // Permission changes\n /\\bchmod\\s/i,\n /\\bchown\\s/i,\n /\\bchgrp\\s/i,\n\n // Disk operations\n /\\bmkfs\\b/i,\n /\\bfdisk\\s/i,\n /\\bparted\\s/i,\n /\\bdd\\s+if=/i,\n /\\bshred\\s/i,\n\n // System control\n /\\bsystemctl\\s/i,\n /\\bservice\\s/i,\n /\\breboot\\b/i,\n /\\bshutdown\\s/i,\n /\\bhalt\\b/i,\n /\\bpoweroff\\b/i,\n\n // Dangerous redirections\n />\\s*\\/(?!tmp|dev\\/null)/i, // Redirect to root paths (except /tmp and /dev/null)\n />\\s*~\\//i, // Redirect to home directory paths\n\n // Shell execution from network\n /\\|\\s*(bash|sh|zsh|fish)/i,\n /curl.*\\|\\s*(bash|sh)/i,\n /wget.*\\|\\s*(bash|sh)/i,\n\n // Environment destruction\n /\\bkillall\\s/i,\n /\\bpkill\\s/i,\n /kill\\s+-9/i,\n\n // Network dangerous\n /\\bnc\\s+-l/i, // netcat listen mode\n /\\biptables\\s/i,\n /\\bufw\\s/i,\n\n // Crontab\n /\\bcrontab\\s+-r/i,\n\n // Git destructive\n /\\bgit\\s+(reset\\s+--hard|clean\\s+-f|push\\s+--force|push\\s+-f)/i,\n]\n\n/**\n * Classify a Bash command into a risk level\n *\n * @param command The bash command to classify\n * @returns The risk level of the command\n */\nexport function classifyBashCommand(command: string): RiskLevel {\n // Trim and normalize whitespace\n const normalizedCommand = command.trim().replace(/\\s+/g, ' ')\n\n // Check dangerous patterns first (higher priority)\n if (DANGEROUS_BASH_PATTERNS.some(p => p.test(normalizedCommand))) {\n return 'dangerous'\n }\n\n // Check safe patterns\n if (SAFE_BASH_PATTERNS.some(p => p.test(normalizedCommand))) {\n return 'safe'\n }\n\n // Default to monitored (allows in Smart mode, asks in Strict mode)\n return 'monitored'\n}\n\n/**\n * Get the risk level for a tool\n *\n * @param toolName The name of the tool\n * @param input Optional tool input for command-specific classification\n * @returns The risk level of the tool\n */\nexport function getToolRiskLevel(\n toolName: string,\n input?: { command?: string },\n): RiskLevel {\n // Special handling for Bash commands\n if (toolName === 'Bash' && input?.command) {\n return classifyBashCommand(input.command)\n }\n\n // Look up in the static table\n return TOOL_RISK_LEVELS[toolName] ?? 'dangerous'\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,12 @@
1
+ function createToolErrorResult(error, prefix) {
2
+ const errorMessage = error instanceof Error ? error.message : "Unknown error occurred";
3
+ return {
4
+ type: "result",
5
+ data: { error: errorMessage },
6
+ resultForAssistant: `${prefix}: ${errorMessage}`
7
+ };
8
+ }
9
+ export {
10
+ createToolErrorResult
11
+ };
12
+ //# sourceMappingURL=toolError.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/utils/tooling/toolError.ts"],
4
+ "sourcesContent": ["/**\n * Shared utility for creating consistent tool error results.\n */\nexport function createToolErrorResult(error: unknown, prefix: string) {\n const errorMessage =\n error instanceof Error ? error.message : 'Unknown error occurred'\n return {\n type: 'result' as const,\n data: { error: errorMessage },\n resultForAssistant: `${prefix}: ${errorMessage}`,\n }\n}\n"],
5
+ "mappings": "AAGO,SAAS,sBAAsB,OAAgB,QAAgB;AACpE,QAAM,eACJ,iBAAiB,QAAQ,MAAM,UAAU;AAC3C,SAAO;AAAA,IACL,MAAM;AAAA,IACN,MAAM,EAAE,OAAO,aAAa;AAAA,IAC5B,oBAAoB,GAAG,MAAM,KAAK,YAAY;AAAA,EAChD;AACF;",
6
+ "names": []
7
+ }
package/dist/version.js CHANGED
@@ -1,5 +1,5 @@
1
- const VERSION = "0.4.1";
2
- const BUILD_DATE = "2026-02-23T23:12:52.791Z";
1
+ const VERSION = "0.4.2";
2
+ const BUILD_DATE = "2026-03-10T11:55:23.450Z";
3
3
  export {
4
4
  BUILD_DATE,
5
5
  VERSION
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/version.ts"],
4
- "sourcesContent": ["/**\n * Application version\n * This file is auto-generated during build process\n */\n\nexport const VERSION = '0.4.1'\nexport const BUILD_DATE = '2026-02-23T23:12:52.791Z'\n"],
4
+ "sourcesContent": ["/**\n * Application version\n * This file is auto-generated during build process\n */\n\nexport const VERSION = '0.4.2'\nexport const BUILD_DATE = '2026-03-10T11:55:23.450Z'\n"],
5
5
  "mappings": "AAKO,MAAM,UAAU;AAChB,MAAM,aAAa;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@within-7/minto",
3
- "version": "0.4.1",
3
+ "version": "0.4.2",
4
4
  "type": "module",
5
5
  "description": "AI-powered strategic research and planning assistant",
6
6
  "author": "Lib <within-7>",
@@ -57,8 +57,10 @@
57
57
  "build:packages": "node scripts/build-platform-packages.mjs",
58
58
  "build:website": "node scripts/build-website.mjs",
59
59
  "clean": "rm -rf cli.cjs dist binaries packages",
60
- "test": "bun test",
61
- "test:watch": "bun test --watch",
60
+ "test": "bun test ./tests ./src",
61
+ "test:unit": "bun test ./tests",
62
+ "test:src": "bun test ./src",
63
+ "test:watch": "bun test --watch ./tests ./src",
62
64
  "typecheck": "tsc --noEmit",
63
65
  "typecheck:strict": "tsc --noEmit -p tsconfig.strict.json",
64
66
  "lint": "prettier --check \"src/**/*.{ts,tsx,js,jsx,json}\"",
@@ -69,11 +71,11 @@
69
71
  "release:dry-run": "node scripts/release-full.cjs --dry-run"
70
72
  },
71
73
  "optionalDependencies": {
72
- "@within-7/minto-darwin-arm64": "0.4.1",
73
- "@within-7/minto-darwin-x64": "0.4.1",
74
- "@within-7/minto-linux-arm64": "0.4.1",
75
- "@within-7/minto-linux-x64": "0.4.1",
76
- "@within-7/minto-win32-x64": "0.4.1"
74
+ "@within-7/minto-darwin-arm64": "0.4.2",
75
+ "@within-7/minto-darwin-x64": "0.4.2",
76
+ "@within-7/minto-linux-arm64": "0.4.2",
77
+ "@within-7/minto-linux-x64": "0.4.2",
78
+ "@within-7/minto-win32-x64": "0.4.2"
77
79
  },
78
80
  "dependencies": {
79
81
  "@anthropic-ai/bedrock-sdk": "^0.12.6",