@qduc/term2 0.7.0 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (509) hide show
  1. package/dist/agent.d.ts +0 -1
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +28 -8
  4. package/dist/agent.js.map +1 -1
  5. package/dist/app.d.ts +3 -3
  6. package/dist/app.d.ts.map +1 -1
  7. package/dist/app.js +161 -75
  8. package/dist/app.js.map +1 -1
  9. package/dist/app.large-uncached-warning.test.js.map +1 -1
  10. package/dist/cli.integration.test.d.ts +2 -0
  11. package/dist/cli.integration.test.d.ts.map +1 -0
  12. package/dist/cli.integration.test.js +142 -0
  13. package/dist/cli.integration.test.js.map +1 -0
  14. package/dist/cli.js +47 -12
  15. package/dist/cli.js.map +1 -1
  16. package/dist/commands/auto-approve-command.d.ts +10 -0
  17. package/dist/commands/auto-approve-command.d.ts.map +1 -0
  18. package/dist/commands/auto-approve-command.js +40 -0
  19. package/dist/commands/auto-approve-command.js.map +1 -0
  20. package/dist/commands/clear-command.d.ts +3 -0
  21. package/dist/commands/clear-command.d.ts.map +1 -0
  22. package/dist/commands/clear-command.js +12 -0
  23. package/dist/commands/clear-command.js.map +1 -0
  24. package/dist/commands/copy-command.d.ts +10 -0
  25. package/dist/commands/copy-command.d.ts.map +1 -0
  26. package/dist/commands/copy-command.js +25 -0
  27. package/dist/commands/copy-command.js.map +1 -0
  28. package/dist/commands/effort-command.d.ts +11 -0
  29. package/dist/commands/effort-command.d.ts.map +1 -0
  30. package/dist/commands/effort-command.js +34 -0
  31. package/dist/commands/effort-command.js.map +1 -0
  32. package/dist/commands/guarded-settings-command.d.ts +14 -0
  33. package/dist/commands/guarded-settings-command.d.ts.map +1 -0
  34. package/dist/commands/guarded-settings-command.js +23 -0
  35. package/dist/commands/guarded-settings-command.js.map +1 -0
  36. package/dist/commands/handoff-command.d.ts +10 -0
  37. package/dist/commands/handoff-command.d.ts.map +1 -0
  38. package/dist/commands/handoff-command.js +17 -0
  39. package/dist/commands/handoff-command.js.map +1 -0
  40. package/dist/commands/mode-commands.d.ts +32 -0
  41. package/dist/commands/mode-commands.d.ts.map +1 -0
  42. package/dist/commands/mode-commands.js +64 -0
  43. package/dist/commands/mode-commands.js.map +1 -0
  44. package/dist/commands/model-command.d.ts +11 -0
  45. package/dist/commands/model-command.d.ts.map +1 -0
  46. package/dist/commands/model-command.js +35 -0
  47. package/dist/commands/model-command.js.map +1 -0
  48. package/dist/commands/quit-command.d.ts +3 -0
  49. package/dist/commands/quit-command.d.ts.map +1 -0
  50. package/dist/commands/quit-command.js +10 -0
  51. package/dist/commands/quit-command.js.map +1 -0
  52. package/dist/commands/retry-command.d.ts +19 -0
  53. package/dist/commands/retry-command.d.ts.map +1 -0
  54. package/dist/commands/retry-command.js +30 -0
  55. package/dist/commands/retry-command.js.map +1 -0
  56. package/dist/commands/undo-command.d.ts +15 -0
  57. package/dist/commands/undo-command.d.ts.map +1 -0
  58. package/dist/commands/undo-command.js +28 -0
  59. package/dist/commands/undo-command.js.map +1 -0
  60. package/dist/commands/usage-command.d.ts +3 -0
  61. package/dist/commands/usage-command.d.ts.map +1 -0
  62. package/dist/commands/usage-command.js +11 -0
  63. package/dist/commands/usage-command.js.map +1 -0
  64. package/dist/components/BottomArea.d.ts +7 -0
  65. package/dist/components/BottomArea.d.ts.map +1 -1
  66. package/dist/components/BottomArea.js +15 -6
  67. package/dist/components/BottomArea.js.map +1 -1
  68. package/dist/components/BottomArea.test.js +36 -4
  69. package/dist/components/BottomArea.test.js.map +1 -1
  70. package/dist/components/Common/MenuContainer.d.ts +1 -3
  71. package/dist/components/Common/MenuContainer.d.ts.map +1 -1
  72. package/dist/components/Common/MenuContainer.js +1 -13
  73. package/dist/components/Common/MenuContainer.js.map +1 -1
  74. package/dist/components/Input/input-width.d.ts +2 -1
  75. package/dist/components/Input/input-width.d.ts.map +1 -1
  76. package/dist/components/Input/input-width.js +6 -2
  77. package/dist/components/Input/input-width.js.map +1 -1
  78. package/dist/components/InputBox.d.ts +2 -0
  79. package/dist/components/InputBox.d.ts.map +1 -1
  80. package/dist/components/InputBox.js +21 -7
  81. package/dist/components/InputBox.js.map +1 -1
  82. package/dist/components/InputBox.test.js +44 -0
  83. package/dist/components/InputBox.test.js.map +1 -1
  84. package/dist/components/LargeUncachedConfirmationPrompt.d.ts +9 -0
  85. package/dist/components/LargeUncachedConfirmationPrompt.d.ts.map +1 -0
  86. package/dist/components/LargeUncachedConfirmationPrompt.js +44 -0
  87. package/dist/components/LargeUncachedConfirmationPrompt.js.map +1 -0
  88. package/dist/components/LargeUncachedConfirmationPrompt.test.d.ts +2 -0
  89. package/dist/components/LargeUncachedConfirmationPrompt.test.d.ts.map +1 -0
  90. package/dist/components/LargeUncachedConfirmationPrompt.test.js +47 -0
  91. package/dist/components/LargeUncachedConfirmationPrompt.test.js.map +1 -0
  92. package/dist/components/MessageList.d.ts +9 -0
  93. package/dist/components/MessageList.d.ts.map +1 -1
  94. package/dist/components/MessageList.js +29 -3
  95. package/dist/components/MessageList.js.map +1 -1
  96. package/dist/components/MessageList.test.js +28 -1
  97. package/dist/components/MessageList.test.js.map +1 -1
  98. package/dist/components/ModelSelectionMenu.d.ts.map +1 -1
  99. package/dist/components/ModelSelectionMenu.js +1 -4
  100. package/dist/components/ModelSelectionMenu.js.map +1 -1
  101. package/dist/components/PathSelectionMenu.d.ts.map +1 -1
  102. package/dist/components/PathSelectionMenu.js +1 -7
  103. package/dist/components/PathSelectionMenu.js.map +1 -1
  104. package/dist/components/SettingsSelectionMenu.d.ts.map +1 -1
  105. package/dist/components/SettingsSelectionMenu.js +1 -12
  106. package/dist/components/SettingsSelectionMenu.js.map +1 -1
  107. package/dist/components/SettingsValueSelectionMenu.d.ts.map +1 -1
  108. package/dist/components/SettingsValueSelectionMenu.js +1 -8
  109. package/dist/components/SettingsValueSelectionMenu.js.map +1 -1
  110. package/dist/components/StatusBar.d.ts +4 -0
  111. package/dist/components/StatusBar.d.ts.map +1 -1
  112. package/dist/components/StatusBar.js +25 -6
  113. package/dist/components/StatusBar.js.map +1 -1
  114. package/dist/components/StatusBar.test.js +23 -0
  115. package/dist/components/StatusBar.test.js.map +1 -1
  116. package/dist/components/UndoSelectionMenu.d.ts.map +1 -1
  117. package/dist/components/UndoSelectionMenu.js +1 -1
  118. package/dist/components/UndoSelectionMenu.js.map +1 -1
  119. package/dist/context/InputContext.d.ts +5 -0
  120. package/dist/context/InputContext.d.ts.map +1 -1
  121. package/dist/context/InputContext.images.test.d.ts +2 -0
  122. package/dist/context/InputContext.images.test.d.ts.map +1 -0
  123. package/dist/context/InputContext.images.test.js +56 -0
  124. package/dist/context/InputContext.images.test.js.map +1 -0
  125. package/dist/context/InputContext.js +3 -2
  126. package/dist/context/InputContext.js.map +1 -1
  127. package/dist/contracts/conversation.d.ts +3 -0
  128. package/dist/contracts/conversation.d.ts.map +1 -1
  129. package/dist/hooks/use-app-commands.d.ts +11 -32
  130. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  131. package/dist/hooks/use-app-commands.js +64 -369
  132. package/dist/hooks/use-app-commands.js.map +1 -1
  133. package/dist/hooks/use-app-commands.test.js +24 -15
  134. package/dist/hooks/use-app-commands.test.js.map +1 -1
  135. package/dist/hooks/use-conversation.clear.test.js +49 -1
  136. package/dist/hooks/use-conversation.clear.test.js.map +1 -1
  137. package/dist/hooks/use-conversation.d.ts +12 -2
  138. package/dist/hooks/use-conversation.d.ts.map +1 -1
  139. package/dist/hooks/use-conversation.js +29 -25
  140. package/dist/hooks/use-conversation.js.map +1 -1
  141. package/dist/hooks/use-conversation.resume.test.js +26 -3
  142. package/dist/hooks/use-conversation.resume.test.js.map +1 -1
  143. package/dist/hooks/use-mode-handlers.d.ts +4 -1
  144. package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
  145. package/dist/hooks/use-mode-handlers.js +6 -1
  146. package/dist/hooks/use-mode-handlers.js.map +1 -1
  147. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  148. package/dist/hooks/use-runtime-settings.js +2 -2
  149. package/dist/hooks/use-runtime-settings.js.map +1 -1
  150. package/dist/hooks/use-runtime-settings.test.js +0 -1
  151. package/dist/hooks/use-runtime-settings.test.js.map +1 -1
  152. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  153. package/dist/hooks/use-settings-completion.js +8 -1
  154. package/dist/hooks/use-settings-completion.js.map +1 -1
  155. package/dist/hooks/use-settings-completion.test.js +4 -0
  156. package/dist/hooks/use-settings-completion.test.js.map +1 -1
  157. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  158. package/dist/hooks/use-slash-commands.js +10 -0
  159. package/dist/hooks/use-slash-commands.js.map +1 -1
  160. package/dist/hooks/use-slash-commands.test.js +35 -5
  161. package/dist/hooks/use-slash-commands.test.js.map +1 -1
  162. package/dist/hooks/use-terminal-width.d.ts +2 -1
  163. package/dist/hooks/use-terminal-width.d.ts.map +1 -1
  164. package/dist/hooks/use-terminal-width.js +2 -1
  165. package/dist/hooks/use-terminal-width.js.map +1 -1
  166. package/dist/hooks/use-undo-selection.d.ts.map +1 -1
  167. package/dist/hooks/use-undo-selection.js +3 -1
  168. package/dist/hooks/use-undo-selection.js.map +1 -1
  169. package/dist/lib/openai-agent-client.d.ts.map +1 -1
  170. package/dist/lib/openai-agent-client.flex-tier.test.js +8 -3
  171. package/dist/lib/openai-agent-client.flex-tier.test.js.map +1 -1
  172. package/dist/lib/openai-agent-client.js +50 -24
  173. package/dist/lib/openai-agent-client.js.map +1 -1
  174. package/dist/lib/tool-execution-limiter.d.ts +16 -0
  175. package/dist/lib/tool-execution-limiter.d.ts.map +1 -0
  176. package/dist/lib/tool-execution-limiter.js +112 -0
  177. package/dist/lib/tool-execution-limiter.js.map +1 -0
  178. package/dist/lib/tool-execution-limiter.test.d.ts +2 -0
  179. package/dist/lib/tool-execution-limiter.test.d.ts.map +1 -0
  180. package/dist/lib/tool-execution-limiter.test.js +70 -0
  181. package/dist/lib/tool-execution-limiter.test.js.map +1 -0
  182. package/dist/lib/tool-invoke.test.js +8 -8
  183. package/dist/lib/tool-invoke.test.js.map +1 -1
  184. package/dist/lib/tool-selection-policy.d.ts.map +1 -1
  185. package/dist/lib/tool-selection-policy.js +43 -2
  186. package/dist/lib/tool-selection-policy.js.map +1 -1
  187. package/dist/lib/tool-selection-policy.test.js +39 -0
  188. package/dist/lib/tool-selection-policy.test.js.map +1 -1
  189. package/dist/prompts/gpt-5-modern.md +105 -97
  190. package/dist/prompts/gpt-5.5.md +106 -0
  191. package/dist/prompts/orchestrator.md +2 -5
  192. package/dist/prompts/prompt-profiles.js +1 -1
  193. package/dist/prompts/prompt-profiles.js.map +1 -1
  194. package/dist/prompts/prompt-profiles.ts +1 -1
  195. package/dist/prompts/prompt-selector.test.js +1 -1
  196. package/dist/prompts/prompt-selector.test.js.map +1 -1
  197. package/dist/prompts/prompt-selector.test.ts +1 -1
  198. package/dist/prompts/search-via-shell.d.ts.map +1 -1
  199. package/dist/prompts/search-via-shell.js +0 -1
  200. package/dist/prompts/search-via-shell.js.map +1 -1
  201. package/dist/prompts/search-via-shell.ts +0 -1
  202. package/dist/prompts/shell-auto-approval.d.ts +2 -2
  203. package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
  204. package/dist/prompts/shell-auto-approval.js +6 -6
  205. package/dist/prompts/shell-auto-approval.js.map +1 -1
  206. package/dist/prompts/shell-auto-approval.ts +6 -6
  207. package/dist/prompts/simple-prev.md +55 -0
  208. package/dist/prompts/simple.md +31 -53
  209. package/dist/prompts/subagent-delegation.js +2 -2
  210. package/dist/prompts/subagent-delegation.js.map +1 -1
  211. package/dist/prompts/subagent-delegation.ts +2 -2
  212. package/dist/providers/codex-responses-model.d.ts +5 -3
  213. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  214. package/dist/providers/codex-responses-model.js +76 -20
  215. package/dist/providers/codex-responses-model.js.map +1 -1
  216. package/dist/providers/codex-responses-model.test.js +242 -1
  217. package/dist/providers/codex-responses-model.test.js.map +1 -1
  218. package/dist/providers/codex.provider.d.ts +0 -2
  219. package/dist/providers/codex.provider.d.ts.map +1 -1
  220. package/dist/providers/codex.provider.js +2 -6
  221. package/dist/providers/codex.provider.js.map +1 -1
  222. package/dist/providers/codex.provider.test.js +4 -31
  223. package/dist/providers/codex.provider.test.js.map +1 -1
  224. package/dist/providers/custom-provider-adapter.test.js +3 -3
  225. package/dist/providers/custom-provider-adapter.test.js.map +1 -1
  226. package/dist/providers/fallback-responses-model.d.ts.map +1 -1
  227. package/dist/providers/fallback-responses-model.js +160 -83
  228. package/dist/providers/fallback-responses-model.js.map +1 -1
  229. package/dist/providers/fallback-responses-model.test.js +318 -0
  230. package/dist/providers/fallback-responses-model.test.js.map +1 -1
  231. package/dist/providers/openai-compatible-lazy.d.ts +4 -0
  232. package/dist/providers/openai-compatible-lazy.d.ts.map +1 -0
  233. package/dist/providers/openai-compatible-lazy.js +54 -0
  234. package/dist/providers/openai-compatible-lazy.js.map +1 -0
  235. package/dist/providers/openai-compatible.provider.d.ts +2 -2
  236. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  237. package/dist/providers/openai-compatible.provider.js +3 -3
  238. package/dist/providers/openai-compatible.provider.js.map +1 -1
  239. package/dist/providers/openai-compatible.provider.test.js +31 -0
  240. package/dist/providers/openai-compatible.provider.test.js.map +1 -1
  241. package/dist/providers/openai.provider.js +5 -3
  242. package/dist/providers/openai.provider.js.map +1 -1
  243. package/dist/providers/timed-responses-ws-model.d.ts +20 -0
  244. package/dist/providers/timed-responses-ws-model.d.ts.map +1 -0
  245. package/dist/providers/timed-responses-ws-model.js +381 -0
  246. package/dist/providers/timed-responses-ws-model.js.map +1 -0
  247. package/dist/providers/timed-responses-ws-model.test.d.ts +2 -0
  248. package/dist/providers/timed-responses-ws-model.test.d.ts.map +1 -0
  249. package/dist/providers/timed-responses-ws-model.test.js +441 -0
  250. package/dist/providers/timed-responses-ws-model.test.js.map +1 -0
  251. package/dist/providers/timed-ws-connection.d.ts +26 -0
  252. package/dist/providers/timed-ws-connection.d.ts.map +1 -0
  253. package/dist/providers/timed-ws-connection.js +156 -0
  254. package/dist/providers/timed-ws-connection.js.map +1 -0
  255. package/dist/providers/timed-ws-connection.test.d.ts +2 -0
  256. package/dist/providers/timed-ws-connection.test.d.ts.map +1 -0
  257. package/dist/providers/timed-ws-connection.test.js +223 -0
  258. package/dist/providers/timed-ws-connection.test.js.map +1 -0
  259. package/dist/providers/timed-ws-timeouts.d.ts +6 -0
  260. package/dist/providers/timed-ws-timeouts.d.ts.map +1 -0
  261. package/dist/providers/timed-ws-timeouts.js +6 -0
  262. package/dist/providers/timed-ws-timeouts.js.map +1 -0
  263. package/dist/services/command-message-streaming.d.ts.map +1 -1
  264. package/dist/services/command-message-streaming.js +8 -3
  265. package/dist/services/command-message-streaming.js.map +1 -1
  266. package/dist/services/conversation-clear-save.test.js +4 -5
  267. package/dist/services/conversation-clear-save.test.js.map +1 -1
  268. package/dist/services/conversation-events.d.ts +4 -0
  269. package/dist/services/conversation-events.d.ts.map +1 -1
  270. package/dist/services/conversation-history-repair.d.ts.map +1 -1
  271. package/dist/services/conversation-history-repair.js +81 -26
  272. package/dist/services/conversation-history-repair.js.map +1 -1
  273. package/dist/services/conversation-integration.test.js +109 -0
  274. package/dist/services/conversation-integration.test.js.map +1 -1
  275. package/dist/services/conversation-log-events.d.ts +19 -10
  276. package/dist/services/conversation-log-events.d.ts.map +1 -1
  277. package/dist/services/conversation-log-events.js +1 -1
  278. package/dist/services/conversation-log-events.js.map +1 -1
  279. package/dist/services/conversation-log-writer.d.ts.map +1 -1
  280. package/dist/services/conversation-log-writer.js +2 -3
  281. package/dist/services/conversation-log-writer.js.map +1 -1
  282. package/dist/services/conversation-persistence-types.d.ts +32 -0
  283. package/dist/services/conversation-persistence-types.d.ts.map +1 -1
  284. package/dist/services/conversation-persistence.d.ts +7 -1
  285. package/dist/services/conversation-persistence.d.ts.map +1 -1
  286. package/dist/services/conversation-persistence.js +95 -44
  287. package/dist/services/conversation-persistence.js.map +1 -1
  288. package/dist/services/conversation-persistence.test.js +551 -107
  289. package/dist/services/conversation-persistence.test.js.map +1 -1
  290. package/dist/services/conversation-replay.d.ts.map +1 -1
  291. package/dist/services/conversation-replay.js +234 -11
  292. package/dist/services/conversation-replay.js.map +1 -1
  293. package/dist/services/conversation-replay.test.js +426 -31
  294. package/dist/services/conversation-replay.test.js.map +1 -1
  295. package/dist/services/conversation-result-builder.d.ts +2 -0
  296. package/dist/services/conversation-result-builder.d.ts.map +1 -1
  297. package/dist/services/conversation-result-builder.js +4 -0
  298. package/dist/services/conversation-result-builder.js.map +1 -1
  299. package/dist/services/conversation-result-builder.test.js +126 -0
  300. package/dist/services/conversation-result-builder.test.js.map +1 -1
  301. package/dist/services/conversation-retry-policy.d.ts.map +1 -1
  302. package/dist/services/conversation-retry-policy.js +3 -0
  303. package/dist/services/conversation-retry-policy.js.map +1 -1
  304. package/dist/services/conversation-retry-policy.test.js +4 -0
  305. package/dist/services/conversation-retry-policy.test.js.map +1 -1
  306. package/dist/services/conversation-service.d.ts +3 -3
  307. package/dist/services/conversation-service.d.ts.map +1 -1
  308. package/dist/services/conversation-service.js +0 -3
  309. package/dist/services/conversation-service.js.map +1 -1
  310. package/dist/services/conversation-session.d.ts +10 -7
  311. package/dist/services/conversation-session.d.ts.map +1 -1
  312. package/dist/services/conversation-session.js +283 -86
  313. package/dist/services/conversation-session.js.map +1 -1
  314. package/dist/services/conversation-store.d.ts +16 -13
  315. package/dist/services/conversation-store.d.ts.map +1 -1
  316. package/dist/services/conversation-store.js +62 -191
  317. package/dist/services/conversation-store.js.map +1 -1
  318. package/dist/services/conversation-store.merge-modes.test.d.ts +2 -0
  319. package/dist/services/conversation-store.merge-modes.test.d.ts.map +1 -0
  320. package/dist/services/conversation-store.merge-modes.test.js +161 -0
  321. package/dist/services/conversation-store.merge-modes.test.js.map +1 -0
  322. package/dist/services/conversation-store.test.js +157 -294
  323. package/dist/services/conversation-store.test.js.map +1 -1
  324. package/dist/services/conversation-turn-items.d.ts +5 -0
  325. package/dist/services/conversation-turn-items.d.ts.map +1 -0
  326. package/dist/services/conversation-turn-items.js +351 -0
  327. package/dist/services/conversation-turn-items.js.map +1 -0
  328. package/dist/services/conversation-turn-items.test.d.ts +2 -0
  329. package/dist/services/conversation-turn-items.test.d.ts.map +1 -0
  330. package/dist/services/conversation-turn-items.test.js +68 -0
  331. package/dist/services/conversation-turn-items.test.js.map +1 -0
  332. package/dist/services/large-uncached-input-guard.d.ts.map +1 -1
  333. package/dist/services/large-uncached-input-guard.js +4 -3
  334. package/dist/services/large-uncached-input-guard.js.map +1 -1
  335. package/dist/services/large-uncached-input-guard.test.js +22 -0
  336. package/dist/services/large-uncached-input-guard.test.js.map +1 -1
  337. package/dist/services/notification-service.d.ts +22 -0
  338. package/dist/services/notification-service.d.ts.map +1 -0
  339. package/dist/services/notification-service.js +68 -0
  340. package/dist/services/notification-service.js.map +1 -0
  341. package/dist/services/notification-service.test.d.ts +2 -0
  342. package/dist/services/notification-service.test.d.ts.map +1 -0
  343. package/dist/services/notification-service.test.js +78 -0
  344. package/dist/services/notification-service.test.js.map +1 -0
  345. package/dist/services/provider-traffic.d.ts.map +1 -1
  346. package/dist/services/provider-traffic.js +1 -0
  347. package/dist/services/provider-traffic.js.map +1 -1
  348. package/dist/services/provider-traffic.test.js +51 -0
  349. package/dist/services/provider-traffic.test.js.map +1 -1
  350. package/dist/services/settings-schema.d.ts +16 -1
  351. package/dist/services/settings-schema.d.ts.map +1 -1
  352. package/dist/services/settings-schema.js +42 -22
  353. package/dist/services/settings-schema.js.map +1 -1
  354. package/dist/services/settings-schema.test.js +10 -0
  355. package/dist/services/settings-schema.test.js.map +1 -1
  356. package/dist/services/settings-service.js +2 -2
  357. package/dist/services/settings-service.js.map +1 -1
  358. package/dist/services/settings-sources.d.ts.map +1 -1
  359. package/dist/services/settings-sources.js +1 -0
  360. package/dist/services/settings-sources.js.map +1 -1
  361. package/dist/services/settings-sources.test.js +2 -0
  362. package/dist/services/settings-sources.test.js.map +1 -1
  363. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  364. package/dist/services/subagents/subagent-manager.js +32 -30
  365. package/dist/services/subagents/subagent-manager.js.map +1 -1
  366. package/dist/services/subagents/subagent-manager.test.js +8 -12
  367. package/dist/services/subagents/subagent-manager.test.js.map +1 -1
  368. package/dist/services/subagents/subagent-session.d.ts +1 -1
  369. package/dist/services/subagents/subagent-session.d.ts.map +1 -1
  370. package/dist/services/subagents/subagent-session.js +2 -2
  371. package/dist/services/subagents/subagent-session.js.map +1 -1
  372. package/dist/services/subagents/subagent-session.test.js +3 -3
  373. package/dist/services/subagents/subagent-session.test.js.map +1 -1
  374. package/dist/services/subagents/types.d.ts +2 -1
  375. package/dist/services/subagents/types.d.ts.map +1 -1
  376. package/dist/services/terminal-result-collector.d.ts.map +1 -1
  377. package/dist/services/terminal-result-collector.js +43 -0
  378. package/dist/services/terminal-result-collector.js.map +1 -1
  379. package/dist/services/terminal-result-collector.test.js +44 -0
  380. package/dist/services/terminal-result-collector.test.js.map +1 -1
  381. package/dist/services/tool-execution-ledger.d.ts +6 -0
  382. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  383. package/dist/services/tool-execution-ledger.js +90 -25
  384. package/dist/services/tool-execution-ledger.js.map +1 -1
  385. package/dist/services/tool-execution-ledger.test.js +177 -2
  386. package/dist/services/tool-execution-ledger.test.js.map +1 -1
  387. package/dist/tools/apply-patch.d.ts.map +1 -1
  388. package/dist/tools/apply-patch.js +41 -23
  389. package/dist/tools/apply-patch.js.map +1 -1
  390. package/dist/tools/apply-patch.test.js +6 -6
  391. package/dist/tools/apply-patch.test.js.map +1 -1
  392. package/dist/tools/code-context.js +1 -1
  393. package/dist/tools/code-context.js.map +1 -1
  394. package/dist/tools/code-context.test.js +278 -0
  395. package/dist/tools/code-context.test.js.map +1 -1
  396. package/dist/tools/edit-healing.d.ts.map +1 -1
  397. package/dist/tools/edit-healing.js +9 -3
  398. package/dist/tools/edit-healing.js.map +1 -1
  399. package/dist/tools/language-providers.d.ts.map +1 -1
  400. package/dist/tools/language-providers.js +379 -0
  401. package/dist/tools/language-providers.js.map +1 -1
  402. package/dist/tools/languages/cpp.d.ts +8 -0
  403. package/dist/tools/languages/cpp.d.ts.map +1 -0
  404. package/dist/tools/languages/cpp.js +306 -0
  405. package/dist/tools/languages/cpp.js.map +1 -0
  406. package/dist/tools/languages/csharp.d.ts +5 -0
  407. package/dist/tools/languages/csharp.d.ts.map +1 -0
  408. package/dist/tools/languages/csharp.js +225 -0
  409. package/dist/tools/languages/csharp.js.map +1 -0
  410. package/dist/tools/languages/go.d.ts +7 -0
  411. package/dist/tools/languages/go.d.ts.map +1 -0
  412. package/dist/tools/languages/go.js +223 -0
  413. package/dist/tools/languages/go.js.map +1 -0
  414. package/dist/tools/languages/index.d.ts +6 -0
  415. package/dist/tools/languages/index.d.ts.map +1 -0
  416. package/dist/tools/languages/index.js +32 -0
  417. package/dist/tools/languages/index.js.map +1 -0
  418. package/dist/tools/languages/java.d.ts +5 -0
  419. package/dist/tools/languages/java.d.ts.map +1 -0
  420. package/dist/tools/languages/java.js +183 -0
  421. package/dist/tools/languages/java.js.map +1 -0
  422. package/dist/tools/languages/json.d.ts +3 -0
  423. package/dist/tools/languages/json.d.ts.map +1 -0
  424. package/dist/tools/languages/json.js +40 -0
  425. package/dist/tools/languages/json.js.map +1 -0
  426. package/dist/tools/languages/php.d.ts +8 -0
  427. package/dist/tools/languages/php.d.ts.map +1 -0
  428. package/dist/tools/languages/php.js +139 -0
  429. package/dist/tools/languages/php.js.map +1 -0
  430. package/dist/tools/languages/python.d.ts +7 -0
  431. package/dist/tools/languages/python.d.ts.map +1 -0
  432. package/dist/tools/languages/python.js +189 -0
  433. package/dist/tools/languages/python.js.map +1 -0
  434. package/dist/tools/languages/ruby.d.ts +8 -0
  435. package/dist/tools/languages/ruby.d.ts.map +1 -0
  436. package/dist/tools/languages/ruby.js +94 -0
  437. package/dist/tools/languages/ruby.js.map +1 -0
  438. package/dist/tools/languages/rust.d.ts +7 -0
  439. package/dist/tools/languages/rust.d.ts.map +1 -0
  440. package/dist/tools/languages/rust.js +186 -0
  441. package/dist/tools/languages/rust.js.map +1 -0
  442. package/dist/tools/languages/types.d.ts +39 -0
  443. package/dist/tools/languages/types.d.ts.map +1 -0
  444. package/dist/tools/languages/types.js +2 -0
  445. package/dist/tools/languages/types.js.map +1 -0
  446. package/dist/tools/languages/typescript.d.ts +4 -0
  447. package/dist/tools/languages/typescript.d.ts.map +1 -0
  448. package/dist/tools/languages/typescript.js +94 -0
  449. package/dist/tools/languages/typescript.js.map +1 -0
  450. package/dist/tools/languages/utils.d.ts +14 -0
  451. package/dist/tools/languages/utils.d.ts.map +1 -0
  452. package/dist/tools/languages/utils.js +73 -0
  453. package/dist/tools/languages/utils.js.map +1 -0
  454. package/dist/tools/run-subagent.d.ts +0 -1
  455. package/dist/tools/run-subagent.d.ts.map +1 -1
  456. package/dist/tools/run-subagent.js +1 -8
  457. package/dist/tools/run-subagent.js.map +1 -1
  458. package/dist/tools/run-subagent.test.js +0 -18
  459. package/dist/tools/run-subagent.test.js.map +1 -1
  460. package/dist/tools/shell.d.ts.map +1 -1
  461. package/dist/tools/shell.js +13 -1
  462. package/dist/tools/shell.js.map +1 -1
  463. package/dist/tools/web-fetch.d.ts.map +1 -1
  464. package/dist/tools/web-fetch.js +1 -1
  465. package/dist/tools/web-fetch.js.map +1 -1
  466. package/dist/utils/clipboard.d.ts +8 -0
  467. package/dist/utils/clipboard.d.ts.map +1 -1
  468. package/dist/utils/clipboard.js +50 -4
  469. package/dist/utils/clipboard.js.map +1 -1
  470. package/dist/utils/clipboard.test.js +152 -2
  471. package/dist/utils/clipboard.test.js.map +1 -1
  472. package/dist/utils/conversation-event-handler.d.ts.map +1 -1
  473. package/dist/utils/conversation-event-handler.js +3 -0
  474. package/dist/utils/conversation-event-handler.js.map +1 -1
  475. package/dist/utils/conversation-event-handler.test.js +13 -0
  476. package/dist/utils/conversation-event-handler.test.js.map +1 -1
  477. package/dist/utils/extract-command-messages.d.ts.map +1 -1
  478. package/dist/utils/extract-command-messages.js +8 -4
  479. package/dist/utils/extract-command-messages.js.map +1 -1
  480. package/dist/utils/message-utils.d.ts +7 -0
  481. package/dist/utils/message-utils.d.ts.map +1 -0
  482. package/dist/utils/message-utils.js +31 -0
  483. package/dist/utils/message-utils.js.map +1 -0
  484. package/dist/utils/resume-list.d.ts +15 -0
  485. package/dist/utils/resume-list.d.ts.map +1 -0
  486. package/dist/utils/resume-list.js +68 -0
  487. package/dist/utils/resume-list.js.map +1 -0
  488. package/dist/utils/resume-list.test.d.ts +2 -0
  489. package/dist/utils/resume-list.test.d.ts.map +1 -0
  490. package/dist/utils/resume-list.test.js +89 -0
  491. package/dist/utils/resume-list.test.js.map +1 -0
  492. package/dist/utils/settings-command.d.ts.map +1 -1
  493. package/dist/utils/settings-command.js +11 -0
  494. package/dist/utils/settings-command.js.map +1 -1
  495. package/dist/utils/token-usage.d.ts +3 -1
  496. package/dist/utils/token-usage.d.ts.map +1 -1
  497. package/dist/utils/token-usage.js +4 -2
  498. package/dist/utils/token-usage.js.map +1 -1
  499. package/dist/utils/tty-osc.d.ts +27 -0
  500. package/dist/utils/tty-osc.d.ts.map +1 -0
  501. package/dist/utils/tty-osc.js +66 -0
  502. package/dist/utils/tty-osc.js.map +1 -0
  503. package/dist/utils/tty-osc.test.d.ts +2 -0
  504. package/dist/utils/tty-osc.test.d.ts.map +1 -0
  505. package/dist/utils/tty-osc.test.js +130 -0
  506. package/dist/utils/tty-osc.test.js.map +1 -0
  507. package/package.json +3 -3
  508. package/readme.md +24 -9
  509. package/dist/app.large-uncached-warning.test.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"code-context.test.js","sourceRoot":"","sources":["../../source/tools/code-context.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-context.test.js","sourceRoot":"","sources":["../../source/tools/code-context.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"edit-healing.d.ts","sourceRoot":"","sources":["../../source/tools/edit-healing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAG3F,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,0BAA0B,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,WAAW,GAAG;IACjB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CACT,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,KACE,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AA4LF,wBAAsB,uBAAuB,CAC3C,cAAc,EAAE,0BAA0B,EAC1C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,aAAa,CAAC,CAyGxB"}
1
+ {"version":3,"file":"edit-healing.d.ts","sourceRoot":"","sources":["../../source/tools/edit-healing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAG3F,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,0BAA0B,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,KAAK,WAAW,GAAG;IACjB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CACT,MAAM,EAAE,MAAM,EACd,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,KACE,OAAO,CAAC,MAAM,CAAC,CAAC;CACtB,CAAC;AAkMF,wBAAsB,uBAAuB,CAC3C,cAAc,EAAE,0BAA0B,EAC1C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,WAAgB,GACrB,OAAO,CAAC,aAAa,CAAC,CAyGxB"}
@@ -1,8 +1,8 @@
1
1
  import { Agent, run } from '@openai/agents';
2
2
  import { getProvider } from '../providers/index.js';
3
- const DEFAULT_TIMEOUT_MS = 10000;
3
+ const DEFAULT_TIMEOUT_MS = 30_000;
4
4
  const DEFAULT_CONFIDENCE_THRESHOLD = 0.6;
5
- const DEFAULT_MAX_FILE_CHARS = 8000;
5
+ const DEFAULT_MAX_FILE_CHARS = 8_000;
6
6
  const DELIMITER_CANDIDATES = ['---', '===', '<<<>>>', '|||', '###BOUNDARY###'];
7
7
  function chooseDelimiter(...fields) {
8
8
  for (const d of DELIMITER_CANDIDATES) {
@@ -149,15 +149,21 @@ async function runHealingPrompt(prompt, instructions, model, apiKey, deps) {
149
149
  previousApiKey = process.env.OPENAI_API_KEY;
150
150
  process.env.OPENAI_API_KEY = apiKey;
151
151
  }
152
+ let timeoutHandle = null;
152
153
  try {
153
154
  const runPromise = runner ? runner.run(agent, prompt, options) : run(agent, prompt, options);
154
155
  const result = await Promise.race([
155
156
  runPromise,
156
- new Promise((_, reject) => setTimeout(() => reject(new Error('Edit healing timed out')), timeoutMs)),
157
+ new Promise((_, reject) => {
158
+ timeoutHandle = setTimeout(() => reject(new Error('Edit healing timed out')), timeoutMs);
159
+ }),
157
160
  ]);
158
161
  return extractModelText(result);
159
162
  }
160
163
  finally {
164
+ if (timeoutHandle) {
165
+ clearTimeout(timeoutHandle);
166
+ }
161
167
  if (providerId === 'openai' && apiKey && previousApiKey === undefined) {
162
168
  delete process.env.OPENAI_API_KEY;
163
169
  }
@@ -1 +1 @@
1
- {"version":3,"file":"edit-healing.js","sourceRoot":"","sources":["../../source/tools/edit-healing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit-healing.js","sourceRoot":"","sources":["../../source/tools/edit-healing.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"language-providers.d.ts","sourceRoot":"","sources":["../../source/tools/language-providers.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,gBAAgB,GAChB,OAAO,GACP,WAAW,GACX,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,GACL,KAAK,GACL,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACvC,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAClD,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAC9F,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9F,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9D;AAED,eAAO,MAAM,aAAa,UAAkC,CAAC;AAC7D,eAAO,MAAM,aAAa,UAAkC,CAAC;AAC7D,eAAO,MAAM,eAAe,UAAgD,CAAC;AAE7E,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAsB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAKvE;AA8OD,eAAO,MAAM,SAAS,oBAOrB,CAAC;AAEF,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAErE"}
1
+ {"version":3,"file":"language-providers.d.ts","sourceRoot":"","sources":["../../source/tools/language-providers.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GACvB,UAAU,GACV,gBAAgB,GAChB,OAAO,GACP,WAAW,GACX,MAAM,GACN,MAAM,GACN,OAAO,GACP,KAAK,GACL,KAAK,GACL,QAAQ,GACR,SAAS,CAAC;AAEd,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC;IACvC,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IAClD,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK;QAAE,IAAI,EAAE,eAAe,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC;IAC9F,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC9F,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK;QAAE,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9D;AAED,eAAO,MAAM,aAAa,UAAkC,CAAC;AAC7D,eAAO,MAAM,aAAa,UAAkC,CAAC;AAC7D,eAAO,MAAM,eAAe,UAAgD,CAAC;AAE7E,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAsB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAKvE;AAkoBD,eAAO,MAAM,SAAS,oBAOrB,CAAC;AAEF,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAErE"}
@@ -158,6 +158,382 @@ const javascriptProvider = {
158
158
  extensions: JS_EXTENSIONS,
159
159
  matches: (filePath) => JS_EXTENSIONS.includes(path.extname(filePath)),
160
160
  };
161
+ function extractPythonOutline(source) {
162
+ const lines = source.split('\n');
163
+ const imports = [];
164
+ const decls = [];
165
+ const exports = [];
166
+ let inFromImportBlock = false;
167
+ let fromImportSpecifier = '';
168
+ let fromImportLine = 0;
169
+ let fromImportNames = [];
170
+ for (const [index, line] of lines.entries()) {
171
+ const lineNumber = index + 1;
172
+ const cleanLine = line.replace(/#.*$/, '');
173
+ const trimmed = cleanLine.trim();
174
+ if (!trimmed)
175
+ continue;
176
+ // Handle multi-line from ... import (
177
+ if (inFromImportBlock) {
178
+ if (trimmed.includes(')')) {
179
+ const contentBeforeParen = trimmed.split(')')[0];
180
+ const names = contentBeforeParen
181
+ .split(',')
182
+ .map((n) => {
183
+ const parts = n.trim().split(/\s+as\s+/);
184
+ return (parts[1] || parts[0]).trim();
185
+ })
186
+ .filter(Boolean);
187
+ fromImportNames.push(...names);
188
+ imports.push({
189
+ specifier: fromImportSpecifier,
190
+ names: fromImportNames,
191
+ line: fromImportLine,
192
+ });
193
+ inFromImportBlock = false;
194
+ fromImportSpecifier = '';
195
+ fromImportNames = [];
196
+ }
197
+ else {
198
+ const names = trimmed
199
+ .split(',')
200
+ .map((n) => {
201
+ const parts = n.trim().split(/\s+as\s+/);
202
+ return (parts[1] || parts[0]).trim();
203
+ })
204
+ .filter(Boolean);
205
+ fromImportNames.push(...names);
206
+ }
207
+ continue;
208
+ }
209
+ // Check if it's the start of from ... import (
210
+ const fromImportStartParenMatch = cleanLine.match(/^\s*from\s+([\w.]+)\s+import\s*\(\s*([^)]*)$/);
211
+ if (fromImportStartParenMatch) {
212
+ inFromImportBlock = true;
213
+ fromImportSpecifier = fromImportStartParenMatch[1];
214
+ fromImportLine = lineNumber;
215
+ const initialNames = fromImportStartParenMatch[2]
216
+ .split(',')
217
+ .map((n) => {
218
+ const parts = n.trim().split(/\s+as\s+/);
219
+ return (parts[1] || parts[0]).trim();
220
+ })
221
+ .filter(Boolean);
222
+ fromImportNames = initialNames;
223
+ continue;
224
+ }
225
+ // Single line from ... import ...
226
+ const fromImportMatch = cleanLine.match(/^\s*from\s+([\w.]+)\s+import\s+(.+)$/);
227
+ if (fromImportMatch) {
228
+ const specifier = fromImportMatch[1];
229
+ const names = fromImportMatch[2]
230
+ .split(',')
231
+ .map((n) => {
232
+ const parts = n.trim().split(/\s+as\s+/);
233
+ return (parts[1] || parts[0]).trim();
234
+ })
235
+ .filter(Boolean);
236
+ imports.push({
237
+ specifier,
238
+ names,
239
+ line: lineNumber,
240
+ });
241
+ continue;
242
+ }
243
+ // Basic import statement
244
+ const importMatch = cleanLine.match(/^\s*import\s+(.+)$/);
245
+ if (importMatch) {
246
+ const entries = importMatch[1]
247
+ .split(',')
248
+ .map((item) => {
249
+ const parts = item.trim().split(/\s+as\s+/);
250
+ const specifier = parts[0].trim();
251
+ const name = (parts[1] || parts[0]).trim();
252
+ return { specifier, name };
253
+ })
254
+ .filter((e) => e.specifier);
255
+ for (const entry of entries) {
256
+ imports.push({
257
+ specifier: entry.specifier,
258
+ names: [entry.name],
259
+ line: lineNumber,
260
+ });
261
+ }
262
+ continue;
263
+ }
264
+ // Declarations (must start at column 0 to be top-level in Python)
265
+ if (/^\s/.test(line))
266
+ continue;
267
+ // Class definition
268
+ const classMatch = cleanLine.match(/^class\s+([A-Za-z_][\w_]*)\b/);
269
+ if (classMatch) {
270
+ decls.push({
271
+ name: classMatch[1],
272
+ kind: 'class',
273
+ line: lineNumber,
274
+ exported: false,
275
+ });
276
+ continue;
277
+ }
278
+ // Function definition
279
+ const defMatch = cleanLine.match(/^(async\s+)?def\s+([A-Za-z_][\w_]*)\b/);
280
+ if (defMatch) {
281
+ const kind = defMatch[1] ? 'async function' : 'function';
282
+ decls.push({
283
+ name: defMatch[2],
284
+ kind,
285
+ line: lineNumber,
286
+ exported: false,
287
+ });
288
+ continue;
289
+ }
290
+ }
291
+ return { imports, exports, decls };
292
+ }
293
+ function extractGoOutline(source) {
294
+ const lines = source.split('\n');
295
+ const imports = [];
296
+ const decls = [];
297
+ const exports = [];
298
+ let inImportBlock = false;
299
+ let inConstBlock = false;
300
+ let inVarBlock = false;
301
+ for (const [index, line] of lines.entries()) {
302
+ const lineNumber = index + 1;
303
+ const cleanLine = line.replace(/\/\/.*$/, '');
304
+ const trimmed = cleanLine.trim();
305
+ if (!trimmed)
306
+ continue;
307
+ // Parse imports
308
+ if (/^\s*import\s*\(/.test(cleanLine)) {
309
+ inImportBlock = true;
310
+ continue;
311
+ }
312
+ if (inImportBlock && /^\s*\)/.test(cleanLine)) {
313
+ inImportBlock = false;
314
+ continue;
315
+ }
316
+ if (inImportBlock) {
317
+ const m = cleanLine.match(/^\s*(?:([A-Za-z_][\w_]*)\s+)?['"]([^'"]+)['"]/);
318
+ if (m) {
319
+ imports.push({
320
+ specifier: m[2],
321
+ names: m[1] ? [m[1]] : [],
322
+ line: lineNumber,
323
+ });
324
+ }
325
+ continue;
326
+ }
327
+ const singleImportMatch = cleanLine.match(/^\s*import\s+(?:([A-Za-z_][\w_]*)\s+)?['"]([^'"]+)['"]/);
328
+ if (singleImportMatch) {
329
+ imports.push({
330
+ specifier: singleImportMatch[2],
331
+ names: singleImportMatch[1] ? [singleImportMatch[1]] : [],
332
+ line: lineNumber,
333
+ });
334
+ continue;
335
+ }
336
+ // Check block declarations
337
+ if (/^const\s*\(/.test(cleanLine)) {
338
+ inConstBlock = true;
339
+ continue;
340
+ }
341
+ if (/^var\s*\(/.test(cleanLine)) {
342
+ inVarBlock = true;
343
+ continue;
344
+ }
345
+ if (inConstBlock && /^\)/.test(trimmed)) {
346
+ inConstBlock = false;
347
+ continue;
348
+ }
349
+ if (inVarBlock && /^\)/.test(trimmed)) {
350
+ inVarBlock = false;
351
+ continue;
352
+ }
353
+ if (inConstBlock) {
354
+ const match = cleanLine.match(/^\s*([A-Za-z_][\w_]*)\b/);
355
+ if (match) {
356
+ const name = match[1];
357
+ const exported = /^[A-Z]/.test(name);
358
+ const decl = { name, kind: 'const', line: lineNumber, exported };
359
+ decls.push(decl);
360
+ if (exported)
361
+ exports.push({ name, kind: 'const', line: lineNumber });
362
+ }
363
+ continue;
364
+ }
365
+ if (inVarBlock) {
366
+ const match = cleanLine.match(/^\s*([A-Za-z_][\w_]*)\b/);
367
+ if (match) {
368
+ const name = match[1];
369
+ const exported = /^[A-Z]/.test(name);
370
+ const decl = { name, kind: 'var', line: lineNumber, exported };
371
+ decls.push(decl);
372
+ if (exported)
373
+ exports.push({ name, kind: 'var', line: lineNumber });
374
+ }
375
+ continue;
376
+ }
377
+ // Parse top-level declarations (only column 0 / non-whitespace start)
378
+ if (/^\s/.test(line))
379
+ continue;
380
+ // Check function: func [receiver] Name(...)
381
+ const funcMatch = cleanLine.match(/^func\s+(?:\([^)]+\)\s*)?([A-Za-z_][\w_]*)\b/);
382
+ if (funcMatch) {
383
+ const name = funcMatch[1];
384
+ const isMethod = /^\s*func\s*\([^)]+\)/.test(cleanLine);
385
+ const kind = isMethod ? 'method' : 'function';
386
+ const exported = /^[A-Z]/.test(name);
387
+ const decl = { name, kind, line: lineNumber, exported };
388
+ decls.push(decl);
389
+ if (exported) {
390
+ exports.push({ name, kind, line: lineNumber });
391
+ }
392
+ continue;
393
+ }
394
+ // Check type: type Name ...
395
+ const typeMatch = cleanLine.match(/^type\s+([A-Za-z_][\w_]*)\b/);
396
+ if (typeMatch) {
397
+ const name = typeMatch[1];
398
+ const kind = /^type\s+[A-Za-z_][\w_]*\s+interface\b/.test(cleanLine) ? 'interface' : 'type';
399
+ const exported = /^[A-Z]/.test(name);
400
+ const decl = { name, kind, line: lineNumber, exported };
401
+ decls.push(decl);
402
+ if (exported) {
403
+ exports.push({ name, kind, line: lineNumber });
404
+ }
405
+ continue;
406
+ }
407
+ // Check const: const Name ...
408
+ const constMatch = cleanLine.match(/^const\s+([A-Za-z_][\w_]*)\b/);
409
+ if (constMatch) {
410
+ const name = constMatch[1];
411
+ const exported = /^[A-Z]/.test(name);
412
+ const decl = { name, kind: 'const', line: lineNumber, exported };
413
+ decls.push(decl);
414
+ if (exported) {
415
+ exports.push({ name, kind: 'const', line: lineNumber });
416
+ }
417
+ continue;
418
+ }
419
+ // Check var: var Name ...
420
+ const varMatch = cleanLine.match(/^var\s+([A-Za-z_][\w_]*)\b/);
421
+ if (varMatch) {
422
+ const name = varMatch[1];
423
+ const exported = /^[A-Z]/.test(name);
424
+ const decl = { name, kind: 'var', line: lineNumber, exported };
425
+ decls.push(decl);
426
+ if (exported) {
427
+ exports.push({ name, kind: 'var', line: lineNumber });
428
+ }
429
+ continue;
430
+ }
431
+ }
432
+ return { imports, exports, decls };
433
+ }
434
+ function parseRustUse(statement, line) {
435
+ const clean = statement
436
+ .replace(/;$/, '')
437
+ .replace(/^(pub\s+)?use\s+/, '')
438
+ .trim();
439
+ if (!clean)
440
+ return null;
441
+ const braceMatch = clean.match(/^(.*?)::\{([\s\S]*?)\}$/);
442
+ if (braceMatch) {
443
+ const specifier = braceMatch[1].trim();
444
+ const names = braceMatch[2]
445
+ .split(',')
446
+ .map((n) => n.trim())
447
+ .filter(Boolean)
448
+ .map((n) => n
449
+ .split(/\s+as\s+/)
450
+ .pop()
451
+ .trim());
452
+ return { specifier, names, line };
453
+ }
454
+ const parts = clean.split(/\s+as\s+/);
455
+ const fullPath = parts[0].trim();
456
+ const alias = parts[1]?.trim();
457
+ const pathSegments = fullPath.split('::');
458
+ const lastName = pathSegments.pop();
459
+ const specifier = pathSegments.join('::') || lastName;
460
+ const names = [alias || lastName];
461
+ return { specifier, names, line };
462
+ }
463
+ function parseRustDeclaration(line, lineNumber) {
464
+ if (/^\s/.test(line))
465
+ return null;
466
+ const match = line.match(/^(pub(?:\([^)]+\))?\s+)?(fn|struct|enum|trait|type|const)\s+([A-Za-z_][\w_]*)\b/);
467
+ if (!match)
468
+ return null;
469
+ const isPublic = Boolean(match[1]);
470
+ const rawKind = match[2];
471
+ const name = match[3];
472
+ let kind = 'unknown';
473
+ if (rawKind === 'fn')
474
+ kind = 'function';
475
+ else if (rawKind === 'struct')
476
+ kind = 'type';
477
+ else if (rawKind === 'enum')
478
+ kind = 'enum';
479
+ else if (rawKind === 'trait')
480
+ kind = 'interface';
481
+ else if (rawKind === 'type')
482
+ kind = 'type';
483
+ else if (rawKind === 'const')
484
+ kind = 'const';
485
+ return {
486
+ name,
487
+ kind,
488
+ line: lineNumber,
489
+ exported: isPublic,
490
+ };
491
+ }
492
+ function extractRustOutline(source) {
493
+ const lines = source.split('\n');
494
+ const imports = [];
495
+ const decls = [];
496
+ const exports = [];
497
+ let useAccumulator = '';
498
+ let useLineNumber = 0;
499
+ for (const [index, line] of lines.entries()) {
500
+ const lineNumber = index + 1;
501
+ const cleanLine = line.replace(/\/\/.*$/, '');
502
+ const trimmed = cleanLine.trim();
503
+ if (useAccumulator) {
504
+ useAccumulator += ' ' + trimmed;
505
+ if (useAccumulator.endsWith(';')) {
506
+ const parsed = parseRustUse(useAccumulator, useLineNumber);
507
+ if (parsed)
508
+ imports.push(parsed);
509
+ useAccumulator = '';
510
+ }
511
+ continue;
512
+ }
513
+ if (/^(pub\s+)?use\s+/.test(trimmed)) {
514
+ useAccumulator = trimmed;
515
+ useLineNumber = lineNumber;
516
+ if (useAccumulator.endsWith(';')) {
517
+ const parsed = parseRustUse(useAccumulator, useLineNumber);
518
+ if (parsed)
519
+ imports.push(parsed);
520
+ useAccumulator = '';
521
+ }
522
+ }
523
+ }
524
+ for (const [index, line] of lines.entries()) {
525
+ const lineNumber = index + 1;
526
+ const cleanLine = line.replace(/\/\/.*$/, '');
527
+ const decl = parseRustDeclaration(cleanLine, lineNumber);
528
+ if (decl) {
529
+ decls.push(decl);
530
+ if (decl.exported) {
531
+ exports.push({ name: decl.name, kind: decl.kind, line: decl.line });
532
+ }
533
+ }
534
+ }
535
+ return { imports, exports, decls };
536
+ }
161
537
  const pythonProvider = {
162
538
  language: 'python',
163
539
  extensions: ['.py'],
@@ -170,6 +546,7 @@ const pythonProvider = {
170
546
  kind: /^\s*class\b/.test(line) ? 'class' : 'function',
171
547
  exported: false,
172
548
  }),
549
+ extractOutline: extractPythonOutline,
173
550
  };
174
551
  const goProvider = {
175
552
  language: 'go',
@@ -183,6 +560,7 @@ const goProvider = {
183
560
  kind: /^\s*func\b/.test(line) ? 'function' : 'type',
184
561
  exported: /^[A-Z]/.test(symbol),
185
562
  }),
563
+ extractOutline: extractGoOutline,
186
564
  };
187
565
  const rustProvider = {
188
566
  language: 'rust',
@@ -204,6 +582,7 @@ const rustProvider = {
204
582
  : 'type';
205
583
  return { kind, exported: /^\s*pub\s+/.test(line) };
206
584
  },
585
+ extractOutline: extractRustOutline,
207
586
  };
208
587
  const jsonProvider = {
209
588
  language: 'json',