centaurus-cli 3.0.0 → 3.1.0

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 (552) hide show
  1. package/dist/ai/types.js +0 -1
  2. package/dist/ai/types.js.map +1 -1
  3. package/dist/cli-adapter.js +5047 -5037
  4. package/dist/cli-adapter.js.map +1 -1
  5. package/dist/commands/CommandParser.js +372 -315
  6. package/dist/commands/CommandParser.js.map +1 -1
  7. package/dist/config/build-config.js +11 -42
  8. package/dist/config/build-config.js.map +1 -1
  9. package/dist/config/defaultConfig.js +94 -82
  10. package/dist/config/defaultConfig.js.map +1 -1
  11. package/dist/config/manager.js +144 -160
  12. package/dist/config/manager.js.map +1 -1
  13. package/dist/config/mcp-config-manager.js +411 -364
  14. package/dist/config/mcp-config-manager.js.map +1 -1
  15. package/dist/config/models.js +118 -185
  16. package/dist/config/models.js.map +1 -1
  17. package/dist/config/slash-commands.js +186 -184
  18. package/dist/config/slash-commands.js.map +1 -1
  19. package/dist/config/types.js +33 -26
  20. package/dist/config/types.js.map +1 -1
  21. package/dist/context/command-detector.js +63 -67
  22. package/dist/context/command-detector.js.map +1 -1
  23. package/dist/context/context-manager.js +533 -518
  24. package/dist/context/context-manager.js.map +1 -1
  25. package/dist/context/handlers/docker-handler.js +518 -576
  26. package/dist/context/handlers/docker-handler.js.map +1 -1
  27. package/dist/context/handlers/ssh-handler.js +1050 -1109
  28. package/dist/context/handlers/ssh-handler.js.map +1 -1
  29. package/dist/context/handlers/wsl-handler.js +558 -630
  30. package/dist/context/handlers/wsl-handler.js.map +1 -1
  31. package/dist/context/index.js +42 -6
  32. package/dist/context/index.js.map +1 -1
  33. package/dist/context/subshell-handler.js +0 -4
  34. package/dist/context/subshell-handler.js.map +1 -1
  35. package/dist/context/types.js +20 -31
  36. package/dist/context/types.js.map +1 -1
  37. package/dist/hooks/useConnectivity.js +13 -10
  38. package/dist/hooks/useConnectivity.js.map +1 -1
  39. package/dist/hooks/useTerminalDimensions.js +67 -79
  40. package/dist/hooks/useTerminalDimensions.js.map +1 -1
  41. package/dist/index.js +228 -251
  42. package/dist/index.js.map +1 -1
  43. package/dist/mcp/mcp-command-handler.js +297 -260
  44. package/dist/mcp/mcp-command-handler.js.map +1 -1
  45. package/dist/mcp/mcp-server-manager.js +139 -155
  46. package/dist/mcp/mcp-server-manager.js.map +1 -1
  47. package/dist/mcp/mcp-tool-wrapper.js +74 -94
  48. package/dist/mcp/mcp-tool-wrapper.js.map +1 -1
  49. package/dist/services/ai-autocomplete-agent.js +169 -181
  50. package/dist/services/ai-autocomplete-agent.js.map +1 -1
  51. package/dist/services/ai-context-injector.js +180 -93
  52. package/dist/services/ai-context-injector.js.map +1 -1
  53. package/dist/services/ai-service-client.js +513 -456
  54. package/dist/services/ai-service-client.js.map +1 -1
  55. package/dist/services/api-client.js +443 -441
  56. package/dist/services/api-client.js.map +1 -1
  57. package/dist/services/auth-handler.js +162 -198
  58. package/dist/services/auth-handler.js.map +1 -1
  59. package/dist/services/background-task-manager.js +258 -282
  60. package/dist/services/background-task-manager.js.map +1 -1
  61. package/dist/services/checkpoint-manager.js +1513 -973
  62. package/dist/services/checkpoint-manager.js.map +1 -1
  63. package/dist/services/clipboard-service.js +151 -200
  64. package/dist/services/clipboard-service.js.map +1 -1
  65. package/dist/services/connectivity-manager.js +63 -65
  66. package/dist/services/connectivity-manager.js.map +1 -1
  67. package/dist/services/conversation-manager.js +118 -121
  68. package/dist/services/conversation-manager.js.map +1 -1
  69. package/dist/services/environment-context-injector.js +160 -187
  70. package/dist/services/environment-context-injector.js.map +1 -1
  71. package/dist/services/fast-context-agent.js +203 -243
  72. package/dist/services/fast-context-agent.js.map +1 -1
  73. package/dist/services/input-detection-agent.js +190 -202
  74. package/dist/services/input-detection-agent.js.map +1 -1
  75. package/dist/services/input-requirement-detector.js +155 -189
  76. package/dist/services/input-requirement-detector.js.map +1 -1
  77. package/dist/services/local-chat-storage.js +342 -365
  78. package/dist/services/local-chat-storage.js.map +1 -1
  79. package/dist/services/monitored-shell-manager.js +225 -233
  80. package/dist/services/monitored-shell-manager.js.map +1 -1
  81. package/dist/services/ollama-service.js +293 -310
  82. package/dist/services/ollama-service.js.map +1 -1
  83. package/dist/services/rules-storage.js +142 -0
  84. package/dist/services/rules-storage.js.map +1 -0
  85. package/dist/services/session-quota-manager.js +219 -235
  86. package/dist/services/session-quota-manager.js.map +1 -1
  87. package/dist/services/shell-input-agent.js +299 -334
  88. package/dist/services/shell-input-agent.js.map +1 -1
  89. package/dist/services/sub-agent-manager.js +459 -501
  90. package/dist/services/sub-agent-manager.js.map +1 -1
  91. package/dist/services/warpify-detector.js +133 -183
  92. package/dist/services/warpify-detector.js.map +1 -1
  93. package/dist/services/workflow-storage.js +202 -217
  94. package/dist/services/workflow-storage.js.map +1 -1
  95. package/dist/test-ssh-handler.js +148 -193
  96. package/dist/test-ssh-handler.js.map +1 -1
  97. package/dist/tools/add-mcp.js +161 -0
  98. package/dist/tools/add-mcp.js.map +1 -0
  99. package/dist/tools/background-command.js +240 -273
  100. package/dist/tools/background-command.js.map +1 -1
  101. package/dist/tools/command.js +447 -440
  102. package/dist/tools/command.js.map +1 -1
  103. package/dist/tools/create-image.js +172 -202
  104. package/dist/tools/create-image.js.map +1 -1
  105. package/dist/tools/enter-remote-session.js +169 -215
  106. package/dist/tools/enter-remote-session.js.map +1 -1
  107. package/dist/tools/fast-context.js +60 -67
  108. package/dist/tools/fast-context.js.map +1 -1
  109. package/dist/tools/file-ops.js +605 -537
  110. package/dist/tools/file-ops.js.map +1 -1
  111. package/dist/tools/find-files.js +262 -303
  112. package/dist/tools/find-files.js.map +1 -1
  113. package/dist/tools/get-diff.js +423 -400
  114. package/dist/tools/get-diff.js.map +1 -1
  115. package/dist/tools/grep-search.js +966 -948
  116. package/dist/tools/grep-search.js.map +1 -1
  117. package/dist/tools/inspect-symbol.js +308 -323
  118. package/dist/tools/inspect-symbol.js.map +1 -1
  119. package/dist/tools/plan-mode.js +459 -503
  120. package/dist/tools/plan-mode.js.map +1 -1
  121. package/dist/tools/read-binary-file.js +160 -190
  122. package/dist/tools/read-binary-file.js.map +1 -1
  123. package/dist/tools/registry.js +100 -84
  124. package/dist/tools/registry.js.map +1 -1
  125. package/dist/tools/reproduce_issue.js +170 -151
  126. package/dist/tools/reproduce_issue.js.map +1 -1
  127. package/dist/tools/sub-agent.js +223 -228
  128. package/dist/tools/sub-agent.js.map +1 -1
  129. package/dist/tools/task-complete.js +28 -27
  130. package/dist/tools/task-complete.js.map +1 -1
  131. package/dist/tools/types.js +0 -1
  132. package/dist/tools/types.js.map +1 -1
  133. package/dist/tools/validation.js +96 -118
  134. package/dist/tools/validation.js.map +1 -1
  135. package/dist/tools/web-search.js +194 -194
  136. package/dist/tools/web-search.js.map +1 -1
  137. package/dist/tools/workflow-tool.js +77 -82
  138. package/dist/tools/workflow-tool.js.map +1 -1
  139. package/dist/types/index.js +0 -1
  140. package/dist/types/index.js.map +1 -1
  141. package/dist/types/rule.js +1 -0
  142. package/dist/types/rule.js.map +1 -0
  143. package/dist/types/workflow.js +0 -7
  144. package/dist/types/workflow.js.map +1 -1
  145. package/dist/ui/components/AgentTimer.js +24 -25
  146. package/dist/ui/components/AgentTimer.js.map +1 -1
  147. package/dist/ui/components/App.js +3266 -3249
  148. package/dist/ui/components/App.js.map +1 -1
  149. package/dist/ui/components/AuthScreen.js +22 -34
  150. package/dist/ui/components/AuthScreen.js.map +1 -1
  151. package/dist/ui/components/AuthWelcomeScreen.js +30 -24
  152. package/dist/ui/components/AuthWelcomeScreen.js.map +1 -1
  153. package/dist/ui/components/Breadcrumbs.js +53 -82
  154. package/dist/ui/components/Breadcrumbs.js.map +1 -1
  155. package/dist/ui/components/CircularSelectInput.js +59 -67
  156. package/dist/ui/components/CircularSelectInput.js.map +1 -1
  157. package/dist/ui/components/ClipboardFileAutocomplete.js +78 -39
  158. package/dist/ui/components/ClipboardFileAutocomplete.js.map +1 -1
  159. package/dist/ui/components/CodeBlock.js +24 -42
  160. package/dist/ui/components/CodeBlock.js.map +1 -1
  161. package/dist/ui/components/ConfigViewer.js +18 -25
  162. package/dist/ui/components/ConfigViewer.js.map +1 -1
  163. package/dist/ui/components/ConfirmPrompt.js +49 -71
  164. package/dist/ui/components/ConfirmPrompt.js.map +1 -1
  165. package/dist/ui/components/ConnectionStatusMessage.js +32 -83
  166. package/dist/ui/components/ConnectionStatusMessage.js.map +1 -1
  167. package/dist/ui/components/ContextWindowIndicator.js +34 -49
  168. package/dist/ui/components/ContextWindowIndicator.js.map +1 -1
  169. package/dist/ui/components/DetailedPlanReviewScreen.js +104 -106
  170. package/dist/ui/components/DetailedPlanReviewScreen.js.map +1 -1
  171. package/dist/ui/components/DiffViewer.js +68 -121
  172. package/dist/ui/components/DiffViewer.js.map +1 -1
  173. package/dist/ui/components/ErrorBoundary.js +40 -48
  174. package/dist/ui/components/ErrorBoundary.js.map +1 -1
  175. package/dist/ui/components/FileCreationPreview.js +29 -60
  176. package/dist/ui/components/FileCreationPreview.js.map +1 -1
  177. package/dist/ui/components/FileOperation.js +34 -29
  178. package/dist/ui/components/FileOperation.js.map +1 -1
  179. package/dist/ui/components/FileTagAutocomplete.js +55 -25
  180. package/dist/ui/components/FileTagAutocomplete.js.map +1 -1
  181. package/dist/ui/components/FontRecommendation.js.map +1 -1
  182. package/dist/ui/components/GitDiffBreadcrumb.js +29 -0
  183. package/dist/ui/components/GitDiffBreadcrumb.js.map +1 -0
  184. package/dist/ui/components/InputBox.js +1620 -2150
  185. package/dist/ui/components/InputBox.js.map +1 -1
  186. package/dist/ui/components/InteractiveShell.js +234 -352
  187. package/dist/ui/components/InteractiveShell.js.map +1 -1
  188. package/dist/ui/components/KeyboardHelp.js +34 -35
  189. package/dist/ui/components/KeyboardHelp.js.map +1 -1
  190. package/dist/ui/components/LoadingIndicator.js +22 -25
  191. package/dist/ui/components/LoadingIndicator.js.map +1 -1
  192. package/dist/ui/components/MCPAddScreen.js +40 -51
  193. package/dist/ui/components/MCPAddScreen.js.map +1 -1
  194. package/dist/ui/components/MCPListScreen.js +40 -48
  195. package/dist/ui/components/MCPListScreen.js.map +1 -1
  196. package/dist/ui/components/MCPServerListScreen.js +49 -56
  197. package/dist/ui/components/MCPServerListScreen.js.map +1 -1
  198. package/dist/ui/components/MarkdownRenderer.js +69 -96
  199. package/dist/ui/components/MarkdownRenderer.js.map +1 -1
  200. package/dist/ui/components/MessageBox.js +66 -48
  201. package/dist/ui/components/MessageBox.js.map +1 -1
  202. package/dist/ui/components/MessageDisplay.js +150 -142
  203. package/dist/ui/components/MessageDisplay.js.map +1 -1
  204. package/dist/ui/components/MonitorModeAIPanel.js +46 -65
  205. package/dist/ui/components/MonitorModeAIPanel.js.map +1 -1
  206. package/dist/ui/components/MultiLineInput.js +243 -277
  207. package/dist/ui/components/MultiLineInput.js.map +1 -1
  208. package/dist/ui/components/PasswordPrompt.js +37 -18
  209. package/dist/ui/components/PasswordPrompt.js.map +1 -1
  210. package/dist/ui/components/PlanAcceptedMessage.js +27 -38
  211. package/dist/ui/components/PlanAcceptedMessage.js.map +1 -1
  212. package/dist/ui/components/PlanReviewScreen.js +46 -50
  213. package/dist/ui/components/PlanReviewScreen.js.map +1 -1
  214. package/dist/ui/components/RulesEditorScreen.js +81 -0
  215. package/dist/ui/components/RulesEditorScreen.js.map +1 -0
  216. package/dist/ui/components/SelectPrompt.js +19 -8
  217. package/dist/ui/components/SelectPrompt.js.map +1 -1
  218. package/dist/ui/components/ShimmerText.js +44 -0
  219. package/dist/ui/components/ShimmerText.js.map +1 -0
  220. package/dist/ui/components/SlashCommandAutocomplete.js +49 -22
  221. package/dist/ui/components/SlashCommandAutocomplete.js.map +1 -1
  222. package/dist/ui/components/StatusBar.js +56 -87
  223. package/dist/ui/components/StatusBar.js.map +1 -1
  224. package/dist/ui/components/StreamingMessageDisplay.js +116 -99
  225. package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
  226. package/dist/ui/components/TaskCompletedMessage.js +28 -23
  227. package/dist/ui/components/TaskCompletedMessage.js.map +1 -1
  228. package/dist/ui/components/TaskProgressIndicator.js +44 -70
  229. package/dist/ui/components/TaskProgressIndicator.js.map +1 -1
  230. package/dist/ui/components/ThinkingDisplay.js +44 -41
  231. package/dist/ui/components/ThinkingDisplay.js.map +1 -1
  232. package/dist/ui/components/ToolExecutionMessage.js +772 -1326
  233. package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
  234. package/dist/ui/components/ToolExecutionStatus.js +53 -84
  235. package/dist/ui/components/ToolExecutionStatus.js.map +1 -1
  236. package/dist/ui/components/ToolResult.js +22 -15
  237. package/dist/ui/components/ToolResult.js.map +1 -1
  238. package/dist/ui/components/VersionUpdatePrompt.js +88 -120
  239. package/dist/ui/components/VersionUpdatePrompt.js.map +1 -1
  240. package/dist/ui/components/WelcomeBanner.js +176 -26
  241. package/dist/ui/components/WelcomeBanner.js.map +1 -1
  242. package/dist/ui/components/WorkflowCreatorScreen.js +94 -161
  243. package/dist/ui/components/WorkflowCreatorScreen.js.map +1 -1
  244. package/dist/utils/ansi-encoder.js +30 -61
  245. package/dist/utils/ansi-encoder.js.map +1 -1
  246. package/dist/utils/chat-formatter.js +327 -305
  247. package/dist/utils/chat-formatter.js.map +1 -1
  248. package/dist/utils/command-history.js +152 -174
  249. package/dist/utils/command-history.js.map +1 -1
  250. package/dist/utils/context-sanitizer.js +49 -112
  251. package/dist/utils/context-sanitizer.js.map +1 -1
  252. package/dist/utils/conversation-logger.js +292 -324
  253. package/dist/utils/conversation-logger.js.map +1 -1
  254. package/dist/utils/custom-commands-manager.js +126 -131
  255. package/dist/utils/custom-commands-manager.js.map +1 -1
  256. package/dist/utils/editor-utils.js +732 -837
  257. package/dist/utils/editor-utils.js.map +1 -1
  258. package/dist/utils/file.js +174 -213
  259. package/dist/utils/file.js.map +1 -1
  260. package/dist/utils/git-stats.js +169 -0
  261. package/dist/utils/git-stats.js.map +1 -0
  262. package/dist/utils/input-classifier.js +960 -482
  263. package/dist/utils/input-classifier.js.map +1 -1
  264. package/dist/utils/logger.js +48 -73
  265. package/dist/utils/logger.js.map +1 -1
  266. package/dist/utils/markdown-parser.js +277 -310
  267. package/dist/utils/markdown-parser.js.map +1 -1
  268. package/dist/utils/rule-reference-resolver.js +54 -0
  269. package/dist/utils/rule-reference-resolver.js.map +1 -0
  270. package/dist/utils/shell.js +144 -156
  271. package/dist/utils/shell.js.map +1 -1
  272. package/dist/utils/state.js +23 -22
  273. package/dist/utils/state.js.map +1 -1
  274. package/dist/utils/syntax-checker.js +279 -327
  275. package/dist/utils/syntax-checker.js.map +1 -1
  276. package/dist/utils/terminal-output.js +199 -302
  277. package/dist/utils/terminal-output.js.map +1 -1
  278. package/dist/utils/text-clipboard.js +47 -70
  279. package/dist/utils/text-clipboard.js.map +1 -1
  280. package/dist/utils/unicode-sanitizer.js +134 -197
  281. package/dist/utils/unicode-sanitizer.js.map +1 -1
  282. package/dist/utils/version-checker.js +46 -56
  283. package/dist/utils/version-checker.js.map +1 -1
  284. package/package.json +6 -4
  285. package/dist/ai/types.d.ts +0 -20
  286. package/dist/ai/types.d.ts.map +0 -1
  287. package/dist/cli-adapter.d.ts +0 -511
  288. package/dist/cli-adapter.d.ts.map +0 -1
  289. package/dist/commands/CommandParser.d.ts +0 -27
  290. package/dist/commands/CommandParser.d.ts.map +0 -1
  291. package/dist/config/build-config.d.ts +0 -42
  292. package/dist/config/build-config.d.ts.map +0 -1
  293. package/dist/config/defaultConfig.d.ts +0 -79
  294. package/dist/config/defaultConfig.d.ts.map +0 -1
  295. package/dist/config/manager.d.ts +0 -62
  296. package/dist/config/manager.d.ts.map +0 -1
  297. package/dist/config/mcp-config-manager.d.ts +0 -79
  298. package/dist/config/mcp-config-manager.d.ts.map +0 -1
  299. package/dist/config/models.d.ts +0 -83
  300. package/dist/config/models.d.ts.map +0 -1
  301. package/dist/config/slash-commands.d.ts +0 -23
  302. package/dist/config/slash-commands.d.ts.map +0 -1
  303. package/dist/config/types.d.ts +0 -35
  304. package/dist/config/types.d.ts.map +0 -1
  305. package/dist/context/command-detector.d.ts +0 -50
  306. package/dist/context/command-detector.d.ts.map +0 -1
  307. package/dist/context/context-manager.d.ts +0 -157
  308. package/dist/context/context-manager.d.ts.map +0 -1
  309. package/dist/context/handlers/docker-handler.d.ts +0 -130
  310. package/dist/context/handlers/docker-handler.d.ts.map +0 -1
  311. package/dist/context/handlers/ssh-handler.d.ts +0 -201
  312. package/dist/context/handlers/ssh-handler.d.ts.map +0 -1
  313. package/dist/context/handlers/wsl-handler.d.ts +0 -146
  314. package/dist/context/handlers/wsl-handler.d.ts.map +0 -1
  315. package/dist/context/index.d.ts +0 -8
  316. package/dist/context/index.d.ts.map +0 -1
  317. package/dist/context/subshell-handler.d.ts +0 -165
  318. package/dist/context/subshell-handler.d.ts.map +0 -1
  319. package/dist/context/types.d.ts +0 -70
  320. package/dist/context/types.d.ts.map +0 -1
  321. package/dist/hooks/useConnectivity.d.ts +0 -2
  322. package/dist/hooks/useConnectivity.d.ts.map +0 -1
  323. package/dist/hooks/useTerminalDimensions.d.ts +0 -41
  324. package/dist/hooks/useTerminalDimensions.d.ts.map +0 -1
  325. package/dist/index.d.ts +0 -9
  326. package/dist/index.d.ts.map +0 -1
  327. package/dist/mcp/mcp-command-handler.d.ts +0 -47
  328. package/dist/mcp/mcp-command-handler.d.ts.map +0 -1
  329. package/dist/mcp/mcp-server-manager.d.ts +0 -30
  330. package/dist/mcp/mcp-server-manager.d.ts.map +0 -1
  331. package/dist/mcp/mcp-tool-wrapper.d.ts +0 -12
  332. package/dist/mcp/mcp-tool-wrapper.d.ts.map +0 -1
  333. package/dist/services/ai-autocomplete-agent.d.ts +0 -39
  334. package/dist/services/ai-autocomplete-agent.d.ts.map +0 -1
  335. package/dist/services/ai-context-injector.d.ts +0 -41
  336. package/dist/services/ai-context-injector.d.ts.map +0 -1
  337. package/dist/services/ai-service-client.d.ts +0 -128
  338. package/dist/services/ai-service-client.d.ts.map +0 -1
  339. package/dist/services/api-client.d.ts +0 -353
  340. package/dist/services/api-client.d.ts.map +0 -1
  341. package/dist/services/auth-handler.d.ts +0 -30
  342. package/dist/services/auth-handler.d.ts.map +0 -1
  343. package/dist/services/background-task-manager.d.ts +0 -114
  344. package/dist/services/background-task-manager.d.ts.map +0 -1
  345. package/dist/services/checkpoint-manager.d.ts +0 -167
  346. package/dist/services/checkpoint-manager.d.ts.map +0 -1
  347. package/dist/services/clipboard-service.d.ts +0 -37
  348. package/dist/services/clipboard-service.d.ts.map +0 -1
  349. package/dist/services/connectivity-manager.d.ts +0 -18
  350. package/dist/services/connectivity-manager.d.ts.map +0 -1
  351. package/dist/services/conversation-manager.d.ts +0 -73
  352. package/dist/services/conversation-manager.d.ts.map +0 -1
  353. package/dist/services/environment-context-injector.d.ts +0 -69
  354. package/dist/services/environment-context-injector.d.ts.map +0 -1
  355. package/dist/services/fast-context-agent.d.ts +0 -12
  356. package/dist/services/fast-context-agent.d.ts.map +0 -1
  357. package/dist/services/input-detection-agent.d.ts +0 -40
  358. package/dist/services/input-detection-agent.d.ts.map +0 -1
  359. package/dist/services/input-requirement-detector.d.ts +0 -28
  360. package/dist/services/input-requirement-detector.d.ts.map +0 -1
  361. package/dist/services/local-chat-storage.d.ts +0 -182
  362. package/dist/services/local-chat-storage.d.ts.map +0 -1
  363. package/dist/services/monitored-shell-manager.d.ts +0 -120
  364. package/dist/services/monitored-shell-manager.d.ts.map +0 -1
  365. package/dist/services/ollama-service.d.ts +0 -197
  366. package/dist/services/ollama-service.d.ts.map +0 -1
  367. package/dist/services/session-quota-manager.d.ts +0 -101
  368. package/dist/services/session-quota-manager.d.ts.map +0 -1
  369. package/dist/services/shell-input-agent.d.ts +0 -89
  370. package/dist/services/shell-input-agent.d.ts.map +0 -1
  371. package/dist/services/sub-agent-manager.d.ts +0 -140
  372. package/dist/services/sub-agent-manager.d.ts.map +0 -1
  373. package/dist/services/warpify-detector.d.ts +0 -43
  374. package/dist/services/warpify-detector.d.ts.map +0 -1
  375. package/dist/services/workflow-storage.d.ts +0 -72
  376. package/dist/services/workflow-storage.d.ts.map +0 -1
  377. package/dist/test-ssh-handler.d.ts +0 -8
  378. package/dist/test-ssh-handler.d.ts.map +0 -1
  379. package/dist/tools/background-command.d.ts +0 -11
  380. package/dist/tools/background-command.d.ts.map +0 -1
  381. package/dist/tools/command.d.ts +0 -3
  382. package/dist/tools/command.d.ts.map +0 -1
  383. package/dist/tools/create-image.d.ts +0 -10
  384. package/dist/tools/create-image.d.ts.map +0 -1
  385. package/dist/tools/enter-remote-session.d.ts +0 -48
  386. package/dist/tools/enter-remote-session.d.ts.map +0 -1
  387. package/dist/tools/fast-context.d.ts +0 -3
  388. package/dist/tools/fast-context.d.ts.map +0 -1
  389. package/dist/tools/file-ops.d.ts +0 -7
  390. package/dist/tools/file-ops.d.ts.map +0 -1
  391. package/dist/tools/find-files.d.ts +0 -49
  392. package/dist/tools/find-files.d.ts.map +0 -1
  393. package/dist/tools/get-diff.d.ts +0 -14
  394. package/dist/tools/get-diff.d.ts.map +0 -1
  395. package/dist/tools/grep-search.d.ts +0 -155
  396. package/dist/tools/grep-search.d.ts.map +0 -1
  397. package/dist/tools/inspect-symbol.d.ts +0 -32
  398. package/dist/tools/inspect-symbol.d.ts.map +0 -1
  399. package/dist/tools/plan-mode.d.ts +0 -140
  400. package/dist/tools/plan-mode.d.ts.map +0 -1
  401. package/dist/tools/read-binary-file.d.ts +0 -10
  402. package/dist/tools/read-binary-file.d.ts.map +0 -1
  403. package/dist/tools/registry.d.ts +0 -31
  404. package/dist/tools/registry.d.ts.map +0 -1
  405. package/dist/tools/reproduce_issue.d.ts +0 -2
  406. package/dist/tools/reproduce_issue.d.ts.map +0 -1
  407. package/dist/tools/sub-agent.d.ts +0 -9
  408. package/dist/tools/sub-agent.d.ts.map +0 -1
  409. package/dist/tools/task-complete.d.ts +0 -3
  410. package/dist/tools/task-complete.d.ts.map +0 -1
  411. package/dist/tools/types.d.ts +0 -40
  412. package/dist/tools/types.d.ts.map +0 -1
  413. package/dist/tools/validation.d.ts +0 -47
  414. package/dist/tools/validation.d.ts.map +0 -1
  415. package/dist/tools/web-search.d.ts +0 -24
  416. package/dist/tools/web-search.d.ts.map +0 -1
  417. package/dist/tools/workflow-tool.d.ts +0 -11
  418. package/dist/tools/workflow-tool.d.ts.map +0 -1
  419. package/dist/types/index.d.ts +0 -123
  420. package/dist/types/index.d.ts.map +0 -1
  421. package/dist/types/workflow.d.ts +0 -110
  422. package/dist/types/workflow.d.ts.map +0 -1
  423. package/dist/ui/components/AgentTimer.d.ts +0 -7
  424. package/dist/ui/components/AgentTimer.d.ts.map +0 -1
  425. package/dist/ui/components/App.d.ts +0 -197
  426. package/dist/ui/components/App.d.ts.map +0 -1
  427. package/dist/ui/components/AuthScreen.d.ts +0 -8
  428. package/dist/ui/components/AuthScreen.d.ts.map +0 -1
  429. package/dist/ui/components/AuthWelcomeScreen.d.ts +0 -8
  430. package/dist/ui/components/AuthWelcomeScreen.d.ts.map +0 -1
  431. package/dist/ui/components/Breadcrumbs.d.ts +0 -13
  432. package/dist/ui/components/Breadcrumbs.d.ts.map +0 -1
  433. package/dist/ui/components/CircularSelectInput.d.ts +0 -24
  434. package/dist/ui/components/CircularSelectInput.d.ts.map +0 -1
  435. package/dist/ui/components/ClipboardFileAutocomplete.d.ts +0 -10
  436. package/dist/ui/components/ClipboardFileAutocomplete.d.ts.map +0 -1
  437. package/dist/ui/components/CodeBlock.d.ts +0 -9
  438. package/dist/ui/components/CodeBlock.d.ts.map +0 -1
  439. package/dist/ui/components/ConfigViewer.d.ts +0 -11
  440. package/dist/ui/components/ConfigViewer.d.ts.map +0 -1
  441. package/dist/ui/components/ConfirmPrompt.d.ts +0 -13
  442. package/dist/ui/components/ConfirmPrompt.d.ts.map +0 -1
  443. package/dist/ui/components/ConnectionStatusMessage.d.ts +0 -17
  444. package/dist/ui/components/ConnectionStatusMessage.d.ts.map +0 -1
  445. package/dist/ui/components/ContextWindowIndicator.d.ts +0 -8
  446. package/dist/ui/components/ContextWindowIndicator.d.ts.map +0 -1
  447. package/dist/ui/components/DetailedPlanReviewScreen.d.ts +0 -17
  448. package/dist/ui/components/DetailedPlanReviewScreen.d.ts.map +0 -1
  449. package/dist/ui/components/DiffViewer.d.ts +0 -9
  450. package/dist/ui/components/DiffViewer.d.ts.map +0 -1
  451. package/dist/ui/components/ErrorBoundary.d.ts +0 -17
  452. package/dist/ui/components/ErrorBoundary.d.ts.map +0 -1
  453. package/dist/ui/components/FileCreationPreview.d.ts +0 -8
  454. package/dist/ui/components/FileCreationPreview.d.ts.map +0 -1
  455. package/dist/ui/components/FileOperation.d.ts +0 -10
  456. package/dist/ui/components/FileOperation.d.ts.map +0 -1
  457. package/dist/ui/components/FileTagAutocomplete.d.ts +0 -11
  458. package/dist/ui/components/FileTagAutocomplete.d.ts.map +0 -1
  459. package/dist/ui/components/FontRecommendation.d.ts +0 -1
  460. package/dist/ui/components/FontRecommendation.d.ts.map +0 -1
  461. package/dist/ui/components/InputBox.d.ts +0 -42
  462. package/dist/ui/components/InputBox.d.ts.map +0 -1
  463. package/dist/ui/components/InteractiveShell.d.ts +0 -30
  464. package/dist/ui/components/InteractiveShell.d.ts.map +0 -1
  465. package/dist/ui/components/KeyboardHelp.d.ts +0 -7
  466. package/dist/ui/components/KeyboardHelp.d.ts.map +0 -1
  467. package/dist/ui/components/LoadingIndicator.d.ts +0 -3
  468. package/dist/ui/components/LoadingIndicator.d.ts.map +0 -1
  469. package/dist/ui/components/MCPAddScreen.d.ts +0 -13
  470. package/dist/ui/components/MCPAddScreen.d.ts.map +0 -1
  471. package/dist/ui/components/MCPListScreen.d.ts +0 -17
  472. package/dist/ui/components/MCPListScreen.d.ts.map +0 -1
  473. package/dist/ui/components/MCPServerListScreen.d.ts +0 -16
  474. package/dist/ui/components/MCPServerListScreen.d.ts.map +0 -1
  475. package/dist/ui/components/MarkdownRenderer.d.ts +0 -8
  476. package/dist/ui/components/MarkdownRenderer.d.ts.map +0 -1
  477. package/dist/ui/components/MessageBox.d.ts +0 -10
  478. package/dist/ui/components/MessageBox.d.ts.map +0 -1
  479. package/dist/ui/components/MessageDisplay.d.ts +0 -14
  480. package/dist/ui/components/MessageDisplay.d.ts.map +0 -1
  481. package/dist/ui/components/MonitorModeAIPanel.d.ts +0 -23
  482. package/dist/ui/components/MonitorModeAIPanel.d.ts.map +0 -1
  483. package/dist/ui/components/MultiLineInput.d.ts +0 -13
  484. package/dist/ui/components/MultiLineInput.d.ts.map +0 -1
  485. package/dist/ui/components/PasswordPrompt.d.ts +0 -9
  486. package/dist/ui/components/PasswordPrompt.d.ts.map +0 -1
  487. package/dist/ui/components/PlanAcceptedMessage.d.ts +0 -20
  488. package/dist/ui/components/PlanAcceptedMessage.d.ts.map +0 -1
  489. package/dist/ui/components/PlanReviewScreen.d.ts +0 -14
  490. package/dist/ui/components/PlanReviewScreen.d.ts.map +0 -1
  491. package/dist/ui/components/SelectPrompt.d.ts +0 -12
  492. package/dist/ui/components/SelectPrompt.d.ts.map +0 -1
  493. package/dist/ui/components/SlashCommandAutocomplete.d.ts +0 -13
  494. package/dist/ui/components/SlashCommandAutocomplete.d.ts.map +0 -1
  495. package/dist/ui/components/StatusBar.d.ts +0 -14
  496. package/dist/ui/components/StatusBar.d.ts.map +0 -1
  497. package/dist/ui/components/StreamingMessageDisplay.d.ts +0 -15
  498. package/dist/ui/components/StreamingMessageDisplay.d.ts.map +0 -1
  499. package/dist/ui/components/TaskCompletedMessage.d.ts +0 -14
  500. package/dist/ui/components/TaskCompletedMessage.d.ts.map +0 -1
  501. package/dist/ui/components/TaskProgressIndicator.d.ts +0 -18
  502. package/dist/ui/components/TaskProgressIndicator.d.ts.map +0 -1
  503. package/dist/ui/components/ThinkingDisplay.d.ts +0 -15
  504. package/dist/ui/components/ThinkingDisplay.d.ts.map +0 -1
  505. package/dist/ui/components/ToolExecutionMessage.d.ts +0 -8
  506. package/dist/ui/components/ToolExecutionMessage.d.ts.map +0 -1
  507. package/dist/ui/components/ToolExecutionStatus.d.ts +0 -10
  508. package/dist/ui/components/ToolExecutionStatus.d.ts.map +0 -1
  509. package/dist/ui/components/ToolResult.d.ts +0 -10
  510. package/dist/ui/components/ToolResult.d.ts.map +0 -1
  511. package/dist/ui/components/VersionUpdatePrompt.d.ts +0 -9
  512. package/dist/ui/components/VersionUpdatePrompt.d.ts.map +0 -1
  513. package/dist/ui/components/WelcomeBanner.d.ts +0 -3
  514. package/dist/ui/components/WelcomeBanner.d.ts.map +0 -1
  515. package/dist/ui/components/WorkflowCreatorScreen.d.ts +0 -25
  516. package/dist/ui/components/WorkflowCreatorScreen.d.ts.map +0 -1
  517. package/dist/utils/ansi-encoder.d.ts +0 -7
  518. package/dist/utils/ansi-encoder.d.ts.map +0 -1
  519. package/dist/utils/chat-formatter.d.ts +0 -12
  520. package/dist/utils/chat-formatter.d.ts.map +0 -1
  521. package/dist/utils/command-history.d.ts +0 -24
  522. package/dist/utils/command-history.d.ts.map +0 -1
  523. package/dist/utils/context-sanitizer.d.ts +0 -50
  524. package/dist/utils/context-sanitizer.d.ts.map +0 -1
  525. package/dist/utils/conversation-logger.d.ts +0 -142
  526. package/dist/utils/conversation-logger.d.ts.map +0 -1
  527. package/dist/utils/custom-commands-manager.d.ts +0 -59
  528. package/dist/utils/custom-commands-manager.d.ts.map +0 -1
  529. package/dist/utils/editor-utils.d.ts +0 -101
  530. package/dist/utils/editor-utils.d.ts.map +0 -1
  531. package/dist/utils/file.d.ts +0 -61
  532. package/dist/utils/file.d.ts.map +0 -1
  533. package/dist/utils/input-classifier.d.ts +0 -25
  534. package/dist/utils/input-classifier.d.ts.map +0 -1
  535. package/dist/utils/logger.d.ts +0 -17
  536. package/dist/utils/logger.d.ts.map +0 -1
  537. package/dist/utils/markdown-parser.d.ts +0 -60
  538. package/dist/utils/markdown-parser.d.ts.map +0 -1
  539. package/dist/utils/shell.d.ts +0 -47
  540. package/dist/utils/shell.d.ts.map +0 -1
  541. package/dist/utils/state.d.ts +0 -13
  542. package/dist/utils/state.d.ts.map +0 -1
  543. package/dist/utils/syntax-checker.d.ts +0 -24
  544. package/dist/utils/syntax-checker.d.ts.map +0 -1
  545. package/dist/utils/terminal-output.d.ts +0 -25
  546. package/dist/utils/terminal-output.d.ts.map +0 -1
  547. package/dist/utils/text-clipboard.d.ts +0 -12
  548. package/dist/utils/text-clipboard.d.ts.map +0 -1
  549. package/dist/utils/unicode-sanitizer.d.ts +0 -44
  550. package/dist/utils/unicode-sanitizer.d.ts.map +0 -1
  551. package/dist/utils/version-checker.d.ts +0 -14
  552. package/dist/utils/version-checker.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"get-diff.js","sourceRoot":"","sources":["../../src/tools/get-diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/tools/get-diff.ts"],"sourcesContent":["import { exec } from 'child_process';\r\nimport { promisify } from 'util';\r\nimport { Tool, ToolExecutionContext } from './types.js';\r\nimport type { RemoteFileHandler } from '../services/checkpoint-manager.js';\r\n\r\nconst execAsync = promisify(exec);\r\n\r\n/**\r\n * Rewritten get_diff tool with action-based pattern and session scope support.\r\n * \r\n * Actions:\r\n * - \"overview\" (default): Shows a compact summary of files changed.\r\n * - \"file_diff\": Shows the detailed diff for a single specific file.\r\n * \r\n * Scopes:\r\n * - \"request\" (default): Changes made in the current turn (since last user message).\r\n * - \"session\": Cumulative changes made since the start of the conversation.\r\n */\r\nexport const getDiffTool: Tool = {\r\n schema: {\r\n name: 'get_diff',\r\n description: `View changes made during the current session.\r\n\r\nACTIONS:\r\n- action=\"overview\" (default): Shows a compact summary of files changed with line counts. Does NOT show content.\r\n- action=\"file_diff\": Shows the detailed diff for ONE specific file. Requires filePath.\r\n\r\nSCOPES (controlled by 'scope' parameter):\r\n- scope=\"request\" (default): Shows changes made only in the current turn (since the last user message).\r\n- scope=\"session\": Shows cumulative changes made since the beginning of the entire conversation.\r\n\r\nWORKFLOW:\r\n1. Call with action=\"overview\" to see changed files.\r\n2. If needed, call with action=\"file_diff\" and filePath=\"<path>\" to see details.\r\n3. Use scope=\"session\" to review all changes made during the conversation.`,\r\n parameters: {\r\n type: 'object',\r\n properties: {\r\n reason_text: {\r\n type: 'string',\r\n description: 'REQUIRED: Brief explanation of why you are checking the diff.'\r\n },\r\n action: {\r\n type: 'string',\r\n enum: ['overview', 'file_diff'],\r\n description: 'The action to perform. \"overview\" (summary) or \"file_diff\" (detailed).'\r\n },\r\n scope: {\r\n type: 'string',\r\n enum: ['request', 'session'],\r\n description: 'Scope of changes. \"request\" (default): Current turn only. \"session\": Entire conversation history.'\r\n },\r\n filePath: {\r\n type: 'string',\r\n description: 'The file path to get the detailed diff for. REQUIRED for action=\"file_diff\".'\r\n }\r\n },\r\n required: ['reason_text']\r\n }\r\n },\r\n\r\n async execute(args: Record<string, any>, context: ToolExecutionContext): Promise<string> {\r\n const action = args.action || 'overview';\r\n const scope = args.scope || 'request';\r\n const filePath = args.filePath;\r\n\r\n const checkpointManager = context.checkpointManager;\r\n let targetCheckpointId = context.currentCheckpointId;\r\n // Determine current context (local vs remote) and handler\r\n const currentContext = context.contextManager && typeof context.contextManager.getCurrentContext === 'function'\r\n ? context.contextManager.getCurrentContext()\r\n : null;\r\n const isRemote = currentContext && currentContext.type !== 'local';\r\n let remoteHandler: RemoteFileHandler | undefined;\r\n if (isRemote && currentContext.handler) {\r\n if (typeof currentContext.handler.readFile === 'function' &&\r\n typeof currentContext.handler.writeFile === 'function' &&\r\n typeof currentContext.handler.executeCommand === 'function' &&\r\n typeof currentContext.handler.isConnected === 'function') {\r\n remoteHandler = currentContext.handler as RemoteFileHandler;\r\n }\r\n }\r\n\r\n targetCheckpointId = await resolveTargetCheckpointId(\r\n checkpointManager,\r\n targetCheckpointId,\r\n scope,\r\n isRemote,\r\n currentContext,\r\n remoteHandler\r\n );\r\n\r\n switch (action) {\r\n case 'overview':\r\n return handleOverview(checkpointManager, targetCheckpointId, context.cwd, scope, isRemote, remoteHandler);\r\n\r\n case 'file_diff':\r\n if (!filePath) {\r\n throw new Error('Missing required parameter \"filePath\" for action \"file_diff\".');\r\n }\r\n return handleFileDiff(checkpointManager, targetCheckpointId, filePath, context.cwd, scope, isRemote, remoteHandler);\r\n\r\n default:\r\n throw new Error(`Unknown action \"${action}\". Valid actions are: \"overview\", \"file_diff\".`);\r\n }\r\n }\r\n};\r\n\r\nfunction getMatchingCheckpoints(\r\n checkpointManager: any,\r\n isRemote: boolean,\r\n currentContext: any\r\n): any[] {\r\n if (!checkpointManager || typeof checkpointManager.list !== 'function') {\r\n return [];\r\n }\r\n\r\n const all = checkpointManager.list();\r\n if (!Array.isArray(all) || all.length === 0) {\r\n return [];\r\n }\r\n\r\n if (!isRemote) {\r\n return all.filter((cp: any) => cp?.contextType === 'local');\r\n }\r\n\r\n const currentType = currentContext?.type;\r\n const currentHost = currentContext?.metadata?.hostname;\r\n return all.filter((cp: any) => {\r\n if (!cp || cp.contextType !== currentType) return false;\r\n if (currentType !== 'ssh' || !currentHost) return true;\r\n return cp.remoteSessionInfo?.hostname === currentHost;\r\n });\r\n}\r\n\r\nasync function resolveTargetCheckpointId(\r\n checkpointManager: any,\r\n initialCheckpointId: string | undefined,\r\n scope: string,\r\n isRemote: boolean,\r\n currentContext: any,\r\n remoteHandler?: RemoteFileHandler\r\n): Promise<string | undefined> {\r\n if (!checkpointManager) {\r\n return initialCheckpointId;\r\n }\r\n\r\n const matching = getMatchingCheckpoints(checkpointManager, isRemote, currentContext);\r\n let targetCheckpointId = initialCheckpointId;\r\n\r\n if (scope === 'session') {\r\n if (matching.length > 0) {\r\n const earliest = matching.reduce((a: any, b: any) => (a.createdAtMs < b.createdAtMs ? a : b));\r\n return earliest.id;\r\n }\r\n\r\n if (typeof checkpointManager.getInitialCheckpoint === 'function') {\r\n const initialCheckpoint = checkpointManager.getInitialCheckpoint();\r\n if (initialCheckpoint) {\r\n return initialCheckpoint.id;\r\n }\r\n }\r\n\r\n return targetCheckpointId;\r\n }\r\n\r\n // request scope\r\n if (!targetCheckpointId && matching.length > 0) {\r\n targetCheckpointId = matching[0].id;\r\n }\r\n\r\n if (!targetCheckpointId) {\r\n return targetCheckpointId;\r\n }\r\n\r\n // Resume edge case:\r\n // A fresh \"active\" checkpoint gets created for the first post-resume prompt.\r\n // If it has no tracked changes yet, fall back to the previous checkpoint so diff can\r\n // still inspect already-existing session changes.\r\n const targetMeta = matching.find((cp: any) => cp.id === targetCheckpointId);\r\n if (targetMeta?.status === 'active' && typeof checkpointManager.getSessionChanges === 'function') {\r\n try {\r\n const sessionData = await checkpointManager.getSessionChanges(targetCheckpointId, remoteHandler);\r\n const hasChanges = Boolean(sessionData) && (\r\n sessionData.changes.added.length > 0 ||\r\n sessionData.changes.modified.length > 0 ||\r\n sessionData.changes.deleted.length > 0\r\n );\r\n\r\n if (!hasChanges) {\r\n const previous = matching.find((cp: any) => cp.id !== targetCheckpointId);\r\n if (previous) {\r\n return previous.id;\r\n }\r\n }\r\n } catch {\r\n // Keep the current target on lookup failure.\r\n }\r\n }\r\n\r\n return targetCheckpointId;\r\n}\r\n\r\n/**\r\n * Handle the \"overview\" action\r\n */\r\nasync function handleOverview(\r\n checkpointManager: any,\r\n targetCheckpointId: string | undefined,\r\n cwd: string,\r\n scope: string,\r\n isRemote: boolean,\r\n remoteHandler?: RemoteFileHandler\r\n): Promise<string> {\r\n const scopeLabel = scope === 'session' ? 'Total Session Changes' : 'Current Request Changes';\r\n\r\n // Try checkpoint-based changes\r\n if (checkpointManager && targetCheckpointId) {\r\n try {\r\n // For session scope, use aggregated changes across all checkpoints (V2)\r\n const sessionData = scope === 'session'\r\n ? (await checkpointManager.getAggregatedSessionChanges?.(remoteHandler)) || await checkpointManager.getSessionChanges(targetCheckpointId, remoteHandler)\r\n : await checkpointManager.getSessionChanges(targetCheckpointId, remoteHandler);\r\n\r\n if (sessionData) {\r\n const { changes, stats } = sessionData;\r\n const totalFiles = changes.added.length + changes.modified.length + changes.deleted.length;\r\n\r\n if (totalFiles === 0) {\r\n // Return JSON with empty summary\r\n return JSON.stringify({\r\n result: `No changes detected in ${scope} scope.`,\r\n summary: `No changes (${scope})`\r\n });\r\n }\r\n\r\n let output = `## ${scopeLabel} Overview\\n\\n`;\r\n output += `**${totalFiles} file(s) changed** (${changes.modified.length} modified, ${changes.added.length} added, ${changes.deleted.length} deleted)\\n\\n`;\r\n\r\n let totalInsertions = 0;\r\n let totalDeletions = 0;\r\n\r\n if (changes.modified.length > 0) {\r\n output += `**Modified:**\\n`;\r\n for (const filePath of changes.modified) {\r\n const stat = stats.find((s: any) => s.filePath === filePath);\r\n if (stat) {\r\n output += ` - ${filePath} (+${stat.insertions}, -${stat.deletions})\\n`;\r\n totalInsertions += stat.insertions;\r\n totalDeletions += stat.deletions;\r\n } else {\r\n output += ` - ${filePath}\\n`;\r\n }\r\n }\r\n output += '\\n';\r\n }\r\n\r\n if (changes.added.length > 0) {\r\n output += `**Added:**\\n`;\r\n for (const filePath of changes.added) {\r\n const stat = stats.find((s: any) => s.filePath === filePath);\r\n if (stat) {\r\n output += ` - ${filePath} (${stat.insertions} lines)\\n`;\r\n totalInsertions += stat.insertions;\r\n } else {\r\n output += ` - ${filePath}\\n`;\r\n }\r\n }\r\n output += '\\n';\r\n }\r\n\r\n if (changes.deleted.length > 0) {\r\n output += `**Deleted:**\\n`;\r\n for (const filePath of changes.deleted) {\r\n const stat = stats.find((s: any) => s.filePath === filePath);\r\n if (stat) {\r\n output += ` - ${filePath} (${stat.deletions} lines)\\n`;\r\n totalDeletions += stat.deletions;\r\n } else {\r\n output += ` - ${filePath}\\n`;\r\n }\r\n }\r\n output += '\\n';\r\n }\r\n\r\n output += `To see detailed diff for a file, use action=\"file_diff\" with filePath and scope=\"${scope}\".`;\r\n\r\n // Create concise summary for UI\r\n const summary = `${totalFiles} file(s) changed (+${totalInsertions}, -${totalDeletions})`;\r\n\r\n return JSON.stringify({\r\n result: output,\r\n summary: summary\r\n });\r\n }\r\n } catch (error: any) {\r\n // Fall through to git fallback\r\n }\r\n }\r\n // Fallback\r\n if (isRemote) {\r\n if (remoteHandler) {\r\n return await gitDiffStatViaRemote(remoteHandler, cwd, scope);\r\n }\r\n return JSON.stringify({\r\n result: 'No checkpoint data and no remote handler available. Reconnect to the session.',\r\n summary: 'No remote checkpoint'\r\n });\r\n }\r\n return await gitDiffStatFallback(cwd, scope);\r\n}\r\n\r\n/**\r\n * Handle the \"file_diff\" action\r\n */\r\nasync function handleFileDiff(\r\n checkpointManager: any,\r\n targetCheckpointId: string | undefined,\r\n filePath: string,\r\n cwd: string,\r\n scope: string,\r\n isRemote: boolean,\r\n remoteHandler?: RemoteFileHandler\r\n): Promise<string> {\r\n const scopeLabel = scope === 'session' ? 'Session' : 'Request';\r\n\r\n // Try checkpoint-based diff\r\n if (checkpointManager && targetCheckpointId) {\r\n try {\r\n // For session scope, use session-wide diff that finds the earliest backup (V2)\r\n const diff = scope === 'session' && checkpointManager.getSessionFileDiff\r\n ? (await checkpointManager.getSessionFileDiff(filePath, remoteHandler)) || await checkpointManager.getFileDiff(targetCheckpointId, filePath, remoteHandler)\r\n : await checkpointManager.getFileDiff(targetCheckpointId, filePath, remoteHandler);\r\n\r\n if (diff !== null) {\r\n // Calculate lines added/deleted from diff string\r\n const lines = diff.split('\\n');\r\n const added = lines.filter((l: string) => l.startsWith('+') && !l.startsWith('+++')).length;\r\n const deleted = lines.filter((l: string) => l.startsWith('-') && !l.startsWith('---')).length;\r\n\r\n const summary = `${filePath} (+${added}, -${deleted})`;\r\n\r\n return JSON.stringify({\r\n result: `## ${scopeLabel} Diff: ${filePath}\\n\\n\\`\\`\\`diff\\n${diff}\\n\\`\\`\\``,\r\n summary: summary\r\n });\r\n }\r\n\r\n return JSON.stringify({\r\n result: `No changes found for \"${filePath}\" in ${scope} scope.`,\r\n summary: `No changes: ${filePath}`\r\n });\r\n } catch (error: any) {\r\n // Fall through to git fallback\r\n }\r\n }\r\n // Fallback\r\n if (isRemote) {\r\n if (remoteHandler) {\r\n return await gitDiffFileViaRemote(remoteHandler, cwd, filePath, scope);\r\n }\r\n return JSON.stringify({\r\n result: `No checkpoint data and no remote handler available for \"${filePath}\". Reconnect to the session.`,\r\n summary: `No remote checkpoint: ${filePath}`\r\n });\r\n }\r\n return await gitDiffFileFallback(cwd, filePath, scope);\r\n}\r\n\r\n/**\r\n * Fallback: git diff --stat\r\n */\r\nasync function gitDiffStatFallback(cwd: string, scope: string): Promise<string> {\r\n const scopeNote = scope === 'session' ? '(Session scope requested, but using git status as fallback)' : '(Request scope requested, using git status as fallback)';\r\n\r\n try {\r\n await execAsync('git rev-parse --git-dir', { cwd });\r\n } catch {\r\n return JSON.stringify({\r\n result: 'No active checkpoint available and not in a git repository.',\r\n summary: 'No git repo'\r\n });\r\n }\r\n\r\n try {\r\n // If session scope requested but no checkpoint, we can only really show current git status\r\n // which effectively IS \"session changes\" if user commits between sessions?\r\n // Actually git diff shows uncommitted changes.\r\n const { stdout } = await execAsync('git diff --stat', { cwd, maxBuffer: 5 * 1024 * 1024 });\r\n\r\n if (!stdout.trim()) {\r\n return JSON.stringify({\r\n result: 'No changes detected (git diff --stat empty).',\r\n summary: 'No git changes'\r\n });\r\n }\r\n\r\n // Extract file count from git diff --stat output\r\n // Example: \" 2 files changed, 10 insertions(+), 5 deletions(-)\"\r\n const lines = stdout.trim().split('\\n');\r\n const lastLine = lines[lines.length - 1].trim();\r\n\r\n return JSON.stringify({\r\n result: `## Git Diff Summary ${scopeNote}\\n\\n\\`\\`\\`\\n${stdout.trim()}\\n\\`\\`\\`\\n\\nNote: This is a git-based summary because checkpoints were unavailable.`,\r\n summary: lastLine || 'Git changes detected'\r\n });\r\n } catch (error: any) {\r\n throw new Error(`Failed to get git diff stat: ${error.message}`);\r\n }\r\n}\r\n\r\n/**\r\n * Fallback: git diff file\r\n */\r\nasync function gitDiffFileFallback(cwd: string, filePath: string, scope: string): Promise<string> {\r\n try {\r\n await execAsync('git rev-parse --git-dir', { cwd });\r\n } catch {\r\n return JSON.stringify({\r\n result: `No active checkpoint and not in a git repo. Cannot diff \"${filePath}\".`,\r\n summary: 'No git repo'\r\n });\r\n }\r\n\r\n try {\r\n const { stdout } = await execAsync(`git diff -- \"${filePath}\"`, { cwd, maxBuffer: 5 * 1024 * 1024 });\r\n\r\n if (!stdout.trim()) {\r\n return JSON.stringify({\r\n result: `No changes detected in \"${filePath}\" (via git diff).`,\r\n summary: `No changes: ${filePath}`\r\n });\r\n }\r\n\r\n // Calculate lines added/deleted\r\n const lines = stdout.split('\\n');\r\n const added = lines.filter((l: string) => l.startsWith('+') && !l.startsWith('+++')).length;\r\n const deleted = lines.filter((l: string) => l.startsWith('-') && !l.startsWith('---')).length;\r\n const summary = `${filePath} (git: +${added}, -${deleted})`;\r\n\r\n return JSON.stringify({\r\n result: `## Git Diff: ${filePath} (${scope})\\n\\n\\`\\`\\`diff\\n${stdout.trim()}\\n\\`\\`\\``,\r\n summary: summary\r\n });\r\n } catch (error: any) {\r\n throw new Error(`Failed to get git diff for \"${filePath}\": ${error.message}`);\r\n }\r\n}\r\n\r\n/**\r\n * Remote fallback: Run git diff --stat on the remote machine via handler\r\n */\r\nasync function gitDiffStatViaRemote(handler: RemoteFileHandler, cwd: string, scope: string): Promise<string> {\r\n const scopeNote = scope === 'session'\r\n ? '(Session scope requested, using remote git status as fallback)'\r\n : '(Request scope requested, using remote git status as fallback)';\r\n\r\n try {\r\n // Check if remote directory is a git repo\r\n const gitCheck = await handler.executeCommand(`cd \"${cwd}\" && git rev-parse --git-dir 2>/dev/null`);\r\n if (gitCheck.exitCode !== 0) {\r\n return JSON.stringify({\r\n result: 'No active checkpoint available and remote directory is not a git repository.',\r\n summary: 'No git repo (remote)'\r\n });\r\n }\r\n\r\n const result = await handler.executeCommand(`cd \"${cwd}\" && git diff --stat 2>/dev/null`);\r\n const stdout = result.stdout?.trim() || '';\r\n\r\n if (!stdout) {\r\n // Also try git status for untracked/new files\r\n const statusResult = await handler.executeCommand(`cd \"${cwd}\" && git status --porcelain 2>/dev/null`);\r\n const statusOut = statusResult.stdout?.trim() || '';\r\n\r\n if (!statusOut) {\r\n return JSON.stringify({\r\n result: 'No changes detected (git diff --stat empty on remote).',\r\n summary: 'No git changes (remote)'\r\n });\r\n }\r\n\r\n // Parse git status --porcelain output for a summary\r\n const statusLines = statusOut.split('\\n').filter((l: string) => l.trim().length > 0);\r\n const newFiles = statusLines.filter((l: string) => l.startsWith('??') || l.startsWith('A '));\r\n const modifiedFiles = statusLines.filter((l: string) => l.startsWith(' M') || l.startsWith('M '));\r\n const deletedFiles = statusLines.filter((l: string) => l.startsWith(' D') || l.startsWith('D '));\r\n\r\n let output = `## Remote Git Status ${scopeNote}\\n\\n`;\r\n output += `**${statusLines.length} file(s) with changes** (${modifiedFiles.length} modified, ${newFiles.length} new, ${deletedFiles.length} deleted)\\n\\n`;\r\n output += `\\`\\`\\`\\n${statusOut}\\n\\`\\`\\`\\n\\nNote: This is a git-based summary because checkpoints were unavailable.`;\r\n\r\n return JSON.stringify({\r\n result: output,\r\n summary: `${statusLines.length} file(s) changed (remote git status)`\r\n });\r\n }\r\n\r\n const lines = stdout.split('\\n');\r\n const lastLine = lines[lines.length - 1].trim();\r\n\r\n return JSON.stringify({\r\n result: `## Remote Git Diff Summary ${scopeNote}\\n\\n\\`\\`\\`\\n${stdout}\\n\\`\\`\\`\\n\\nNote: This is a git-based summary because checkpoints were unavailable.`,\r\n summary: lastLine || 'Git changes detected (remote)'\r\n });\r\n } catch (error: any) {\r\n return JSON.stringify({\r\n result: `Failed to get remote git diff: ${error.message}`,\r\n summary: 'Remote git diff failed'\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Remote fallback: Run git diff for a specific file on the remote machine via handler\r\n */\r\nasync function gitDiffFileViaRemote(handler: RemoteFileHandler, cwd: string, filePath: string, scope: string): Promise<string> {\r\n try {\r\n // Check if remote directory is a git repo\r\n const gitCheck = await handler.executeCommand(`cd \"${cwd}\" && git rev-parse --git-dir 2>/dev/null`);\r\n if (gitCheck.exitCode !== 0) {\r\n return JSON.stringify({\r\n result: `No active checkpoint and remote directory is not a git repo. Cannot diff \"${filePath}\".`,\r\n summary: 'No git repo (remote)'\r\n });\r\n }\r\n\r\n const result = await handler.executeCommand(`cd \"${cwd}\" && git diff -- \"${filePath}\" 2>/dev/null`);\r\n const stdout = result.stdout?.trim() || '';\r\n\r\n if (!stdout) {\r\n // Check if file is untracked (new)\r\n const statusResult = await handler.executeCommand(`cd \"${cwd}\" && git status --porcelain -- \"${filePath}\" 2>/dev/null`);\r\n const statusOut = statusResult.stdout?.trim() || '';\r\n\r\n if (statusOut.startsWith('??')) {\r\n // Untracked file — show the entire content as additions\r\n try {\r\n const content = await handler.readFile(cwd + '/' + filePath);\r\n const lines = content.split('\\n');\r\n let diff = `--- /dev/null\\n+++ b/${filePath}\\n@@ -0,0 +1,${lines.length} @@\\n`;\r\n diff += lines.map((l: string) => `+${l}`).join('\\n');\r\n\r\n return JSON.stringify({\r\n result: `## Remote Git Diff: ${filePath} (new file, ${scope})\\n\\n\\`\\`\\`diff\\n${diff}\\n\\`\\`\\``,\r\n summary: `${filePath} (new: +${lines.length} lines)`\r\n });\r\n } catch {\r\n return JSON.stringify({\r\n result: `File \"${filePath}\" is new (untracked) but could not be read.`,\r\n summary: `${filePath} (new, unreadable)`\r\n });\r\n }\r\n }\r\n\r\n return JSON.stringify({\r\n result: `No changes detected in \"${filePath}\" (via remote git diff).`,\r\n summary: `No changes: ${filePath}`\r\n });\r\n }\r\n\r\n // Calculate lines added/deleted\r\n const lines = stdout.split('\\n');\r\n const added = lines.filter((l: string) => l.startsWith('+') && !l.startsWith('+++')).length;\r\n const deleted = lines.filter((l: string) => l.startsWith('-') && !l.startsWith('---')).length;\r\n const summary = `${filePath} (remote git: +${added}, -${deleted})`;\r\n\r\n return JSON.stringify({\r\n result: `## Remote Git Diff: ${filePath} (${scope})\\n\\n\\`\\`\\`diff\\n${stdout}\\n\\`\\`\\``,\r\n summary: summary\r\n });\r\n } catch (error: any) {\r\n return JSON.stringify({\r\n result: `Failed to get remote git diff for \"${filePath}\": ${error.message}`,\r\n summary: `Remote git diff failed: ${filePath}`\r\n });\r\n }\r\n}\r\n"],"mappings":"AAAA,SAAS,YAAY;AACrB,SAAS,iBAAiB;AAI1B,MAAM,YAAY,UAAU,IAAI;AAazB,MAAM,cAAoB;AAAA,EAC/B,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAcb,YAAY;AAAA,MACV,MAAM;AAAA,MACN,YAAY;AAAA,QACV,aAAa;AAAA,UACX,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,MAAM,CAAC,YAAY,WAAW;AAAA,UAC9B,aAAa;AAAA,QACf;AAAA,QACA,OAAO;AAAA,UACL,MAAM;AAAA,UACN,MAAM,CAAC,WAAW,SAAS;AAAA,UAC3B,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,MACF;AAAA,MACA,UAAU,CAAC,aAAa;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,MAAM,QAAQ,MAA2B,SAAgD;AACvF,UAAM,SAAS,KAAK,UAAU;AAC9B,UAAM,QAAQ,KAAK,SAAS;AAC5B,UAAM,WAAW,KAAK;AAEtB,UAAM,oBAAoB,QAAQ;AAClC,QAAI,qBAAqB,QAAQ;AAEjC,UAAM,iBAAiB,QAAQ,kBAAkB,OAAO,QAAQ,eAAe,sBAAsB,aACjG,QAAQ,eAAe,kBAAkB,IACzC;AACJ,UAAM,WAAW,kBAAkB,eAAe,SAAS;AAC3D,QAAI;AACJ,QAAI,YAAY,eAAe,SAAS;AACtC,UAAI,OAAO,eAAe,QAAQ,aAAa,cAC7C,OAAO,eAAe,QAAQ,cAAc,cAC5C,OAAO,eAAe,QAAQ,mBAAmB,cACjD,OAAO,eAAe,QAAQ,gBAAgB,YAAY;AAC1D,wBAAgB,eAAe;AAAA,MACjC;AAAA,IACF;AAEA,yBAAqB,MAAM;AAAA,MACzB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,YAAQ,QAAQ;AAAA,MACd,KAAK;AACH,eAAO,eAAe,mBAAmB,oBAAoB,QAAQ,KAAK,OAAO,UAAU,aAAa;AAAA,MAE1G,KAAK;AACH,YAAI,CAAC,UAAU;AACb,gBAAM,IAAI,MAAM,+DAA+D;AAAA,QACjF;AACA,eAAO,eAAe,mBAAmB,oBAAoB,UAAU,QAAQ,KAAK,OAAO,UAAU,aAAa;AAAA,MAEpH;AACE,cAAM,IAAI,MAAM,mBAAmB,MAAM,gDAAgD;AAAA,IAC7F;AAAA,EACF;AACF;AAEA,SAAS,uBACP,mBACA,UACA,gBACO;AACP,MAAI,CAAC,qBAAqB,OAAO,kBAAkB,SAAS,YAAY;AACtE,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,MAAM,kBAAkB,KAAK;AACnC,MAAI,CAAC,MAAM,QAAQ,GAAG,KAAK,IAAI,WAAW,GAAG;AAC3C,WAAO,CAAC;AAAA,EACV;AAEA,MAAI,CAAC,UAAU;AACb,WAAO,IAAI,OAAO,CAAC,OAAY,IAAI,gBAAgB,OAAO;AAAA,EAC5D;AAEA,QAAM,cAAc,gBAAgB;AACpC,QAAM,cAAc,gBAAgB,UAAU;AAC9C,SAAO,IAAI,OAAO,CAAC,OAAY;AAC7B,QAAI,CAAC,MAAM,GAAG,gBAAgB,YAAa,QAAO;AAClD,QAAI,gBAAgB,SAAS,CAAC,YAAa,QAAO;AAClD,WAAO,GAAG,mBAAmB,aAAa;AAAA,EAC5C,CAAC;AACH;AAEA,eAAe,0BACb,mBACA,qBACA,OACA,UACA,gBACA,eAC6B;AAC7B,MAAI,CAAC,mBAAmB;AACtB,WAAO;AAAA,EACT;AAEA,QAAM,WAAW,uBAAuB,mBAAmB,UAAU,cAAc;AACnF,MAAI,qBAAqB;AAEzB,MAAI,UAAU,WAAW;AACvB,QAAI,SAAS,SAAS,GAAG;AACvB,YAAM,WAAW,SAAS,OAAO,CAAC,GAAQ,MAAY,EAAE,cAAc,EAAE,cAAc,IAAI,CAAE;AAC5F,aAAO,SAAS;AAAA,IAClB;AAEA,QAAI,OAAO,kBAAkB,yBAAyB,YAAY;AAChE,YAAM,oBAAoB,kBAAkB,qBAAqB;AACjE,UAAI,mBAAmB;AACrB,eAAO,kBAAkB;AAAA,MAC3B;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AAGA,MAAI,CAAC,sBAAsB,SAAS,SAAS,GAAG;AAC9C,yBAAqB,SAAS,CAAC,EAAE;AAAA,EACnC;AAEA,MAAI,CAAC,oBAAoB;AACvB,WAAO;AAAA,EACT;AAMA,QAAM,aAAa,SAAS,KAAK,CAAC,OAAY,GAAG,OAAO,kBAAkB;AAC1E,MAAI,YAAY,WAAW,YAAY,OAAO,kBAAkB,sBAAsB,YAAY;AAChG,QAAI;AACF,YAAM,cAAc,MAAM,kBAAkB,kBAAkB,oBAAoB,aAAa;AAC/F,YAAM,aAAa,QAAQ,WAAW,MACpC,YAAY,QAAQ,MAAM,SAAS,KACnC,YAAY,QAAQ,SAAS,SAAS,KACtC,YAAY,QAAQ,QAAQ,SAAS;AAGvC,UAAI,CAAC,YAAY;AACf,cAAM,WAAW,SAAS,KAAK,CAAC,OAAY,GAAG,OAAO,kBAAkB;AACxE,YAAI,UAAU;AACZ,iBAAO,SAAS;AAAA,QAClB;AAAA,MACF;AAAA,IACF,QAAQ;AAAA,IAER;AAAA,EACF;AAEA,SAAO;AACT;AAKA,eAAe,eACb,mBACA,oBACA,KACA,OACA,UACA,eACiB;AACjB,QAAM,aAAa,UAAU,YAAY,0BAA0B;AAGnE,MAAI,qBAAqB,oBAAoB;AAC3C,QAAI;AAEF,YAAM,cAAc,UAAU,YACzB,MAAM,kBAAkB,8BAA8B,aAAa,KAAM,MAAM,kBAAkB,kBAAkB,oBAAoB,aAAa,IACrJ,MAAM,kBAAkB,kBAAkB,oBAAoB,aAAa;AAE/E,UAAI,aAAa;AACf,cAAM,EAAE,SAAS,MAAM,IAAI;AAC3B,cAAM,aAAa,QAAQ,MAAM,SAAS,QAAQ,SAAS,SAAS,QAAQ,QAAQ;AAEpF,YAAI,eAAe,GAAG;AAEpB,iBAAO,KAAK,UAAU;AAAA,YACpB,QAAQ,0BAA0B,KAAK;AAAA,YACvC,SAAS,eAAe,KAAK;AAAA,UAC/B,CAAC;AAAA,QACH;AAEA,YAAI,SAAS,MAAM,UAAU;AAAA;AAAA;AAC7B,kBAAU,KAAK,UAAU,uBAAuB,QAAQ,SAAS,MAAM,cAAc,QAAQ,MAAM,MAAM,WAAW,QAAQ,QAAQ,MAAM;AAAA;AAAA;AAE1I,YAAI,kBAAkB;AACtB,YAAI,iBAAiB;AAErB,YAAI,QAAQ,SAAS,SAAS,GAAG;AAC/B,oBAAU;AAAA;AACV,qBAAW,YAAY,QAAQ,UAAU;AACvC,kBAAM,OAAO,MAAM,KAAK,CAAC,MAAW,EAAE,aAAa,QAAQ;AAC3D,gBAAI,MAAM;AACR,wBAAU,OAAO,QAAQ,MAAM,KAAK,UAAU,MAAM,KAAK,SAAS;AAAA;AAClE,iCAAmB,KAAK;AACxB,gCAAkB,KAAK;AAAA,YACzB,OAAO;AACL,wBAAU,OAAO,QAAQ;AAAA;AAAA,YAC3B;AAAA,UACF;AACA,oBAAU;AAAA,QACZ;AAEA,YAAI,QAAQ,MAAM,SAAS,GAAG;AAC5B,oBAAU;AAAA;AACV,qBAAW,YAAY,QAAQ,OAAO;AACpC,kBAAM,OAAO,MAAM,KAAK,CAAC,MAAW,EAAE,aAAa,QAAQ;AAC3D,gBAAI,MAAM;AACR,wBAAU,OAAO,QAAQ,KAAK,KAAK,UAAU;AAAA;AAC7C,iCAAmB,KAAK;AAAA,YAC1B,OAAO;AACL,wBAAU,OAAO,QAAQ;AAAA;AAAA,YAC3B;AAAA,UACF;AACA,oBAAU;AAAA,QACZ;AAEA,YAAI,QAAQ,QAAQ,SAAS,GAAG;AAC9B,oBAAU;AAAA;AACV,qBAAW,YAAY,QAAQ,SAAS;AACtC,kBAAM,OAAO,MAAM,KAAK,CAAC,MAAW,EAAE,aAAa,QAAQ;AAC3D,gBAAI,MAAM;AACR,wBAAU,OAAO,QAAQ,KAAK,KAAK,SAAS;AAAA;AAC5C,gCAAkB,KAAK;AAAA,YACzB,OAAO;AACL,wBAAU,OAAO,QAAQ;AAAA;AAAA,YAC3B;AAAA,UACF;AACA,oBAAU;AAAA,QACZ;AAEA,kBAAU,oFAAoF,KAAK;AAGnG,cAAM,UAAU,GAAG,UAAU,sBAAsB,eAAe,MAAM,cAAc;AAEtF,eAAO,KAAK,UAAU;AAAA,UACpB,QAAQ;AAAA,UACR;AAAA,QACF,CAAC;AAAA,MACH;AAAA,IACF,SAAS,OAAY;AAAA,IAErB;AAAA,EACF;AAEA,MAAI,UAAU;AACZ,QAAI,eAAe;AACjB,aAAO,MAAM,qBAAqB,eAAe,KAAK,KAAK;AAAA,IAC7D;AACA,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ;AAAA,MACR,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACA,SAAO,MAAM,oBAAoB,KAAK,KAAK;AAC7C;AAKA,eAAe,eACb,mBACA,oBACA,UACA,KACA,OACA,UACA,eACiB;AACjB,QAAM,aAAa,UAAU,YAAY,YAAY;AAGrD,MAAI,qBAAqB,oBAAoB;AAC3C,QAAI;AAEF,YAAM,OAAO,UAAU,aAAa,kBAAkB,qBACjD,MAAM,kBAAkB,mBAAmB,UAAU,aAAa,KAAM,MAAM,kBAAkB,YAAY,oBAAoB,UAAU,aAAa,IACxJ,MAAM,kBAAkB,YAAY,oBAAoB,UAAU,aAAa;AAEnF,UAAI,SAAS,MAAM;AAEjB,cAAM,QAAQ,KAAK,MAAM,IAAI;AAC7B,cAAM,QAAQ,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AACrF,cAAM,UAAU,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AAEvF,cAAM,UAAU,GAAG,QAAQ,MAAM,KAAK,MAAM,OAAO;AAEnD,eAAO,KAAK,UAAU;AAAA,UACpB,QAAQ,MAAM,UAAU,UAAU,QAAQ;AAAA;AAAA;AAAA,EAAmB,IAAI;AAAA;AAAA,UACjE;AAAA,QACF,CAAC;AAAA,MACH;AAEA,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ,yBAAyB,QAAQ,QAAQ,KAAK;AAAA,QACtD,SAAS,eAAe,QAAQ;AAAA,MAClC,CAAC;AAAA,IACH,SAAS,OAAY;AAAA,IAErB;AAAA,EACF;AAEA,MAAI,UAAU;AACZ,QAAI,eAAe;AACjB,aAAO,MAAM,qBAAqB,eAAe,KAAK,UAAU,KAAK;AAAA,IACvE;AACA,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,2DAA2D,QAAQ;AAAA,MAC3E,SAAS,yBAAyB,QAAQ;AAAA,IAC5C,CAAC;AAAA,EACH;AACA,SAAO,MAAM,oBAAoB,KAAK,UAAU,KAAK;AACvD;AAKA,eAAe,oBAAoB,KAAa,OAAgC;AAC9E,QAAM,YAAY,UAAU,YAAY,gEAAgE;AAExG,MAAI;AACF,UAAM,UAAU,2BAA2B,EAAE,IAAI,CAAC;AAAA,EACpD,QAAQ;AACN,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ;AAAA,MACR,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AAEA,MAAI;AAIF,UAAM,EAAE,OAAO,IAAI,MAAM,UAAU,mBAAmB,EAAE,KAAK,WAAW,IAAI,OAAO,KAAK,CAAC;AAEzF,QAAI,CAAC,OAAO,KAAK,GAAG;AAClB,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ;AAAA,QACR,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAIA,UAAM,QAAQ,OAAO,KAAK,EAAE,MAAM,IAAI;AACtC,UAAM,WAAW,MAAM,MAAM,SAAS,CAAC,EAAE,KAAK;AAE9C,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,uBAAuB,SAAS;AAAA;AAAA;AAAA,EAAe,OAAO,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA,MACpE,SAAS,YAAY;AAAA,IACvB,CAAC;AAAA,EACH,SAAS,OAAY;AACnB,UAAM,IAAI,MAAM,gCAAgC,MAAM,OAAO,EAAE;AAAA,EACjE;AACF;AAKA,eAAe,oBAAoB,KAAa,UAAkB,OAAgC;AAChG,MAAI;AACF,UAAM,UAAU,2BAA2B,EAAE,IAAI,CAAC;AAAA,EACpD,QAAQ;AACN,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,4DAA4D,QAAQ;AAAA,MAC5E,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AAEA,MAAI;AACF,UAAM,EAAE,OAAO,IAAI,MAAM,UAAU,gBAAgB,QAAQ,KAAK,EAAE,KAAK,WAAW,IAAI,OAAO,KAAK,CAAC;AAEnG,QAAI,CAAC,OAAO,KAAK,GAAG;AAClB,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ,2BAA2B,QAAQ;AAAA,QAC3C,SAAS,eAAe,QAAQ;AAAA,MAClC,CAAC;AAAA,IACH;AAGA,UAAM,QAAQ,OAAO,MAAM,IAAI;AAC/B,UAAM,QAAQ,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AACrF,UAAM,UAAU,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AACvF,UAAM,UAAU,GAAG,QAAQ,WAAW,KAAK,MAAM,OAAO;AAExD,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,gBAAgB,QAAQ,KAAK,KAAK;AAAA;AAAA;AAAA,EAAoB,OAAO,KAAK,CAAC;AAAA;AAAA,MAC3E;AAAA,IACF,CAAC;AAAA,EACH,SAAS,OAAY;AACnB,UAAM,IAAI,MAAM,+BAA+B,QAAQ,MAAM,MAAM,OAAO,EAAE;AAAA,EAC9E;AACF;AAKA,eAAe,qBAAqB,SAA4B,KAAa,OAAgC;AAC3G,QAAM,YAAY,UAAU,YACxB,mEACA;AAEJ,MAAI;AAEF,UAAM,WAAW,MAAM,QAAQ,eAAe,OAAO,GAAG,0CAA0C;AAClG,QAAI,SAAS,aAAa,GAAG;AAC3B,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ;AAAA,QACR,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAEA,UAAM,SAAS,MAAM,QAAQ,eAAe,OAAO,GAAG,kCAAkC;AACxF,UAAM,SAAS,OAAO,QAAQ,KAAK,KAAK;AAExC,QAAI,CAAC,QAAQ;AAEX,YAAM,eAAe,MAAM,QAAQ,eAAe,OAAO,GAAG,yCAAyC;AACrG,YAAM,YAAY,aAAa,QAAQ,KAAK,KAAK;AAEjD,UAAI,CAAC,WAAW;AACd,eAAO,KAAK,UAAU;AAAA,UACpB,QAAQ;AAAA,UACR,SAAS;AAAA,QACX,CAAC;AAAA,MACH;AAGA,YAAM,cAAc,UAAU,MAAM,IAAI,EAAE,OAAO,CAAC,MAAc,EAAE,KAAK,EAAE,SAAS,CAAC;AACnF,YAAM,WAAW,YAAY,OAAO,CAAC,MAAc,EAAE,WAAW,IAAI,KAAK,EAAE,WAAW,IAAI,CAAC;AAC3F,YAAM,gBAAgB,YAAY,OAAO,CAAC,MAAc,EAAE,WAAW,IAAI,KAAK,EAAE,WAAW,IAAI,CAAC;AAChG,YAAM,eAAe,YAAY,OAAO,CAAC,MAAc,EAAE,WAAW,IAAI,KAAK,EAAE,WAAW,IAAI,CAAC;AAE/F,UAAI,SAAS,wBAAwB,SAAS;AAAA;AAAA;AAC9C,gBAAU,KAAK,YAAY,MAAM,4BAA4B,cAAc,MAAM,cAAc,SAAS,MAAM,SAAS,aAAa,MAAM;AAAA;AAAA;AAC1I,gBAAU;AAAA,EAAW,SAAS;AAAA;AAAA;AAAA;AAE9B,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ;AAAA,QACR,SAAS,GAAG,YAAY,MAAM;AAAA,MAChC,CAAC;AAAA,IACH;AAEA,UAAM,QAAQ,OAAO,MAAM,IAAI;AAC/B,UAAM,WAAW,MAAM,MAAM,SAAS,CAAC,EAAE,KAAK;AAE9C,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,8BAA8B,SAAS;AAAA;AAAA;AAAA,EAAe,MAAM;AAAA;AAAA;AAAA;AAAA,MACpE,SAAS,YAAY;AAAA,IACvB,CAAC;AAAA,EACH,SAAS,OAAY;AACnB,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,kCAAkC,MAAM,OAAO;AAAA,MACvD,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACF;AAKA,eAAe,qBAAqB,SAA4B,KAAa,UAAkB,OAAgC;AAC7H,MAAI;AAEF,UAAM,WAAW,MAAM,QAAQ,eAAe,OAAO,GAAG,0CAA0C;AAClG,QAAI,SAAS,aAAa,GAAG;AAC3B,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ,6EAA6E,QAAQ;AAAA,QAC7F,SAAS;AAAA,MACX,CAAC;AAAA,IACH;AAEA,UAAM,SAAS,MAAM,QAAQ,eAAe,OAAO,GAAG,qBAAqB,QAAQ,eAAe;AAClG,UAAM,SAAS,OAAO,QAAQ,KAAK,KAAK;AAExC,QAAI,CAAC,QAAQ;AAEX,YAAM,eAAe,MAAM,QAAQ,eAAe,OAAO,GAAG,mCAAmC,QAAQ,eAAe;AACtH,YAAM,YAAY,aAAa,QAAQ,KAAK,KAAK;AAEjD,UAAI,UAAU,WAAW,IAAI,GAAG;AAE9B,YAAI;AACF,gBAAM,UAAU,MAAM,QAAQ,SAAS,MAAM,MAAM,QAAQ;AAC3D,gBAAMA,SAAQ,QAAQ,MAAM,IAAI;AAChC,cAAI,OAAO;AAAA,QAAwB,QAAQ;AAAA,aAAgBA,OAAM,MAAM;AAAA;AACvE,kBAAQA,OAAM,IAAI,CAAC,MAAc,IAAI,CAAC,EAAE,EAAE,KAAK,IAAI;AAEnD,iBAAO,KAAK,UAAU;AAAA,YACpB,QAAQ,uBAAuB,QAAQ,eAAe,KAAK;AAAA;AAAA;AAAA,EAAoB,IAAI;AAAA;AAAA,YACnF,SAAS,GAAG,QAAQ,WAAWA,OAAM,MAAM;AAAA,UAC7C,CAAC;AAAA,QACH,QAAQ;AACN,iBAAO,KAAK,UAAU;AAAA,YACpB,QAAQ,SAAS,QAAQ;AAAA,YACzB,SAAS,GAAG,QAAQ;AAAA,UACtB,CAAC;AAAA,QACH;AAAA,MACF;AAEA,aAAO,KAAK,UAAU;AAAA,QACpB,QAAQ,2BAA2B,QAAQ;AAAA,QAC3C,SAAS,eAAe,QAAQ;AAAA,MAClC,CAAC;AAAA,IACH;AAGA,UAAM,QAAQ,OAAO,MAAM,IAAI;AAC/B,UAAM,QAAQ,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AACrF,UAAM,UAAU,MAAM,OAAO,CAAC,MAAc,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE,WAAW,KAAK,CAAC,EAAE;AACvF,UAAM,UAAU,GAAG,QAAQ,kBAAkB,KAAK,MAAM,OAAO;AAE/D,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,uBAAuB,QAAQ,KAAK,KAAK;AAAA;AAAA;AAAA,EAAoB,MAAM;AAAA;AAAA,MAC3E;AAAA,IACF,CAAC;AAAA,EACH,SAAS,OAAY;AACnB,WAAO,KAAK,UAAU;AAAA,MACpB,QAAQ,sCAAsC,QAAQ,MAAM,MAAM,OAAO;AAAA,MACzE,SAAS,2BAA2B,QAAQ;AAAA,IAC9C,CAAC;AAAA,EACH;AACF;","names":["lines"]}