@within-7/minto 0.4.1 → 0.4.3

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 (1153) hide show
  1. package/cli.cjs +32 -154
  2. package/cli.js +3255 -0
  3. package/package.json +25 -40
  4. package/scripts/postinstall.cjs +19 -136
  5. package/vendor/ripgrep/arm64-linux/rg +0 -0
  6. package/vendor/ripgrep/x64-darwin/rg +0 -0
  7. package/vendor/ripgrep/x64-linux/rg +0 -0
  8. package/vendor/ripgrep/x64-win32/rg.exe +0 -0
  9. package/dist/Tool.js +0 -39
  10. package/dist/Tool.js.map +0 -7
  11. package/dist/commands/agents/AgentsCommand.js +0 -2170
  12. package/dist/commands/agents/AgentsCommand.js.map +0 -7
  13. package/dist/commands/agents/constants.js +0 -58
  14. package/dist/commands/agents/constants.js.map +0 -7
  15. package/dist/commands/agents/index.js +0 -37
  16. package/dist/commands/agents/index.js.map +0 -7
  17. package/dist/commands/agents/types.js +0 -11
  18. package/dist/commands/agents/types.js.map +0 -7
  19. package/dist/commands/agents/utils/fileOperations.js +0 -245
  20. package/dist/commands/agents/utils/fileOperations.js.map +0 -7
  21. package/dist/commands/agents/utils/index.js +0 -23
  22. package/dist/commands/agents/utils/index.js.map +0 -7
  23. package/dist/commands/approvedTools.js +0 -36
  24. package/dist/commands/approvedTools.js.map +0 -7
  25. package/dist/commands/bug.js +0 -88
  26. package/dist/commands/bug.js.map +0 -7
  27. package/dist/commands/clear.js +0 -40
  28. package/dist/commands/clear.js.map +0 -7
  29. package/dist/commands/compact.js +0 -119
  30. package/dist/commands/compact.js.map +0 -7
  31. package/dist/commands/config.js +0 -20
  32. package/dist/commands/config.js.map +0 -7
  33. package/dist/commands/context.js +0 -116
  34. package/dist/commands/context.js.map +0 -7
  35. package/dist/commands/cost.js +0 -19
  36. package/dist/commands/cost.js.map +0 -7
  37. package/dist/commands/ctx_viz.js +0 -193
  38. package/dist/commands/ctx_viz.js.map +0 -7
  39. package/dist/commands/doctor.js +0 -171
  40. package/dist/commands/doctor.js.map +0 -7
  41. package/dist/commands/effort.js +0 -87
  42. package/dist/commands/effort.js.map +0 -7
  43. package/dist/commands/export.js +0 -747
  44. package/dist/commands/export.js.map +0 -7
  45. package/dist/commands/help.js +0 -20
  46. package/dist/commands/help.js.map +0 -7
  47. package/dist/commands/ide.js +0 -18
  48. package/dist/commands/ide.js.map +0 -7
  49. package/dist/commands/init.js +0 -38
  50. package/dist/commands/init.js.map +0 -7
  51. package/dist/commands/language.js +0 -110
  52. package/dist/commands/language.js.map +0 -7
  53. package/dist/commands/mcp-interactive.js +0 -485
  54. package/dist/commands/mcp-interactive.js.map +0 -7
  55. package/dist/commands/memory.js +0 -168
  56. package/dist/commands/memory.js.map +0 -7
  57. package/dist/commands/model.js +0 -497
  58. package/dist/commands/model.js.map +0 -7
  59. package/dist/commands/new.js +0 -56
  60. package/dist/commands/new.js.map +0 -7
  61. package/dist/commands/outputStyle.js +0 -64
  62. package/dist/commands/outputStyle.js.map +0 -7
  63. package/dist/commands/permissions.js +0 -113
  64. package/dist/commands/permissions.js.map +0 -7
  65. package/dist/commands/plugin/AddMarketplaceForm.js +0 -91
  66. package/dist/commands/plugin/AddMarketplaceForm.js.map +0 -7
  67. package/dist/commands/plugin/ConfirmDialog.js +0 -84
  68. package/dist/commands/plugin/ConfirmDialog.js.map +0 -7
  69. package/dist/commands/plugin/ErrorView.js +0 -34
  70. package/dist/commands/plugin/ErrorView.js.map +0 -7
  71. package/dist/commands/plugin/InstalledPluginsByMarketplace.js +0 -152
  72. package/dist/commands/plugin/InstalledPluginsByMarketplace.js.map +0 -7
  73. package/dist/commands/plugin/InstalledPluginsManager.js +0 -102
  74. package/dist/commands/plugin/InstalledPluginsManager.js.map +0 -7
  75. package/dist/commands/plugin/LoadingView.js +0 -14
  76. package/dist/commands/plugin/LoadingView.js.map +0 -7
  77. package/dist/commands/plugin/MainMenu.js +0 -67
  78. package/dist/commands/plugin/MainMenu.js.map +0 -7
  79. package/dist/commands/plugin/MarketplaceManager.js +0 -201
  80. package/dist/commands/plugin/MarketplaceManager.js.map +0 -7
  81. package/dist/commands/plugin/MarketplaceSelector.js +0 -124
  82. package/dist/commands/plugin/MarketplaceSelector.js.map +0 -7
  83. package/dist/commands/plugin/PlaceholderScreen.js +0 -31
  84. package/dist/commands/plugin/PlaceholderScreen.js.map +0 -7
  85. package/dist/commands/plugin/PluginBrowser.js +0 -183
  86. package/dist/commands/plugin/PluginBrowser.js.map +0 -7
  87. package/dist/commands/plugin/PluginDetailsInstall.js +0 -159
  88. package/dist/commands/plugin/PluginDetailsInstall.js.map +0 -7
  89. package/dist/commands/plugin/PluginDetailsManage.js +0 -210
  90. package/dist/commands/plugin/PluginDetailsManage.js.map +0 -7
  91. package/dist/commands/plugin/components.js +0 -16
  92. package/dist/commands/plugin/components.js.map +0 -7
  93. package/dist/commands/plugin/example-usage.js +0 -63
  94. package/dist/commands/plugin/example-usage.js.map +0 -7
  95. package/dist/commands/plugin/types.js +0 -1
  96. package/dist/commands/plugin/types.js.map +0 -7
  97. package/dist/commands/plugin/utils.js +0 -109
  98. package/dist/commands/plugin/utils.js.map +0 -7
  99. package/dist/commands/plugin.js +0 -1410
  100. package/dist/commands/plugin.js.map +0 -7
  101. package/dist/commands/quit.js +0 -18
  102. package/dist/commands/quit.js.map +0 -7
  103. package/dist/commands/refreshCommands.js +0 -48
  104. package/dist/commands/refreshCommands.js.map +0 -7
  105. package/dist/commands/resume.js +0 -271
  106. package/dist/commands/resume.js.map +0 -7
  107. package/dist/commands/review.js +0 -51
  108. package/dist/commands/review.js.map +0 -7
  109. package/dist/commands/sandbox.js +0 -203
  110. package/dist/commands/sandbox.js.map +0 -7
  111. package/dist/commands/sessions.js +0 -224
  112. package/dist/commands/sessions.js.map +0 -7
  113. package/dist/commands/setup.js +0 -653
  114. package/dist/commands/setup.js.map +0 -7
  115. package/dist/commands/stats.js +0 -292
  116. package/dist/commands/stats.js.map +0 -7
  117. package/dist/commands/status.js +0 -127
  118. package/dist/commands/status.js.map +0 -7
  119. package/dist/commands/tasks.js +0 -108
  120. package/dist/commands/tasks.js.map +0 -7
  121. package/dist/commands/terminalSetup.js +0 -170
  122. package/dist/commands/terminalSetup.js.map +0 -7
  123. package/dist/commands/todos.js +0 -123
  124. package/dist/commands/todos.js.map +0 -7
  125. package/dist/commands/undo.js +0 -227
  126. package/dist/commands/undo.js.map +0 -7
  127. package/dist/commands/vim.js +0 -22
  128. package/dist/commands/vim.js.map +0 -7
  129. package/dist/commands.js +0 -128
  130. package/dist/commands.js.map +0 -7
  131. package/dist/components/AgentResponseBlock.js +0 -41
  132. package/dist/components/AgentResponseBlock.js.map +0 -7
  133. package/dist/components/AgentThinkingBlock.js +0 -32
  134. package/dist/components/AgentThinkingBlock.js.map +0 -7
  135. package/dist/components/AsciiLogo.js +0 -18
  136. package/dist/components/AsciiLogo.js.map +0 -7
  137. package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js +0 -142
  138. package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js.map +0 -7
  139. package/dist/components/AskUserQuestionDialog/QuestionView.js +0 -55
  140. package/dist/components/AskUserQuestionDialog/QuestionView.js.map +0 -7
  141. package/dist/components/AskUserQuestionDialog/index.js +0 -7
  142. package/dist/components/AskUserQuestionDialog/index.js.map +0 -7
  143. package/dist/components/BackgroundTasksPanel.js +0 -177
  144. package/dist/components/BackgroundTasksPanel.js.map +0 -7
  145. package/dist/components/BashStreamingProgress.js +0 -24
  146. package/dist/components/BashStreamingProgress.js.map +0 -7
  147. package/dist/components/CollapsibleHint.js +0 -15
  148. package/dist/components/CollapsibleHint.js.map +0 -7
  149. package/dist/components/Config.js +0 -181
  150. package/dist/components/Config.js.map +0 -7
  151. package/dist/components/ConsoleOAuthFlow.js +0 -179
  152. package/dist/components/ConsoleOAuthFlow.js.map +0 -7
  153. package/dist/components/Cost.js +0 -14
  154. package/dist/components/Cost.js.map +0 -7
  155. package/dist/components/CostThresholdDialog.js +0 -38
  156. package/dist/components/CostThresholdDialog.js.map +0 -7
  157. package/dist/components/CustomSelect/option-map.js +0 -32
  158. package/dist/components/CustomSelect/option-map.js.map +0 -7
  159. package/dist/components/CustomSelect/select-option.js +0 -37
  160. package/dist/components/CustomSelect/select-option.js.map +0 -7
  161. package/dist/components/CustomSelect/select.js +0 -64
  162. package/dist/components/CustomSelect/select.js.map +0 -7
  163. package/dist/components/CustomSelect/theme.js +0 -1
  164. package/dist/components/CustomSelect/theme.js.map +0 -7
  165. package/dist/components/CustomSelect/use-select-state.js +0 -220
  166. package/dist/components/CustomSelect/use-select-state.js.map +0 -7
  167. package/dist/components/CustomSelect/use-select.js +0 -21
  168. package/dist/components/CustomSelect/use-select.js.map +0 -7
  169. package/dist/components/FallbackToolUseRejectedMessage.js +0 -11
  170. package/dist/components/FallbackToolUseRejectedMessage.js.map +0 -7
  171. package/dist/components/FileEditToolUpdatedMessage.js +0 -32
  172. package/dist/components/FileEditToolUpdatedMessage.js.map +0 -7
  173. package/dist/components/HeaderBar.js +0 -63
  174. package/dist/components/HeaderBar.js.map +0 -7
  175. package/dist/components/Help.js +0 -178
  176. package/dist/components/Help.js.map +0 -7
  177. package/dist/components/HighlightedCode.js +0 -31
  178. package/dist/components/HighlightedCode.js.map +0 -7
  179. package/dist/components/HistorySearchOverlay.js +0 -49
  180. package/dist/components/HistorySearchOverlay.js.map +0 -7
  181. package/dist/components/HotkeyHelpPanel.js +0 -136
  182. package/dist/components/HotkeyHelpPanel.js.map +0 -7
  183. package/dist/components/InfoPanel/InfoPanel.js +0 -123
  184. package/dist/components/InfoPanel/InfoPanel.js.map +0 -7
  185. package/dist/components/InfoPanel/index.js +0 -5
  186. package/dist/components/InfoPanel/index.js.map +0 -7
  187. package/dist/components/InfoPanel/types.js +0 -1
  188. package/dist/components/InfoPanel/types.js.map +0 -7
  189. package/dist/components/InteractionRoundBlock.js +0 -56
  190. package/dist/components/InteractionRoundBlock.js.map +0 -7
  191. package/dist/components/InvalidConfigDialog.js +0 -84
  192. package/dist/components/InvalidConfigDialog.js.map +0 -7
  193. package/dist/components/Link.js +0 -18
  194. package/dist/components/Link.js.map +0 -7
  195. package/dist/components/LogSelector.js +0 -50
  196. package/dist/components/LogSelector.js.map +0 -7
  197. package/dist/components/Logo.js +0 -55
  198. package/dist/components/Logo.js.map +0 -7
  199. package/dist/components/MCPServerApprovalDialog.js +0 -81
  200. package/dist/components/MCPServerApprovalDialog.js.map +0 -7
  201. package/dist/components/MCPServerDialogCopy.js +0 -12
  202. package/dist/components/MCPServerDialogCopy.js.map +0 -7
  203. package/dist/components/MCPServerMultiselectDialog.js +0 -82
  204. package/dist/components/MCPServerMultiselectDialog.js.map +0 -7
  205. package/dist/components/Message.js +0 -162
  206. package/dist/components/Message.js.map +0 -7
  207. package/dist/components/MessageResponse.js +0 -9
  208. package/dist/components/MessageResponse.js.map +0 -7
  209. package/dist/components/MessageSelector.js +0 -127
  210. package/dist/components/MessageSelector.js.map +0 -7
  211. package/dist/components/ModeIndicator.js +0 -39
  212. package/dist/components/ModeIndicator.js.map +0 -7
  213. package/dist/components/ModelConfig.js +0 -223
  214. package/dist/components/ModelConfig.js.map +0 -7
  215. package/dist/components/ModelListManager.js +0 -142
  216. package/dist/components/ModelListManager.js.map +0 -7
  217. package/dist/components/ModelSelector/BrandTextInput.js +0 -43
  218. package/dist/components/ModelSelector/BrandTextInput.js.map +0 -7
  219. package/dist/components/ModelSelector/ModelSelector.js +0 -2068
  220. package/dist/components/ModelSelector/ModelSelector.js.map +0 -7
  221. package/dist/components/ModelSelector/ScreenContainer.js +0 -27
  222. package/dist/components/ModelSelector/ScreenContainer.js.map +0 -7
  223. package/dist/components/ModelSelector/WizardContainer.js +0 -45
  224. package/dist/components/ModelSelector/WizardContainer.js.map +0 -7
  225. package/dist/components/ModelSelector/constants.js +0 -37
  226. package/dist/components/ModelSelector/constants.js.map +0 -7
  227. package/dist/components/ModelSelector/hooks/index.js +0 -5
  228. package/dist/components/ModelSelector/hooks/index.js.map +0 -7
  229. package/dist/components/ModelSelector/hooks/useEscapeNavigation.js +0 -21
  230. package/dist/components/ModelSelector/hooks/useEscapeNavigation.js.map +0 -7
  231. package/dist/components/ModelSelector/index.js +0 -15
  232. package/dist/components/ModelSelector/index.js.map +0 -7
  233. package/dist/components/ModelSelector/types.js +0 -1
  234. package/dist/components/ModelSelector/types.js.map +0 -7
  235. package/dist/components/Onboarding.js +0 -159
  236. package/dist/components/Onboarding.js.map +0 -7
  237. package/dist/components/OperationSummary.js +0 -130
  238. package/dist/components/OperationSummary.js.map +0 -7
  239. package/dist/components/PressEnterToContinue.js +0 -10
  240. package/dist/components/PressEnterToContinue.js.map +0 -7
  241. package/dist/components/ProgressBar.js +0 -74
  242. package/dist/components/ProgressBar.js.map +0 -7
  243. package/dist/components/ProjectOnboarding.js +0 -99
  244. package/dist/components/ProjectOnboarding.js.map +0 -7
  245. package/dist/components/PromptInput.js +0 -996
  246. package/dist/components/PromptInput.js.map +0 -7
  247. package/dist/components/PulseLabel.js +0 -44
  248. package/dist/components/PulseLabel.js.map +0 -7
  249. package/dist/components/QuitSummary.js +0 -88
  250. package/dist/components/QuitSummary.js.map +0 -7
  251. package/dist/components/RequestStatusIndicator.js +0 -194
  252. package/dist/components/RequestStatusIndicator.js.map +0 -7
  253. package/dist/components/SensitiveFileWarning.js +0 -35
  254. package/dist/components/SensitiveFileWarning.js.map +0 -7
  255. package/dist/components/SentryErrorBoundary.js +0 -27
  256. package/dist/components/SentryErrorBoundary.js.map +0 -7
  257. package/dist/components/SimpleSelector/SimpleSelector.js +0 -154
  258. package/dist/components/SimpleSelector/SimpleSelector.js.map +0 -7
  259. package/dist/components/SimpleSelector/index.js +0 -5
  260. package/dist/components/SimpleSelector/index.js.map +0 -7
  261. package/dist/components/SimpleSelector/types.js +0 -1
  262. package/dist/components/SimpleSelector/types.js.map +0 -7
  263. package/dist/components/Spinner.js +0 -185
  264. package/dist/components/Spinner.js.map +0 -7
  265. package/dist/components/SpinnerSymbol.js +0 -72
  266. package/dist/components/SpinnerSymbol.js.map +0 -7
  267. package/dist/components/StartupStatus.js +0 -57
  268. package/dist/components/StartupStatus.js.map +0 -7
  269. package/dist/components/StatusOverlayContent.js +0 -21
  270. package/dist/components/StatusOverlayContent.js.map +0 -7
  271. package/dist/components/StreamingBashOutput.js +0 -71
  272. package/dist/components/StreamingBashOutput.js.map +0 -7
  273. package/dist/components/StructuredDiff.js +0 -146
  274. package/dist/components/StructuredDiff.js.map +0 -7
  275. package/dist/components/SubagentBlock.js +0 -196
  276. package/dist/components/SubagentBlock.js.map +0 -7
  277. package/dist/components/SubagentManager.js +0 -65
  278. package/dist/components/SubagentManager.js.map +0 -7
  279. package/dist/components/SubagentProgress.js +0 -123
  280. package/dist/components/SubagentProgress.js.map +0 -7
  281. package/dist/components/SubagentStatusMarker.js +0 -37
  282. package/dist/components/SubagentStatusMarker.js.map +0 -7
  283. package/dist/components/TabbedListView/ScrollableList.js +0 -117
  284. package/dist/components/TabbedListView/ScrollableList.js.map +0 -7
  285. package/dist/components/TabbedListView/SearchInput.js +0 -23
  286. package/dist/components/TabbedListView/SearchInput.js.map +0 -7
  287. package/dist/components/TabbedListView/TabBar.js +0 -25
  288. package/dist/components/TabbedListView/TabBar.js.map +0 -7
  289. package/dist/components/TabbedListView/TabbedListView.js +0 -246
  290. package/dist/components/TabbedListView/TabbedListView.js.map +0 -7
  291. package/dist/components/TabbedListView/index.js +0 -11
  292. package/dist/components/TabbedListView/index.js.map +0 -7
  293. package/dist/components/TabbedListView/types.js +0 -1
  294. package/dist/components/TabbedListView/types.js.map +0 -7
  295. package/dist/components/TaskCard.js +0 -176
  296. package/dist/components/TaskCard.js.map +0 -7
  297. package/dist/components/TextInput.js +0 -108
  298. package/dist/components/TextInput.js.map +0 -7
  299. package/dist/components/TimelineRenderer.js +0 -31
  300. package/dist/components/TimelineRenderer.js.map +0 -7
  301. package/dist/components/TodoChangeBlock.js +0 -30
  302. package/dist/components/TodoChangeBlock.js.map +0 -7
  303. package/dist/components/TodoChangeLine.js +0 -22
  304. package/dist/components/TodoChangeLine.js.map +0 -7
  305. package/dist/components/TodoItem.js +0 -35
  306. package/dist/components/TodoItem.js.map +0 -7
  307. package/dist/components/TodoPanel.js +0 -166
  308. package/dist/components/TodoPanel.js.map +0 -7
  309. package/dist/components/TokenCounter.js +0 -74
  310. package/dist/components/TokenCounter.js.map +0 -7
  311. package/dist/components/TokenWarning.js +0 -20
  312. package/dist/components/TokenWarning.js.map +0 -7
  313. package/dist/components/ToolExecutionBlock.js +0 -18
  314. package/dist/components/ToolExecutionBlock.js.map +0 -7
  315. package/dist/components/ToolUseLoader.js +0 -29
  316. package/dist/components/ToolUseLoader.js.map +0 -7
  317. package/dist/components/TreeConnector.js +0 -26
  318. package/dist/components/TreeConnector.js.map +0 -7
  319. package/dist/components/TrustDialog.js +0 -71
  320. package/dist/components/TrustDialog.js.map +0 -7
  321. package/dist/components/TurnCompletionIndicator.js +0 -18
  322. package/dist/components/TurnCompletionIndicator.js.map +0 -7
  323. package/dist/components/UserQueryBlock.js +0 -12
  324. package/dist/components/UserQueryBlock.js.map +0 -7
  325. package/dist/components/binary-feedback/BinaryFeedback.js +0 -50
  326. package/dist/components/binary-feedback/BinaryFeedback.js.map +0 -7
  327. package/dist/components/binary-feedback/BinaryFeedbackOption.js +0 -92
  328. package/dist/components/binary-feedback/BinaryFeedbackOption.js.map +0 -7
  329. package/dist/components/binary-feedback/BinaryFeedbackView.js +0 -140
  330. package/dist/components/binary-feedback/BinaryFeedbackView.js.map +0 -7
  331. package/dist/components/binary-feedback/utils.js +0 -108
  332. package/dist/components/binary-feedback/utils.js.map +0 -7
  333. package/dist/components/messages/AssistantBashOutputMessage.js +0 -23
  334. package/dist/components/messages/AssistantBashOutputMessage.js.map +0 -7
  335. package/dist/components/messages/AssistantLocalCommandOutputMessage.js +0 -36
  336. package/dist/components/messages/AssistantLocalCommandOutputMessage.js.map +0 -7
  337. package/dist/components/messages/AssistantRedactedThinkingMessage.js +0 -12
  338. package/dist/components/messages/AssistantRedactedThinkingMessage.js.map +0 -7
  339. package/dist/components/messages/AssistantTextMessage.js +0 -89
  340. package/dist/components/messages/AssistantTextMessage.js.map +0 -7
  341. package/dist/components/messages/AssistantThinkingMessage.js +0 -42
  342. package/dist/components/messages/AssistantThinkingMessage.js.map +0 -7
  343. package/dist/components/messages/AssistantToolUseMessage.js +0 -100
  344. package/dist/components/messages/AssistantToolUseMessage.js.map +0 -7
  345. package/dist/components/messages/GroupRenderer.js +0 -54
  346. package/dist/components/messages/GroupRenderer.js.map +0 -7
  347. package/dist/components/messages/NestedTasksPreview.js +0 -24
  348. package/dist/components/messages/NestedTasksPreview.js.map +0 -7
  349. package/dist/components/messages/ParallelTasksGroupView.js +0 -93
  350. package/dist/components/messages/ParallelTasksGroupView.js.map +0 -7
  351. package/dist/components/messages/TaskInModuleView.js +0 -218
  352. package/dist/components/messages/TaskInModuleView.js.map +0 -7
  353. package/dist/components/messages/TaskOutputContent.js +0 -56
  354. package/dist/components/messages/TaskOutputContent.js.map +0 -7
  355. package/dist/components/messages/TaskProgressMessage.js +0 -11
  356. package/dist/components/messages/TaskProgressMessage.js.map +0 -7
  357. package/dist/components/messages/TaskToolMessage.js +0 -39
  358. package/dist/components/messages/TaskToolMessage.js.map +0 -7
  359. package/dist/components/messages/UserBashInputMessage.js +0 -18
  360. package/dist/components/messages/UserBashInputMessage.js.map +0 -7
  361. package/dist/components/messages/UserCommandMessage.js +0 -20
  362. package/dist/components/messages/UserCommandMessage.js.map +0 -7
  363. package/dist/components/messages/UserKodingInputMessage.js +0 -18
  364. package/dist/components/messages/UserKodingInputMessage.js.map +0 -7
  365. package/dist/components/messages/UserPromptMessage.js +0 -25
  366. package/dist/components/messages/UserPromptMessage.js.map +0 -7
  367. package/dist/components/messages/UserTextMessage.js +0 -25
  368. package/dist/components/messages/UserTextMessage.js.map +0 -7
  369. package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js +0 -11
  370. package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js.map +0 -7
  371. package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js +0 -15
  372. package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js.map +0 -7
  373. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js +0 -25
  374. package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js.map +0 -7
  375. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js +0 -47
  376. package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js.map +0 -7
  377. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +0 -22
  378. package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +0 -7
  379. package/dist/components/messages/UserToolResultMessage/utils.js +0 -50
  380. package/dist/components/messages/UserToolResultMessage/utils.js.map +0 -7
  381. package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js +0 -112
  382. package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +0 -7
  383. package/dist/components/permissions/FallbackPermissionRequest.js +0 -131
  384. package/dist/components/permissions/FallbackPermissionRequest.js.map +0 -7
  385. package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +0 -159
  386. package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +0 -7
  387. package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +0 -58
  388. package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +0 -7
  389. package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +0 -153
  390. package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +0 -7
  391. package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +0 -70
  392. package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +0 -7
  393. package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +0 -212
  394. package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +0 -7
  395. package/dist/components/permissions/PermissionRequest.js +0 -70
  396. package/dist/components/permissions/PermissionRequest.js.map +0 -7
  397. package/dist/components/permissions/PermissionRequestTitle.js +0 -52
  398. package/dist/components/permissions/PermissionRequestTitle.js.map +0 -7
  399. package/dist/components/permissions/hooks.js +0 -23
  400. package/dist/components/permissions/hooks.js.map +0 -7
  401. package/dist/components/permissions/toolUseOptions.js +0 -46
  402. package/dist/components/permissions/toolUseOptions.js.map +0 -7
  403. package/dist/components/permissions/utils.js +0 -21
  404. package/dist/components/permissions/utils.js.map +0 -7
  405. package/dist/constants/claude-asterisk-ascii-art.js +0 -242
  406. package/dist/constants/claude-asterisk-ascii-art.js.map +0 -7
  407. package/dist/constants/colors.js +0 -192
  408. package/dist/constants/colors.js.map +0 -7
  409. package/dist/constants/compressionPrompts.js +0 -73
  410. package/dist/constants/compressionPrompts.js.map +0 -7
  411. package/dist/constants/figures.js +0 -6
  412. package/dist/constants/figures.js.map +0 -7
  413. package/dist/constants/formatRules.js +0 -102
  414. package/dist/constants/formatRules.js.map +0 -7
  415. package/dist/constants/macros.js +0 -11
  416. package/dist/constants/macros.js.map +0 -7
  417. package/dist/constants/modelCapabilities.js +0 -239
  418. package/dist/constants/modelCapabilities.js.map +0 -7
  419. package/dist/constants/models.js +0 -1034
  420. package/dist/constants/models.js.map +0 -7
  421. package/dist/constants/oauth.js +0 -18
  422. package/dist/constants/oauth.js.map +0 -7
  423. package/dist/constants/product.js +0 -28
  424. package/dist/constants/product.js.map +0 -7
  425. package/dist/constants/prompts/agentPrompt.js +0 -30
  426. package/dist/constants/prompts/agentPrompt.js.map +0 -7
  427. package/dist/constants/prompts/codeConventions.js +0 -27
  428. package/dist/constants/prompts/codeConventions.js.map +0 -7
  429. package/dist/constants/prompts/doingTasks.js +0 -15
  430. package/dist/constants/prompts/doingTasks.js.map +0 -7
  431. package/dist/constants/prompts/envInfo.js +0 -17
  432. package/dist/constants/prompts/envInfo.js.map +0 -7
  433. package/dist/constants/prompts/executingWithCare.js +0 -17
  434. package/dist/constants/prompts/executingWithCare.js.map +0 -7
  435. package/dist/constants/prompts/identity.js +0 -10
  436. package/dist/constants/prompts/identity.js.map +0 -7
  437. package/dist/constants/prompts/index.js +0 -78
  438. package/dist/constants/prompts/index.js.map +0 -7
  439. package/dist/constants/prompts/taskManagement.js +0 -60
  440. package/dist/constants/prompts/taskManagement.js.map +0 -7
  441. package/dist/constants/prompts/toneAndStyle.js +0 -62
  442. package/dist/constants/prompts/toneAndStyle.js.map +0 -7
  443. package/dist/constants/prompts/toolUsagePolicy.js +0 -38
  444. package/dist/constants/prompts/toolUsagePolicy.js.map +0 -7
  445. package/dist/constants/prompts.js +0 -13
  446. package/dist/constants/prompts.js.map +0 -7
  447. package/dist/constants/providerRegistry.js +0 -235
  448. package/dist/constants/providerRegistry.js.map +0 -7
  449. package/dist/constants/providers.js +0 -35
  450. package/dist/constants/providers.js.map +0 -7
  451. package/dist/constants/releaseNotes.js +0 -9
  452. package/dist/constants/releaseNotes.js.map +0 -7
  453. package/dist/constants/symbols.js +0 -108
  454. package/dist/constants/symbols.js.map +0 -7
  455. package/dist/constants/timing.js +0 -39
  456. package/dist/constants/timing.js.map +0 -7
  457. package/dist/constants/toolInputExamples.js +0 -88
  458. package/dist/constants/toolInputExamples.js.map +0 -7
  459. package/dist/context/PermissionContext.js +0 -110
  460. package/dist/context/PermissionContext.js.map +0 -7
  461. package/dist/context.js +0 -334
  462. package/dist/context.js.map +0 -7
  463. package/dist/core/backupHook.js +0 -29
  464. package/dist/core/backupHook.js.map +0 -7
  465. package/dist/core/backupManager.js +0 -321
  466. package/dist/core/backupManager.js.map +0 -7
  467. package/dist/core/config/defaults.js +0 -93
  468. package/dist/core/config/defaults.js.map +0 -7
  469. package/dist/core/config/index.js +0 -111
  470. package/dist/core/config/index.js.map +0 -7
  471. package/dist/core/config/loader.js +0 -221
  472. package/dist/core/config/loader.js.map +0 -7
  473. package/dist/core/config/migrations.js +0 -128
  474. package/dist/core/config/migrations.js.map +0 -7
  475. package/dist/core/config/schema.js +0 -196
  476. package/dist/core/config/schema.js.map +0 -7
  477. package/dist/core/costTracker.js +0 -131
  478. package/dist/core/costTracker.js.map +0 -7
  479. package/dist/core/gitAutoCommit.js +0 -287
  480. package/dist/core/gitAutoCommit.js.map +0 -7
  481. package/dist/core/index.js +0 -7
  482. package/dist/core/index.js.map +0 -7
  483. package/dist/core/operationTracker.js +0 -212
  484. package/dist/core/operationTracker.js.map +0 -7
  485. package/dist/core/permissions/auditLog.js +0 -204
  486. package/dist/core/permissions/auditLog.js.map +0 -7
  487. package/dist/core/permissions/engine/index.js +0 -3
  488. package/dist/core/permissions/engine/index.js.map +0 -7
  489. package/dist/core/permissions/engine/permissionEngine.js +0 -106
  490. package/dist/core/permissions/engine/permissionEngine.js.map +0 -7
  491. package/dist/core/permissions/engine/types.js +0 -1
  492. package/dist/core/permissions/engine/types.js.map +0 -7
  493. package/dist/core/permissions/index.js +0 -84
  494. package/dist/core/permissions/index.js.map +0 -7
  495. package/dist/core/permissions/ruleEngine.js +0 -259
  496. package/dist/core/permissions/ruleEngine.js.map +0 -7
  497. package/dist/core/permissions/rules/allowedToolsRule.js +0 -62
  498. package/dist/core/permissions/rules/allowedToolsRule.js.map +0 -7
  499. package/dist/core/permissions/rules/autoEscalationRule.js +0 -296
  500. package/dist/core/permissions/rules/autoEscalationRule.js.map +0 -7
  501. package/dist/core/permissions/rules/index.js +0 -46
  502. package/dist/core/permissions/rules/index.js.map +0 -7
  503. package/dist/core/permissions/rules/planModeRule.js +0 -55
  504. package/dist/core/permissions/rules/planModeRule.js.map +0 -7
  505. package/dist/core/permissions/rules/projectBoundaryRule.js +0 -173
  506. package/dist/core/permissions/rules/projectBoundaryRule.js.map +0 -7
  507. package/dist/core/permissions/rules/safeModeRule.js +0 -65
  508. package/dist/core/permissions/rules/safeModeRule.js.map +0 -7
  509. package/dist/core/permissions/rules/sensitivePathsRule.js +0 -345
  510. package/dist/core/permissions/rules/sensitivePathsRule.js.map +0 -7
  511. package/dist/core/permissions/types.js +0 -127
  512. package/dist/core/permissions/types.js.map +0 -7
  513. package/dist/core/tokenStats.js +0 -9
  514. package/dist/core/tokenStats.js.map +0 -7
  515. package/dist/core/tokenStatsManager.js +0 -354
  516. package/dist/core/tokenStatsManager.js.map +0 -7
  517. package/dist/core/tools/executor.js +0 -143
  518. package/dist/core/tools/executor.js.map +0 -7
  519. package/dist/core/tools/index.js +0 -15
  520. package/dist/core/tools/index.js.map +0 -7
  521. package/dist/core/tools/registry.js +0 -183
  522. package/dist/core/tools/registry.js.map +0 -7
  523. package/dist/core/tools/types.js +0 -1
  524. package/dist/core/tools/types.js.map +0 -7
  525. package/dist/cost-tracker.js +0 -68
  526. package/dist/cost-tracker.js.map +0 -7
  527. package/dist/entrypoints/bootstrap.js +0 -56
  528. package/dist/entrypoints/bootstrap.js.map +0 -7
  529. package/dist/entrypoints/cli.js +0 -1390
  530. package/dist/entrypoints/cli.js.map +0 -7
  531. package/dist/entrypoints/mcp.js +0 -153
  532. package/dist/entrypoints/mcp.js.map +0 -7
  533. package/dist/history.js +0 -96
  534. package/dist/history.js.map +0 -7
  535. package/dist/hooks/useAgentTokenStats.js +0 -72
  536. package/dist/hooks/useAgentTokenStats.js.map +0 -7
  537. package/dist/hooks/useAgentTranscripts.js +0 -141
  538. package/dist/hooks/useAgentTranscripts.js.map +0 -7
  539. package/dist/hooks/useAnimationSync.js +0 -53
  540. package/dist/hooks/useAnimationSync.js.map +0 -7
  541. package/dist/hooks/useApiKeyVerification.js +0 -12
  542. package/dist/hooks/useApiKeyVerification.js.map +0 -7
  543. package/dist/hooks/useArrowKeyHistory.js +0 -52
  544. package/dist/hooks/useArrowKeyHistory.js.map +0 -7
  545. package/dist/hooks/useAskUser.js +0 -24
  546. package/dist/hooks/useAskUser.js.map +0 -7
  547. package/dist/hooks/useBackgroundShells.js +0 -29
  548. package/dist/hooks/useBackgroundShells.js.map +0 -7
  549. package/dist/hooks/useCanUseTool.js +0 -89
  550. package/dist/hooks/useCanUseTool.js.map +0 -7
  551. package/dist/hooks/useDeferredLoading.js +0 -64
  552. package/dist/hooks/useDeferredLoading.js.map +0 -7
  553. package/dist/hooks/useDoublePress.js +0 -31
  554. package/dist/hooks/useDoublePress.js.map +0 -7
  555. package/dist/hooks/useExitOnCtrlCD.js +0 -30
  556. package/dist/hooks/useExitOnCtrlCD.js.map +0 -7
  557. package/dist/hooks/useHistorySearch.js +0 -62
  558. package/dist/hooks/useHistorySearch.js.map +0 -7
  559. package/dist/hooks/useHookStatus.js +0 -40
  560. package/dist/hooks/useHookStatus.js.map +0 -7
  561. package/dist/hooks/useInterval.js +0 -18
  562. package/dist/hooks/useInterval.js.map +0 -7
  563. package/dist/hooks/useLogMessages.js +0 -41
  564. package/dist/hooks/useLogMessages.js.map +0 -7
  565. package/dist/hooks/useLogStartupTime.js +0 -10
  566. package/dist/hooks/useLogStartupTime.js.map +0 -7
  567. package/dist/hooks/useMessageGroups.js +0 -43
  568. package/dist/hooks/useMessageGroups.js.map +0 -7
  569. package/dist/hooks/useNotifyAfterTimeout.js +0 -42
  570. package/dist/hooks/useNotifyAfterTimeout.js.map +0 -7
  571. package/dist/hooks/usePermissionRequestLogging.js +0 -23
  572. package/dist/hooks/usePermissionRequestLogging.js.map +0 -7
  573. package/dist/hooks/useSessionTracking.js +0 -55
  574. package/dist/hooks/useSessionTracking.js.map +0 -7
  575. package/dist/hooks/useTerminalSize.js +0 -115
  576. package/dist/hooks/useTerminalSize.js.map +0 -7
  577. package/dist/hooks/useTextInput.js +0 -253
  578. package/dist/hooks/useTextInput.js.map +0 -7
  579. package/dist/hooks/useUnifiedCompletion.js +0 -1098
  580. package/dist/hooks/useUnifiedCompletion.js.map +0 -7
  581. package/dist/i18n/index.js +0 -109
  582. package/dist/i18n/index.js.map +0 -7
  583. package/dist/i18n/locales/en.js +0 -928
  584. package/dist/i18n/locales/en.js.map +0 -7
  585. package/dist/i18n/locales/index.js +0 -7
  586. package/dist/i18n/locales/index.js.map +0 -7
  587. package/dist/i18n/locales/zh-CN.js +0 -928
  588. package/dist/i18n/locales/zh-CN.js.map +0 -7
  589. package/dist/i18n/types.js +0 -8
  590. package/dist/i18n/types.js.map +0 -7
  591. package/dist/index.js +0 -5
  592. package/dist/index.js.map +0 -7
  593. package/dist/messages.js +0 -68
  594. package/dist/messages.js.map +0 -7
  595. package/dist/package.json +0 -4
  596. package/dist/permissions.js +0 -430
  597. package/dist/permissions.js.map +0 -7
  598. package/dist/query.js +0 -753
  599. package/dist/query.js.map +0 -7
  600. package/dist/screens/LogList.js +0 -55
  601. package/dist/screens/LogList.js.map +0 -7
  602. package/dist/screens/REPL.js +0 -1097
  603. package/dist/screens/REPL.js.map +0 -7
  604. package/dist/screens/ResumeConversation.js +0 -59
  605. package/dist/screens/ResumeConversation.js.map +0 -7
  606. package/dist/services/adapters/base.js +0 -29
  607. package/dist/services/adapters/base.js.map +0 -7
  608. package/dist/services/adapters/chatCompletions.js +0 -71
  609. package/dist/services/adapters/chatCompletions.js.map +0 -7
  610. package/dist/services/adapters/messageNormalizer.js +0 -354
  611. package/dist/services/adapters/messageNormalizer.js.map +0 -7
  612. package/dist/services/adapters/responsesAPI.js +0 -137
  613. package/dist/services/adapters/responsesAPI.js.map +0 -7
  614. package/dist/services/agentTeams/index.js +0 -35
  615. package/dist/services/agentTeams/index.js.map +0 -7
  616. package/dist/services/agentTeams/mailbox.js +0 -114
  617. package/dist/services/agentTeams/mailbox.js.map +0 -7
  618. package/dist/services/agentTeams/teamManager.js +0 -149
  619. package/dist/services/agentTeams/teamManager.js.map +0 -7
  620. package/dist/services/agentTeams/teamTaskStore.js +0 -114
  621. package/dist/services/agentTeams/teamTaskStore.js.map +0 -7
  622. package/dist/services/agentTeams/teammateSpawner.js +0 -80
  623. package/dist/services/agentTeams/teammateSpawner.js.map +0 -7
  624. package/dist/services/checkpointManager.js +0 -399
  625. package/dist/services/checkpointManager.js.map +0 -7
  626. package/dist/services/claude.js +0 -41
  627. package/dist/services/claude.js.map +0 -7
  628. package/dist/services/compressionService.js +0 -259
  629. package/dist/services/compressionService.js.map +0 -7
  630. package/dist/services/contextMonitor.js +0 -162
  631. package/dist/services/contextMonitor.js.map +0 -7
  632. package/dist/services/customCommands.js +0 -489
  633. package/dist/services/customCommands.js.map +0 -7
  634. package/dist/services/fileFreshness.js +0 -275
  635. package/dist/services/fileFreshness.js.map +0 -7
  636. package/dist/services/gpt5ConnectionTest.js +0 -263
  637. package/dist/services/gpt5ConnectionTest.js.map +0 -7
  638. package/dist/services/hookExecutor.js +0 -728
  639. package/dist/services/hookExecutor.js.map +0 -7
  640. package/dist/services/intelligentCompactor.js +0 -281
  641. package/dist/services/intelligentCompactor.js.map +0 -7
  642. package/dist/services/llm/anthropicProvider.js +0 -807
  643. package/dist/services/llm/anthropicProvider.js.map +0 -7
  644. package/dist/services/llm/dispatch.js +0 -218
  645. package/dist/services/llm/dispatch.js.map +0 -7
  646. package/dist/services/llm/index.js +0 -44
  647. package/dist/services/llm/index.js.map +0 -7
  648. package/dist/services/llm/mintoContext.js +0 -69
  649. package/dist/services/llm/mintoContext.js.map +0 -7
  650. package/dist/services/llm/openaiProvider.js +0 -622
  651. package/dist/services/llm/openaiProvider.js.map +0 -7
  652. package/dist/services/llm/types.js +0 -157
  653. package/dist/services/llm/types.js.map +0 -7
  654. package/dist/services/lspConfig.js +0 -109
  655. package/dist/services/lspConfig.js.map +0 -7
  656. package/dist/services/mainAgentCompressor.js +0 -84
  657. package/dist/services/mainAgentCompressor.js.map +0 -7
  658. package/dist/services/mcpClient.js +0 -921
  659. package/dist/services/mcpClient.js.map +0 -7
  660. package/dist/services/mcpServerApproval.js +0 -55
  661. package/dist/services/mcpServerApproval.js.map +0 -7
  662. package/dist/services/mentionProcessor.js +0 -214
  663. package/dist/services/mentionProcessor.js.map +0 -7
  664. package/dist/services/modelAdapterFactory.js +0 -47
  665. package/dist/services/modelAdapterFactory.js.map +0 -7
  666. package/dist/services/modelOrchestrator.js +0 -310
  667. package/dist/services/modelOrchestrator.js.map +0 -7
  668. package/dist/services/notifier.js +0 -49
  669. package/dist/services/notifier.js.map +0 -7
  670. package/dist/services/oauth.js +0 -249
  671. package/dist/services/oauth.js.map +0 -7
  672. package/dist/services/openai.js +0 -1049
  673. package/dist/services/openai.js.map +0 -7
  674. package/dist/services/outputStyles.js +0 -219
  675. package/dist/services/outputStyles.js.map +0 -7
  676. package/dist/services/plugins/index.js +0 -5
  677. package/dist/services/plugins/index.js.map +0 -7
  678. package/dist/services/plugins/lspServers.js +0 -188
  679. package/dist/services/plugins/lspServers.js.map +0 -7
  680. package/dist/services/plugins/pluginRuntime.js +0 -230
  681. package/dist/services/plugins/pluginRuntime.js.map +0 -7
  682. package/dist/services/plugins/pluginValidation.js +0 -226
  683. package/dist/services/plugins/pluginValidation.js.map +0 -7
  684. package/dist/services/plugins/skillMarketplace.js +0 -567
  685. package/dist/services/plugins/skillMarketplace.js.map +0 -7
  686. package/dist/services/responseStateManager.js +0 -102
  687. package/dist/services/responseStateManager.js.map +0 -7
  688. package/dist/services/sandbox/filesystemBoundary.js +0 -341
  689. package/dist/services/sandbox/filesystemBoundary.js.map +0 -7
  690. package/dist/services/sandbox/index.js +0 -14
  691. package/dist/services/sandbox/index.js.map +0 -7
  692. package/dist/services/sandbox/networkProxy.js +0 -293
  693. package/dist/services/sandbox/networkProxy.js.map +0 -7
  694. package/dist/services/sandbox/sandboxController.js +0 -574
  695. package/dist/services/sandbox/sandboxController.js.map +0 -7
  696. package/dist/services/sandbox/types.js +0 -50
  697. package/dist/services/sandbox/types.js.map +0 -7
  698. package/dist/services/sentry.js +0 -9
  699. package/dist/services/sentry.js.map +0 -7
  700. package/dist/services/sessionMemory.js +0 -279
  701. package/dist/services/sessionMemory.js.map +0 -7
  702. package/dist/services/subagentAbortManager.js +0 -95
  703. package/dist/services/subagentAbortManager.js.map +0 -7
  704. package/dist/services/subagentCompressor.js +0 -146
  705. package/dist/services/subagentCompressor.js.map +0 -7
  706. package/dist/services/systemReminder.js +0 -693
  707. package/dist/services/systemReminder.js.map +0 -7
  708. package/dist/services/taskRouter.js +0 -324
  709. package/dist/services/taskRouter.js.map +0 -7
  710. package/dist/services/taskStore.js +0 -224
  711. package/dist/services/taskStore.js.map +0 -7
  712. package/dist/services/vcr.js +0 -133
  713. package/dist/services/vcr.js.map +0 -7
  714. package/dist/tools/ArchitectTool/ArchitectTool.js +0 -126
  715. package/dist/tools/ArchitectTool/ArchitectTool.js.map +0 -7
  716. package/dist/tools/ArchitectTool/prompt.js +0 -18
  717. package/dist/tools/ArchitectTool/prompt.js.map +0 -7
  718. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +0 -433
  719. package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +0 -7
  720. package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js +0 -158
  721. package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js.map +0 -7
  722. package/dist/tools/AskUserQuestionTool/index.js +0 -5
  723. package/dist/tools/AskUserQuestionTool/index.js.map +0 -7
  724. package/dist/tools/AskUserQuestionTool/prompt.js +0 -167
  725. package/dist/tools/AskUserQuestionTool/prompt.js.map +0 -7
  726. package/dist/tools/BaseTool.js +0 -72
  727. package/dist/tools/BaseTool.js.map +0 -7
  728. package/dist/tools/BashOutputTool/BashOutputTool.js +0 -120
  729. package/dist/tools/BashOutputTool/BashOutputTool.js.map +0 -7
  730. package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js +0 -14
  731. package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js.map +0 -7
  732. package/dist/tools/BashOutputTool/prompt.js +0 -13
  733. package/dist/tools/BashOutputTool/prompt.js.map +0 -7
  734. package/dist/tools/BashTool/BashTool.js +0 -330
  735. package/dist/tools/BashTool/BashTool.js.map +0 -7
  736. package/dist/tools/BashTool/BashToolResultMessage.js +0 -24
  737. package/dist/tools/BashTool/BashToolResultMessage.js.map +0 -7
  738. package/dist/tools/BashTool/OutputLine.js +0 -84
  739. package/dist/tools/BashTool/OutputLine.js.map +0 -7
  740. package/dist/tools/BashTool/prompt.js +0 -519
  741. package/dist/tools/BashTool/prompt.js.map +0 -7
  742. package/dist/tools/BashTool/utils.js +0 -51
  743. package/dist/tools/BashTool/utils.js.map +0 -7
  744. package/dist/tools/FileEditTool/FileEditTool.js +0 -273
  745. package/dist/tools/FileEditTool/FileEditTool.js.map +0 -7
  746. package/dist/tools/FileEditTool/prompt.js +0 -60
  747. package/dist/tools/FileEditTool/prompt.js.map +0 -7
  748. package/dist/tools/FileEditTool/utils.js +0 -48
  749. package/dist/tools/FileEditTool/utils.js.map +0 -7
  750. package/dist/tools/FileReadTool/FileReadTool.js +0 -305
  751. package/dist/tools/FileReadTool/FileReadTool.js.map +0 -7
  752. package/dist/tools/FileReadTool/prompt.js +0 -25
  753. package/dist/tools/FileReadTool/prompt.js.map +0 -7
  754. package/dist/tools/FileWriteTool/FileWriteTool.js +0 -211
  755. package/dist/tools/FileWriteTool/FileWriteTool.js.map +0 -7
  756. package/dist/tools/FileWriteTool/prompt.js +0 -23
  757. package/dist/tools/FileWriteTool/prompt.js.map +0 -7
  758. package/dist/tools/GlobTool/GlobTool.js +0 -99
  759. package/dist/tools/GlobTool/GlobTool.js.map +0 -7
  760. package/dist/tools/GlobTool/prompt.js +0 -23
  761. package/dist/tools/GlobTool/prompt.js.map +0 -7
  762. package/dist/tools/GrepTool/GrepTool.js +0 -406
  763. package/dist/tools/GrepTool/GrepTool.js.map +0 -7
  764. package/dist/tools/GrepTool/prompt.js +0 -22
  765. package/dist/tools/GrepTool/prompt.js.map +0 -7
  766. package/dist/tools/KillShellTool/KillShellTool.js +0 -92
  767. package/dist/tools/KillShellTool/KillShellTool.js.map +0 -7
  768. package/dist/tools/KillShellTool/KillShellToolResultMessage.js +0 -14
  769. package/dist/tools/KillShellTool/KillShellToolResultMessage.js.map +0 -7
  770. package/dist/tools/KillShellTool/prompt.js +0 -12
  771. package/dist/tools/KillShellTool/prompt.js.map +0 -7
  772. package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js +0 -109
  773. package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js.map +0 -7
  774. package/dist/tools/ListMcpResourcesTool/prompt.js +0 -19
  775. package/dist/tools/ListMcpResourcesTool/prompt.js.map +0 -7
  776. package/dist/tools/LspTool/LspTool.js +0 -673
  777. package/dist/tools/LspTool/LspTool.js.map +0 -7
  778. package/dist/tools/LspTool/prompt.js +0 -27
  779. package/dist/tools/LspTool/prompt.js.map +0 -7
  780. package/dist/tools/MCPTool/MCPTool.js +0 -97
  781. package/dist/tools/MCPTool/MCPTool.js.map +0 -7
  782. package/dist/tools/MCPTool/prompt.js +0 -7
  783. package/dist/tools/MCPTool/prompt.js.map +0 -7
  784. package/dist/tools/MemoryReadTool/MemoryReadTool.js +0 -117
  785. package/dist/tools/MemoryReadTool/MemoryReadTool.js.map +0 -7
  786. package/dist/tools/MemoryReadTool/prompt.js +0 -7
  787. package/dist/tools/MemoryReadTool/prompt.js.map +0 -7
  788. package/dist/tools/MemoryWriteTool/MemoryWriteTool.js +0 -78
  789. package/dist/tools/MemoryWriteTool/MemoryWriteTool.js.map +0 -7
  790. package/dist/tools/MemoryWriteTool/prompt.js +0 -7
  791. package/dist/tools/MemoryWriteTool/prompt.js.map +0 -7
  792. package/dist/tools/MultiEditTool/MultiEditTool.js +0 -328
  793. package/dist/tools/MultiEditTool/MultiEditTool.js.map +0 -7
  794. package/dist/tools/MultiEditTool/prompt.js +0 -50
  795. package/dist/tools/MultiEditTool/prompt.js.map +0 -7
  796. package/dist/tools/NotebookEditTool/NotebookEditTool.js +0 -257
  797. package/dist/tools/NotebookEditTool/NotebookEditTool.js.map +0 -7
  798. package/dist/tools/NotebookEditTool/prompt.js +0 -7
  799. package/dist/tools/NotebookEditTool/prompt.js.map +0 -7
  800. package/dist/tools/NotebookReadTool/NotebookReadTool.js +0 -218
  801. package/dist/tools/NotebookReadTool/NotebookReadTool.js.map +0 -7
  802. package/dist/tools/NotebookReadTool/prompt.js +0 -7
  803. package/dist/tools/NotebookReadTool/prompt.js.map +0 -7
  804. package/dist/tools/PlanModeTool/EnterPlanModeTool.js +0 -81
  805. package/dist/tools/PlanModeTool/EnterPlanModeTool.js.map +0 -7
  806. package/dist/tools/PlanModeTool/ExitPlanModeTool.js +0 -111
  807. package/dist/tools/PlanModeTool/ExitPlanModeTool.js.map +0 -7
  808. package/dist/tools/PlanModeTool/prompt.js +0 -94
  809. package/dist/tools/PlanModeTool/prompt.js.map +0 -7
  810. package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js +0 -130
  811. package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js.map +0 -7
  812. package/dist/tools/ReadMcpResourceTool/prompt.js +0 -17
  813. package/dist/tools/ReadMcpResourceTool/prompt.js.map +0 -7
  814. package/dist/tools/SkillTool/SkillTool.js +0 -227
  815. package/dist/tools/SkillTool/SkillTool.js.map +0 -7
  816. package/dist/tools/SkillTool/prompt.js +0 -81
  817. package/dist/tools/SkillTool/prompt.js.map +0 -7
  818. package/dist/tools/SlashCommandTool/SlashCommandTool.js +0 -416
  819. package/dist/tools/SlashCommandTool/SlashCommandTool.js.map +0 -7
  820. package/dist/tools/SlashCommandTool/prompt.js +0 -35
  821. package/dist/tools/SlashCommandTool/prompt.js.map +0 -7
  822. package/dist/tools/TaskCreateTool/TaskCreateTool.js +0 -102
  823. package/dist/tools/TaskCreateTool/TaskCreateTool.js.map +0 -7
  824. package/dist/tools/TaskCreateTool/prompt.js +0 -47
  825. package/dist/tools/TaskCreateTool/prompt.js.map +0 -7
  826. package/dist/tools/TaskGetTool/TaskGetTool.js +0 -115
  827. package/dist/tools/TaskGetTool/TaskGetTool.js.map +0 -7
  828. package/dist/tools/TaskGetTool/prompt.js +0 -28
  829. package/dist/tools/TaskGetTool/prompt.js.map +0 -7
  830. package/dist/tools/TaskListTool/TaskListTool.js +0 -102
  831. package/dist/tools/TaskListTool/TaskListTool.js.map +0 -7
  832. package/dist/tools/TaskListTool/prompt.js +0 -27
  833. package/dist/tools/TaskListTool/prompt.js.map +0 -7
  834. package/dist/tools/TaskOutputTool/TaskOutputTool.js +0 -190
  835. package/dist/tools/TaskOutputTool/TaskOutputTool.js.map +0 -7
  836. package/dist/tools/TaskOutputTool/prompt.js +0 -15
  837. package/dist/tools/TaskOutputTool/prompt.js.map +0 -7
  838. package/dist/tools/TaskStopTool/TaskStopTool.js +0 -150
  839. package/dist/tools/TaskStopTool/TaskStopTool.js.map +0 -7
  840. package/dist/tools/TaskStopTool/prompt.js +0 -15
  841. package/dist/tools/TaskStopTool/prompt.js.map +0 -7
  842. package/dist/tools/TaskTool/TaskTool.js +0 -861
  843. package/dist/tools/TaskTool/TaskTool.js.map +0 -7
  844. package/dist/tools/TaskTool/constants.js +0 -5
  845. package/dist/tools/TaskTool/constants.js.map +0 -7
  846. package/dist/tools/TaskTool/prompt.js +0 -117
  847. package/dist/tools/TaskTool/prompt.js.map +0 -7
  848. package/dist/tools/TaskUpdateTool/TaskUpdateTool.js +0 -134
  849. package/dist/tools/TaskUpdateTool/TaskUpdateTool.js.map +0 -7
  850. package/dist/tools/TaskUpdateTool/prompt.js +0 -81
  851. package/dist/tools/TaskUpdateTool/prompt.js.map +0 -7
  852. package/dist/tools/ThinkTool/ThinkTool.js +0 -45
  853. package/dist/tools/ThinkTool/ThinkTool.js.map +0 -7
  854. package/dist/tools/ThinkTool/prompt.js +0 -16
  855. package/dist/tools/ThinkTool/prompt.js.map +0 -7
  856. package/dist/tools/TodoWriteTool/TodoWriteTool.js +0 -232
  857. package/dist/tools/TodoWriteTool/TodoWriteTool.js.map +0 -7
  858. package/dist/tools/TodoWriteTool/prompt.js +0 -87
  859. package/dist/tools/TodoWriteTool/prompt.js.map +0 -7
  860. package/dist/tools/URLFetcherTool/URLFetcherTool.js +0 -143
  861. package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +0 -7
  862. package/dist/tools/URLFetcherTool/cache.js +0 -95
  863. package/dist/tools/URLFetcherTool/cache.js.map +0 -7
  864. package/dist/tools/URLFetcherTool/htmlToMarkdown.js +0 -44
  865. package/dist/tools/URLFetcherTool/htmlToMarkdown.js.map +0 -7
  866. package/dist/tools/URLFetcherTool/prompt.js +0 -27
  867. package/dist/tools/URLFetcherTool/prompt.js.map +0 -7
  868. package/dist/tools/WebSearchTool/WebSearchTool.js +0 -91
  869. package/dist/tools/WebSearchTool/WebSearchTool.js.map +0 -7
  870. package/dist/tools/WebSearchTool/prompt.js +0 -23
  871. package/dist/tools/WebSearchTool/prompt.js.map +0 -7
  872. package/dist/tools/WebSearchTool/searchProviders.js +0 -58
  873. package/dist/tools/WebSearchTool/searchProviders.js.map +0 -7
  874. package/dist/tools/lsTool/lsTool.js +0 -201
  875. package/dist/tools/lsTool/lsTool.js.map +0 -7
  876. package/dist/tools/lsTool/prompt.js +0 -5
  877. package/dist/tools/lsTool/prompt.js.map +0 -7
  878. package/dist/tools.js +0 -127
  879. package/dist/tools.js.map +0 -7
  880. package/dist/types/PermissionMode.js +0 -131
  881. package/dist/types/PermissionMode.js.map +0 -7
  882. package/dist/types/RequestContext.js +0 -47
  883. package/dist/types/RequestContext.js.map +0 -7
  884. package/dist/types/agentTeams.js +0 -1
  885. package/dist/types/agentTeams.js.map +0 -7
  886. package/dist/types/askUserQuestion.js +0 -1
  887. package/dist/types/askUserQuestion.js.map +0 -7
  888. package/dist/types/common.d.js +0 -1
  889. package/dist/types/common.d.js.map +0 -7
  890. package/dist/types/conversation.js +0 -1
  891. package/dist/types/conversation.js.map +0 -7
  892. package/dist/types/core.js +0 -1
  893. package/dist/types/core.js.map +0 -7
  894. package/dist/types/hooks.js +0 -45
  895. package/dist/types/hooks.js.map +0 -7
  896. package/dist/types/interactionRound.js +0 -1
  897. package/dist/types/interactionRound.js.map +0 -7
  898. package/dist/types/logs.js +0 -1
  899. package/dist/types/logs.js.map +0 -7
  900. package/dist/types/marketplace.js +0 -107
  901. package/dist/types/marketplace.js.map +0 -7
  902. package/dist/types/messageGroup.js +0 -36
  903. package/dist/types/messageGroup.js.map +0 -7
  904. package/dist/types/modelCapabilities.js +0 -1
  905. package/dist/types/modelCapabilities.js.map +0 -7
  906. package/dist/types/notebook.js +0 -1
  907. package/dist/types/notebook.js.map +0 -7
  908. package/dist/types/plugin.js +0 -84
  909. package/dist/types/plugin.js.map +0 -7
  910. package/dist/types/subagent.js +0 -1
  911. package/dist/types/subagent.js.map +0 -7
  912. package/dist/types/thinking.js +0 -1
  913. package/dist/types/thinking.js.map +0 -7
  914. package/dist/utils/BackgroundShellManager.js +0 -378
  915. package/dist/utils/BackgroundShellManager.js.map +0 -7
  916. package/dist/utils/CircuitBreaker.js +0 -242
  917. package/dist/utils/CircuitBreaker.js.map +0 -7
  918. package/dist/utils/Cursor.js +0 -315
  919. package/dist/utils/Cursor.js.map +0 -7
  920. package/dist/utils/MessageBatchBuffer.js +0 -102
  921. package/dist/utils/MessageBatchBuffer.js.map +0 -7
  922. package/dist/utils/PersistentShell.js +0 -526
  923. package/dist/utils/PersistentShell.js.map +0 -7
  924. package/dist/utils/advancedFuzzyMatcher.js +0 -209
  925. package/dist/utils/advancedFuzzyMatcher.js.map +0 -7
  926. package/dist/utils/agentHookExecutor.js +0 -103
  927. package/dist/utils/agentHookExecutor.js.map +0 -7
  928. package/dist/utils/agentLoader.js +0 -518
  929. package/dist/utils/agentLoader.js.map +0 -7
  930. package/dist/utils/agentMemory.js +0 -134
  931. package/dist/utils/agentMemory.js.map +0 -7
  932. package/dist/utils/agentStorage.js +0 -59
  933. package/dist/utils/agentStorage.js.map +0 -7
  934. package/dist/utils/agentTranscripts.js +0 -641
  935. package/dist/utils/agentTranscripts.js.map +0 -7
  936. package/dist/utils/animationManager.js +0 -213
  937. package/dist/utils/animationManager.js.map +0 -7
  938. package/dist/utils/animationSync.js +0 -110
  939. package/dist/utils/animationSync.js.map +0 -7
  940. package/dist/utils/array.js +0 -7
  941. package/dist/utils/array.js.map +0 -7
  942. package/dist/utils/ask.js +0 -79
  943. package/dist/utils/ask.js.map +0 -7
  944. package/dist/utils/async.js +0 -167
  945. package/dist/utils/async.js.map +0 -7
  946. package/dist/utils/asyncFile.js +0 -215
  947. package/dist/utils/asyncFile.js.map +0 -7
  948. package/dist/utils/auth.js +0 -11
  949. package/dist/utils/auth.js.map +0 -7
  950. package/dist/utils/autoCompactCore.js +0 -186
  951. package/dist/utils/autoCompactCore.js.map +0 -7
  952. package/dist/utils/autoUpdater.js +0 -113
  953. package/dist/utils/autoUpdater.js.map +0 -7
  954. package/dist/utils/backgroundAgentManager.js +0 -231
  955. package/dist/utils/backgroundAgentManager.js.map +0 -7
  956. package/dist/utils/browser.js +0 -15
  957. package/dist/utils/browser.js.map +0 -7
  958. package/dist/utils/claudeCodeSync.js +0 -439
  959. package/dist/utils/claudeCodeSync.js.map +0 -7
  960. package/dist/utils/cleanup.js +0 -54
  961. package/dist/utils/cleanup.js.map +0 -7
  962. package/dist/utils/commands.js +0 -219
  963. package/dist/utils/commands.js.map +0 -7
  964. package/dist/utils/commonUnixCommands.js +0 -689
  965. package/dist/utils/commonUnixCommands.js.map +0 -7
  966. package/dist/utils/compressionMode.js +0 -47
  967. package/dist/utils/compressionMode.js.map +0 -7
  968. package/dist/utils/config.js +0 -691
  969. package/dist/utils/config.js.map +0 -7
  970. package/dist/utils/configPaths.js +0 -199
  971. package/dist/utils/configPaths.js.map +0 -7
  972. package/dist/utils/configSchema.js +0 -227
  973. package/dist/utils/configSchema.js.map +0 -7
  974. package/dist/utils/conversationRecovery.js +0 -54
  975. package/dist/utils/conversationRecovery.js.map +0 -7
  976. package/dist/utils/credentials/CredentialStore.js +0 -1
  977. package/dist/utils/credentials/CredentialStore.js.map +0 -7
  978. package/dist/utils/credentials/EncryptedFileStore.js +0 -157
  979. package/dist/utils/credentials/EncryptedFileStore.js.map +0 -7
  980. package/dist/utils/credentials/index.js +0 -37
  981. package/dist/utils/credentials/index.js.map +0 -7
  982. package/dist/utils/credentials/migration.js +0 -82
  983. package/dist/utils/credentials/migration.js.map +0 -7
  984. package/dist/utils/debugLogger.js +0 -889
  985. package/dist/utils/debugLogger.js.map +0 -7
  986. package/dist/utils/diff.js +0 -32
  987. package/dist/utils/diff.js.map +0 -7
  988. package/dist/utils/env.js +0 -45
  989. package/dist/utils/env.js.map +0 -7
  990. package/dist/utils/envConfig.js +0 -116
  991. package/dist/utils/envConfig.js.map +0 -7
  992. package/dist/utils/errorHandling.js +0 -89
  993. package/dist/utils/errorHandling.js.map +0 -7
  994. package/dist/utils/errors.js +0 -23
  995. package/dist/utils/errors.js.map +0 -7
  996. package/dist/utils/execFileNoThrow.js +0 -45
  997. package/dist/utils/execFileNoThrow.js.map +0 -7
  998. package/dist/utils/exit.js +0 -73
  999. package/dist/utils/exit.js.map +0 -7
  1000. package/dist/utils/expertChatStorage.js +0 -78
  1001. package/dist/utils/expertChatStorage.js.map +0 -7
  1002. package/dist/utils/file.js +0 -282
  1003. package/dist/utils/file.js.map +0 -7
  1004. package/dist/utils/fileRecoveryCore.js +0 -41
  1005. package/dist/utils/fileRecoveryCore.js.map +0 -7
  1006. package/dist/utils/format.js +0 -109
  1007. package/dist/utils/format.js.map +0 -7
  1008. package/dist/utils/fuzzyMatcher.js +0 -258
  1009. package/dist/utils/fuzzyMatcher.js.map +0 -7
  1010. package/dist/utils/generators.js +0 -116
  1011. package/dist/utils/generators.js.map +0 -7
  1012. package/dist/utils/git.js +0 -83
  1013. package/dist/utils/git.js.map +0 -7
  1014. package/dist/utils/globalErrorHandler.js +0 -149
  1015. package/dist/utils/globalErrorHandler.js.map +0 -7
  1016. package/dist/utils/gpt5.js +0 -146
  1017. package/dist/utils/gpt5.js.map +0 -7
  1018. package/dist/utils/groupHandlers/index.js +0 -8
  1019. package/dist/utils/groupHandlers/index.js.map +0 -7
  1020. package/dist/utils/groupHandlers/parallelTasksHandler.js +0 -140
  1021. package/dist/utils/groupHandlers/parallelTasksHandler.js.map +0 -7
  1022. package/dist/utils/groupHandlers/taskHandler.js +0 -104
  1023. package/dist/utils/groupHandlers/taskHandler.js.map +0 -7
  1024. package/dist/utils/groupHandlers/types.js +0 -1
  1025. package/dist/utils/groupHandlers/types.js.map +0 -7
  1026. package/dist/utils/historyManager.js +0 -234
  1027. package/dist/utils/historyManager.js.map +0 -7
  1028. package/dist/utils/hookManager.js +0 -482
  1029. package/dist/utils/hookManager.js.map +0 -7
  1030. package/dist/utils/http.js +0 -7
  1031. package/dist/utils/http.js.map +0 -7
  1032. package/dist/utils/imagePaste.js +0 -29
  1033. package/dist/utils/imagePaste.js.map +0 -7
  1034. package/dist/utils/json.js +0 -16
  1035. package/dist/utils/json.js.map +0 -7
  1036. package/dist/utils/log.js +0 -329
  1037. package/dist/utils/log.js.map +0 -7
  1038. package/dist/utils/logRotation.js +0 -224
  1039. package/dist/utils/logRotation.js.map +0 -7
  1040. package/dist/utils/markdown.js +0 -246
  1041. package/dist/utils/markdown.js.map +0 -7
  1042. package/dist/utils/marketplaceManager.js +0 -545
  1043. package/dist/utils/marketplaceManager.js.map +0 -7
  1044. package/dist/utils/memSafety.js +0 -264
  1045. package/dist/utils/memSafety.js.map +0 -7
  1046. package/dist/utils/memoizeWithTTL.js +0 -25
  1047. package/dist/utils/memoizeWithTTL.js.map +0 -7
  1048. package/dist/utils/messageContextManager.js +0 -195
  1049. package/dist/utils/messageContextManager.js.map +0 -7
  1050. package/dist/utils/messageGroupManager.js +0 -274
  1051. package/dist/utils/messageGroupManager.js.map +0 -7
  1052. package/dist/utils/messages.js +0 -667
  1053. package/dist/utils/messages.js.map +0 -7
  1054. package/dist/utils/migration/index.js +0 -37
  1055. package/dist/utils/migration/index.js.map +0 -7
  1056. package/dist/utils/migration/migrateHistory.js +0 -273
  1057. package/dist/utils/migration/migrateHistory.js.map +0 -7
  1058. package/dist/utils/migration/migrateTodos.js +0 -323
  1059. package/dist/utils/migration/migrateTodos.js.map +0 -7
  1060. package/dist/utils/model.js +0 -846
  1061. package/dist/utils/model.js.map +0 -7
  1062. package/dist/utils/pasteCache.js +0 -309
  1063. package/dist/utils/pasteCache.js.map +0 -7
  1064. package/dist/utils/permissions/filesystem.js +0 -236
  1065. package/dist/utils/permissions/filesystem.js.map +0 -7
  1066. package/dist/utils/plan/planMode.js +0 -143
  1067. package/dist/utils/plan/planMode.js.map +0 -7
  1068. package/dist/utils/pluginInstaller.js +0 -518
  1069. package/dist/utils/pluginInstaller.js.map +0 -7
  1070. package/dist/utils/pluginLoader.js +0 -801
  1071. package/dist/utils/pluginLoader.js.map +0 -7
  1072. package/dist/utils/pluginRegistry.js +0 -111
  1073. package/dist/utils/pluginRegistry.js.map +0 -7
  1074. package/dist/utils/pluginValidator.js +0 -798
  1075. package/dist/utils/pluginValidator.js.map +0 -7
  1076. package/dist/utils/ptyCompat.js +0 -125
  1077. package/dist/utils/ptyCompat.js.map +0 -7
  1078. package/dist/utils/replStateMachine.js +0 -145
  1079. package/dist/utils/replStateMachine.js.map +0 -7
  1080. package/dist/utils/repoFetcher.js +0 -110
  1081. package/dist/utils/repoFetcher.js.map +0 -7
  1082. package/dist/utils/ripgrep.js +0 -236
  1083. package/dist/utils/ripgrep.js.map +0 -7
  1084. package/dist/utils/roundConverter.js +0 -262
  1085. package/dist/utils/roundConverter.js.map +0 -7
  1086. package/dist/utils/safeFetch.js +0 -45
  1087. package/dist/utils/safeFetch.js.map +0 -7
  1088. package/dist/utils/safePath.js +0 -132
  1089. package/dist/utils/safePath.js.map +0 -7
  1090. package/dist/utils/sanitizeInput.js +0 -32
  1091. package/dist/utils/sanitizeInput.js.map +0 -7
  1092. package/dist/utils/secureFile.js +0 -512
  1093. package/dist/utils/secureFile.js.map +0 -7
  1094. package/dist/utils/secureKeyStorage.js +0 -312
  1095. package/dist/utils/secureKeyStorage.js.map +0 -7
  1096. package/dist/utils/sensitiveFiles.js +0 -125
  1097. package/dist/utils/sensitiveFiles.js.map +0 -7
  1098. package/dist/utils/session/sessionPlugins.js +0 -67
  1099. package/dist/utils/session/sessionPlugins.js.map +0 -7
  1100. package/dist/utils/sessionIndex.js +0 -192
  1101. package/dist/utils/sessionIndex.js.map +0 -7
  1102. package/dist/utils/sessionState.js +0 -22
  1103. package/dist/utils/sessionState.js.map +0 -7
  1104. package/dist/utils/sessionTracker.js +0 -170
  1105. package/dist/utils/sessionTracker.js.map +0 -7
  1106. package/dist/utils/skillLoader.js +0 -230
  1107. package/dist/utils/skillLoader.js.map +0 -7
  1108. package/dist/utils/state.js +0 -24
  1109. package/dist/utils/state.js.map +0 -7
  1110. package/dist/utils/stats.js +0 -417
  1111. package/dist/utils/stats.js.map +0 -7
  1112. package/dist/utils/streamingState.js +0 -52
  1113. package/dist/utils/streamingState.js.map +0 -7
  1114. package/dist/utils/stringSubstitution.js +0 -106
  1115. package/dist/utils/stringSubstitution.js.map +0 -7
  1116. package/dist/utils/style.js +0 -34
  1117. package/dist/utils/style.js.map +0 -7
  1118. package/dist/utils/taskDisplayUtils.js +0 -257
  1119. package/dist/utils/taskDisplayUtils.js.map +0 -7
  1120. package/dist/utils/teamConfig.js +0 -624
  1121. package/dist/utils/teamConfig.js.map +0 -7
  1122. package/dist/utils/terminal.js +0 -59
  1123. package/dist/utils/terminal.js.map +0 -7
  1124. package/dist/utils/theme.js +0 -134
  1125. package/dist/utils/theme.js.map +0 -7
  1126. package/dist/utils/thinking.js +0 -59
  1127. package/dist/utils/thinking.js.map +0 -7
  1128. package/dist/utils/todoChangeCalculator.js +0 -64
  1129. package/dist/utils/todoChangeCalculator.js.map +0 -7
  1130. package/dist/utils/todoStorage.js +0 -413
  1131. package/dist/utils/todoStorage.js.map +0 -7
  1132. package/dist/utils/tokens.js +0 -30
  1133. package/dist/utils/tokens.js.map +0 -7
  1134. package/dist/utils/toolExecutionController.js +0 -109
  1135. package/dist/utils/toolExecutionController.js.map +0 -7
  1136. package/dist/utils/toolRiskClassification.js +0 -201
  1137. package/dist/utils/toolRiskClassification.js.map +0 -7
  1138. package/dist/utils/toolTimeout.js +0 -136
  1139. package/dist/utils/toolTimeout.js.map +0 -7
  1140. package/dist/utils/tooling/safeRender.js +0 -115
  1141. package/dist/utils/tooling/safeRender.js.map +0 -7
  1142. package/dist/utils/unaryLogging.js +0 -6
  1143. package/dist/utils/unaryLogging.js.map +0 -7
  1144. package/dist/utils/user.js +0 -40
  1145. package/dist/utils/user.js.map +0 -7
  1146. package/dist/utils/userFriendlyError.js +0 -346
  1147. package/dist/utils/userFriendlyError.js.map +0 -7
  1148. package/dist/utils/validate.js +0 -132
  1149. package/dist/utils/validate.js.map +0 -7
  1150. package/dist/version.js +0 -7
  1151. package/dist/version.js.map +0 -7
  1152. package/dist/yoga.wasm +0 -0
  1153. /package/{dist/utils/vendor → vendor}/ripgrep/arm64-darwin/rg +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/services/openai.ts"],
4
- "sourcesContent": ["import { OpenAI } from 'openai'\nimport { getGlobalConfig } from '@utils/config'\nimport { ProxyAgent, fetch, Response } from 'undici'\nimport { setSessionState, getSessionState } from '@utils/sessionState'\nimport {\n debug as debugLogger,\n getCurrentRequest,\n logAPIError,\n} from '@utils/debugLogger'\nimport { logError } from '@utils/log'\nimport {\n abortableDelay,\n getRetryDelay as sharedGetRetryDelay,\n} from '@utils/async'\nimport {\n formatErrorForUser,\n ErrorCategory,\n UserFriendlyError,\n} from '@utils/userFriendlyError'\nimport { isOpenAICompatibleProvider } from '@constants/providers'\nimport { getEffectiveCapabilities } from '@constants/providerRegistry'\n\n/**\n * Calculate retry delay \u2014 delegates to shared utility\n */\nfunction getRetryDelay(attempt: number): number {\n return sharedGetRetryDelay(attempt)\n}\n\nenum ModelErrorType {\n MaxLength = '1024',\n MaxCompletionTokens = 'max_completion_tokens',\n TemperatureRestriction = 'temperature_restriction',\n StreamOptions = 'stream_options',\n Citations = 'citations',\n RateLimit = 'rate_limit',\n}\n\nfunction getModelErrorKey(\n baseURL: string,\n model: string,\n type: ModelErrorType,\n): string {\n return `${baseURL}:${model}:${type}`\n}\n\nfunction hasModelError(\n baseURL: string,\n model: string,\n type: ModelErrorType,\n): boolean {\n return !!getSessionState('modelErrors')[\n getModelErrorKey(baseURL, model, type)\n ]\n}\n\nfunction setModelError(\n baseURL: string,\n model: string,\n type: ModelErrorType,\n error: string,\n) {\n setSessionState('modelErrors', {\n [getModelErrorKey(baseURL, model, type)]: error,\n })\n}\n\n// More flexible error detection system\ntype ErrorDetector = (errMsg: string) => boolean\ntype ErrorFixer = (\n opts: OpenAI.ChatCompletionCreateParams,\n) => Promise<void> | void\ninterface ErrorHandler {\n type: ModelErrorType\n detect: ErrorDetector\n fix: ErrorFixer\n}\n\n// GPT-5 specific error handlers with enhanced detection patterns\nconst GPT5_ERROR_HANDLERS: ErrorHandler[] = [\n {\n type: ModelErrorType.MaxCompletionTokens,\n detect: errMsg => {\n const lowerMsg = errMsg.toLowerCase()\n return (\n // Exact OpenAI GPT-5 error message\n (lowerMsg.includes(\"unsupported parameter: 'max_tokens'\") &&\n lowerMsg.includes(\"'max_completion_tokens'\")) ||\n // Generic max_tokens error patterns\n (lowerMsg.includes('max_tokens') &&\n lowerMsg.includes('max_completion_tokens')) ||\n (lowerMsg.includes('max_tokens') &&\n lowerMsg.includes('not supported')) ||\n (lowerMsg.includes('max_tokens') &&\n lowerMsg.includes('use max_completion_tokens')) ||\n // Additional patterns for various providers\n (lowerMsg.includes('invalid parameter') &&\n lowerMsg.includes('max_tokens')) ||\n (lowerMsg.includes('parameter error') &&\n lowerMsg.includes('max_tokens'))\n )\n },\n fix: async opts => {\n debugLogger.info('GPT5_FIX', {\n action: 'convert_max_tokens',\n from: opts.max_tokens,\n })\n if ('max_tokens' in opts) {\n opts.max_completion_tokens = opts.max_tokens\n delete opts.max_tokens\n }\n },\n },\n {\n type: ModelErrorType.TemperatureRestriction,\n detect: errMsg => {\n const lowerMsg = errMsg.toLowerCase()\n return (\n lowerMsg.includes('temperature') &&\n (lowerMsg.includes('only supports') ||\n lowerMsg.includes('must be 1') ||\n lowerMsg.includes('invalid temperature'))\n )\n },\n fix: async opts => {\n debugLogger.info('GPT5_FIX', {\n action: 'adjust_temperature',\n from: opts.temperature,\n to: 1,\n })\n opts.temperature = 1\n },\n },\n // Add more GPT-5 specific handlers as needed\n]\n\n// Standard error handlers\nconst ERROR_HANDLERS: ErrorHandler[] = [\n {\n type: ModelErrorType.MaxLength,\n detect: errMsg =>\n errMsg.includes('Expected a string with maximum length 1024'),\n fix: async opts => {\n const toolDescriptions = {}\n for (const tool of opts.tools || []) {\n if (tool.function.description.length <= 1024) continue\n let str = ''\n let remainder = ''\n for (let line of tool.function.description.split('\\n')) {\n if (str.length + line.length < 1024) {\n str += line + '\\n'\n } else {\n remainder += line + '\\n'\n }\n }\n\n tool.function.description = str\n toolDescriptions[tool.function.name] = remainder\n }\n if (Object.keys(toolDescriptions).length > 0) {\n let content = '<additional-tool-usage-instructions>\\n\\n'\n for (const [name, description] of Object.entries(toolDescriptions)) {\n content += `<${name}>\\n${description}\\n</${name}>\\n\\n`\n }\n content += '</additional-tool-usage-instructions>'\n\n for (let i = opts.messages.length - 1; i >= 0; i--) {\n if (opts.messages[i].role === 'system') {\n opts.messages.splice(i + 1, 0, {\n role: 'system',\n content,\n })\n break\n }\n }\n }\n },\n },\n {\n type: ModelErrorType.MaxCompletionTokens,\n detect: errMsg => errMsg.includes(\"Use 'max_completion_tokens'\"),\n fix: async opts => {\n opts.max_completion_tokens = opts.max_tokens\n delete opts.max_tokens\n },\n },\n {\n type: ModelErrorType.StreamOptions,\n detect: errMsg => errMsg.includes('stream_options'),\n fix: async opts => {\n delete opts.stream_options\n },\n },\n {\n type: ModelErrorType.Citations,\n detect: errMsg =>\n errMsg.includes('Extra inputs are not permitted') &&\n errMsg.includes('citations'),\n fix: async opts => {\n if (!opts.messages) return\n\n for (const message of opts.messages) {\n if (!message) continue\n\n if (Array.isArray(message.content)) {\n for (const item of message.content) {\n // Convert to unknown first to safely access properties\n if (item && typeof item === 'object') {\n const itemObj = item as unknown as Record<string, unknown>\n if ('citations' in itemObj) {\n delete itemObj.citations\n }\n }\n }\n } else if (message.content && typeof message.content === 'object') {\n // Convert to unknown first to safely access properties\n const contentObj = message.content as unknown as Record<\n string,\n unknown\n >\n if ('citations' in contentObj) {\n delete contentObj.citations\n }\n }\n }\n },\n },\n]\n\n// Model-specific feature flags - can be extended with more properties as needed\ninterface ModelFeatures {\n usesMaxCompletionTokens: boolean\n supportsResponsesAPI?: boolean\n requiresTemperatureOne?: boolean\n supportsVerbosityControl?: boolean\n supportsCustomTools?: boolean\n supportsAllowedTools?: boolean\n}\n\n// Map of model identifiers to their specific features\nconst MODEL_FEATURES: Record<string, ModelFeatures> = {\n // OpenAI thinking models\n o1: { usesMaxCompletionTokens: true },\n 'o1-preview': { usesMaxCompletionTokens: true },\n 'o1-mini': { usesMaxCompletionTokens: true },\n 'o1-pro': { usesMaxCompletionTokens: true },\n 'o3-mini': { usesMaxCompletionTokens: true },\n // GPT-5 models\n 'gpt-5': {\n usesMaxCompletionTokens: true,\n supportsResponsesAPI: true,\n requiresTemperatureOne: true,\n supportsVerbosityControl: true,\n supportsCustomTools: true,\n supportsAllowedTools: true,\n },\n 'gpt-5-mini': {\n usesMaxCompletionTokens: true,\n supportsResponsesAPI: true,\n requiresTemperatureOne: true,\n supportsVerbosityControl: true,\n supportsCustomTools: true,\n supportsAllowedTools: true,\n },\n 'gpt-5-nano': {\n usesMaxCompletionTokens: true,\n supportsResponsesAPI: true,\n requiresTemperatureOne: true,\n supportsVerbosityControl: true,\n supportsCustomTools: true,\n supportsAllowedTools: true,\n },\n 'gpt-5-chat-latest': {\n usesMaxCompletionTokens: true,\n supportsResponsesAPI: false, // Uses Chat Completions only\n requiresTemperatureOne: true,\n supportsVerbosityControl: true,\n },\n}\n\n// Helper to get model features based on model ID/name\nfunction getModelFeatures(modelName: string): ModelFeatures {\n if (!modelName || typeof modelName !== 'string') {\n return { usesMaxCompletionTokens: false }\n }\n\n // Check for exact matches first (highest priority)\n if (MODEL_FEATURES[modelName]) {\n return MODEL_FEATURES[modelName]\n }\n\n // Simple GPT-5 detection: any model name containing 'gpt-5'\n if (modelName.toLowerCase().includes('gpt-5')) {\n return {\n usesMaxCompletionTokens: true,\n supportsResponsesAPI: true,\n requiresTemperatureOne: true,\n supportsVerbosityControl: true,\n supportsCustomTools: true,\n supportsAllowedTools: true,\n }\n }\n\n // Check for partial matches (e.g., other reasoning models)\n for (const [key, features] of Object.entries(MODEL_FEATURES)) {\n if (modelName.includes(key)) {\n return features\n }\n }\n\n // Default features for unknown models\n return { usesMaxCompletionTokens: false }\n}\n\n// Apply model-specific parameter transformations based on model features\nfunction applyModelSpecificTransformations(\n opts: OpenAI.ChatCompletionCreateParams,\n): void {\n if (!opts.model || typeof opts.model !== 'string') {\n return\n }\n\n const features = getModelFeatures(opts.model)\n const isGPT5 = opts.model.toLowerCase().includes('gpt-5')\n\n // \uD83D\uDD25 Enhanced GPT-5 Detection and Transformation\n if (isGPT5 || features.usesMaxCompletionTokens) {\n // Force max_completion_tokens for all GPT-5 models\n if ('max_tokens' in opts && !('max_completion_tokens' in opts)) {\n debugLogger.info('OPENAI_TRANSFORM', {\n action: 'max_tokens_to_completion',\n model: opts.model,\n value: opts.max_tokens,\n })\n opts.max_completion_tokens = opts.max_tokens\n delete opts.max_tokens\n }\n\n // Force temperature = 1 for GPT-5 models\n if (features.requiresTemperatureOne && 'temperature' in opts) {\n if (opts.temperature !== 1 && opts.temperature !== undefined) {\n debugLogger.info('OPENAI_TRANSFORM', {\n action: 'temperature_constraint',\n model: opts.model,\n from: opts.temperature,\n to: 1,\n })\n opts.temperature = 1\n }\n }\n\n // Remove unsupported parameters for GPT-5\n if (isGPT5) {\n // Remove parameters that may not be supported by GPT-5\n delete opts.frequency_penalty\n delete opts.presence_penalty\n delete opts.logit_bias\n delete opts.user\n\n // Add reasoning_effort if not present and model supports it\n if (!opts.reasoning_effort && features.supportsVerbosityControl) {\n opts.reasoning_effort = 'medium' // Default reasoning effort for coding tasks\n }\n }\n }\n\n // Apply transformations for non-GPT-5 models\n else {\n // Standard max_tokens to max_completion_tokens conversion for other reasoning models\n if (\n features.usesMaxCompletionTokens &&\n 'max_tokens' in opts &&\n !('max_completion_tokens' in opts)\n ) {\n opts.max_completion_tokens = opts.max_tokens\n delete opts.max_tokens\n }\n }\n\n // Add more transformations here as needed\n}\n\n/**\n * Normalize request parameters based on provider capabilities from the registry.\n * This is a pre-request transform that ensures parameters are compatible with\n * the target provider and model.\n */\nexport function normalizeRequestParams(\n opts: OpenAI.ChatCompletionCreateParams,\n provider: string,\n): void {\n if (!opts.model || typeof opts.model !== 'string') {\n return\n }\n\n const caps = getEffectiveCapabilities(provider, opts.model)\n\n // 1. Normalize max tokens field name\n const correctField = caps.maxTokensField\n if (correctField === 'max_completion_tokens') {\n if ('max_tokens' in opts && !('max_completion_tokens' in opts)) {\n opts.max_completion_tokens = opts.max_tokens\n delete opts.max_tokens\n }\n } else if (correctField === 'max_tokens') {\n if ('max_completion_tokens' in opts && !('max_tokens' in opts)) {\n opts.max_tokens = opts.max_completion_tokens\n delete opts.max_completion_tokens\n }\n }\n // max_output_tokens is only for Responses API, not Chat Completions\n\n // 2. Handle temperature based on provider/model capabilities\n if (caps.temperatureRange === 'omit') {\n // Model doesn't support temperature - remove it\n delete opts.temperature\n } else if ('temperature' in opts && opts.temperature !== undefined) {\n // Clamp temperature to provider's valid range\n const { min, max } = caps.temperatureRange\n opts.temperature = Math.max(min, Math.min(max, opts.temperature))\n }\n\n // 3. Downgrade tool_choice for providers that only support \"auto\"\n if (\n caps.supportsToolChoice === 'auto-only' &&\n opts.tool_choice &&\n typeof opts.tool_choice === 'object'\n ) {\n opts.tool_choice = 'auto'\n } else if (caps.supportsToolChoice === false) {\n delete opts.tool_choice\n }\n\n // 4. Limit stop sequences per provider capability\n if (\n caps.maxStopSequences !== null &&\n opts.stop &&\n Array.isArray(opts.stop) &&\n opts.stop.length > caps.maxStopSequences\n ) {\n opts.stop = opts.stop.slice(0, caps.maxStopSequences)\n }\n}\n\nasync function applyModelErrorFixes(\n opts: OpenAI.ChatCompletionCreateParams,\n baseURL: string,\n) {\n const isGPT5 = opts.model.startsWith('gpt-5')\n const handlers = isGPT5\n ? [...GPT5_ERROR_HANDLERS, ...ERROR_HANDLERS]\n : ERROR_HANDLERS\n\n for (const handler of handlers) {\n if (hasModelError(baseURL, opts.model, handler.type)) {\n await handler.fix(opts)\n return\n }\n }\n}\n\n// Helper function to try different endpoints for OpenAI-compatible providers\nasync function tryWithEndpointFallback(\n baseURL: string,\n opts: OpenAI.ChatCompletionCreateParams,\n headers: Record<string, string>,\n provider: string,\n proxy: any,\n signal?: AbortSignal, // \uD83D\uDD27 Add AbortSignal support\n): Promise<{ response: Response; endpoint: string }> {\n const endpointsToTry = []\n\n if (provider === 'minimax') {\n endpointsToTry.push('/text/chatcompletion_v2', '/chat/completions')\n } else {\n endpointsToTry.push('/chat/completions')\n }\n\n let lastError = null\n\n for (const endpoint of endpointsToTry) {\n try {\n const response = await fetch(`${baseURL}${endpoint}`, {\n method: 'POST',\n headers,\n body: JSON.stringify(opts.stream ? { ...opts, stream: true } : opts),\n dispatcher: proxy,\n signal: signal, // \uD83D\uDD27 Connect AbortSignal to fetch call\n })\n\n // If successful, return immediately\n if (response.ok) {\n return { response, endpoint }\n }\n\n // If it's a 404, try the next endpoint\n if (response.status === 404 && endpointsToTry.length > 1) {\n debugLogger.info('OPENAI_ENDPOINT', {\n status: 404,\n endpoint,\n action: 'trying_next',\n })\n continue\n }\n\n // For other error codes, return this response (don't try fallback)\n return { response, endpoint }\n } catch (error) {\n lastError = error\n // Network errors might be temporary, try next endpoint\n if (endpointsToTry.indexOf(endpoint) < endpointsToTry.length - 1) {\n debugLogger.warn('OPENAI_ENDPOINT', {\n error: 'network_error',\n endpoint,\n action: 'trying_next',\n })\n continue\n }\n }\n }\n\n // If we get here, all endpoints failed\n throw lastError || new Error('All endpoints failed')\n}\n\n// Export shared utilities for GPT-5 compatibility\nexport {\n getGPT5CompletionWithProfile,\n getModelFeatures,\n applyModelSpecificTransformations,\n}\n\nexport async function getCompletionWithProfile(\n modelProfile: any,\n opts: OpenAI.ChatCompletionCreateParams,\n attempt: number = 0,\n maxAttempts: number = 10,\n signal?: AbortSignal, // \uD83D\uDD27 CRITICAL FIX: Add AbortSignal support\n): Promise<OpenAI.ChatCompletion | AsyncIterable<OpenAI.ChatCompletionChunk>> {\n if (attempt >= maxAttempts) {\n throw new Error('Max attempts reached')\n }\n\n const provider = modelProfile?.provider || 'anthropic'\n const baseURL = modelProfile?.baseURL\n const apiKey = modelProfile?.apiKey\n const proxy = getGlobalConfig().proxy\n ? new ProxyAgent(getGlobalConfig().proxy)\n : undefined\n\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n }\n\n if (apiKey) {\n if (provider === 'azure') {\n headers['api-key'] = apiKey\n } else {\n headers['Authorization'] = `Bearer ${apiKey}`\n }\n }\n\n applyModelSpecificTransformations(opts)\n normalizeRequestParams(opts, provider)\n await applyModelErrorFixes(opts, baseURL || '')\n\n // \uD83D\uDD25 REAL-TIME API CALL DEBUG - \u4F7F\u7528\u5168\u5C40\u65E5\u5FD7\u7CFB\u7EDF\n debugLogger.api('OPENAI_API_CALL_START', {\n endpoint: baseURL || 'DEFAULT_OPENAI',\n model: opts.model,\n provider,\n apiKeyConfigured: !!apiKey,\n apiKeyPrefix: apiKey ? apiKey.substring(0, 8) : null,\n maxTokens: opts.max_tokens,\n temperature: opts.temperature,\n messageCount: opts.messages?.length || 0,\n streamMode: opts.stream,\n timestamp: new Date().toISOString(),\n modelProfileModelName: modelProfile?.modelName,\n modelProfileName: modelProfile?.name,\n })\n\n // Make sure all tool messages have string content\n opts.messages = opts.messages.map(msg => {\n if (msg.role === 'tool') {\n if (Array.isArray(msg.content)) {\n return {\n ...msg,\n content:\n msg.content\n .map(c => c.text || '')\n .filter(Boolean)\n .join('\\n\\n') || '(empty content)',\n }\n } else if (typeof msg.content !== 'string') {\n return {\n ...msg,\n content:\n typeof msg.content === 'undefined'\n ? '(empty content)'\n : JSON.stringify(msg.content),\n }\n }\n }\n return msg\n })\n\n // Define Azure-specific API endpoint with version\n const azureApiVersion = '2024-06-01'\n let endpoint = '/chat/completions'\n\n if (provider === 'azure') {\n endpoint = `/chat/completions?api-version=${azureApiVersion}`\n } else if (provider === 'minimax') {\n endpoint = '/text/chatcompletion_v2'\n }\n\n try {\n if (opts.stream) {\n let response: Response\n\n if (isOpenAICompatibleProvider(provider) && provider !== 'azure') {\n const result = await tryWithEndpointFallback(\n baseURL,\n opts,\n headers,\n provider,\n proxy,\n signal, // \uD83D\uDD27 Pass AbortSignal to endpoint fallback\n )\n response = result.response\n } else {\n response = await fetch(`${baseURL}${endpoint}`, {\n method: 'POST',\n headers,\n body: JSON.stringify({ ...opts, stream: true }),\n dispatcher: proxy,\n signal: signal, // \uD83D\uDD27 CRITICAL FIX: Connect AbortSignal to fetch call\n })\n }\n\n if (!response.ok) {\n // \uD83D\uDD27 CRITICAL FIX: Check abort signal BEFORE showing retry message\n if (signal?.aborted) {\n throw new Error('Request cancelled by user')\n }\n\n // \uD83D\uDD25 NEW: Parse error message to detect and handle specific API errors\n try {\n const errorData = await response.json()\n // Type guard for error data structure\n const hasError = (\n data: unknown,\n ): data is { error?: { message?: string }; message?: string } => {\n return typeof data === 'object' && data !== null\n }\n const errorMessage = hasError(errorData)\n ? errorData.error?.message ||\n errorData.message ||\n `HTTP ${response.status}`\n : `HTTP ${response.status}`\n\n // Check if this is a parameter error that we can fix\n const isGPT5 = opts.model.startsWith('gpt-5')\n const handlers = isGPT5\n ? [...GPT5_ERROR_HANDLERS, ...ERROR_HANDLERS]\n : ERROR_HANDLERS\n\n for (const handler of handlers) {\n if (handler.detect(errorMessage)) {\n debugLogger.info('OPENAI_ERROR_HANDLER', {\n type: handler.type,\n model: opts.model,\n error: errorMessage,\n })\n\n // Store this error for future requests\n setModelError(\n baseURL || '',\n opts.model,\n handler.type,\n errorMessage,\n )\n\n // Apply the fix and retry immediately\n await handler.fix(opts)\n debugLogger.info('OPENAI_ERROR_HANDLER', {\n action: 'fix_applied',\n type: handler.type,\n })\n\n return getCompletionWithProfile(\n modelProfile,\n opts,\n attempt + 1,\n maxAttempts,\n signal,\n )\n }\n }\n\n // If no specific handler found, log the error for debugging\n debugLogger.warn('OPENAI_UNHANDLED_ERROR', {\n status: response.status,\n error: errorMessage,\n })\n\n // Log API error using unified logger\n logAPIError({\n model: opts.model,\n endpoint: `${baseURL}${endpoint}`,\n status: response.status,\n error: errorMessage,\n request: opts,\n response: errorData,\n provider: provider,\n })\n } catch (parseError) {\n // If we can't parse the error, fall back to generic retry\n debugLogger.warn('OPENAI_PARSE_ERROR', { status: response.status })\n\n // Log parse error\n logAPIError({\n model: opts.model,\n endpoint: `${baseURL}${endpoint}`,\n status: response.status,\n error: `Could not parse error response: ${parseError.message}`,\n request: opts,\n response: { parseError: parseError.message },\n provider: provider,\n })\n }\n\n const delayMs = getRetryDelay(attempt)\n debugLogger.warn('API_RETRY', {\n status: response.status,\n delayMs,\n attempt: attempt + 1,\n maxAttempts,\n })\n try {\n await abortableDelay(delayMs, signal)\n } catch (error) {\n // If aborted during delay, throw the error to stop retrying\n if (error.message === 'Request was aborted') {\n throw new Error('Request cancelled by user')\n }\n throw error\n }\n return getCompletionWithProfile(\n modelProfile,\n opts,\n attempt + 1,\n maxAttempts,\n signal, // \uD83D\uDD27 Pass AbortSignal to recursive call\n )\n }\n\n const stream = createStreamProcessor(response.body as any, signal)\n return stream\n }\n\n // Non-streaming request\n let response: Response\n\n if (isOpenAICompatibleProvider(provider) && provider !== 'azure') {\n const result = await tryWithEndpointFallback(\n baseURL,\n opts,\n headers,\n provider,\n proxy,\n signal, // \uD83D\uDD27 Pass AbortSignal to endpoint fallback\n )\n response = result.response\n } else {\n response = await fetch(`${baseURL}${endpoint}`, {\n method: 'POST',\n headers,\n body: JSON.stringify(opts),\n dispatcher: proxy,\n signal: signal, // \uD83D\uDD27 CRITICAL FIX: Connect AbortSignal to non-streaming fetch call\n })\n }\n\n if (!response.ok) {\n // \uD83D\uDD27 CRITICAL FIX: Check abort signal BEFORE showing retry message\n if (signal?.aborted) {\n throw new Error('Request cancelled by user')\n }\n\n // \uD83D\uDD25 NEW: Parse error message to detect and handle specific API errors\n try {\n const errorData = await response.json()\n // Type guard for error data structure\n const hasError = (\n data: unknown,\n ): data is { error?: { message?: string }; message?: string } => {\n return typeof data === 'object' && data !== null\n }\n const errorMessage = hasError(errorData)\n ? errorData.error?.message ||\n errorData.message ||\n `HTTP ${response.status}`\n : `HTTP ${response.status}`\n\n // Check if this is a parameter error that we can fix\n const isGPT5 = opts.model.startsWith('gpt-5')\n const handlers = isGPT5\n ? [...GPT5_ERROR_HANDLERS, ...ERROR_HANDLERS]\n : ERROR_HANDLERS\n\n for (const handler of handlers) {\n if (handler.detect(errorMessage)) {\n debugLogger.info('OPENAI_ERROR_HANDLER', {\n type: handler.type,\n model: opts.model,\n error: errorMessage,\n })\n\n // Store this error for future requests\n setModelError(baseURL || '', opts.model, handler.type, errorMessage)\n\n // Apply the fix and retry immediately\n await handler.fix(opts)\n debugLogger.info('OPENAI_ERROR_HANDLER', {\n action: 'fix_applied',\n type: handler.type,\n })\n\n return getCompletionWithProfile(\n modelProfile,\n opts,\n attempt + 1,\n maxAttempts,\n signal,\n )\n }\n }\n\n // If no specific handler found, log the error for debugging\n debugLogger.warn('OPENAI_UNHANDLED_ERROR', {\n status: response.status,\n error: errorMessage,\n })\n } catch (parseError) {\n // If we can't parse the error, fall back to generic retry\n debugLogger.warn('OPENAI_PARSE_ERROR', { status: response.status })\n }\n\n const delayMs = getRetryDelay(attempt)\n debugLogger.warn('API_RETRY', {\n status: response.status,\n delayMs,\n attempt: attempt + 1,\n maxAttempts,\n })\n try {\n await abortableDelay(delayMs, signal)\n } catch (error) {\n // If aborted during delay, throw the error to stop retrying\n if (error.message === 'Request was aborted') {\n throw new Error('Request cancelled by user')\n }\n throw error\n }\n return getCompletionWithProfile(\n modelProfile,\n opts,\n attempt + 1,\n maxAttempts,\n signal, // \uD83D\uDD27 Pass AbortSignal to recursive call\n )\n }\n\n const responseData = (await response.json()) as OpenAI.ChatCompletion\n return responseData\n } catch (error) {\n // \uD83D\uDD27 CRITICAL FIX: Check abort signal BEFORE showing retry message\n if (signal?.aborted) {\n throw new Error('Request cancelled by user')\n }\n\n if (attempt < maxAttempts) {\n // \uD83D\uDD27 Double-check abort status to avoid showing misleading retry message\n if (signal?.aborted) {\n throw new Error('Request cancelled by user')\n }\n\n const delayMs = getRetryDelay(attempt)\n debugLogger.warn('API_RETRY', {\n error: 'network_error',\n delayMs,\n attempt: attempt + 1,\n maxAttempts,\n })\n try {\n await abortableDelay(delayMs, signal)\n } catch (error) {\n // If aborted during delay, throw the error to stop retrying\n if (error.message === 'Request was aborted') {\n throw new Error('Request cancelled by user')\n }\n throw error\n }\n return getCompletionWithProfile(\n modelProfile,\n opts,\n attempt + 1,\n maxAttempts,\n signal, // \uD83D\uDD27 Pass AbortSignal to recursive call\n )\n }\n // Wrap network errors with user-friendly message\n throw new UserFriendlyError(error, {\n operation: 'API request',\n model: opts.model,\n endpoint: modelProfile.baseURL,\n })\n }\n}\n\nexport function createStreamProcessor(\n stream: any,\n signal?: AbortSignal,\n): AsyncGenerator<OpenAI.ChatCompletionChunk, void, unknown> {\n if (!stream) {\n throw new Error('Stream is null or undefined')\n }\n\n return (async function* () {\n const reader = stream.getReader()\n const decoder = new TextDecoder('utf-8')\n let buffer = ''\n\n try {\n while (true) {\n // Check for cancellation before attempting to read\n if (signal?.aborted) {\n break\n }\n\n let readResult\n try {\n readResult = await reader.read()\n } catch (e) {\n // If signal is aborted, this is user cancellation - exit silently\n if (signal?.aborted) {\n break\n }\n logError(e)\n break\n }\n\n const { done, value } = readResult\n if (done) {\n break\n }\n\n const chunk = decoder.decode(value, { stream: true })\n buffer += chunk\n\n let lineEnd = buffer.indexOf('\\n')\n while (lineEnd !== -1) {\n const line = buffer.substring(0, lineEnd).trim()\n buffer = buffer.substring(lineEnd + 1)\n\n if (line === 'data: [DONE]') {\n continue\n }\n\n if (line.startsWith('data: ')) {\n const data = line.slice(6).trim()\n if (!data) continue\n\n try {\n const parsed = JSON.parse(data) as OpenAI.ChatCompletionChunk\n yield parsed\n } catch (e) {\n debugLogger.warn('STREAM_PARSE_ERROR', {\n data: data.substring(0, 100),\n error: String(e),\n })\n }\n }\n\n lineEnd = buffer.indexOf('\\n')\n }\n }\n\n // Process any remaining data in the buffer\n if (buffer.trim()) {\n const lines = buffer.trim().split('\\n')\n for (const line of lines) {\n if (line.startsWith('data: ') && line !== 'data: [DONE]') {\n const data = line.slice(6).trim()\n if (!data) continue\n\n try {\n const parsed = JSON.parse(data) as OpenAI.ChatCompletionChunk\n yield parsed\n } catch (e) {\n debugLogger.warn('STREAM_PARSE_ERROR', {\n data: data.substring(0, 100),\n error: String(e),\n final: true,\n })\n }\n }\n }\n }\n } catch (e) {\n logError(e)\n } finally {\n try {\n reader.releaseLock()\n } catch (e) {\n // Silent - reader lock release failure is not critical\n }\n }\n })()\n}\n\nexport function streamCompletion(\n stream: any,\n signal?: AbortSignal,\n): AsyncGenerator<OpenAI.ChatCompletionChunk, void, unknown> {\n return createStreamProcessor(stream, signal)\n}\n\n/**\n * Call GPT-5 Responses API with proper parameter handling\n */\nexport async function callGPT5ResponsesAPI(\n modelProfile: any,\n opts: any, // Using 'any' for Responses API params which differ from ChatCompletionCreateParams\n signal?: AbortSignal,\n): Promise<any> {\n const baseURL = modelProfile?.baseURL || 'https://api.openai.com/v1'\n const apiKey = modelProfile?.apiKey\n const proxy = getGlobalConfig().proxy\n ? new ProxyAgent(getGlobalConfig().proxy)\n : undefined\n\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${apiKey}`,\n }\n\n // \uD83D\uDD25 Enhanced Responses API Parameter Mapping for GPT-5\n const responsesParams: any = {\n model: opts.model,\n input: opts.messages, // Responses API uses 'input' instead of 'messages'\n }\n\n // \uD83D\uDD27 GPT-5 Token Configuration - Responses API uses max_output_tokens\n if (opts.max_completion_tokens) {\n responsesParams.max_output_tokens = opts.max_completion_tokens\n } else if (opts.max_tokens) {\n responsesParams.max_output_tokens = opts.max_tokens\n }\n\n // \uD83D\uDD27 GPT-5 Temperature Handling (only 1 or undefined)\n if (opts.temperature === 1) {\n responsesParams.temperature = 1\n }\n // Note: Do not pass temperature if it's not 1, GPT-5 will use default\n\n // \uD83D\uDD27 GPT-5 Reasoning Configuration\n const reasoningEffort = opts.reasoning_effort || 'medium'\n responsesParams.reasoning = {\n effort: reasoningEffort,\n // \uD83D\uDE80 Enable reasoning summaries for transparency in coding tasks\n generate_summary: true,\n }\n\n // \uD83D\uDD27 GPT-5 Tools Support\n if (opts.tools && opts.tools.length > 0) {\n responsesParams.tools = opts.tools\n\n // \uD83D\uDE80 GPT-5 Tool Choice Configuration\n if (opts.tool_choice) {\n responsesParams.tool_choice = opts.tool_choice\n }\n }\n\n // \uD83D\uDD27 GPT-5 System Instructions (separate from messages)\n const systemMessages = opts.messages.filter(msg => msg.role === 'system')\n const nonSystemMessages = opts.messages.filter(msg => msg.role !== 'system')\n\n if (systemMessages.length > 0) {\n responsesParams.instructions = systemMessages\n .map(msg => msg.content)\n .join('\\n\\n')\n responsesParams.input = nonSystemMessages\n }\n\n // Handle verbosity (if supported) - optimized for coding tasks\n const features = getModelFeatures(opts.model)\n if (features.supportsVerbosityControl) {\n // High verbosity for coding tasks to get detailed explanations and structured code\n // Based on GPT-5 best practices for agent-like coding environments\n responsesParams.text = {\n verbosity: 'high',\n }\n }\n\n // Apply GPT-5 coding optimizations\n if (opts.model.startsWith('gpt-5')) {\n // Set reasoning effort based on task complexity\n if (!responsesParams.reasoning) {\n responsesParams.reasoning = {\n effort: 'medium', // Balanced for most coding tasks\n }\n }\n\n // Add instructions parameter for coding-specific guidance\n if (!responsesParams.instructions) {\n responsesParams.instructions = `You are an expert programmer working in a terminal-based coding environment. Follow these guidelines:\n- Provide clear, concise code solutions\n- Use proper error handling and validation\n- Follow coding best practices and patterns\n- Explain complex logic when necessary\n- Focus on maintainable, readable code`\n }\n }\n\n try {\n const response = await fetch(`${baseURL}/responses`, {\n method: 'POST',\n headers,\n body: JSON.stringify(responsesParams),\n dispatcher: proxy,\n signal: signal,\n })\n\n if (!response.ok) {\n throw new Error(\n `GPT-5 Responses API error: ${response.status} ${response.statusText}`,\n )\n }\n\n const responseData = await response.json()\n\n // Convert Responses API response back to Chat Completion format for compatibility\n return convertResponsesAPIToChatCompletion(responseData)\n } catch (error) {\n if (signal?.aborted) {\n throw new Error('Request cancelled by user')\n }\n throw error\n }\n}\n\n/**\n * Convert Responses API response to Chat Completion format for compatibility\n * \uD83D\uDD25 Enhanced for GPT-5 with reasoning summary support\n */\nfunction convertResponsesAPIToChatCompletion(responsesData: any): any {\n // Extract content from Responses API format\n let outputText = responsesData.output_text || ''\n const usage = responsesData.usage || {}\n\n // \uD83D\uDE80 GPT-5 Reasoning Summary Integration\n // If reasoning summary is available, prepend it to the output for transparency\n if (responsesData.output && Array.isArray(responsesData.output)) {\n const reasoningItems = responsesData.output.filter(\n item => item.type === 'reasoning' && item.summary,\n )\n const messageItems = responsesData.output.filter(\n item => item.type === 'message',\n )\n\n if (reasoningItems.length > 0 && messageItems.length > 0) {\n const reasoningSummary = reasoningItems\n .map(item => item.summary?.map(s => s.text).join('\\n'))\n .filter(Boolean)\n .join('\\n\\n')\n\n const mainContent = messageItems\n .map(item => item.content?.map(c => c.text).join('\\n'))\n .filter(Boolean)\n .join('\\n\\n')\n\n if (reasoningSummary) {\n outputText = `**\uD83E\uDDE0 Reasoning Process:**\\n${reasoningSummary}\\n\\n**\uD83D\uDCDD Response:**\\n${mainContent}`\n } else {\n outputText = mainContent\n }\n }\n }\n\n return {\n id: responsesData.id || `chatcmpl-${Date.now()}`,\n object: 'chat.completion',\n created: Math.floor(Date.now() / 1000),\n model: responsesData.model || '',\n choices: [\n {\n index: 0,\n message: {\n role: 'assistant',\n content: outputText,\n // \uD83D\uDE80 Include reasoning metadata if available\n ...(responsesData.reasoning && {\n reasoning: {\n effort: responsesData.reasoning.effort,\n summary: responsesData.reasoning.summary,\n },\n }),\n },\n finish_reason: responsesData.status === 'completed' ? 'stop' : 'length',\n },\n ],\n usage: {\n prompt_tokens: usage.input_tokens || 0,\n completion_tokens: usage.output_tokens || 0,\n total_tokens: (usage.input_tokens || 0) + (usage.output_tokens || 0),\n // \uD83D\uDD27 GPT-5 Enhanced Usage Details\n prompt_tokens_details: {\n cached_tokens: usage.input_tokens_details?.cached_tokens || 0,\n },\n completion_tokens_details: {\n reasoning_tokens: usage.output_tokens_details?.reasoning_tokens || 0,\n },\n },\n }\n}\n\n/**\n * Enhanced getCompletionWithProfile that supports GPT-5 Responses API\n * \uD83D\uDD25 Optimized for both official OpenAI and third-party GPT-5 providers\n */\nasync function getGPT5CompletionWithProfile(\n modelProfile: any,\n opts: OpenAI.ChatCompletionCreateParams,\n attempt: number = 0,\n maxAttempts: number = 10,\n signal?: AbortSignal,\n): Promise<OpenAI.ChatCompletion | AsyncIterable<OpenAI.ChatCompletionChunk>> {\n const features = getModelFeatures(opts.model)\n const isOfficialOpenAI =\n !modelProfile.baseURL || modelProfile.baseURL.includes('api.openai.com')\n\n // \uD83D\uDE80 Try Responses API for official OpenAI non-streaming requests\n if (features.supportsResponsesAPI && !opts.stream && isOfficialOpenAI) {\n try {\n debugLogger.api('ATTEMPTING_GPT5_RESPONSES_API', {\n model: opts.model,\n baseURL: modelProfile.baseURL || 'official',\n provider: modelProfile.provider,\n stream: opts.stream,\n requestId: getCurrentRequest()?.id,\n })\n\n const result = await callGPT5ResponsesAPI(modelProfile, opts, signal)\n\n debugLogger.api('GPT5_RESPONSES_API_SUCCESS', {\n model: opts.model,\n baseURL: modelProfile.baseURL || 'official',\n requestId: getCurrentRequest()?.id,\n })\n\n return result\n } catch (error) {\n debugLogger.api('GPT5_RESPONSES_API_FALLBACK', {\n model: opts.model,\n error: error.message,\n baseURL: modelProfile.baseURL || 'official',\n requestId: getCurrentRequest()?.id,\n })\n\n debugLogger.warn('GPT5_FALLBACK', {\n reason: 'responses_api_failed',\n error: error.message,\n })\n // Fall through to Chat Completions API\n }\n }\n\n // \uD83C\uDF10 Handle third-party GPT-5 providers with enhanced compatibility\n else if (!isOfficialOpenAI) {\n debugLogger.api('GPT5_THIRD_PARTY_PROVIDER', {\n model: opts.model,\n baseURL: modelProfile.baseURL,\n provider: modelProfile.provider,\n supportsResponsesAPI: features.supportsResponsesAPI,\n requestId: getCurrentRequest()?.id,\n })\n\n // \uD83D\uDD27 Apply enhanced parameter optimization for third-party providers\n debugLogger.info('GPT5_THIRD_PARTY', {\n provider: modelProfile.provider,\n baseURL: modelProfile.baseURL,\n })\n\n // Some third-party providers may need additional parameter adjustments\n if (modelProfile.provider === 'azure') {\n // Azure OpenAI specific adjustments\n delete opts.reasoning_effort // Azure may not support this yet\n } else if (modelProfile.provider === 'custom-openai') {\n // Generic OpenAI-compatible provider optimizations\n debugLogger.info('GPT5_CUSTOM_OPTIMIZATIONS', {\n provider: 'custom-openai',\n })\n }\n }\n\n // \uD83D\uDCE1 Handle streaming requests (Responses API doesn't support streaming yet)\n else if (opts.stream) {\n debugLogger.api('GPT5_STREAMING_MODE', {\n model: opts.model,\n baseURL: modelProfile.baseURL || 'official',\n reason: 'responses_api_no_streaming',\n requestId: getCurrentRequest()?.id,\n })\n\n debugLogger.info('GPT5_STREAMING', { reason: 'responses_api_no_streaming' })\n }\n\n // \uD83D\uDD27 Enhanced Chat Completions fallback with GPT-5 optimizations\n debugLogger.api('USING_CHAT_COMPLETIONS_FOR_GPT5', {\n model: opts.model,\n baseURL: modelProfile.baseURL || 'official',\n provider: modelProfile.provider,\n reason: isOfficialOpenAI ? 'streaming_or_fallback' : 'third_party_provider',\n requestId: getCurrentRequest()?.id,\n })\n\n return await getCompletionWithProfile(\n modelProfile,\n opts,\n attempt,\n maxAttempts,\n signal,\n )\n}\n\n/**\n * Fetch available models from custom OpenAI-compatible API\n */\nexport async function fetchCustomModels(\n baseURL: string,\n apiKey: string,\n): Promise<any[]> {\n try {\n // Check if baseURL already contains version number (e.g., v1, v2, etc.)\n const hasVersionNumber = /\\/v\\d+/.test(baseURL)\n const cleanBaseURL = baseURL.replace(/\\/+$/, '')\n const modelsURL = hasVersionNumber\n ? `${cleanBaseURL}/models`\n : `${cleanBaseURL}/v1/models`\n\n const response = await fetch(modelsURL, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${apiKey}`,\n 'Content-Type': 'application/json',\n },\n signal: AbortSignal.timeout(30_000),\n })\n\n if (!response.ok) {\n // Provide user-friendly error messages based on status code\n if (response.status === 401) {\n throw new Error(\n 'Invalid API key. Please check your API key and try again.',\n )\n } else if (response.status === 403) {\n throw new Error(\n 'API key does not have permission to access models. Please check your API key permissions.',\n )\n } else if (response.status === 404) {\n throw new Error(\n 'API endpoint not found. Please check if the base URL is correct and supports the /models endpoint.',\n )\n } else if (response.status === 429) {\n throw new Error(\n 'Too many requests. Please wait a moment and try again.',\n )\n } else if (response.status >= 500) {\n throw new Error(\n 'API service is temporarily unavailable. Please try again later.',\n )\n } else {\n throw new Error(\n `Unable to connect to API (${response.status}). Please check your base URL, API key, and internet connection.`,\n )\n }\n }\n\n const data = await response.json()\n\n // Type guards for different API response formats\n const hasDataArray = (obj: unknown): obj is { data: unknown[] } => {\n return (\n typeof obj === 'object' &&\n obj !== null &&\n 'data' in obj &&\n Array.isArray((obj as any).data)\n )\n }\n\n const hasModelsArray = (obj: unknown): obj is { models: unknown[] } => {\n return (\n typeof obj === 'object' &&\n obj !== null &&\n 'models' in obj &&\n Array.isArray((obj as any).models)\n )\n }\n\n // Validate response format and extract models array\n let models = []\n\n if (hasDataArray(data)) {\n // Standard OpenAI format: { data: [...] }\n models = data.data\n } else if (Array.isArray(data)) {\n // Direct array format\n models = data\n } else if (hasModelsArray(data)) {\n // Alternative format: { models: [...] }\n models = data.models\n } else {\n throw new Error(\n 'API returned unexpected response format. Expected an array of models or an object with a \"data\" or \"models\" array.',\n )\n }\n\n // Ensure we have an array and validate it contains model objects\n if (!Array.isArray(models)) {\n throw new Error('API response format error: models data is not an array.')\n }\n\n return models\n } catch (error) {\n // If it's already our custom error, pass it through\n if (\n error instanceof Error &&\n (error.message.includes('API key') ||\n error.message.includes('API endpoint') ||\n error.message.includes('API service') ||\n error.message.includes('response format'))\n ) {\n throw error\n }\n\n // For network errors or other issues\n logError(error)\n\n // Check if it's a network error\n if (error instanceof Error && error.message.includes('fetch')) {\n throw new Error(\n 'Unable to connect to the API. Please check the base URL and your internet connection.',\n )\n }\n\n throw new Error(\n 'Failed to fetch models from custom API. Please check your configuration and try again.',\n )\n }\n}\n"],
5
- "mappings": "AACA,SAAS,uBAAuB;AAChC,SAAS,YAAY,aAAuB;AAC5C,SAAS,iBAAiB,uBAAuB;AACjD;AAAA,EACE,SAAS;AAAA,EACT;AAAA,EACA;AAAA,OACK;AACP,SAAS,gBAAgB;AACzB;AAAA,EACE;AAAA,EACA,iBAAiB;AAAA,OACZ;AACP;AAAA,EAGE;AAAA,OACK;AACP,SAAS,kCAAkC;AAC3C,SAAS,gCAAgC;AAKzC,SAAS,cAAc,SAAyB;AAC9C,SAAO,oBAAoB,OAAO;AACpC;AAEA,IAAK,iBAAL,kBAAKA,oBAAL;AACE,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,yBAAsB;AACtB,EAAAA,gBAAA,4BAAyB;AACzB,EAAAA,gBAAA,mBAAgB;AAChB,EAAAA,gBAAA,eAAY;AACZ,EAAAA,gBAAA,eAAY;AANT,SAAAA;AAAA,GAAA;AASL,SAAS,iBACP,SACA,OACA,MACQ;AACR,SAAO,GAAG,OAAO,IAAI,KAAK,IAAI,IAAI;AACpC;AAEA,SAAS,cACP,SACA,OACA,MACS;AACT,SAAO,CAAC,CAAC,gBAAgB,aAAa,EACpC,iBAAiB,SAAS,OAAO,IAAI,CACvC;AACF;AAEA,SAAS,cACP,SACA,OACA,MACA,OACA;AACA,kBAAgB,eAAe;AAAA,IAC7B,CAAC,iBAAiB,SAAS,OAAO,IAAI,CAAC,GAAG;AAAA,EAC5C,CAAC;AACH;AAcA,MAAM,sBAAsC;AAAA,EAC1C;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YAAU;AAChB,YAAM,WAAW,OAAO,YAAY;AACpC;AAAA;AAAA,QAEG,SAAS,SAAS,qCAAqC,KACtD,SAAS,SAAS,yBAAyB;AAAA,QAE5C,SAAS,SAAS,YAAY,KAC7B,SAAS,SAAS,uBAAuB,KAC1C,SAAS,SAAS,YAAY,KAC7B,SAAS,SAAS,eAAe,KAClC,SAAS,SAAS,YAAY,KAC7B,SAAS,SAAS,2BAA2B;AAAA,QAE9C,SAAS,SAAS,mBAAmB,KACpC,SAAS,SAAS,YAAY,KAC/B,SAAS,SAAS,iBAAiB,KAClC,SAAS,SAAS,YAAY;AAAA;AAAA,IAEpC;AAAA,IACA,KAAK,OAAM,SAAQ;AACjB,kBAAY,KAAK,YAAY;AAAA,QAC3B,QAAQ;AAAA,QACR,MAAM,KAAK;AAAA,MACb,CAAC;AACD,UAAI,gBAAgB,MAAM;AACxB,aAAK,wBAAwB,KAAK;AAClC,eAAO,KAAK;AAAA,MACd;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YAAU;AAChB,YAAM,WAAW,OAAO,YAAY;AACpC,aACE,SAAS,SAAS,aAAa,MAC9B,SAAS,SAAS,eAAe,KAChC,SAAS,SAAS,WAAW,KAC7B,SAAS,SAAS,qBAAqB;AAAA,IAE7C;AAAA,IACA,KAAK,OAAM,SAAQ;AACjB,kBAAY,KAAK,YAAY;AAAA,QAC3B,QAAQ;AAAA,QACR,MAAM,KAAK;AAAA,QACX,IAAI;AAAA,MACN,CAAC;AACD,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA;AAEF;AAGA,MAAM,iBAAiC;AAAA,EACrC;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YACN,OAAO,SAAS,4CAA4C;AAAA,IAC9D,KAAK,OAAM,SAAQ;AACjB,YAAM,mBAAmB,CAAC;AAC1B,iBAAW,QAAQ,KAAK,SAAS,CAAC,GAAG;AACnC,YAAI,KAAK,SAAS,YAAY,UAAU,KAAM;AAC9C,YAAI,MAAM;AACV,YAAI,YAAY;AAChB,iBAAS,QAAQ,KAAK,SAAS,YAAY,MAAM,IAAI,GAAG;AACtD,cAAI,IAAI,SAAS,KAAK,SAAS,MAAM;AACnC,mBAAO,OAAO;AAAA,UAChB,OAAO;AACL,yBAAa,OAAO;AAAA,UACtB;AAAA,QACF;AAEA,aAAK,SAAS,cAAc;AAC5B,yBAAiB,KAAK,SAAS,IAAI,IAAI;AAAA,MACzC;AACA,UAAI,OAAO,KAAK,gBAAgB,EAAE,SAAS,GAAG;AAC5C,YAAI,UAAU;AACd,mBAAW,CAAC,MAAM,WAAW,KAAK,OAAO,QAAQ,gBAAgB,GAAG;AAClE,qBAAW,IAAI,IAAI;AAAA,EAAM,WAAW;AAAA,IAAO,IAAI;AAAA;AAAA;AAAA,QACjD;AACA,mBAAW;AAEX,iBAAS,IAAI,KAAK,SAAS,SAAS,GAAG,KAAK,GAAG,KAAK;AAClD,cAAI,KAAK,SAAS,CAAC,EAAE,SAAS,UAAU;AACtC,iBAAK,SAAS,OAAO,IAAI,GAAG,GAAG;AAAA,cAC7B,MAAM;AAAA,cACN;AAAA,YACF,CAAC;AACD;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YAAU,OAAO,SAAS,6BAA6B;AAAA,IAC/D,KAAK,OAAM,SAAQ;AACjB,WAAK,wBAAwB,KAAK;AAClC,aAAO,KAAK;AAAA,IACd;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YAAU,OAAO,SAAS,gBAAgB;AAAA,IAClD,KAAK,OAAM,SAAQ;AACjB,aAAO,KAAK;AAAA,IACd;AAAA,EACF;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ,YACN,OAAO,SAAS,gCAAgC,KAChD,OAAO,SAAS,WAAW;AAAA,IAC7B,KAAK,OAAM,SAAQ;AACjB,UAAI,CAAC,KAAK,SAAU;AAEpB,iBAAW,WAAW,KAAK,UAAU;AACnC,YAAI,CAAC,QAAS;AAEd,YAAI,MAAM,QAAQ,QAAQ,OAAO,GAAG;AAClC,qBAAW,QAAQ,QAAQ,SAAS;AAElC,gBAAI,QAAQ,OAAO,SAAS,UAAU;AACpC,oBAAM,UAAU;AAChB,kBAAI,eAAe,SAAS;AAC1B,uBAAO,QAAQ;AAAA,cACjB;AAAA,YACF;AAAA,UACF;AAAA,QACF,WAAW,QAAQ,WAAW,OAAO,QAAQ,YAAY,UAAU;AAEjE,gBAAM,aAAa,QAAQ;AAI3B,cAAI,eAAe,YAAY;AAC7B,mBAAO,WAAW;AAAA,UACpB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAaA,MAAM,iBAAgD;AAAA;AAAA,EAEpD,IAAI,EAAE,yBAAyB,KAAK;AAAA,EACpC,cAAc,EAAE,yBAAyB,KAAK;AAAA,EAC9C,WAAW,EAAE,yBAAyB,KAAK;AAAA,EAC3C,UAAU,EAAE,yBAAyB,KAAK;AAAA,EAC1C,WAAW,EAAE,yBAAyB,KAAK;AAAA;AAAA,EAE3C,SAAS;AAAA,IACP,yBAAyB;AAAA,IACzB,sBAAsB;AAAA,IACtB,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,IAC1B,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,EACxB;AAAA,EACA,cAAc;AAAA,IACZ,yBAAyB;AAAA,IACzB,sBAAsB;AAAA,IACtB,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,IAC1B,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,EACxB;AAAA,EACA,cAAc;AAAA,IACZ,yBAAyB;AAAA,IACzB,sBAAsB;AAAA,IACtB,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,IAC1B,qBAAqB;AAAA,IACrB,sBAAsB;AAAA,EACxB;AAAA,EACA,qBAAqB;AAAA,IACnB,yBAAyB;AAAA,IACzB,sBAAsB;AAAA;AAAA,IACtB,wBAAwB;AAAA,IACxB,0BAA0B;AAAA,EAC5B;AACF;AAGA,SAAS,iBAAiB,WAAkC;AAC1D,MAAI,CAAC,aAAa,OAAO,cAAc,UAAU;AAC/C,WAAO,EAAE,yBAAyB,MAAM;AAAA,EAC1C;AAGA,MAAI,eAAe,SAAS,GAAG;AAC7B,WAAO,eAAe,SAAS;AAAA,EACjC;AAGA,MAAI,UAAU,YAAY,EAAE,SAAS,OAAO,GAAG;AAC7C,WAAO;AAAA,MACL,yBAAyB;AAAA,MACzB,sBAAsB;AAAA,MACtB,wBAAwB;AAAA,MACxB,0BAA0B;AAAA,MAC1B,qBAAqB;AAAA,MACrB,sBAAsB;AAAA,IACxB;AAAA,EACF;AAGA,aAAW,CAAC,KAAK,QAAQ,KAAK,OAAO,QAAQ,cAAc,GAAG;AAC5D,QAAI,UAAU,SAAS,GAAG,GAAG;AAC3B,aAAO;AAAA,IACT;AAAA,EACF;AAGA,SAAO,EAAE,yBAAyB,MAAM;AAC1C;AAGA,SAAS,kCACP,MACM;AACN,MAAI,CAAC,KAAK,SAAS,OAAO,KAAK,UAAU,UAAU;AACjD;AAAA,EACF;AAEA,QAAM,WAAW,iBAAiB,KAAK,KAAK;AAC5C,QAAM,SAAS,KAAK,MAAM,YAAY,EAAE,SAAS,OAAO;AAGxD,MAAI,UAAU,SAAS,yBAAyB;AAE9C,QAAI,gBAAgB,QAAQ,EAAE,2BAA2B,OAAO;AAC9D,kBAAY,KAAK,oBAAoB;AAAA,QACnC,QAAQ;AAAA,QACR,OAAO,KAAK;AAAA,QACZ,OAAO,KAAK;AAAA,MACd,CAAC;AACD,WAAK,wBAAwB,KAAK;AAClC,aAAO,KAAK;AAAA,IACd;AAGA,QAAI,SAAS,0BAA0B,iBAAiB,MAAM;AAC5D,UAAI,KAAK,gBAAgB,KAAK,KAAK,gBAAgB,QAAW;AAC5D,oBAAY,KAAK,oBAAoB;AAAA,UACnC,QAAQ;AAAA,UACR,OAAO,KAAK;AAAA,UACZ,MAAM,KAAK;AAAA,UACX,IAAI;AAAA,QACN,CAAC;AACD,aAAK,cAAc;AAAA,MACrB;AAAA,IACF;AAGA,QAAI,QAAQ;AAEV,aAAO,KAAK;AACZ,aAAO,KAAK;AACZ,aAAO,KAAK;AACZ,aAAO,KAAK;AAGZ,UAAI,CAAC,KAAK,oBAAoB,SAAS,0BAA0B;AAC/D,aAAK,mBAAmB;AAAA,MAC1B;AAAA,IACF;AAAA,EACF,OAGK;AAEH,QACE,SAAS,2BACT,gBAAgB,QAChB,EAAE,2BAA2B,OAC7B;AACA,WAAK,wBAAwB,KAAK;AAClC,aAAO,KAAK;AAAA,IACd;AAAA,EACF;AAGF;AAOO,SAAS,uBACd,MACA,UACM;AACN,MAAI,CAAC,KAAK,SAAS,OAAO,KAAK,UAAU,UAAU;AACjD;AAAA,EACF;AAEA,QAAM,OAAO,yBAAyB,UAAU,KAAK,KAAK;AAG1D,QAAM,eAAe,KAAK;AAC1B,MAAI,iBAAiB,yBAAyB;AAC5C,QAAI,gBAAgB,QAAQ,EAAE,2BAA2B,OAAO;AAC9D,WAAK,wBAAwB,KAAK;AAClC,aAAO,KAAK;AAAA,IACd;AAAA,EACF,WAAW,iBAAiB,cAAc;AACxC,QAAI,2BAA2B,QAAQ,EAAE,gBAAgB,OAAO;AAC9D,WAAK,aAAa,KAAK;AACvB,aAAO,KAAK;AAAA,IACd;AAAA,EACF;AAIA,MAAI,KAAK,qBAAqB,QAAQ;AAEpC,WAAO,KAAK;AAAA,EACd,WAAW,iBAAiB,QAAQ,KAAK,gBAAgB,QAAW;AAElE,UAAM,EAAE,KAAK,IAAI,IAAI,KAAK;AAC1B,SAAK,cAAc,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK,KAAK,WAAW,CAAC;AAAA,EAClE;AAGA,MACE,KAAK,uBAAuB,eAC5B,KAAK,eACL,OAAO,KAAK,gBAAgB,UAC5B;AACA,SAAK,cAAc;AAAA,EACrB,WAAW,KAAK,uBAAuB,OAAO;AAC5C,WAAO,KAAK;AAAA,EACd;AAGA,MACE,KAAK,qBAAqB,QAC1B,KAAK,QACL,MAAM,QAAQ,KAAK,IAAI,KACvB,KAAK,KAAK,SAAS,KAAK,kBACxB;AACA,SAAK,OAAO,KAAK,KAAK,MAAM,GAAG,KAAK,gBAAgB;AAAA,EACtD;AACF;AAEA,eAAe,qBACb,MACA,SACA;AACA,QAAM,SAAS,KAAK,MAAM,WAAW,OAAO;AAC5C,QAAM,WAAW,SACb,CAAC,GAAG,qBAAqB,GAAG,cAAc,IAC1C;AAEJ,aAAW,WAAW,UAAU;AAC9B,QAAI,cAAc,SAAS,KAAK,OAAO,QAAQ,IAAI,GAAG;AACpD,YAAM,QAAQ,IAAI,IAAI;AACtB;AAAA,IACF;AAAA,EACF;AACF;AAGA,eAAe,wBACb,SACA,MACA,SACA,UACA,OACA,QACmD;AACnD,QAAM,iBAAiB,CAAC;AAExB,MAAI,aAAa,WAAW;AAC1B,mBAAe,KAAK,2BAA2B,mBAAmB;AAAA,EACpE,OAAO;AACL,mBAAe,KAAK,mBAAmB;AAAA,EACzC;AAEA,MAAI,YAAY;AAEhB,aAAW,YAAY,gBAAgB;AACrC,QAAI;AACF,YAAM,WAAW,MAAM,MAAM,GAAG,OAAO,GAAG,QAAQ,IAAI;AAAA,QACpD,QAAQ;AAAA,QACR;AAAA,QACA,MAAM,KAAK,UAAU,KAAK,SAAS,EAAE,GAAG,MAAM,QAAQ,KAAK,IAAI,IAAI;AAAA,QACnE,YAAY;AAAA,QACZ;AAAA;AAAA,MACF,CAAC;AAGD,UAAI,SAAS,IAAI;AACf,eAAO,EAAE,UAAU,SAAS;AAAA,MAC9B;AAGA,UAAI,SAAS,WAAW,OAAO,eAAe,SAAS,GAAG;AACxD,oBAAY,KAAK,mBAAmB;AAAA,UAClC,QAAQ;AAAA,UACR;AAAA,UACA,QAAQ;AAAA,QACV,CAAC;AACD;AAAA,MACF;AAGA,aAAO,EAAE,UAAU,SAAS;AAAA,IAC9B,SAAS,OAAO;AACd,kBAAY;AAEZ,UAAI,eAAe,QAAQ,QAAQ,IAAI,eAAe,SAAS,GAAG;AAChE,oBAAY,KAAK,mBAAmB;AAAA,UAClC,OAAO;AAAA,UACP;AAAA,UACA,QAAQ;AAAA,QACV,CAAC;AACD;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAGA,QAAM,aAAa,IAAI,MAAM,sBAAsB;AACrD;AASA,eAAsB,yBACpB,cACA,MACA,UAAkB,GAClB,cAAsB,IACtB,QAC4E;AAC5E,MAAI,WAAW,aAAa;AAC1B,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACxC;AAEA,QAAM,WAAW,cAAc,YAAY;AAC3C,QAAM,UAAU,cAAc;AAC9B,QAAM,SAAS,cAAc;AAC7B,QAAM,QAAQ,gBAAgB,EAAE,QAC5B,IAAI,WAAW,gBAAgB,EAAE,KAAK,IACtC;AAEJ,QAAM,UAAkC;AAAA,IACtC,gBAAgB;AAAA,EAClB;AAEA,MAAI,QAAQ;AACV,QAAI,aAAa,SAAS;AACxB,cAAQ,SAAS,IAAI;AAAA,IACvB,OAAO;AACL,cAAQ,eAAe,IAAI,UAAU,MAAM;AAAA,IAC7C;AAAA,EACF;AAEA,oCAAkC,IAAI;AACtC,yBAAuB,MAAM,QAAQ;AACrC,QAAM,qBAAqB,MAAM,WAAW,EAAE;AAG9C,cAAY,IAAI,yBAAyB;AAAA,IACvC,UAAU,WAAW;AAAA,IACrB,OAAO,KAAK;AAAA,IACZ;AAAA,IACA,kBAAkB,CAAC,CAAC;AAAA,IACpB,cAAc,SAAS,OAAO,UAAU,GAAG,CAAC,IAAI;AAAA,IAChD,WAAW,KAAK;AAAA,IAChB,aAAa,KAAK;AAAA,IAClB,cAAc,KAAK,UAAU,UAAU;AAAA,IACvC,YAAY,KAAK;AAAA,IACjB,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,IAClC,uBAAuB,cAAc;AAAA,IACrC,kBAAkB,cAAc;AAAA,EAClC,CAAC;AAGD,OAAK,WAAW,KAAK,SAAS,IAAI,SAAO;AACvC,QAAI,IAAI,SAAS,QAAQ;AACvB,UAAI,MAAM,QAAQ,IAAI,OAAO,GAAG;AAC9B,eAAO;AAAA,UACL,GAAG;AAAA,UACH,SACE,IAAI,QACD,IAAI,OAAK,EAAE,QAAQ,EAAE,EACrB,OAAO,OAAO,EACd,KAAK,MAAM,KAAK;AAAA,QACvB;AAAA,MACF,WAAW,OAAO,IAAI,YAAY,UAAU;AAC1C,eAAO;AAAA,UACL,GAAG;AAAA,UACH,SACE,OAAO,IAAI,YAAY,cACnB,oBACA,KAAK,UAAU,IAAI,OAAO;AAAA,QAClC;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT,CAAC;AAGD,QAAM,kBAAkB;AACxB,MAAI,WAAW;AAEf,MAAI,aAAa,SAAS;AACxB,eAAW,iCAAiC,eAAe;AAAA,EAC7D,WAAW,aAAa,WAAW;AACjC,eAAW;AAAA,EACb;AAEA,MAAI;AACF,QAAI,KAAK,QAAQ;AACf,UAAIC;AAEJ,UAAI,2BAA2B,QAAQ,KAAK,aAAa,SAAS;AAChE,cAAM,SAAS,MAAM;AAAA,UACnB;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA,UACA;AAAA;AAAA,QACF;AACA,QAAAA,YAAW,OAAO;AAAA,MACpB,OAAO;AACL,QAAAA,YAAW,MAAM,MAAM,GAAG,OAAO,GAAG,QAAQ,IAAI;AAAA,UAC9C,QAAQ;AAAA,UACR;AAAA,UACA,MAAM,KAAK,UAAU,EAAE,GAAG,MAAM,QAAQ,KAAK,CAAC;AAAA,UAC9C,YAAY;AAAA,UACZ;AAAA;AAAA,QACF,CAAC;AAAA,MACH;AAEA,UAAI,CAACA,UAAS,IAAI;AAEhB,YAAI,QAAQ,SAAS;AACnB,gBAAM,IAAI,MAAM,2BAA2B;AAAA,QAC7C;AAGA,YAAI;AACF,gBAAM,YAAY,MAAMA,UAAS,KAAK;AAEtC,gBAAM,WAAW,CACf,SAC+D;AAC/D,mBAAO,OAAO,SAAS,YAAY,SAAS;AAAA,UAC9C;AACA,gBAAM,eAAe,SAAS,SAAS,IACnC,UAAU,OAAO,WACjB,UAAU,WACV,QAAQA,UAAS,MAAM,KACvB,QAAQA,UAAS,MAAM;AAG3B,gBAAM,SAAS,KAAK,MAAM,WAAW,OAAO;AAC5C,gBAAM,WAAW,SACb,CAAC,GAAG,qBAAqB,GAAG,cAAc,IAC1C;AAEJ,qBAAW,WAAW,UAAU;AAC9B,gBAAI,QAAQ,OAAO,YAAY,GAAG;AAChC,0BAAY,KAAK,wBAAwB;AAAA,gBACvC,MAAM,QAAQ;AAAA,gBACd,OAAO,KAAK;AAAA,gBACZ,OAAO;AAAA,cACT,CAAC;AAGD;AAAA,gBACE,WAAW;AAAA,gBACX,KAAK;AAAA,gBACL,QAAQ;AAAA,gBACR;AAAA,cACF;AAGA,oBAAM,QAAQ,IAAI,IAAI;AACtB,0BAAY,KAAK,wBAAwB;AAAA,gBACvC,QAAQ;AAAA,gBACR,MAAM,QAAQ;AAAA,cAChB,CAAC;AAED,qBAAO;AAAA,gBACL;AAAA,gBACA;AAAA,gBACA,UAAU;AAAA,gBACV;AAAA,gBACA;AAAA,cACF;AAAA,YACF;AAAA,UACF;AAGA,sBAAY,KAAK,0BAA0B;AAAA,YACzC,QAAQA,UAAS;AAAA,YACjB,OAAO;AAAA,UACT,CAAC;AAGD,sBAAY;AAAA,YACV,OAAO,KAAK;AAAA,YACZ,UAAU,GAAG,OAAO,GAAG,QAAQ;AAAA,YAC/B,QAAQA,UAAS;AAAA,YACjB,OAAO;AAAA,YACP,SAAS;AAAA,YACT,UAAU;AAAA,YACV;AAAA,UACF,CAAC;AAAA,QACH,SAAS,YAAY;AAEnB,sBAAY,KAAK,sBAAsB,EAAE,QAAQA,UAAS,OAAO,CAAC;AAGlE,sBAAY;AAAA,YACV,OAAO,KAAK;AAAA,YACZ,UAAU,GAAG,OAAO,GAAG,QAAQ;AAAA,YAC/B,QAAQA,UAAS;AAAA,YACjB,OAAO,mCAAmC,WAAW,OAAO;AAAA,YAC5D,SAAS;AAAA,YACT,UAAU,EAAE,YAAY,WAAW,QAAQ;AAAA,YAC3C;AAAA,UACF,CAAC;AAAA,QACH;AAEA,cAAM,UAAU,cAAc,OAAO;AACrC,oBAAY,KAAK,aAAa;AAAA,UAC5B,QAAQA,UAAS;AAAA,UACjB;AAAA,UACA,SAAS,UAAU;AAAA,UACnB;AAAA,QACF,CAAC;AACD,YAAI;AACF,gBAAM,eAAe,SAAS,MAAM;AAAA,QACtC,SAAS,OAAO;AAEd,cAAI,MAAM,YAAY,uBAAuB;AAC3C,kBAAM,IAAI,MAAM,2BAA2B;AAAA,UAC7C;AACA,gBAAM;AAAA,QACR;AACA,eAAO;AAAA,UACL;AAAA,UACA;AAAA,UACA,UAAU;AAAA,UACV;AAAA,UACA;AAAA;AAAA,QACF;AAAA,MACF;AAEA,YAAM,SAAS,sBAAsBA,UAAS,MAAa,MAAM;AACjE,aAAO;AAAA,IACT;AAGA,QAAI;AAEJ,QAAI,2BAA2B,QAAQ,KAAK,aAAa,SAAS;AAChE,YAAM,SAAS,MAAM;AAAA,QACnB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,MACF;AACA,iBAAW,OAAO;AAAA,IACpB,OAAO;AACL,iBAAW,MAAM,MAAM,GAAG,OAAO,GAAG,QAAQ,IAAI;AAAA,QAC9C,QAAQ;AAAA,QACR;AAAA,QACA,MAAM,KAAK,UAAU,IAAI;AAAA,QACzB,YAAY;AAAA,QACZ;AAAA;AAAA,MACF,CAAC;AAAA,IACH;AAEA,QAAI,CAAC,SAAS,IAAI;AAEhB,UAAI,QAAQ,SAAS;AACnB,cAAM,IAAI,MAAM,2BAA2B;AAAA,MAC7C;AAGA,UAAI;AACF,cAAM,YAAY,MAAM,SAAS,KAAK;AAEtC,cAAM,WAAW,CACf,SAC+D;AAC/D,iBAAO,OAAO,SAAS,YAAY,SAAS;AAAA,QAC9C;AACA,cAAM,eAAe,SAAS,SAAS,IACnC,UAAU,OAAO,WACjB,UAAU,WACV,QAAQ,SAAS,MAAM,KACvB,QAAQ,SAAS,MAAM;AAG3B,cAAM,SAAS,KAAK,MAAM,WAAW,OAAO;AAC5C,cAAM,WAAW,SACb,CAAC,GAAG,qBAAqB,GAAG,cAAc,IAC1C;AAEJ,mBAAW,WAAW,UAAU;AAC9B,cAAI,QAAQ,OAAO,YAAY,GAAG;AAChC,wBAAY,KAAK,wBAAwB;AAAA,cACvC,MAAM,QAAQ;AAAA,cACd,OAAO,KAAK;AAAA,cACZ,OAAO;AAAA,YACT,CAAC;AAGD,0BAAc,WAAW,IAAI,KAAK,OAAO,QAAQ,MAAM,YAAY;AAGnE,kBAAM,QAAQ,IAAI,IAAI;AACtB,wBAAY,KAAK,wBAAwB;AAAA,cACvC,QAAQ;AAAA,cACR,MAAM,QAAQ;AAAA,YAChB,CAAC;AAED,mBAAO;AAAA,cACL;AAAA,cACA;AAAA,cACA,UAAU;AAAA,cACV;AAAA,cACA;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAGA,oBAAY,KAAK,0BAA0B;AAAA,UACzC,QAAQ,SAAS;AAAA,UACjB,OAAO;AAAA,QACT,CAAC;AAAA,MACH,SAAS,YAAY;AAEnB,oBAAY,KAAK,sBAAsB,EAAE,QAAQ,SAAS,OAAO,CAAC;AAAA,MACpE;AAEA,YAAM,UAAU,cAAc,OAAO;AACrC,kBAAY,KAAK,aAAa;AAAA,QAC5B,QAAQ,SAAS;AAAA,QACjB;AAAA,QACA,SAAS,UAAU;AAAA,QACnB;AAAA,MACF,CAAC;AACD,UAAI;AACF,cAAM,eAAe,SAAS,MAAM;AAAA,MACtC,SAAS,OAAO;AAEd,YAAI,MAAM,YAAY,uBAAuB;AAC3C,gBAAM,IAAI,MAAM,2BAA2B;AAAA,QAC7C;AACA,cAAM;AAAA,MACR;AACA,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,UAAU;AAAA,QACV;AAAA,QACA;AAAA;AAAA,MACF;AAAA,IACF;AAEA,UAAM,eAAgB,MAAM,SAAS,KAAK;AAC1C,WAAO;AAAA,EACT,SAAS,OAAO;AAEd,QAAI,QAAQ,SAAS;AACnB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC7C;AAEA,QAAI,UAAU,aAAa;AAEzB,UAAI,QAAQ,SAAS;AACnB,cAAM,IAAI,MAAM,2BAA2B;AAAA,MAC7C;AAEA,YAAM,UAAU,cAAc,OAAO;AACrC,kBAAY,KAAK,aAAa;AAAA,QAC5B,OAAO;AAAA,QACP;AAAA,QACA,SAAS,UAAU;AAAA,QACnB;AAAA,MACF,CAAC;AACD,UAAI;AACF,cAAM,eAAe,SAAS,MAAM;AAAA,MACtC,SAASC,QAAO;AAEd,YAAIA,OAAM,YAAY,uBAAuB;AAC3C,gBAAM,IAAI,MAAM,2BAA2B;AAAA,QAC7C;AACA,cAAMA;AAAA,MACR;AACA,aAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA,UAAU;AAAA,QACV;AAAA,QACA;AAAA;AAAA,MACF;AAAA,IACF;AAEA,UAAM,IAAI,kBAAkB,OAAO;AAAA,MACjC,WAAW;AAAA,MACX,OAAO,KAAK;AAAA,MACZ,UAAU,aAAa;AAAA,IACzB,CAAC;AAAA,EACH;AACF;AAEO,SAAS,sBACd,QACA,QAC2D;AAC3D,MAAI,CAAC,QAAQ;AACX,UAAM,IAAI,MAAM,6BAA6B;AAAA,EAC/C;AAEA,UAAQ,mBAAmB;AACzB,UAAM,SAAS,OAAO,UAAU;AAChC,UAAM,UAAU,IAAI,YAAY,OAAO;AACvC,QAAI,SAAS;AAEb,QAAI;AACF,aAAO,MAAM;AAEX,YAAI,QAAQ,SAAS;AACnB;AAAA,QACF;AAEA,YAAI;AACJ,YAAI;AACF,uBAAa,MAAM,OAAO,KAAK;AAAA,QACjC,SAAS,GAAG;AAEV,cAAI,QAAQ,SAAS;AACnB;AAAA,UACF;AACA,mBAAS,CAAC;AACV;AAAA,QACF;AAEA,cAAM,EAAE,MAAM,MAAM,IAAI;AACxB,YAAI,MAAM;AACR;AAAA,QACF;AAEA,cAAM,QAAQ,QAAQ,OAAO,OAAO,EAAE,QAAQ,KAAK,CAAC;AACpD,kBAAU;AAEV,YAAI,UAAU,OAAO,QAAQ,IAAI;AACjC,eAAO,YAAY,IAAI;AACrB,gBAAM,OAAO,OAAO,UAAU,GAAG,OAAO,EAAE,KAAK;AAC/C,mBAAS,OAAO,UAAU,UAAU,CAAC;AAErC,cAAI,SAAS,gBAAgB;AAC3B;AAAA,UACF;AAEA,cAAI,KAAK,WAAW,QAAQ,GAAG;AAC7B,kBAAM,OAAO,KAAK,MAAM,CAAC,EAAE,KAAK;AAChC,gBAAI,CAAC,KAAM;AAEX,gBAAI;AACF,oBAAM,SAAS,KAAK,MAAM,IAAI;AAC9B,oBAAM;AAAA,YACR,SAAS,GAAG;AACV,0BAAY,KAAK,sBAAsB;AAAA,gBACrC,MAAM,KAAK,UAAU,GAAG,GAAG;AAAA,gBAC3B,OAAO,OAAO,CAAC;AAAA,cACjB,CAAC;AAAA,YACH;AAAA,UACF;AAEA,oBAAU,OAAO,QAAQ,IAAI;AAAA,QAC/B;AAAA,MACF;AAGA,UAAI,OAAO,KAAK,GAAG;AACjB,cAAM,QAAQ,OAAO,KAAK,EAAE,MAAM,IAAI;AACtC,mBAAW,QAAQ,OAAO;AACxB,cAAI,KAAK,WAAW,QAAQ,KAAK,SAAS,gBAAgB;AACxD,kBAAM,OAAO,KAAK,MAAM,CAAC,EAAE,KAAK;AAChC,gBAAI,CAAC,KAAM;AAEX,gBAAI;AACF,oBAAM,SAAS,KAAK,MAAM,IAAI;AAC9B,oBAAM;AAAA,YACR,SAAS,GAAG;AACV,0BAAY,KAAK,sBAAsB;AAAA,gBACrC,MAAM,KAAK,UAAU,GAAG,GAAG;AAAA,gBAC3B,OAAO,OAAO,CAAC;AAAA,gBACf,OAAO;AAAA,cACT,CAAC;AAAA,YACH;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,SAAS,GAAG;AACV,eAAS,CAAC;AAAA,IACZ,UAAE;AACA,UAAI;AACF,eAAO,YAAY;AAAA,MACrB,SAAS,GAAG;AAAA,MAEZ;AAAA,IACF;AAAA,EACF,GAAG;AACL;AAEO,SAAS,iBACd,QACA,QAC2D;AAC3D,SAAO,sBAAsB,QAAQ,MAAM;AAC7C;AAKA,eAAsB,qBACpB,cACA,MACA,QACc;AACd,QAAM,UAAU,cAAc,WAAW;AACzC,QAAM,SAAS,cAAc;AAC7B,QAAM,QAAQ,gBAAgB,EAAE,QAC5B,IAAI,WAAW,gBAAgB,EAAE,KAAK,IACtC;AAEJ,QAAM,UAAkC;AAAA,IACtC,gBAAgB;AAAA,IAChB,eAAe,UAAU,MAAM;AAAA,EACjC;AAGA,QAAM,kBAAuB;AAAA,IAC3B,OAAO,KAAK;AAAA,IACZ,OAAO,KAAK;AAAA;AAAA,EACd;AAGA,MAAI,KAAK,uBAAuB;AAC9B,oBAAgB,oBAAoB,KAAK;AAAA,EAC3C,WAAW,KAAK,YAAY;AAC1B,oBAAgB,oBAAoB,KAAK;AAAA,EAC3C;AAGA,MAAI,KAAK,gBAAgB,GAAG;AAC1B,oBAAgB,cAAc;AAAA,EAChC;AAIA,QAAM,kBAAkB,KAAK,oBAAoB;AACjD,kBAAgB,YAAY;AAAA,IAC1B,QAAQ;AAAA;AAAA,IAER,kBAAkB;AAAA,EACpB;AAGA,MAAI,KAAK,SAAS,KAAK,MAAM,SAAS,GAAG;AACvC,oBAAgB,QAAQ,KAAK;AAG7B,QAAI,KAAK,aAAa;AACpB,sBAAgB,cAAc,KAAK;AAAA,IACrC;AAAA,EACF;AAGA,QAAM,iBAAiB,KAAK,SAAS,OAAO,SAAO,IAAI,SAAS,QAAQ;AACxE,QAAM,oBAAoB,KAAK,SAAS,OAAO,SAAO,IAAI,SAAS,QAAQ;AAE3E,MAAI,eAAe,SAAS,GAAG;AAC7B,oBAAgB,eAAe,eAC5B,IAAI,SAAO,IAAI,OAAO,EACtB,KAAK,MAAM;AACd,oBAAgB,QAAQ;AAAA,EAC1B;AAGA,QAAM,WAAW,iBAAiB,KAAK,KAAK;AAC5C,MAAI,SAAS,0BAA0B;AAGrC,oBAAgB,OAAO;AAAA,MACrB,WAAW;AAAA,IACb;AAAA,EACF;AAGA,MAAI,KAAK,MAAM,WAAW,OAAO,GAAG;AAElC,QAAI,CAAC,gBAAgB,WAAW;AAC9B,sBAAgB,YAAY;AAAA,QAC1B,QAAQ;AAAA;AAAA,MACV;AAAA,IACF;AAGA,QAAI,CAAC,gBAAgB,cAAc;AACjC,sBAAgB,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMjC;AAAA,EACF;AAEA,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,GAAG,OAAO,cAAc;AAAA,MACnD,QAAQ;AAAA,MACR;AAAA,MACA,MAAM,KAAK,UAAU,eAAe;AAAA,MACpC,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,YAAM,IAAI;AAAA,QACR,8BAA8B,SAAS,MAAM,IAAI,SAAS,UAAU;AAAA,MACtE;AAAA,IACF;AAEA,UAAM,eAAe,MAAM,SAAS,KAAK;AAGzC,WAAO,oCAAoC,YAAY;AAAA,EACzD,SAAS,OAAO;AACd,QAAI,QAAQ,SAAS;AACnB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC7C;AACA,UAAM;AAAA,EACR;AACF;AAMA,SAAS,oCAAoC,eAAyB;AAEpE,MAAI,aAAa,cAAc,eAAe;AAC9C,QAAM,QAAQ,cAAc,SAAS,CAAC;AAItC,MAAI,cAAc,UAAU,MAAM,QAAQ,cAAc,MAAM,GAAG;AAC/D,UAAM,iBAAiB,cAAc,OAAO;AAAA,MAC1C,UAAQ,KAAK,SAAS,eAAe,KAAK;AAAA,IAC5C;AACA,UAAM,eAAe,cAAc,OAAO;AAAA,MACxC,UAAQ,KAAK,SAAS;AAAA,IACxB;AAEA,QAAI,eAAe,SAAS,KAAK,aAAa,SAAS,GAAG;AACxD,YAAM,mBAAmB,eACtB,IAAI,UAAQ,KAAK,SAAS,IAAI,OAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,EACrD,OAAO,OAAO,EACd,KAAK,MAAM;AAEd,YAAM,cAAc,aACjB,IAAI,UAAQ,KAAK,SAAS,IAAI,OAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,EACrD,OAAO,OAAO,EACd,KAAK,MAAM;AAEd,UAAI,kBAAkB;AACpB,qBAAa;AAAA,EAA8B,gBAAgB;AAAA;AAAA;AAAA,EAAyB,WAAW;AAAA,MACjG,OAAO;AACL,qBAAa;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL,IAAI,cAAc,MAAM,YAAY,KAAK,IAAI,CAAC;AAAA,IAC9C,QAAQ;AAAA,IACR,SAAS,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI;AAAA,IACrC,OAAO,cAAc,SAAS;AAAA,IAC9B,SAAS;AAAA,MACP;AAAA,QACE,OAAO;AAAA,QACP,SAAS;AAAA,UACP,MAAM;AAAA,UACN,SAAS;AAAA;AAAA,UAET,GAAI,cAAc,aAAa;AAAA,YAC7B,WAAW;AAAA,cACT,QAAQ,cAAc,UAAU;AAAA,cAChC,SAAS,cAAc,UAAU;AAAA,YACnC;AAAA,UACF;AAAA,QACF;AAAA,QACA,eAAe,cAAc,WAAW,cAAc,SAAS;AAAA,MACjE;AAAA,IACF;AAAA,IACA,OAAO;AAAA,MACL,eAAe,MAAM,gBAAgB;AAAA,MACrC,mBAAmB,MAAM,iBAAiB;AAAA,MAC1C,eAAe,MAAM,gBAAgB,MAAM,MAAM,iBAAiB;AAAA;AAAA,MAElE,uBAAuB;AAAA,QACrB,eAAe,MAAM,sBAAsB,iBAAiB;AAAA,MAC9D;AAAA,MACA,2BAA2B;AAAA,QACzB,kBAAkB,MAAM,uBAAuB,oBAAoB;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AACF;AAMA,eAAe,6BACb,cACA,MACA,UAAkB,GAClB,cAAsB,IACtB,QAC4E;AAC5E,QAAM,WAAW,iBAAiB,KAAK,KAAK;AAC5C,QAAM,mBACJ,CAAC,aAAa,WAAW,aAAa,QAAQ,SAAS,gBAAgB;AAGzE,MAAI,SAAS,wBAAwB,CAAC,KAAK,UAAU,kBAAkB;AACrE,QAAI;AACF,kBAAY,IAAI,iCAAiC;AAAA,QAC/C,OAAO,KAAK;AAAA,QACZ,SAAS,aAAa,WAAW;AAAA,QACjC,UAAU,aAAa;AAAA,QACvB,QAAQ,KAAK;AAAA,QACb,WAAW,kBAAkB,GAAG;AAAA,MAClC,CAAC;AAED,YAAM,SAAS,MAAM,qBAAqB,cAAc,MAAM,MAAM;AAEpE,kBAAY,IAAI,8BAA8B;AAAA,QAC5C,OAAO,KAAK;AAAA,QACZ,SAAS,aAAa,WAAW;AAAA,QACjC,WAAW,kBAAkB,GAAG;AAAA,MAClC,CAAC;AAED,aAAO;AAAA,IACT,SAAS,OAAO;AACd,kBAAY,IAAI,+BAA+B;AAAA,QAC7C,OAAO,KAAK;AAAA,QACZ,OAAO,MAAM;AAAA,QACb,SAAS,aAAa,WAAW;AAAA,QACjC,WAAW,kBAAkB,GAAG;AAAA,MAClC,CAAC;AAED,kBAAY,KAAK,iBAAiB;AAAA,QAChC,QAAQ;AAAA,QACR,OAAO,MAAM;AAAA,MACf,CAAC;AAAA,IAEH;AAAA,EACF,WAGS,CAAC,kBAAkB;AAC1B,gBAAY,IAAI,6BAA6B;AAAA,MAC3C,OAAO,KAAK;AAAA,MACZ,SAAS,aAAa;AAAA,MACtB,UAAU,aAAa;AAAA,MACvB,sBAAsB,SAAS;AAAA,MAC/B,WAAW,kBAAkB,GAAG;AAAA,IAClC,CAAC;AAGD,gBAAY,KAAK,oBAAoB;AAAA,MACnC,UAAU,aAAa;AAAA,MACvB,SAAS,aAAa;AAAA,IACxB,CAAC;AAGD,QAAI,aAAa,aAAa,SAAS;AAErC,aAAO,KAAK;AAAA,IACd,WAAW,aAAa,aAAa,iBAAiB;AAEpD,kBAAY,KAAK,6BAA6B;AAAA,QAC5C,UAAU;AAAA,MACZ,CAAC;AAAA,IACH;AAAA,EACF,WAGS,KAAK,QAAQ;AACpB,gBAAY,IAAI,uBAAuB;AAAA,MACrC,OAAO,KAAK;AAAA,MACZ,SAAS,aAAa,WAAW;AAAA,MACjC,QAAQ;AAAA,MACR,WAAW,kBAAkB,GAAG;AAAA,IAClC,CAAC;AAED,gBAAY,KAAK,kBAAkB,EAAE,QAAQ,6BAA6B,CAAC;AAAA,EAC7E;AAGA,cAAY,IAAI,mCAAmC;AAAA,IACjD,OAAO,KAAK;AAAA,IACZ,SAAS,aAAa,WAAW;AAAA,IACjC,UAAU,aAAa;AAAA,IACvB,QAAQ,mBAAmB,0BAA0B;AAAA,IACrD,WAAW,kBAAkB,GAAG;AAAA,EAClC,CAAC;AAED,SAAO,MAAM;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAKA,eAAsB,kBACpB,SACA,QACgB;AAChB,MAAI;AAEF,UAAM,mBAAmB,SAAS,KAAK,OAAO;AAC9C,UAAM,eAAe,QAAQ,QAAQ,QAAQ,EAAE;AAC/C,UAAM,YAAY,mBACd,GAAG,YAAY,YACf,GAAG,YAAY;AAEnB,UAAM,WAAW,MAAM,MAAM,WAAW;AAAA,MACtC,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,eAAe,UAAU,MAAM;AAAA,QAC/B,gBAAgB;AAAA,MAClB;AAAA,MACA,QAAQ,YAAY,QAAQ,GAAM;AAAA,IACpC,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAEhB,UAAI,SAAS,WAAW,KAAK;AAC3B,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAAA,MACF,WAAW,SAAS,WAAW,KAAK;AAClC,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAAA,MACF,WAAW,SAAS,WAAW,KAAK;AAClC,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAAA,MACF,WAAW,SAAS,WAAW,KAAK;AAClC,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAAA,MACF,WAAW,SAAS,UAAU,KAAK;AACjC,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAAA,MACF,OAAO;AACL,cAAM,IAAI;AAAA,UACR,6BAA6B,SAAS,MAAM;AAAA,QAC9C;AAAA,MACF;AAAA,IACF;AAEA,UAAM,OAAO,MAAM,SAAS,KAAK;AAGjC,UAAM,eAAe,CAAC,QAA6C;AACjE,aACE,OAAO,QAAQ,YACf,QAAQ,QACR,UAAU,OACV,MAAM,QAAS,IAAY,IAAI;AAAA,IAEnC;AAEA,UAAM,iBAAiB,CAAC,QAA+C;AACrE,aACE,OAAO,QAAQ,YACf,QAAQ,QACR,YAAY,OACZ,MAAM,QAAS,IAAY,MAAM;AAAA,IAErC;AAGA,QAAI,SAAS,CAAC;AAEd,QAAI,aAAa,IAAI,GAAG;AAEtB,eAAS,KAAK;AAAA,IAChB,WAAW,MAAM,QAAQ,IAAI,GAAG;AAE9B,eAAS;AAAA,IACX,WAAW,eAAe,IAAI,GAAG;AAE/B,eAAS,KAAK;AAAA,IAChB,OAAO;AACL,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAGA,QAAI,CAAC,MAAM,QAAQ,MAAM,GAAG;AAC1B,YAAM,IAAI,MAAM,yDAAyD;AAAA,IAC3E;AAEA,WAAO;AAAA,EACT,SAAS,OAAO;AAEd,QACE,iBAAiB,UAChB,MAAM,QAAQ,SAAS,SAAS,KAC/B,MAAM,QAAQ,SAAS,cAAc,KACrC,MAAM,QAAQ,SAAS,aAAa,KACpC,MAAM,QAAQ,SAAS,iBAAiB,IAC1C;AACA,YAAM;AAAA,IACR;AAGA,aAAS,KAAK;AAGd,QAAI,iBAAiB,SAAS,MAAM,QAAQ,SAAS,OAAO,GAAG;AAC7D,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAEA,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACF;",
6
- "names": ["ModelErrorType", "response", "error"]
7
- }
@@ -1,219 +0,0 @@
1
- import { existsSync, readFileSync, readdirSync, statSync } from "fs";
2
- import { join } from "path";
3
- import { homedir } from "os";
4
- import matter from "gray-matter";
5
- import { getAllPluginOutputStyleDirs } from "../utils/session/sessionPlugins.js";
6
- import { getCwd } from "../utils/state.js";
7
- import { CONFIG_BASE_DIR } from "../constants/product.js";
8
- import { getGlobalConfig } from "../utils/config.js";
9
- let outputStylesCache = null;
10
- const BUILTIN_PRESETS = [
11
- {
12
- name: "default",
13
- config: {
14
- name: "default",
15
- description: "Default output style with standard coding instructions",
16
- keepCodingInstructions: true,
17
- replaceSystemPrompt: false,
18
- enabled: true
19
- },
20
- content: "",
21
- filePath: "<builtin>",
22
- source: "builtin"
23
- },
24
- {
25
- name: "concise",
26
- config: {
27
- name: "concise",
28
- description: "Concise responses with minimal explanation",
29
- keepCodingInstructions: true,
30
- replaceSystemPrompt: false,
31
- enabled: true
32
- },
33
- content: "Be extremely concise. Give the shortest possible answer. Skip explanations unless asked. Use bullet points over paragraphs. No filler words.",
34
- filePath: "<builtin>",
35
- source: "builtin"
36
- },
37
- {
38
- name: "explanatory",
39
- config: {
40
- name: "explanatory",
41
- description: "Detailed explanations with reasoning and context",
42
- keepCodingInstructions: true,
43
- replaceSystemPrompt: false,
44
- enabled: true
45
- },
46
- content: 'Provide detailed explanations with reasoning. Include context for decisions, alternatives considered, and trade-offs. Use examples where helpful. Explain "why" not just "what".',
47
- filePath: "<builtin>",
48
- source: "builtin"
49
- }
50
- ];
51
- function parseOutputStyleFile(filePath, source) {
52
- try {
53
- const content = readFileSync(filePath, "utf-8");
54
- const { data: frontmatter, content: styleContent } = matter(content);
55
- if (!frontmatter.name) {
56
- return null;
57
- }
58
- return {
59
- name: frontmatter.name,
60
- config: {
61
- name: frontmatter.name,
62
- description: frontmatter.description,
63
- priority: frontmatter.priority ?? 0,
64
- contentTypes: frontmatter.contentTypes ?? ["*"],
65
- enabled: frontmatter.enabled ?? true,
66
- keepCodingInstructions: frontmatter.keepCodingInstructions ?? true,
67
- replaceSystemPrompt: frontmatter.replaceSystemPrompt ?? false
68
- },
69
- content: styleContent.trim(),
70
- filePath,
71
- source
72
- };
73
- } catch {
74
- return null;
75
- }
76
- }
77
- function scanOutputStyleDir(dirPath, source) {
78
- if (!existsSync(dirPath) || !statSync(dirPath).isDirectory()) {
79
- return [];
80
- }
81
- const styles = [];
82
- try {
83
- const files = readdirSync(dirPath);
84
- for (const file of files) {
85
- if (!file.endsWith(".md") && !file.endsWith(".json")) continue;
86
- const filePath = join(dirPath, file);
87
- if (!statSync(filePath).isFile()) continue;
88
- if (file.endsWith(".md")) {
89
- const style = parseOutputStyleFile(filePath, source);
90
- if (style) {
91
- styles.push(style);
92
- }
93
- } else if (file.endsWith(".json")) {
94
- try {
95
- const content = readFileSync(filePath, "utf-8");
96
- const json = JSON.parse(content);
97
- if (json.name) {
98
- styles.push({
99
- name: json.name,
100
- config: {
101
- name: json.name,
102
- description: json.description,
103
- priority: json.priority ?? 0,
104
- contentTypes: json.contentTypes ?? ["*"],
105
- enabled: json.enabled ?? true,
106
- keepCodingInstructions: json.keepCodingInstructions ?? true,
107
- replaceSystemPrompt: json.replaceSystemPrompt ?? false
108
- },
109
- content: json.template || json.content || "",
110
- filePath,
111
- source
112
- });
113
- }
114
- } catch {
115
- }
116
- }
117
- }
118
- } catch {
119
- }
120
- return styles;
121
- }
122
- function loadAllOutputStyles() {
123
- if (outputStylesCache !== null) {
124
- return outputStylesCache;
125
- }
126
- const home = homedir();
127
- const cwd = getCwd();
128
- const styleMap = /* @__PURE__ */ new Map();
129
- for (const preset of BUILTIN_PRESETS) {
130
- styleMap.set(preset.name, preset);
131
- }
132
- const globalDirs = [
133
- join(home, ".claude", "output-styles"),
134
- join(home, CONFIG_BASE_DIR, "output-styles")
135
- ];
136
- for (const dir of globalDirs) {
137
- for (const style of scanOutputStyleDir(dir, "global")) {
138
- styleMap.set(style.name, style);
139
- }
140
- }
141
- const projectDirs = [
142
- join(cwd, ".claude", "output-styles"),
143
- join(cwd, CONFIG_BASE_DIR, "output-styles")
144
- ];
145
- for (const dir of projectDirs) {
146
- for (const style of scanOutputStyleDir(dir, "project")) {
147
- styleMap.set(style.name, style);
148
- }
149
- }
150
- const pluginDirs = getAllPluginOutputStyleDirs();
151
- for (const dir of pluginDirs) {
152
- for (const style of scanOutputStyleDir(dir, "plugin")) {
153
- styleMap.set(style.name, style);
154
- }
155
- }
156
- const styles = Array.from(styleMap.values());
157
- styles.sort((a, b) => (b.config.priority ?? 0) - (a.config.priority ?? 0));
158
- outputStylesCache = styles;
159
- return styles;
160
- }
161
- function getOutputStyle(name) {
162
- const styles = loadAllOutputStyles();
163
- return styles.find((s) => s.name === name);
164
- }
165
- function getSelectedOutputStyle() {
166
- try {
167
- const config = getGlobalConfig();
168
- if (config.outputStyle) {
169
- return getOutputStyle(config.outputStyle);
170
- }
171
- } catch {
172
- }
173
- return void 0;
174
- }
175
- function getOutputStylesForContentType(contentType) {
176
- const styles = loadAllOutputStyles();
177
- return styles.filter((style) => {
178
- if (!style.config.enabled) return false;
179
- const types = style.config.contentTypes ?? ["*"];
180
- return types.includes("*") || types.includes(contentType);
181
- });
182
- }
183
- function getBestOutputStyle(contentType) {
184
- const styles = getOutputStylesForContentType(contentType);
185
- return styles[0];
186
- }
187
- function clearOutputStylesCache() {
188
- outputStylesCache = null;
189
- }
190
- function getOutputStyleCount() {
191
- return loadAllOutputStyles().length;
192
- }
193
- function applyOutputStyle(style, content) {
194
- if (!style.content) {
195
- return content;
196
- }
197
- let result = style.content;
198
- result = result.replace(/\{\{content\}\}/g, content);
199
- result = result.replace(
200
- /\{\{date\}\}/g,
201
- (/* @__PURE__ */ new Date()).toISOString().split("T")[0]
202
- );
203
- result = result.replace(
204
- /\{\{time\}\}/g,
205
- (/* @__PURE__ */ new Date()).toISOString().split("T")[1].split(".")[0]
206
- );
207
- return result;
208
- }
209
- export {
210
- applyOutputStyle,
211
- clearOutputStylesCache,
212
- getBestOutputStyle,
213
- getOutputStyle,
214
- getOutputStyleCount,
215
- getOutputStylesForContentType,
216
- getSelectedOutputStyle,
217
- loadAllOutputStyles
218
- };
219
- //# sourceMappingURL=outputStyles.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/services/outputStyles.ts"],
4
- "sourcesContent": ["/**\n * Output Styles Service\n *\n * Handles loading and managing custom output styles from plugins,\n * user directories, and built-in presets.\n *\n * Scan order (later overrides earlier by name):\n * 1. Built-in presets (hardcoded)\n * 2. ~/.claude/output-styles/ (CC compat global)\n * 3. ~/.minto/output-styles/ (Minto global)\n * 4. ./.claude/output-styles/ (CC compat project)\n * 5. ./.minto/output-styles/ (Minto project)\n * 6. Plugin output-styles/ dirs\n */\n\nimport { existsSync, readFileSync, readdirSync, statSync } from 'fs'\nimport { join } from 'path'\nimport { homedir } from 'os'\nimport matter from 'gray-matter'\nimport { getAllPluginOutputStyleDirs } from '@utils/session/sessionPlugins'\nimport { getCwd } from '@utils/state'\nimport { CONFIG_BASE_DIR } from '@constants/product'\nimport { getGlobalConfig } from '@utils/config'\n\n/**\n * Output style configuration from frontmatter\n */\nexport interface OutputStyleConfig {\n /** Style name */\n name: string\n\n /** Description of the style */\n description?: string\n\n /** Priority (higher wins when multiple styles match) */\n priority?: number\n\n /** Content types this style applies to */\n contentTypes?: string[]\n\n /** Whether this style is enabled */\n enabled?: boolean\n\n /** Whether to keep coding instructions in system prompt (default: true) */\n keepCodingInstructions?: boolean\n\n /** Whether this style replaces the entire system prompt (default: false) */\n replaceSystemPrompt?: boolean\n}\n\n/**\n * Loaded output style\n */\nexport interface LoadedOutputStyle {\n /** Style name */\n name: string\n\n /** Style configuration */\n config: OutputStyleConfig\n\n /** Style content (template) */\n content: string\n\n /** Source file path */\n filePath: string\n\n /** Source plugin name (if from plugin) */\n pluginName?: string\n\n /** Source type for display */\n source?: 'builtin' | 'global' | 'project' | 'plugin'\n}\n\n/**\n * Cache for loaded output styles\n */\nlet outputStylesCache: LoadedOutputStyle[] | null = null\n\n/**\n * Built-in presets (no file I/O needed)\n */\nconst BUILTIN_PRESETS: LoadedOutputStyle[] = [\n {\n name: 'default',\n config: {\n name: 'default',\n description: 'Default output style with standard coding instructions',\n keepCodingInstructions: true,\n replaceSystemPrompt: false,\n enabled: true,\n },\n content: '',\n filePath: '<builtin>',\n source: 'builtin',\n },\n {\n name: 'concise',\n config: {\n name: 'concise',\n description: 'Concise responses with minimal explanation',\n keepCodingInstructions: true,\n replaceSystemPrompt: false,\n enabled: true,\n },\n content:\n 'Be extremely concise. Give the shortest possible answer. Skip explanations unless asked. Use bullet points over paragraphs. No filler words.',\n filePath: '<builtin>',\n source: 'builtin',\n },\n {\n name: 'explanatory',\n config: {\n name: 'explanatory',\n description: 'Detailed explanations with reasoning and context',\n keepCodingInstructions: true,\n replaceSystemPrompt: false,\n enabled: true,\n },\n content:\n 'Provide detailed explanations with reasoning. Include context for decisions, alternatives considered, and trade-offs. Use examples where helpful. Explain \"why\" not just \"what\".',\n filePath: '<builtin>',\n source: 'builtin',\n },\n]\n\n/**\n * Parse output style file (markdown with frontmatter)\n */\nfunction parseOutputStyleFile(\n filePath: string,\n source: LoadedOutputStyle['source'],\n): LoadedOutputStyle | null {\n try {\n const content = readFileSync(filePath, 'utf-8')\n const { data: frontmatter, content: styleContent } = matter(content)\n\n // Name is required\n if (!frontmatter.name) {\n return null\n }\n\n return {\n name: frontmatter.name,\n config: {\n name: frontmatter.name,\n description: frontmatter.description,\n priority: frontmatter.priority ?? 0,\n contentTypes: frontmatter.contentTypes ?? ['*'],\n enabled: frontmatter.enabled ?? true,\n keepCodingInstructions: frontmatter.keepCodingInstructions ?? true,\n replaceSystemPrompt: frontmatter.replaceSystemPrompt ?? false,\n },\n content: styleContent.trim(),\n filePath,\n source,\n }\n } catch {\n return null\n }\n}\n\n/**\n * Scan directory for output style files\n */\nfunction scanOutputStyleDir(\n dirPath: string,\n source: LoadedOutputStyle['source'],\n): LoadedOutputStyle[] {\n if (!existsSync(dirPath) || !statSync(dirPath).isDirectory()) {\n return []\n }\n\n const styles: LoadedOutputStyle[] = []\n\n try {\n const files = readdirSync(dirPath)\n\n for (const file of files) {\n if (!file.endsWith('.md') && !file.endsWith('.json')) continue\n\n const filePath = join(dirPath, file)\n if (!statSync(filePath).isFile()) continue\n\n if (file.endsWith('.md')) {\n const style = parseOutputStyleFile(filePath, source)\n if (style) {\n styles.push(style)\n }\n } else if (file.endsWith('.json')) {\n try {\n const content = readFileSync(filePath, 'utf-8')\n const json = JSON.parse(content)\n\n if (json.name) {\n styles.push({\n name: json.name,\n config: {\n name: json.name,\n description: json.description,\n priority: json.priority ?? 0,\n contentTypes: json.contentTypes ?? ['*'],\n enabled: json.enabled ?? true,\n keepCodingInstructions: json.keepCodingInstructions ?? true,\n replaceSystemPrompt: json.replaceSystemPrompt ?? false,\n },\n content: json.template || json.content || '',\n filePath,\n source,\n })\n }\n } catch {\n // Ignore malformed JSON\n }\n }\n }\n } catch {\n // Ignore directory read errors\n }\n\n return styles\n}\n\n/**\n * Load all output styles from all sources.\n * Load order: built-in < global < project < plugin (same name = later wins)\n */\nexport function loadAllOutputStyles(): LoadedOutputStyle[] {\n if (outputStylesCache !== null) {\n return outputStylesCache\n }\n\n const home = homedir()\n const cwd = getCwd()\n const styleMap = new Map<string, LoadedOutputStyle>()\n\n // 1. Built-in presets\n for (const preset of BUILTIN_PRESETS) {\n styleMap.set(preset.name, preset)\n }\n\n // 2. Global directories: ~/.claude/output-styles/ then ~/.minto/output-styles/\n const globalDirs = [\n join(home, '.claude', 'output-styles'),\n join(home, CONFIG_BASE_DIR, 'output-styles'),\n ]\n for (const dir of globalDirs) {\n for (const style of scanOutputStyleDir(dir, 'global')) {\n styleMap.set(style.name, style)\n }\n }\n\n // 3. Project directories: .claude/output-styles/ then .minto/output-styles/\n const projectDirs = [\n join(cwd, '.claude', 'output-styles'),\n join(cwd, CONFIG_BASE_DIR, 'output-styles'),\n ]\n for (const dir of projectDirs) {\n for (const style of scanOutputStyleDir(dir, 'project')) {\n styleMap.set(style.name, style)\n }\n }\n\n // 4. Plugin directories\n const pluginDirs = getAllPluginOutputStyleDirs()\n for (const dir of pluginDirs) {\n for (const style of scanOutputStyleDir(dir, 'plugin')) {\n styleMap.set(style.name, style)\n }\n }\n\n const styles = Array.from(styleMap.values())\n\n // Sort by priority (higher first)\n styles.sort((a, b) => (b.config.priority ?? 0) - (a.config.priority ?? 0))\n\n outputStylesCache = styles\n return styles\n}\n\n/**\n * Get an output style by name\n */\nexport function getOutputStyle(name: string): LoadedOutputStyle | undefined {\n const styles = loadAllOutputStyles()\n return styles.find(s => s.name === name)\n}\n\n/**\n * Get the currently selected output style (from GlobalConfig)\n */\nexport function getSelectedOutputStyle(): LoadedOutputStyle | undefined {\n try {\n const config = getGlobalConfig()\n if (config.outputStyle) {\n return getOutputStyle(config.outputStyle)\n }\n } catch {\n // Config not ready yet\n }\n return undefined\n}\n\n/**\n * Get output styles for a specific content type\n */\nexport function getOutputStylesForContentType(\n contentType: string,\n): LoadedOutputStyle[] {\n const styles = loadAllOutputStyles()\n\n return styles.filter(style => {\n if (!style.config.enabled) return false\n\n const types = style.config.contentTypes ?? ['*']\n return types.includes('*') || types.includes(contentType)\n })\n}\n\n/**\n * Get the highest priority style for a content type\n */\nexport function getBestOutputStyle(\n contentType: string,\n): LoadedOutputStyle | undefined {\n const styles = getOutputStylesForContentType(contentType)\n return styles[0]\n}\n\n/**\n * Clear the output styles cache\n */\nexport function clearOutputStylesCache(): void {\n outputStylesCache = null\n}\n\n/**\n * Get count of available output styles\n */\nexport function getOutputStyleCount(): number {\n return loadAllOutputStyles().length\n}\n\n/**\n * Apply an output style to content\n * Simple template replacement with {{content}} placeholder\n */\nexport function applyOutputStyle(\n style: LoadedOutputStyle,\n content: string,\n): string {\n if (!style.content) {\n return content\n }\n\n let result = style.content\n\n result = result.replace(/\\{\\{content\\}\\}/g, content)\n result = result.replace(\n /\\{\\{date\\}\\}/g,\n new Date().toISOString().split('T')[0],\n )\n result = result.replace(\n /\\{\\{time\\}\\}/g,\n new Date().toISOString().split('T')[1].split('.')[0],\n )\n\n return result\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,5 +0,0 @@
1
- export * from "./pluginRuntime.js";
2
- export * from "./pluginValidation.js";
3
- export * from "./skillMarketplace.js";
4
- export * from "./lspServers.js";
5
- //# sourceMappingURL=index.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/services/plugins/index.ts"],
4
- "sourcesContent": ["/**\n * Plugin Services Index\n *\n * Exports all plugin-related services and utilities.\n * Compatible with Claude Code CLI plugin specification.\n */\n\n// Core runtime\nexport * from './pluginRuntime'\n\n// Validation\nexport * from './pluginValidation'\n\n// Marketplace\nexport * from './skillMarketplace'\n\n// LSP Servers (Claude Code CLI specific)\nexport * from './lspServers'\n"],
5
- "mappings": "AAQA,cAAc;AAGd,cAAc;AAGd,cAAc;AAGd,cAAc;",
6
- "names": []
7
- }
@@ -1,188 +0,0 @@
1
- import { existsSync, readFileSync } from "fs";
2
- import { join, resolve, isAbsolute } from "path";
3
- import { z } from "zod";
4
- import { getAllPluginLspConfigFiles } from "../../utils/session/sessionPlugins.js";
5
- import { getCwd } from "../../utils/state.js";
6
- const LspServerConfigSchema = z.object({
7
- // Required
8
- command: z.string().min(1),
9
- // Optional command args
10
- args: z.array(z.string()).optional().default([]),
11
- // Transport configuration
12
- transport: z.enum(["stdio", "socket", "pipe"]).optional().default("stdio"),
13
- // Environment variables
14
- env: z.record(z.string()).optional().default({}),
15
- // File patterns this server handles
16
- filePatterns: z.array(z.string()).optional().default([]),
17
- // Language ID mapping (extension -> languageId)
18
- extensionToLanguage: z.record(z.string()).optional().default({}),
19
- // Server initialization options
20
- initializationOptions: z.unknown().optional(),
21
- // Server settings
22
- settings: z.unknown().optional(),
23
- // Workspace folder (defaults to cwd)
24
- workspaceFolder: z.string().optional(),
25
- // Root path for relative file resolution
26
- rootPath: z.string().optional(),
27
- // Timeouts
28
- startupTimeout: z.number().optional().default(3e4),
29
- // 30s default
30
- shutdownTimeout: z.number().optional().default(5e3),
31
- // 5s default
32
- // Restart behavior
33
- restartOnCrash: z.boolean().optional().default(true),
34
- maxRestarts: z.number().optional().default(3),
35
- // Logging
36
- loggingConfig: z.object({
37
- level: z.enum(["off", "error", "warn", "info", "debug", "trace"]).optional(),
38
- logFile: z.string().optional()
39
- }).optional()
40
- });
41
- const LspConfigSchema = z.record(z.string(), LspServerConfigSchema);
42
- let lspServersCache = null;
43
- function resolvePluginPath(value, pluginRoot) {
44
- if (!value) return value;
45
- let resolved = value.replace(/\$\{CLAUDE_PLUGIN_ROOT\}/g, pluginRoot);
46
- resolved = resolved.replace(/\$CLAUDE_PLUGIN_ROOT/g, pluginRoot);
47
- resolved = resolved.replace(/\$\{MINTO_PLUGIN_ROOT\}/g, pluginRoot);
48
- resolved = resolved.replace(/\$MINTO_PLUGIN_ROOT/g, pluginRoot);
49
- if (!isAbsolute(resolved) && !resolved.startsWith("$")) {
50
- resolved = resolve(pluginRoot, resolved);
51
- }
52
- return resolved;
53
- }
54
- function resolvePluginPaths(values, pluginRoot) {
55
- return values.map((v) => resolvePluginPath(v, pluginRoot));
56
- }
57
- function resolvePluginEnv(env, pluginRoot) {
58
- const resolved = {};
59
- for (const [key, value] of Object.entries(env)) {
60
- resolved[key] = resolvePluginPath(value, pluginRoot);
61
- }
62
- return resolved;
63
- }
64
- function parseLspConfigFile(filePath, pluginRoot) {
65
- const servers = /* @__PURE__ */ new Map();
66
- if (!existsSync(filePath)) {
67
- return servers;
68
- }
69
- try {
70
- const content = readFileSync(filePath, "utf-8");
71
- const data = JSON.parse(content);
72
- const result = LspConfigSchema.safeParse(data);
73
- if (!result.success) {
74
- console.warn(`Invalid LSP config in ${filePath}: ${result.error.message}`);
75
- return servers;
76
- }
77
- const root = pluginRoot || join(filePath, "..");
78
- for (const [languageId, config] of Object.entries(result.data)) {
79
- const loadedServer = {
80
- languageId,
81
- config,
82
- resolvedCommand: resolvePluginPath(config.command, root),
83
- resolvedArgs: resolvePluginPaths(config.args || [], root),
84
- filePath,
85
- pluginRoot: root
86
- };
87
- servers.set(languageId, loadedServer);
88
- }
89
- } catch (error) {
90
- console.warn(
91
- `Failed to parse LSP config ${filePath}:`,
92
- error instanceof Error ? error.message : String(error)
93
- );
94
- }
95
- return servers;
96
- }
97
- function loadAllLspServers() {
98
- if (lspServersCache !== null) {
99
- return Array.from(lspServersCache.values());
100
- }
101
- const servers = /* @__PURE__ */ new Map();
102
- const configFiles = getAllPluginLspConfigFiles();
103
- for (const filePath of configFiles) {
104
- const pluginRoot = filePath.includes(".minto-plugin") || filePath.includes(".claude-plugin") ? join(filePath, "..", "..") : join(filePath, "..");
105
- const fileServers = parseLspConfigFile(filePath, pluginRoot);
106
- for (const [languageId, server] of fileServers) {
107
- servers.set(languageId, server);
108
- }
109
- }
110
- lspServersCache = servers;
111
- return Array.from(servers.values());
112
- }
113
- function getLspServer(languageId) {
114
- if (lspServersCache === null) {
115
- loadAllLspServers();
116
- }
117
- return lspServersCache?.get(languageId);
118
- }
119
- function getLspServerForFile(filePath) {
120
- const servers = loadAllLspServers();
121
- const ext = filePath.includes(".") ? filePath.split(".").pop() : "";
122
- if (!ext) return void 0;
123
- for (const server of servers) {
124
- if (server.config.extensionToLanguage?.[ext]) {
125
- return server;
126
- }
127
- if (server.config.filePatterns?.some((pattern) => {
128
- if (pattern.startsWith("*.")) {
129
- return ext === pattern.slice(2);
130
- }
131
- if (pattern.includes("**")) {
132
- const extPattern = pattern.split("**/*.").pop();
133
- return ext === extPattern;
134
- }
135
- return false;
136
- })) {
137
- return server;
138
- }
139
- }
140
- return void 0;
141
- }
142
- function getSupportedLanguages() {
143
- const servers = loadAllLspServers();
144
- return servers.map((s) => s.languageId);
145
- }
146
- function hasLspSupport(languageId) {
147
- return getLspServer(languageId) !== void 0;
148
- }
149
- function clearLspServersCache() {
150
- lspServersCache = null;
151
- }
152
- function getLspServerCount() {
153
- return loadAllLspServers().length;
154
- }
155
- function validateLspConfig(config) {
156
- const result = LspConfigSchema.safeParse(config);
157
- if (result.success) {
158
- return { success: true, data: result.data };
159
- }
160
- return { success: false, error: result.error.message };
161
- }
162
- function createLspInitOptions(server) {
163
- const root = server.pluginRoot || getCwd();
164
- return {
165
- command: server.resolvedCommand,
166
- args: server.resolvedArgs,
167
- env: resolvePluginEnv(server.config.env || {}, root),
168
- workspaceFolder: server.config.workspaceFolder ? resolvePluginPath(server.config.workspaceFolder, root) : getCwd(),
169
- initializationOptions: server.config.initializationOptions
170
- };
171
- }
172
- export {
173
- LspConfigSchema,
174
- LspServerConfigSchema,
175
- clearLspServersCache,
176
- createLspInitOptions,
177
- getLspServer,
178
- getLspServerCount,
179
- getLspServerForFile,
180
- getSupportedLanguages,
181
- hasLspSupport,
182
- loadAllLspServers,
183
- resolvePluginEnv,
184
- resolvePluginPath,
185
- resolvePluginPaths,
186
- validateLspConfig
187
- };
188
- //# sourceMappingURL=lspServers.js.map