@aria-cli/cli 1.0.52 → 1.0.54

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 (687) hide show
  1. package/bin/aria.mjs +2 -2
  2. package/package.json +14 -73
  3. package/dist/.tsbuildinfo +0 -1
  4. package/dist/attached-local-control-client.d.ts.map +0 -1
  5. package/dist/attached-local-control-client.js +0 -826
  6. package/dist/attached-local-control-client.js.map +0 -1
  7. package/dist/bootstrap-local-control-client.d.ts.map +0 -1
  8. package/dist/bootstrap-local-control-client.js +0 -2
  9. package/dist/bootstrap-local-control-client.js.map +0 -1
  10. package/dist/capability-aware-method-proxy.js +0 -42
  11. package/dist/capability-aware-method-proxy.js.map +0 -1
  12. package/dist/cli-context.d.ts.map +0 -1
  13. package/dist/cli-context.js +0 -160
  14. package/dist/cli-context.js.map +0 -1
  15. package/dist/commands/arions.d.ts.map +0 -1
  16. package/dist/commands/arions.js +0 -174
  17. package/dist/commands/arions.js.map +0 -1
  18. package/dist/commands/auth.js +0 -123
  19. package/dist/commands/auth.js.map +0 -1
  20. package/dist/commands/daemon.d.ts.map +0 -1
  21. package/dist/commands/daemon.js +0 -245
  22. package/dist/commands/daemon.js.map +0 -1
  23. package/dist/commands/definitions.js +0 -176
  24. package/dist/commands/definitions.js.map +0 -1
  25. package/dist/commands/index.d.ts.map +0 -1
  26. package/dist/commands/index.js +0 -74
  27. package/dist/commands/index.js.map +0 -1
  28. package/dist/commands/login-handler.js +0 -1108
  29. package/dist/commands/login-handler.js.map +0 -1
  30. package/dist/commands/logout-handler.js +0 -92
  31. package/dist/commands/logout-handler.js.map +0 -1
  32. package/dist/commands/memory-handlers.js +0 -89
  33. package/dist/commands/memory-handlers.js.map +0 -1
  34. package/dist/commands/pairing.d.ts.map +0 -1
  35. package/dist/commands/pairing.js +0 -60
  36. package/dist/commands/pairing.js.map +0 -1
  37. package/dist/commands/runtime-cutover-reset-command.d.ts.map +0 -1
  38. package/dist/commands/runtime-cutover-reset-command.js +0 -12
  39. package/dist/commands/runtime-cutover-reset-command.js.map +0 -1
  40. package/dist/commands/runtime-cutover-reset.d.ts.map +0 -1
  41. package/dist/commands/runtime-cutover-reset.js +0 -265
  42. package/dist/commands/runtime-cutover-reset.js.map +0 -1
  43. package/dist/commands/terminal-setup.js +0 -84
  44. package/dist/commands/terminal-setup.js.map +0 -1
  45. package/dist/config/aria-config.js +0 -238
  46. package/dist/config/aria-config.js.map +0 -1
  47. package/dist/config/index.d.ts.map +0 -1
  48. package/dist/config/index.js +0 -3
  49. package/dist/config/index.js.map +0 -1
  50. package/dist/config/loader.d.ts.map +0 -1
  51. package/dist/config/loader.js +0 -97
  52. package/dist/config/loader.js.map +0 -1
  53. package/dist/config.js +0 -142
  54. package/dist/config.js.map +0 -1
  55. package/dist/daemon-info.d.ts.map +0 -1
  56. package/dist/daemon-info.js +0 -10
  57. package/dist/daemon-info.js.map +0 -1
  58. package/dist/ensure-daemon.d.ts.map +0 -1
  59. package/dist/ensure-daemon.js +0 -128
  60. package/dist/ensure-daemon.js.map +0 -1
  61. package/dist/entrypoints/command-mode.d.ts.map +0 -1
  62. package/dist/entrypoints/command-mode.js +0 -5
  63. package/dist/entrypoints/command-mode.js.map +0 -1
  64. package/dist/entrypoints/daemon.d.ts.map +0 -1
  65. package/dist/entrypoints/daemon.js +0 -50
  66. package/dist/entrypoints/daemon.js.map +0 -1
  67. package/dist/entrypoints/headless-stdio.d.ts.map +0 -1
  68. package/dist/entrypoints/headless-stdio.js +0 -25
  69. package/dist/entrypoints/headless-stdio.js.map +0 -1
  70. package/dist/entrypoints/interactive.d.ts.map +0 -1
  71. package/dist/entrypoints/interactive.js +0 -80
  72. package/dist/entrypoints/interactive.js.map +0 -1
  73. package/dist/event-loop-watchdog.js +0 -73
  74. package/dist/event-loop-watchdog.js.map +0 -1
  75. package/dist/headless/auth-orchestrator.d.ts.map +0 -1
  76. package/dist/headless/auth-orchestrator.js +0 -508
  77. package/dist/headless/auth-orchestrator.js.map +0 -1
  78. package/dist/headless/auth-service.js +0 -43
  79. package/dist/headless/auth-service.js.map +0 -1
  80. package/dist/headless/bootstrap-fast-path.d.ts.map +0 -1
  81. package/dist/headless/bootstrap-fast-path.js +0 -112
  82. package/dist/headless/bootstrap-fast-path.js.map +0 -1
  83. package/dist/headless/call-command.d.ts.map +0 -1
  84. package/dist/headless/call-command.js +0 -143
  85. package/dist/headless/call-command.js.map +0 -1
  86. package/dist/headless/daemon-service.d.ts.map +0 -1
  87. package/dist/headless/daemon-service.js +0 -318
  88. package/dist/headless/daemon-service.js.map +0 -1
  89. package/dist/headless/hook-actions.d.ts.map +0 -1
  90. package/dist/headless/hook-actions.js +0 -235
  91. package/dist/headless/hook-actions.js.map +0 -1
  92. package/dist/headless/hook-service.d.ts.map +0 -1
  93. package/dist/headless/hook-service.js +0 -42
  94. package/dist/headless/hook-service.js.map +0 -1
  95. package/dist/headless/kernel-services.d.ts.map +0 -1
  96. package/dist/headless/kernel-services.js +0 -216
  97. package/dist/headless/kernel-services.js.map +0 -1
  98. package/dist/headless/kernel.d.ts.map +0 -1
  99. package/dist/headless/kernel.js +0 -785
  100. package/dist/headless/kernel.js.map +0 -1
  101. package/dist/headless/operations/arion.d.ts.map +0 -1
  102. package/dist/headless/operations/arion.js +0 -119
  103. package/dist/headless/operations/arion.js.map +0 -1
  104. package/dist/headless/operations/auth.d.ts.map +0 -1
  105. package/dist/headless/operations/auth.js +0 -45
  106. package/dist/headless/operations/auth.js.map +0 -1
  107. package/dist/headless/operations/client.d.ts.map +0 -1
  108. package/dist/headless/operations/client.js +0 -31
  109. package/dist/headless/operations/client.js.map +0 -1
  110. package/dist/headless/operations/config.d.ts.map +0 -1
  111. package/dist/headless/operations/config.js +0 -69
  112. package/dist/headless/operations/config.js.map +0 -1
  113. package/dist/headless/operations/daemon.d.ts.map +0 -1
  114. package/dist/headless/operations/daemon.js +0 -47
  115. package/dist/headless/operations/daemon.js.map +0 -1
  116. package/dist/headless/operations/hook.d.ts.map +0 -1
  117. package/dist/headless/operations/hook.js +0 -56
  118. package/dist/headless/operations/hook.js.map +0 -1
  119. package/dist/headless/operations/index.d.ts.map +0 -1
  120. package/dist/headless/operations/index.js +0 -11
  121. package/dist/headless/operations/index.js.map +0 -1
  122. package/dist/headless/operations/memory.d.ts.map +0 -1
  123. package/dist/headless/operations/memory.js +0 -102
  124. package/dist/headless/operations/memory.js.map +0 -1
  125. package/dist/headless/operations/message.d.ts.map +0 -1
  126. package/dist/headless/operations/message.js +0 -279
  127. package/dist/headless/operations/message.js.map +0 -1
  128. package/dist/headless/operations/model.d.ts.map +0 -1
  129. package/dist/headless/operations/model.js +0 -100
  130. package/dist/headless/operations/model.js.map +0 -1
  131. package/dist/headless/operations/peer.d.ts.map +0 -1
  132. package/dist/headless/operations/peer.js +0 -56
  133. package/dist/headless/operations/peer.js.map +0 -1
  134. package/dist/headless/operations/run.d.ts.map +0 -1
  135. package/dist/headless/operations/run.js +0 -24
  136. package/dist/headless/operations/run.js.map +0 -1
  137. package/dist/headless/operations/session.d.ts.map +0 -1
  138. package/dist/headless/operations/session.js +0 -90
  139. package/dist/headless/operations/session.js.map +0 -1
  140. package/dist/headless/operations/system.d.ts.map +0 -1
  141. package/dist/headless/operations/system.js +0 -19
  142. package/dist/headless/operations/system.js.map +0 -1
  143. package/dist/headless/operations/utils.d.ts.map +0 -1
  144. package/dist/headless/operations/utils.js +0 -35
  145. package/dist/headless/operations/utils.js.map +0 -1
  146. package/dist/headless/run-orchestrator.d.ts.map +0 -1
  147. package/dist/headless/run-orchestrator.js +0 -703
  148. package/dist/headless/run-orchestrator.js.map +0 -1
  149. package/dist/headless/stdio-server.d.ts.map +0 -1
  150. package/dist/headless/stdio-server.js +0 -439
  151. package/dist/headless/stdio-server.js.map +0 -1
  152. package/dist/history/SessionHistory.js +0 -8
  153. package/dist/history/SessionHistory.js.map +0 -1
  154. package/dist/history/SessionHistoryClient.js +0 -186
  155. package/dist/history/SessionHistoryClient.js.map +0 -1
  156. package/dist/history/conversation-message.js +0 -112
  157. package/dist/history/conversation-message.js.map +0 -1
  158. package/dist/history/index.d.ts.map +0 -1
  159. package/dist/history/index.js +0 -8
  160. package/dist/history/index.js.map +0 -1
  161. package/dist/history/jsonl-replay.d.ts.map +0 -1
  162. package/dist/history/jsonl-replay.js +0 -154
  163. package/dist/history/jsonl-replay.js.map +0 -1
  164. package/dist/history/repair-tool-pairing.js +0 -84
  165. package/dist/history/repair-tool-pairing.js.map +0 -1
  166. package/dist/history/stall-phase-bridge.js +0 -11
  167. package/dist/history/stall-phase-bridge.js.map +0 -1
  168. package/dist/history/turn-accumulator.d.ts.map +0 -1
  169. package/dist/history/turn-accumulator.js +0 -427
  170. package/dist/history/turn-accumulator.js.map +0 -1
  171. package/dist/index.d.ts.map +0 -1
  172. package/dist/index.js +0 -7
  173. package/dist/index.js.map +0 -1
  174. package/dist/ink-repl.d.ts.map +0 -1
  175. package/dist/ink-repl.js +0 -4183
  176. package/dist/ink-repl.js.map +0 -1
  177. package/dist/local-control-bootstrap.d.ts.map +0 -1
  178. package/dist/local-control-bootstrap.js +0 -26
  179. package/dist/local-control-bootstrap.js.map +0 -1
  180. package/dist/local-control-client.d.ts.map +0 -1
  181. package/dist/local-control-client.js +0 -2
  182. package/dist/local-control-client.js.map +0 -1
  183. package/dist/local-control-error-reporting.js +0 -34
  184. package/dist/local-control-error-reporting.js.map +0 -1
  185. package/dist/local-control-http-client.d.ts.map +0 -1
  186. package/dist/local-control-http-client.js +0 -362
  187. package/dist/local-control-http-client.js.map +0 -1
  188. package/dist/local-control-lazy-wrapper.d.ts.map +0 -1
  189. package/dist/local-control-lazy-wrapper.js +0 -363
  190. package/dist/local-control-lazy-wrapper.js.map +0 -1
  191. package/dist/local-control-manager.d.ts.map +0 -1
  192. package/dist/local-control-manager.js +0 -146
  193. package/dist/local-control-manager.js.map +0 -1
  194. package/dist/main.d.ts.map +0 -1
  195. package/dist/main.js +0 -38
  196. package/dist/main.js.map +0 -1
  197. package/dist/network-security.js +0 -62
  198. package/dist/network-security.js.map +0 -1
  199. package/dist/networking-server.d.ts.map +0 -1
  200. package/dist/networking-server.js +0 -38
  201. package/dist/networking-server.js.map +0 -1
  202. package/dist/peer-identity.d.ts.map +0 -1
  203. package/dist/peer-identity.js +0 -23
  204. package/dist/peer-identity.js.map +0 -1
  205. package/dist/polling-subscription.js +0 -34
  206. package/dist/polling-subscription.js.map +0 -1
  207. package/dist/relaunch.d.ts.map +0 -1
  208. package/dist/relaunch.js +0 -588
  209. package/dist/relaunch.js.map +0 -1
  210. package/dist/release-notes.js +0 -35
  211. package/dist/release-notes.js.map +0 -1
  212. package/dist/repl-cleanup.js +0 -47
  213. package/dist/repl-cleanup.js.map +0 -1
  214. package/dist/runtime/configure-bun-sqlite.d.ts.map +0 -1
  215. package/dist/runtime/configure-bun-sqlite.js +0 -3
  216. package/dist/runtime/configure-bun-sqlite.js.map +0 -1
  217. package/dist/runtime/crash-handlers.js +0 -111
  218. package/dist/runtime/crash-handlers.js.map +0 -1
  219. package/dist/runtime/interactive-invocation.js +0 -39
  220. package/dist/runtime/interactive-invocation.js.map +0 -1
  221. package/dist/runtime/internal-mode.js +0 -14
  222. package/dist/runtime/internal-mode.js.map +0 -1
  223. package/dist/runtime/launch-spec.js +0 -64
  224. package/dist/runtime/launch-spec.js.map +0 -1
  225. package/dist/runtime/owner-lease.js +0 -44
  226. package/dist/runtime/owner-lease.js.map +0 -1
  227. package/dist/runtime/public-mode.js +0 -20
  228. package/dist/runtime/public-mode.js.map +0 -1
  229. package/dist/runtime/run-internal-mode.d.ts.map +0 -1
  230. package/dist/runtime/run-internal-mode.js +0 -18
  231. package/dist/runtime/run-internal-mode.js.map +0 -1
  232. package/dist/runtime/runtime-kind.js +0 -32
  233. package/dist/runtime/runtime-kind.js.map +0 -1
  234. package/dist/runtime/spawn-aria.js +0 -38
  235. package/dist/runtime/spawn-aria.js.map +0 -1
  236. package/dist/selectable-client.d.ts.map +0 -1
  237. package/dist/selectable-client.js +0 -2
  238. package/dist/selectable-client.js.map +0 -1
  239. package/dist/selectable-peer.d.ts.map +0 -1
  240. package/dist/selectable-peer.js +0 -2
  241. package/dist/selectable-peer.js.map +0 -1
  242. package/dist/session.d.ts.map +0 -1
  243. package/dist/session.js +0 -203
  244. package/dist/session.js.map +0 -1
  245. package/dist/slash-commands.js +0 -80
  246. package/dist/slash-commands.js.map +0 -1
  247. package/dist/sounds.js +0 -210
  248. package/dist/sounds.js.map +0 -1
  249. package/dist/ui/App.d.ts.map +0 -1
  250. package/dist/ui/App.js +0 -526
  251. package/dist/ui/App.js.map +0 -1
  252. package/dist/ui/components/AnthropicMethodPicker.js +0 -6
  253. package/dist/ui/components/AnthropicMethodPicker.js.map +0 -1
  254. package/dist/ui/components/ArionPrompt.js +0 -15
  255. package/dist/ui/components/ArionPrompt.js.map +0 -1
  256. package/dist/ui/components/AutocompleteDropdown.js +0 -23
  257. package/dist/ui/components/AutocompleteDropdown.js.map +0 -1
  258. package/dist/ui/components/AutonomySelector.d.ts.map +0 -1
  259. package/dist/ui/components/AutonomySelector.js +0 -55
  260. package/dist/ui/components/AutonomySelector.js.map +0 -1
  261. package/dist/ui/components/Banner.js +0 -98
  262. package/dist/ui/components/Banner.js.map +0 -1
  263. package/dist/ui/components/ConversationHistory.js +0 -175
  264. package/dist/ui/components/ConversationHistory.js.map +0 -1
  265. package/dist/ui/components/CopilotDeviceLoginFlow.js +0 -88
  266. package/dist/ui/components/CopilotDeviceLoginFlow.js.map +0 -1
  267. package/dist/ui/components/CopilotSourcePicker.js +0 -50
  268. package/dist/ui/components/CopilotSourcePicker.js.map +0 -1
  269. package/dist/ui/components/Cost.js +0 -10
  270. package/dist/ui/components/Cost.js.map +0 -1
  271. package/dist/ui/components/CustomSelect/option-map.js +0 -30
  272. package/dist/ui/components/CustomSelect/option-map.js.map +0 -1
  273. package/dist/ui/components/CustomSelect/select-option.js +0 -13
  274. package/dist/ui/components/CustomSelect/select-option.js.map +0 -1
  275. package/dist/ui/components/CustomSelect/select.js +0 -42
  276. package/dist/ui/components/CustomSelect/select.js.map +0 -1
  277. package/dist/ui/components/CustomSelect/use-select-state.js +0 -179
  278. package/dist/ui/components/CustomSelect/use-select-state.js.map +0 -1
  279. package/dist/ui/components/CustomSelect/use-select.js +0 -15
  280. package/dist/ui/components/CustomSelect/use-select.js.map +0 -1
  281. package/dist/ui/components/ErrorDisplay.js +0 -35
  282. package/dist/ui/components/ErrorDisplay.js.map +0 -1
  283. package/dist/ui/components/FallbackToolUseRejectedMessage.js +0 -7
  284. package/dist/ui/components/FallbackToolUseRejectedMessage.js.map +0 -1
  285. package/dist/ui/components/FileEditToolUpdatedMessage.js +0 -57
  286. package/dist/ui/components/FileEditToolUpdatedMessage.js.map +0 -1
  287. package/dist/ui/components/HandoffMarker.js +0 -18
  288. package/dist/ui/components/HandoffMarker.js.map +0 -1
  289. package/dist/ui/components/HighlightedCode.js +0 -21
  290. package/dist/ui/components/HighlightedCode.js.map +0 -1
  291. package/dist/ui/components/InputArea.js +0 -187
  292. package/dist/ui/components/InputArea.js.map +0 -1
  293. package/dist/ui/components/Message.js +0 -25
  294. package/dist/ui/components/Message.js.map +0 -1
  295. package/dist/ui/components/OAuthLoginFlow.js +0 -113
  296. package/dist/ui/components/OAuthLoginFlow.js.map +0 -1
  297. package/dist/ui/components/OutputTruncation.js +0 -35
  298. package/dist/ui/components/OutputTruncation.js.map +0 -1
  299. package/dist/ui/components/PermissionPrompt.js +0 -79
  300. package/dist/ui/components/PermissionPrompt.js.map +0 -1
  301. package/dist/ui/components/PipelineTimingPanel.js +0 -15
  302. package/dist/ui/components/PipelineTimingPanel.js.map +0 -1
  303. package/dist/ui/components/ProviderMethodPicker.js +0 -61
  304. package/dist/ui/components/ProviderMethodPicker.js.map +0 -1
  305. package/dist/ui/components/ProviderPicker.js +0 -63
  306. package/dist/ui/components/ProviderPicker.js.map +0 -1
  307. package/dist/ui/components/RenderItemView.js +0 -71
  308. package/dist/ui/components/RenderItemView.js.map +0 -1
  309. package/dist/ui/components/Spinner.js +0 -46
  310. package/dist/ui/components/Spinner.js.map +0 -1
  311. package/dist/ui/components/StatusBar.js +0 -95
  312. package/dist/ui/components/StatusBar.js.map +0 -1
  313. package/dist/ui/components/StreamingIndicator.js +0 -55
  314. package/dist/ui/components/StreamingIndicator.js.map +0 -1
  315. package/dist/ui/components/StructuredDiff.js +0 -168
  316. package/dist/ui/components/StructuredDiff.js.map +0 -1
  317. package/dist/ui/components/TextInputOverlay.js +0 -43
  318. package/dist/ui/components/TextInputOverlay.js.map +0 -1
  319. package/dist/ui/components/ThinkingBlock.js +0 -82
  320. package/dist/ui/components/ThinkingBlock.js.map +0 -1
  321. package/dist/ui/components/ToolCost.js +0 -17
  322. package/dist/ui/components/ToolCost.js.map +0 -1
  323. package/dist/ui/components/ToolExecution.js +0 -61
  324. package/dist/ui/components/ToolExecution.js.map +0 -1
  325. package/dist/ui/components/ToolHeader.js +0 -51
  326. package/dist/ui/components/ToolHeader.js.map +0 -1
  327. package/dist/ui/components/ToolRenderLayoutContext.js +0 -14
  328. package/dist/ui/components/ToolRenderLayoutContext.js.map +0 -1
  329. package/dist/ui/components/ToolResultWrapper.js +0 -6
  330. package/dist/ui/components/ToolResultWrapper.js.map +0 -1
  331. package/dist/ui/components/ToolUseLoader.js +0 -35
  332. package/dist/ui/components/ToolUseLoader.js.map +0 -1
  333. package/dist/ui/components/TraceWaterfall.js +0 -91
  334. package/dist/ui/components/TraceWaterfall.js.map +0 -1
  335. package/dist/ui/components/index.d.ts.map +0 -1
  336. package/dist/ui/components/index.js +0 -33
  337. package/dist/ui/components/index.js.map +0 -1
  338. package/dist/ui/components/messages/AssistantTextMessage.js +0 -25
  339. package/dist/ui/components/messages/AssistantTextMessage.js.map +0 -1
  340. package/dist/ui/components/messages/UserImageMessage.js +0 -12
  341. package/dist/ui/components/messages/UserImageMessage.js.map +0 -1
  342. package/dist/ui/components/messages/UserTextMessage.js +0 -12
  343. package/dist/ui/components/messages/UserTextMessage.js.map +0 -1
  344. package/dist/ui/components/overlays/ArionSelector.js +0 -68
  345. package/dist/ui/components/overlays/ArionSelector.js.map +0 -1
  346. package/dist/ui/components/overlays/ClientSelector.d.ts.map +0 -1
  347. package/dist/ui/components/overlays/ClientSelector.js +0 -62
  348. package/dist/ui/components/overlays/ClientSelector.js.map +0 -1
  349. package/dist/ui/components/overlays/CommandPalette.js +0 -67
  350. package/dist/ui/components/overlays/CommandPalette.js.map +0 -1
  351. package/dist/ui/components/overlays/DaemonControl.js +0 -87
  352. package/dist/ui/components/overlays/DaemonControl.js.map +0 -1
  353. package/dist/ui/components/overlays/InviteShareOverlay.js +0 -15
  354. package/dist/ui/components/overlays/InviteShareOverlay.js.map +0 -1
  355. package/dist/ui/components/overlays/JoinInviteOverlay.js +0 -32
  356. package/dist/ui/components/overlays/JoinInviteOverlay.js.map +0 -1
  357. package/dist/ui/components/overlays/MemoryBrowser.js +0 -100
  358. package/dist/ui/components/overlays/MemoryBrowser.js.map +0 -1
  359. package/dist/ui/components/overlays/MessageSelector.js +0 -123
  360. package/dist/ui/components/overlays/MessageSelector.js.map +0 -1
  361. package/dist/ui/components/overlays/ModelSelector.js +0 -211
  362. package/dist/ui/components/overlays/ModelSelector.js.map +0 -1
  363. package/dist/ui/components/overlays/PairRequestOverlay.d.ts.map +0 -1
  364. package/dist/ui/components/overlays/PairRequestOverlay.js +0 -42
  365. package/dist/ui/components/overlays/PairRequestOverlay.js.map +0 -1
  366. package/dist/ui/components/overlays/PeerSelector.d.ts.map +0 -1
  367. package/dist/ui/components/overlays/PeerSelector.js +0 -84
  368. package/dist/ui/components/overlays/PeerSelector.js.map +0 -1
  369. package/dist/ui/components/overlays/SessionSelector.d.ts.map +0 -1
  370. package/dist/ui/components/overlays/SessionSelector.js +0 -102
  371. package/dist/ui/components/overlays/SessionSelector.js.map +0 -1
  372. package/dist/ui/components/overlays/SoundSelector.js +0 -86
  373. package/dist/ui/components/overlays/SoundSelector.js.map +0 -1
  374. package/dist/ui/components/overlays/ThemeSelector.js +0 -139
  375. package/dist/ui/components/overlays/ThemeSelector.js.map +0 -1
  376. package/dist/ui/components/overlays/index.d.ts.map +0 -1
  377. package/dist/ui/components/overlays/index.js +0 -15
  378. package/dist/ui/components/overlays/index.js.map +0 -1
  379. package/dist/ui/components/permissions/BashPermissionRequest/BashPermissionRequest.js +0 -53
  380. package/dist/ui/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +0 -1
  381. package/dist/ui/components/permissions/FallbackPermissionRequest.js +0 -56
  382. package/dist/ui/components/permissions/FallbackPermissionRequest.js.map +0 -1
  383. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +0 -76
  384. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +0 -1
  385. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +0 -18
  386. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +0 -1
  387. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +0 -64
  388. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +0 -1
  389. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +0 -26
  390. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +0 -1
  391. package/dist/ui/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +0 -141
  392. package/dist/ui/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +0 -1
  393. package/dist/ui/components/permissions/PermissionRequest.js +0 -70
  394. package/dist/ui/components/permissions/PermissionRequest.js.map +0 -1
  395. package/dist/ui/components/permissions/PermissionRequestTitle.js +0 -41
  396. package/dist/ui/components/permissions/PermissionRequestTitle.js.map +0 -1
  397. package/dist/ui/components/permissions/hooks.js +0 -10
  398. package/dist/ui/components/permissions/hooks.js.map +0 -1
  399. package/dist/ui/components/permissions/toolUseOptions.js +0 -68
  400. package/dist/ui/components/permissions/toolUseOptions.js.map +0 -1
  401. package/dist/ui/components/permissions/utils.js +0 -10
  402. package/dist/ui/components/permissions/utils.js.map +0 -1
  403. package/dist/ui/components/text-input/Cursor.js +0 -326
  404. package/dist/ui/components/text-input/Cursor.js.map +0 -1
  405. package/dist/ui/components/text-input/TextInput.js +0 -231
  406. package/dist/ui/components/text-input/TextInput.js.map +0 -1
  407. package/dist/ui/components/text-input/imagePaste.js +0 -28
  408. package/dist/ui/components/text-input/imagePaste.js.map +0 -1
  409. package/dist/ui/components/text-input/index.js +0 -6
  410. package/dist/ui/components/text-input/index.js.map +0 -1
  411. package/dist/ui/components/text-input/useDoublePress.js +0 -30
  412. package/dist/ui/components/text-input/useDoublePress.js.map +0 -1
  413. package/dist/ui/components/text-input/useTextInput.js +0 -245
  414. package/dist/ui/components/text-input/useTextInput.js.map +0 -1
  415. package/dist/ui/components/tool-types.js +0 -9
  416. package/dist/ui/components/tool-types.js.map +0 -1
  417. package/dist/ui/constants/figures.js +0 -4
  418. package/dist/ui/constants/figures.js.map +0 -1
  419. package/dist/ui/constants/index.js +0 -3
  420. package/dist/ui/constants/index.js.map +0 -1
  421. package/dist/ui/display-mode.js +0 -93
  422. package/dist/ui/display-mode.js.map +0 -1
  423. package/dist/ui/display-policy.js +0 -19
  424. package/dist/ui/display-policy.js.map +0 -1
  425. package/dist/ui/hooks/index.js +0 -6
  426. package/dist/ui/hooks/index.js.map +0 -1
  427. package/dist/ui/hooks/useCommandAutocomplete.js +0 -93
  428. package/dist/ui/hooks/useCommandAutocomplete.js.map +0 -1
  429. package/dist/ui/hooks/useDoublePress.js +0 -37
  430. package/dist/ui/hooks/useDoublePress.js.map +0 -1
  431. package/dist/ui/hooks/useIndicatorState.d.ts.map +0 -1
  432. package/dist/ui/hooks/useIndicatorState.js +0 -55
  433. package/dist/ui/hooks/useIndicatorState.js.map +0 -1
  434. package/dist/ui/hooks/useInterval.js +0 -23
  435. package/dist/ui/hooks/useInterval.js.map +0 -1
  436. package/dist/ui/hooks/useKeyboardShortcuts.js +0 -127
  437. package/dist/ui/hooks/useKeyboardShortcuts.js.map +0 -1
  438. package/dist/ui/hooks/useTerminalSize.js +0 -55
  439. package/dist/ui/hooks/useTerminalSize.js.map +0 -1
  440. package/dist/ui/hooks/useUnifiedMessages.js +0 -117
  441. package/dist/ui/hooks/useUnifiedMessages.js.map +0 -1
  442. package/dist/ui/indicator-state.js +0 -44
  443. package/dist/ui/indicator-state.js.map +0 -1
  444. package/dist/ui/markdown/highlight.js +0 -44
  445. package/dist/ui/markdown/highlight.js.map +0 -1
  446. package/dist/ui/markdown/index.js +0 -1460
  447. package/dist/ui/markdown/index.js.map +0 -1
  448. package/dist/ui/markdown/tokenizer.js +0 -24
  449. package/dist/ui/markdown/tokenizer.js.map +0 -1
  450. package/dist/ui/render-item.js +0 -5
  451. package/dist/ui/render-item.js.map +0 -1
  452. package/dist/ui/screens/REPL.d.ts.map +0 -1
  453. package/dist/ui/screens/REPL.js +0 -119
  454. package/dist/ui/screens/REPL.js.map +0 -1
  455. package/dist/ui/screens/approval-lifecycle.js +0 -38
  456. package/dist/ui/screens/approval-lifecycle.js.map +0 -1
  457. package/dist/ui/status-line.d.ts.map +0 -1
  458. package/dist/ui/status-line.js +0 -72
  459. package/dist/ui/status-line.js.map +0 -1
  460. package/dist/ui/theme/index.js +0 -51
  461. package/dist/ui/theme/index.js.map +0 -1
  462. package/dist/ui/theme/themes/claude-dark-daltonized.js +0 -51
  463. package/dist/ui/theme/themes/claude-dark-daltonized.js.map +0 -1
  464. package/dist/ui/theme/themes/claude-dark.js +0 -50
  465. package/dist/ui/theme/themes/claude-dark.js.map +0 -1
  466. package/dist/ui/theme/themes/claude-light-daltonized.js +0 -51
  467. package/dist/ui/theme/themes/claude-light-daltonized.js.map +0 -1
  468. package/dist/ui/theme/themes/claude-light.js +0 -50
  469. package/dist/ui/theme/themes/claude-light.js.map +0 -1
  470. package/dist/ui/theme/themes/dark-accessible.js +0 -18
  471. package/dist/ui/theme/themes/dark-accessible.js.map +0 -1
  472. package/dist/ui/theme/themes/dark.js +0 -49
  473. package/dist/ui/theme/themes/dark.js.map +0 -1
  474. package/dist/ui/theme/themes/light-accessible.js +0 -18
  475. package/dist/ui/theme/themes/light-accessible.js.map +0 -1
  476. package/dist/ui/theme/themes/light.js +0 -49
  477. package/dist/ui/theme/themes/light.js.map +0 -1
  478. package/dist/ui/theme/types.js +0 -3
  479. package/dist/ui/theme/types.js.map +0 -1
  480. package/dist/ui/theme.js +0 -142
  481. package/dist/ui/theme.js.map +0 -1
  482. package/dist/ui/to-render-items.js +0 -145
  483. package/dist/ui/to-render-items.js.map +0 -1
  484. package/dist/ui/tools/AgentTool/index.js +0 -30
  485. package/dist/ui/tools/AgentTool/index.js.map +0 -1
  486. package/dist/ui/tools/ArchitectTool/index.js +0 -31
  487. package/dist/ui/tools/ArchitectTool/index.js.map +0 -1
  488. package/dist/ui/tools/AskUserTool/index.js +0 -46
  489. package/dist/ui/tools/AskUserTool/index.js.map +0 -1
  490. package/dist/ui/tools/BashTool/BashToolResultMessage.js +0 -11
  491. package/dist/ui/tools/BashTool/BashToolResultMessage.js.map +0 -1
  492. package/dist/ui/tools/BashTool/OutputLine.js +0 -21
  493. package/dist/ui/tools/BashTool/OutputLine.js.map +0 -1
  494. package/dist/ui/tools/BashTool/index.js +0 -91
  495. package/dist/ui/tools/BashTool/index.js.map +0 -1
  496. package/dist/ui/tools/BrowseTool/index.js +0 -43
  497. package/dist/ui/tools/BrowseTool/index.js.map +0 -1
  498. package/dist/ui/tools/BrowserTool/index.js +0 -47
  499. package/dist/ui/tools/BrowserTool/index.js.map +0 -1
  500. package/dist/ui/tools/CbmTool/index.js +0 -188
  501. package/dist/ui/tools/CbmTool/index.js.map +0 -1
  502. package/dist/ui/tools/CheckDelegationTool/index.js +0 -46
  503. package/dist/ui/tools/CheckDelegationTool/index.js.map +0 -1
  504. package/dist/ui/tools/CheckMessagesTool/index.js +0 -85
  505. package/dist/ui/tools/CheckMessagesTool/index.js.map +0 -1
  506. package/dist/ui/tools/CreateQuipTool/index.js +0 -30
  507. package/dist/ui/tools/CreateQuipTool/index.js.map +0 -1
  508. package/dist/ui/tools/CreateSkillTool/index.js +0 -22
  509. package/dist/ui/tools/CreateSkillTool/index.js.map +0 -1
  510. package/dist/ui/tools/CreateToolTool/index.js +0 -31
  511. package/dist/ui/tools/CreateToolTool/index.js.map +0 -1
  512. package/dist/ui/tools/DelegateRemoteTool/index.js +0 -42
  513. package/dist/ui/tools/DelegateRemoteTool/index.js.map +0 -1
  514. package/dist/ui/tools/DeployTool/index.js +0 -47
  515. package/dist/ui/tools/DeployTool/index.js.map +0 -1
  516. package/dist/ui/tools/FffTool/index.js +0 -103
  517. package/dist/ui/tools/FffTool/index.js.map +0 -1
  518. package/dist/ui/tools/FileEditTool/index.js +0 -67
  519. package/dist/ui/tools/FileEditTool/index.js.map +0 -1
  520. package/dist/ui/tools/FileReadTool/index.js +0 -68
  521. package/dist/ui/tools/FileReadTool/index.js.map +0 -1
  522. package/dist/ui/tools/FileWriteTool/index.js +0 -61
  523. package/dist/ui/tools/FileWriteTool/index.js.map +0 -1
  524. package/dist/ui/tools/ForkTool/index.js +0 -47
  525. package/dist/ui/tools/ForkTool/index.js.map +0 -1
  526. package/dist/ui/tools/FrgTool/index.js +0 -96
  527. package/dist/ui/tools/FrgTool/index.js.map +0 -1
  528. package/dist/ui/tools/GetThreadTool/index.js +0 -39
  529. package/dist/ui/tools/GetThreadTool/index.js.map +0 -1
  530. package/dist/ui/tools/GlobTool/index.js +0 -50
  531. package/dist/ui/tools/GlobTool/index.js.map +0 -1
  532. package/dist/ui/tools/GrepTool/index.js +0 -84
  533. package/dist/ui/tools/GrepTool/index.js.map +0 -1
  534. package/dist/ui/tools/HatchArionTool/index.js +0 -36
  535. package/dist/ui/tools/HatchArionTool/index.js.map +0 -1
  536. package/dist/ui/tools/LearnSkillTool/index.js +0 -22
  537. package/dist/ui/tools/LearnSkillTool/index.js.map +0 -1
  538. package/dist/ui/tools/LearnTool/index.js +0 -43
  539. package/dist/ui/tools/LearnTool/index.js.map +0 -1
  540. package/dist/ui/tools/LearnToolTool/index.js +0 -22
  541. package/dist/ui/tools/LearnToolTool/index.js.map +0 -1
  542. package/dist/ui/tools/ListClientsTool/index.js +0 -39
  543. package/dist/ui/tools/ListClientsTool/index.js.map +0 -1
  544. package/dist/ui/tools/LspTool/index.js +0 -261
  545. package/dist/ui/tools/LspTool/index.js.map +0 -1
  546. package/dist/ui/tools/MCPTool/index.js +0 -33
  547. package/dist/ui/tools/MCPTool/index.js.map +0 -1
  548. package/dist/ui/tools/ManageNetworkTool/index.js +0 -53
  549. package/dist/ui/tools/ManageNetworkTool/index.js.map +0 -1
  550. package/dist/ui/tools/MemoryReadTool/index.js +0 -64
  551. package/dist/ui/tools/MemoryReadTool/index.js.map +0 -1
  552. package/dist/ui/tools/MemoryWriteTool/index.js +0 -20
  553. package/dist/ui/tools/MemoryWriteTool/index.js.map +0 -1
  554. package/dist/ui/tools/NotebookEditTool/index.js +0 -33
  555. package/dist/ui/tools/NotebookEditTool/index.js.map +0 -1
  556. package/dist/ui/tools/NotebookReadTool/index.js +0 -25
  557. package/dist/ui/tools/NotebookReadTool/index.js.map +0 -1
  558. package/dist/ui/tools/OutlookReadTool/index.js +0 -66
  559. package/dist/ui/tools/OutlookReadTool/index.js.map +0 -1
  560. package/dist/ui/tools/OutlookReplyTool/index.js +0 -49
  561. package/dist/ui/tools/OutlookReplyTool/index.js.map +0 -1
  562. package/dist/ui/tools/OutlookSendTool/index.js +0 -49
  563. package/dist/ui/tools/OutlookSendTool/index.js.map +0 -1
  564. package/dist/ui/tools/PauseDelegationTool/index.js +0 -35
  565. package/dist/ui/tools/PauseDelegationTool/index.js.map +0 -1
  566. package/dist/ui/tools/ProbeTool/index.js +0 -121
  567. package/dist/ui/tools/ProbeTool/index.js.map +0 -1
  568. package/dist/ui/tools/ProcessTool/index.js +0 -66
  569. package/dist/ui/tools/ProcessTool/index.js.map +0 -1
  570. package/dist/ui/tools/QuestListTool/index.js +0 -46
  571. package/dist/ui/tools/QuestListTool/index.js.map +0 -1
  572. package/dist/ui/tools/QuestReportTool/index.js +0 -49
  573. package/dist/ui/tools/QuestReportTool/index.js.map +0 -1
  574. package/dist/ui/tools/QuestUpdateTool/index.js +0 -87
  575. package/dist/ui/tools/QuestUpdateTool/index.js.map +0 -1
  576. package/dist/ui/tools/QuipCommentTool/index.js +0 -69
  577. package/dist/ui/tools/QuipCommentTool/index.js.map +0 -1
  578. package/dist/ui/tools/QuipReadTool/index.js +0 -71
  579. package/dist/ui/tools/QuipReadTool/index.js.map +0 -1
  580. package/dist/ui/tools/RestArionTool/index.js +0 -32
  581. package/dist/ui/tools/RestArionTool/index.js.map +0 -1
  582. package/dist/ui/tools/RestartTool/index.js +0 -35
  583. package/dist/ui/tools/RestartTool/index.js.map +0 -1
  584. package/dist/ui/tools/ResumeDelegationTool/index.js +0 -35
  585. package/dist/ui/tools/ResumeDelegationTool/index.js.map +0 -1
  586. package/dist/ui/tools/RetireArionTool/index.js +0 -32
  587. package/dist/ui/tools/RetireArionTool/index.js.map +0 -1
  588. package/dist/ui/tools/RgTool/index.js +0 -73
  589. package/dist/ui/tools/RgTool/index.js.map +0 -1
  590. package/dist/ui/tools/SearchKnowledgeTool/index.js +0 -43
  591. package/dist/ui/tools/SearchKnowledgeTool/index.js.map +0 -1
  592. package/dist/ui/tools/SearchMessagesTool/index.js +0 -43
  593. package/dist/ui/tools/SearchMessagesTool/index.js.map +0 -1
  594. package/dist/ui/tools/SelfDiagnoseTool/index.js +0 -61
  595. package/dist/ui/tools/SelfDiagnoseTool/index.js.map +0 -1
  596. package/dist/ui/tools/SendMessageTool/index.js +0 -45
  597. package/dist/ui/tools/SendMessageTool/index.js.map +0 -1
  598. package/dist/ui/tools/SerenaTool/index.js +0 -124
  599. package/dist/ui/tools/SerenaTool/index.js.map +0 -1
  600. package/dist/ui/tools/SessionHistoryTool/index.js +0 -52
  601. package/dist/ui/tools/SessionHistoryTool/index.js.map +0 -1
  602. package/dist/ui/tools/SgTool/index.js +0 -80
  603. package/dist/ui/tools/SgTool/index.js.map +0 -1
  604. package/dist/ui/tools/SlackReactTool/index.js +0 -41
  605. package/dist/ui/tools/SlackReactTool/index.js.map +0 -1
  606. package/dist/ui/tools/SlackReadTool/index.js +0 -48
  607. package/dist/ui/tools/SlackReadTool/index.js.map +0 -1
  608. package/dist/ui/tools/SlackSendTool/index.js +0 -45
  609. package/dist/ui/tools/SlackSendTool/index.js.map +0 -1
  610. package/dist/ui/tools/SpawnWorkerTool/index.js +0 -33
  611. package/dist/ui/tools/SpawnWorkerTool/index.js.map +0 -1
  612. package/dist/ui/tools/StickerRequestTool/index.js +0 -19
  613. package/dist/ui/tools/StickerRequestTool/index.js.map +0 -1
  614. package/dist/ui/tools/ThinkTool/index.js +0 -17
  615. package/dist/ui/tools/ThinkTool/index.js.map +0 -1
  616. package/dist/ui/tools/UgTool/index.js +0 -108
  617. package/dist/ui/tools/UgTool/index.js.map +0 -1
  618. package/dist/ui/tools/UseSkillTool/index.js +0 -22
  619. package/dist/ui/tools/UseSkillTool/index.js.map +0 -1
  620. package/dist/ui/tools/WakeArionTool/index.js +0 -32
  621. package/dist/ui/tools/WakeArionTool/index.js.map +0 -1
  622. package/dist/ui/tools/WebFetchTool/index.js +0 -56
  623. package/dist/ui/tools/WebFetchTool/index.js.map +0 -1
  624. package/dist/ui/tools/WebSearchTool/index.js +0 -44
  625. package/dist/ui/tools/WebSearchTool/index.js.map +0 -1
  626. package/dist/ui/tools/lsTool/index.js +0 -58
  627. package/dist/ui/tools/lsTool/index.js.map +0 -1
  628. package/dist/ui/tools/registry.js +0 -197
  629. package/dist/ui/tools/registry.js.map +0 -1
  630. package/dist/ui/tools/tool-renderer.js +0 -11
  631. package/dist/ui/tools/tool-renderer.js.map +0 -1
  632. package/dist/ui/tools/truncation.js +0 -35
  633. package/dist/ui/tools/truncation.js.map +0 -1
  634. package/dist/ui/types/anthropic.js +0 -4
  635. package/dist/ui/types/anthropic.js.map +0 -1
  636. package/dist/ui/types/index.js +0 -2
  637. package/dist/ui/types/index.js.map +0 -1
  638. package/dist/ui/types/message.js +0 -3
  639. package/dist/ui/types/message.js.map +0 -1
  640. package/dist/ui/types/tool.js +0 -4
  641. package/dist/ui/types/tool.js.map +0 -1
  642. package/dist/ui/utils/array.js +0 -4
  643. package/dist/ui/utils/array.js.map +0 -1
  644. package/dist/ui/utils/cursor.js +0 -131
  645. package/dist/ui/utils/cursor.js.map +0 -1
  646. package/dist/ui/utils/diff.js +0 -120
  647. package/dist/ui/utils/diff.js.map +0 -1
  648. package/dist/ui/utils/format.js +0 -42
  649. package/dist/ui/utils/format.js.map +0 -1
  650. package/dist/ui/utils/fuzzy.js +0 -59
  651. package/dist/ui/utils/fuzzy.js.map +0 -1
  652. package/dist/ui/utils/index.js +0 -11
  653. package/dist/ui/utils/index.js.map +0 -1
  654. package/dist/ui/utils/keys.js +0 -8
  655. package/dist/ui/utils/keys.js.map +0 -1
  656. package/dist/ui/utils/patch.js +0 -17
  657. package/dist/ui/utils/patch.js.map +0 -1
  658. package/dist/ui/utils/risk.js +0 -114
  659. package/dist/ui/utils/risk.js.map +0 -1
  660. package/dist/ui/utils/terminal-image.js +0 -70
  661. package/dist/ui/utils/terminal-image.js.map +0 -1
  662. package/dist/ui/utils/validation.js +0 -48
  663. package/dist/ui/utils/validation.js.map +0 -1
  664. package/dist/ui/verb-pairs.js +0 -248
  665. package/dist/ui/verb-pairs.js.map +0 -1
  666. package/dist/ui.js +0 -131
  667. package/dist/ui.js.map +0 -1
  668. package/src/entrypoints/command-mode.ts +0 -5
  669. package/src/entrypoints/daemon.ts +0 -54
  670. package/src/entrypoints/headless-stdio.ts +0 -27
  671. package/src/entrypoints/interactive.ts +0 -112
  672. package/src/main.ts +0 -44
  673. package/src/runtime/configure-bun-sqlite.ts +0 -3
  674. package/src/runtime/crash-handlers.ts +0 -128
  675. package/src/runtime/interactive-invocation.test.ts +0 -42
  676. package/src/runtime/interactive-invocation.ts +0 -51
  677. package/src/runtime/internal-mode.test.ts +0 -19
  678. package/src/runtime/internal-mode.ts +0 -24
  679. package/src/runtime/launch-spec.test.ts +0 -26
  680. package/src/runtime/launch-spec.ts +0 -84
  681. package/src/runtime/owner-lease.ts +0 -52
  682. package/src/runtime/public-mode.test.ts +0 -18
  683. package/src/runtime/public-mode.ts +0 -19
  684. package/src/runtime/run-internal-mode.ts +0 -19
  685. package/src/runtime/runtime-kind.test.ts +0 -23
  686. package/src/runtime/runtime-kind.ts +0 -41
  687. package/src/runtime/spawn-aria.ts +0 -62
@@ -1,363 +0,0 @@
1
- import { appendFileSync, mkdirSync } from "node:fs";
2
- import { join } from "node:path";
3
- export function isStaleLeaseError(error) {
4
- if (!(error instanceof Error))
5
- return false;
6
- const msg = error.message;
7
- if (msg.includes("attached-local-client-only"))
8
- return true;
9
- if (msg.includes("ECONNRESET"))
10
- return true;
11
- if (msg.includes("ECONNREFUSED"))
12
- return true;
13
- if (msg.includes("EPIPE"))
14
- return true;
15
- if (msg.includes("connect ENOENT"))
16
- return true;
17
- if (msg.includes("socket hang up"))
18
- return true;
19
- if (msg.includes("closed before"))
20
- return true;
21
- if (msg.includes("has been released"))
22
- return true;
23
- if (msg.includes("no daemon found"))
24
- return true;
25
- return false;
26
- }
27
- export function enrichStaleLeaseError(error) {
28
- if (!isStaleLeaseError(error))
29
- return error instanceof Error ? error : new Error(String(error));
30
- const original = error;
31
- const msg = original.message;
32
- const reason = original.reason ?? "";
33
- const isSocketError = msg.includes("ECONNRESET") ||
34
- msg.includes("ECONNREFUSED") ||
35
- msg.includes("EPIPE") ||
36
- msg.includes("connect ENOENT") ||
37
- msg.includes("socket hang up") ||
38
- msg.includes("closed before");
39
- const hint = isSocketError
40
- ? "Lost connection to the ARIA daemon. It may have restarted. Run `aria` again to reconnect."
41
- : reason === "invalid_or_expired_lease" || reason === ""
42
- ? "The ARIA daemon restarted and your session could not be restored. Run `aria` again to start a new session."
43
- : reason === "missing_client_id" || reason === "missing_proof"
44
- ? "Client credentials were not sent. This is likely a bug — please report it."
45
- : reason === "no_authority"
46
- ? "The daemon has no attached-client authority configured. It may still be starting up."
47
- : `Session authentication failed (${reason}). Run \`aria\` again to start a new session.`;
48
- return Object.assign(new Error(`Session expired: ${hint} (${original.message})`), {
49
- code: "ARIA_SESSION_EXPIRED",
50
- reason: isSocketError ? "connection_lost" : reason,
51
- cause: original,
52
- }, original.diagnostic !== undefined ? { diagnostic: original.diagnostic } : {});
53
- }
54
- export const REATTACH_BACKOFF_DELAYS = [0, 250, 500, 1000, 2000, 3000];
55
- const _reattachLogDirs = new Map();
56
- export function logReattach(ariaDir, event) {
57
- try {
58
- let logDir = _reattachLogDirs.get(ariaDir);
59
- if (!logDir) {
60
- logDir = join(ariaDir, "logs");
61
- mkdirSync(logDir, { recursive: true });
62
- _reattachLogDirs.set(ariaDir, logDir);
63
- }
64
- const entry = JSON.stringify({ ts: new Date().toISOString(), pid: process.pid, ...event });
65
- appendFileSync(join(logDir, "reattach.jsonl"), entry + "\n");
66
- }
67
- catch {
68
- // Never let logging break reattach flow
69
- }
70
- }
71
- export function reattachSleep(ms) {
72
- if (ms <= 0)
73
- return Promise.resolve();
74
- return new Promise((resolve) => {
75
- const timer = setTimeout(resolve, ms);
76
- timer.unref?.();
77
- });
78
- }
79
- export function createLazyAttachedLocalControlApi(loader, onStaleLeaseDetected, ariaDir) {
80
- let cached = null;
81
- let currentState = "connected";
82
- let currentClientId;
83
- let currentClientAuthToken;
84
- const stateListeners = new Set();
85
- let innerStateUnsub = null;
86
- function emitState(next) {
87
- if (next === currentState)
88
- return;
89
- currentState = next;
90
- for (const fn of stateListeners) {
91
- try {
92
- fn(next);
93
- }
94
- catch {
95
- // Never let listener failures break wrapper state.
96
- }
97
- }
98
- }
99
- async function syncStateSubscription(control) {
100
- innerStateUnsub?.();
101
- innerStateUnsub = null;
102
- const stateAware = control;
103
- if (typeof stateAware.getConnectionState === "function")
104
- emitState(stateAware.getConnectionState());
105
- currentClientId = stateAware.getClientId?.();
106
- currentClientAuthToken = stateAware.getClientAuthToken?.();
107
- if (typeof stateAware.onConnectionStateChange === "function") {
108
- innerStateUnsub = stateAware.onConnectionStateChange((next) => {
109
- emitState(next);
110
- currentClientId = stateAware.getClientId?.();
111
- currentClientAuthToken = stateAware.getClientAuthToken?.();
112
- });
113
- }
114
- }
115
- const ensure = () => {
116
- if (!cached) {
117
- cached = loader().then(async (control) => {
118
- await syncStateSubscription(control);
119
- return control;
120
- });
121
- }
122
- return cached;
123
- };
124
- function invalidate() {
125
- cached = null;
126
- onStaleLeaseDetected?.();
127
- }
128
- async function withReattach(fn) {
129
- try {
130
- const control = await ensure();
131
- return await fn(control);
132
- }
133
- catch (error) {
134
- if (!isStaleLeaseError(error))
135
- throw error;
136
- const trigger = error instanceof Error ? error.message : String(error);
137
- if (ariaDir)
138
- logReattach(ariaDir, {
139
- event: "reattach_start",
140
- trigger,
141
- maxAttempts: REATTACH_BACKOFF_DELAYS.length,
142
- });
143
- for (let attempt = 0; attempt < REATTACH_BACKOFF_DELAYS.length; attempt++) {
144
- await reattachSleep(REATTACH_BACKOFF_DELAYS[attempt] ?? 0);
145
- invalidate();
146
- try {
147
- const control = await ensure();
148
- if (ariaDir)
149
- logReattach(ariaDir, { event: "reattach_success", attempt, trigger });
150
- return await fn(control);
151
- }
152
- catch (retryError) {
153
- const retryMsg = retryError instanceof Error ? retryError.message : String(retryError);
154
- if (ariaDir) {
155
- logReattach(ariaDir, {
156
- event: "reattach_retry_failed",
157
- attempt,
158
- error: retryMsg,
159
- willRetry: isStaleLeaseError(retryError) && attempt < REATTACH_BACKOFF_DELAYS.length - 1,
160
- });
161
- }
162
- if (!isStaleLeaseError(retryError) || attempt === REATTACH_BACKOFF_DELAYS.length - 1) {
163
- throw enrichStaleLeaseError(retryError);
164
- }
165
- }
166
- }
167
- throw enrichStaleLeaseError(error);
168
- }
169
- }
170
- async function* withReattachStream(fn) {
171
- try {
172
- const control = await ensure();
173
- yield* fn(control);
174
- return;
175
- }
176
- catch (error) {
177
- if (!isStaleLeaseError(error))
178
- throw error;
179
- const trigger = error instanceof Error ? error.message : String(error);
180
- if (ariaDir)
181
- logReattach(ariaDir, {
182
- event: "reattach_stream_start",
183
- trigger,
184
- maxAttempts: REATTACH_BACKOFF_DELAYS.length,
185
- });
186
- for (let attempt = 0; attempt < REATTACH_BACKOFF_DELAYS.length; attempt++) {
187
- await reattachSleep(REATTACH_BACKOFF_DELAYS[attempt] ?? 0);
188
- invalidate();
189
- try {
190
- const control = await ensure();
191
- if (ariaDir)
192
- logReattach(ariaDir, { event: "reattach_stream_success", attempt, trigger });
193
- yield* fn(control);
194
- return;
195
- }
196
- catch (retryError) {
197
- if (!isStaleLeaseError(retryError) || attempt === REATTACH_BACKOFF_DELAYS.length - 1) {
198
- throw enrichStaleLeaseError(retryError);
199
- }
200
- }
201
- }
202
- }
203
- }
204
- return {
205
- submitRun(request) {
206
- return withReattach((c) => c.submitRun(request));
207
- },
208
- resumeRun(request) {
209
- return withReattach((c) => c.resumeRun(request));
210
- },
211
- async *streamRun(request, signal) {
212
- yield* withReattachStream((c) => c.streamRun(request, signal));
213
- },
214
- async *subscribeRuntimeEvents(cursor) {
215
- yield* withReattachStream((c) => c.subscribeRuntimeEvents(cursor));
216
- },
217
- sendBestEffort(message) {
218
- return withReattach((c) => c.sendBestEffort(message));
219
- },
220
- sendDurable(message) {
221
- return withReattach((c) => c.sendDurable(message));
222
- },
223
- listInbox(request) {
224
- return withReattach((c) => c.listInbox(request));
225
- },
226
- async *subscribeInbox(cursor) {
227
- yield* withReattachStream((c) => c.subscribeInbox(cursor));
228
- },
229
- listPeers() {
230
- return withReattach((c) => c.listPeers());
231
- },
232
- listNearbyPeers() {
233
- return withReattach((c) => c.listNearbyPeers());
234
- },
235
- async *subscribePeers() {
236
- yield* withReattachStream((c) => c.subscribePeers());
237
- },
238
- getRuntimeStatus() {
239
- return withReattach((c) => c.getRuntimeStatus());
240
- },
241
- getModelSnapshot() {
242
- return withReattach((c) => {
243
- if (!c.getModelSnapshot)
244
- throw new Error("getModelSnapshot not available");
245
- return c.getModelSnapshot();
246
- });
247
- },
248
- refreshModelSnapshot(input) {
249
- return withReattach((c) => {
250
- if (!c.refreshModelSnapshot)
251
- throw new Error("refreshModelSnapshot not available");
252
- return c.refreshModelSnapshot(input);
253
- });
254
- },
255
- setCurrentModel(model) {
256
- return withReattach((c) => {
257
- if (!c.setCurrentModel)
258
- throw new Error("setCurrentModel not available");
259
- return c.setCurrentModel(model);
260
- });
261
- },
262
- getSessionCredentialOverlayState() {
263
- return withReattach((c) => {
264
- if (!c.getSessionCredentialOverlayState) {
265
- return Promise.resolve({ providers: [] });
266
- }
267
- return c.getSessionCredentialOverlayState();
268
- });
269
- },
270
- setSessionCredentialOverlay(input) {
271
- return withReattach((c) => {
272
- if (!c.setSessionCredentialOverlay)
273
- throw new Error("setSessionCredentialOverlay not available");
274
- return c.setSessionCredentialOverlay(input);
275
- });
276
- },
277
- clearSessionCredentialOverlay() {
278
- return withReattach((c) => {
279
- if (!c.clearSessionCredentialOverlay)
280
- throw new Error("clearSessionCredentialOverlay not available");
281
- return c.clearSessionCredentialOverlay();
282
- });
283
- },
284
- getRuntimeBootstrap() {
285
- return withReattach((c) => c.getRuntimeBootstrap());
286
- },
287
- listPendingPairRequests() {
288
- return withReattach((c) => c.listPendingPairRequests());
289
- },
290
- respondToPairRequest(input) {
291
- return withReattach((c) => c.respondToPairRequest(input));
292
- },
293
- createInvite(input) {
294
- return withReattach((c) => c.createInvite(input));
295
- },
296
- listPendingInvites() {
297
- return withReattach((c) => c.listPendingInvites());
298
- },
299
- acceptInviteToken(input) {
300
- return withReattach((c) => c.acceptInviteToken(input));
301
- },
302
- cancelInvite(input) {
303
- return withReattach((c) => c.cancelInvite(input));
304
- },
305
- invitePeer(input) {
306
- return withReattach((c) => c.invitePeer(input));
307
- },
308
- acceptInvite(input) {
309
- return withReattach((c) => c.acceptInvite(input));
310
- },
311
- directPair(input) {
312
- return withReattach((c) => c.directPair(input));
313
- },
314
- revokePeer(input) {
315
- return withReattach((c) => c.revokePeer(input));
316
- },
317
- repairPeer(input) {
318
- return withReattach((c) => c.repairPeer(input));
319
- },
320
- listAttachedClients() {
321
- return withReattach((c) => c.listAttachedClients());
322
- },
323
- listDirectClientInbox(request) {
324
- return withReattach((c) => c.listDirectClientInbox(request));
325
- },
326
- async *subscribeDirectClientInbox(cursor) {
327
- yield* withReattachStream((c) => c.subscribeDirectClientInbox(cursor));
328
- },
329
- appendSessionMessages(sessionId, messages) {
330
- return withReattach((c) => c.appendSessionMessages(sessionId, messages));
331
- },
332
- markSessionCompleted(sessionId) {
333
- return withReattach((c) => c.markSessionCompleted(sessionId));
334
- },
335
- replaceSessionMessages(sessionId, messages) {
336
- return withReattach((c) => c.replaceSessionMessages(sessionId, messages));
337
- },
338
- startAutonomousLoop(input) {
339
- return withReattach((c) => c.startAutonomousLoop?.(input) ??
340
- Promise.reject(new Error("startAutonomousLoop not available")));
341
- },
342
- stopAutonomousLoop() {
343
- return withReattach((c) => c.stopAutonomousLoop?.() ?? Promise.reject(new Error("stopAutonomousLoop not available")));
344
- },
345
- getConnectionState() {
346
- return currentState;
347
- },
348
- getClientId() {
349
- return currentClientId;
350
- },
351
- getClientAuthToken() {
352
- return currentClientAuthToken;
353
- },
354
- __ariaLazyControl: true,
355
- onConnectionStateChange(listener) {
356
- stateListeners.add(listener);
357
- return () => {
358
- stateListeners.delete(listener);
359
- };
360
- },
361
- };
362
- }
363
- //# sourceMappingURL=local-control-lazy-wrapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"local-control-lazy-wrapper.js","sourceRoot":"","sources":["../src/local-control-lazy-wrapper.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"local-control-manager.d.ts","sourceRoot":"","sources":["../src/local-control-manager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,0BAA0B,EAC1B,iCAAiC,EAClC,MAAM,oCAAoC,CAAC;AAK5C,MAAM,MAAM,2BAA2B,GAAG,WAAW,GAAG,cAAc,GAAG,cAAc,CAAC;AAcxF,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2D;IACrF,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,KAAK,CAA4C;IACzD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;IAEnE;;;OAGG;gBACS,QAAQ,EAAE,0BAA0B;IA2ChD,OAAO,CAAC,IAAI;IAYZ,OAAO,CAAC,IAAI;IAgBZ,4FAA4F;IAC5F,eAAe,CAAC,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAc3D,UAAU,IAAI,iCAAiC;IAI/C,WAAW,IAAI,0BAA0B,GAAG,IAAI;IAIhD,cAAc,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAShE,oBAAoB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoBpD,QAAQ,IAAI,2BAA2B;IAIvC,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,IAAI,GAAG,MAAM,IAAI;IAO3E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAY/B"}
@@ -1,146 +0,0 @@
1
- import { join } from "node:path";
2
- import { createResilientAttachedClient } from "./attached-local-control-client.js";
3
- import { createLazyAttachedLocalControlApi } from "./local-control-lazy-wrapper.js";
4
- import { log } from "@aria-cli/types";
5
- /**
6
- * Process-wide local-control manager for the CLI process.
7
- *
8
- * Responsibilities:
9
- * - owns the single active AttachedLocalControlClient/control used by the REPL process
10
- * - exposes one authoritative control object for all consumers (REPL UI,
11
- * direct subscriptions, HeadlessKernel, SessionHistory IPC)
12
- * - forwards connection-state events from the active control
13
- * - allows future client replacement without consumers chasing instances
14
- */
15
- let singletonInstance = null;
16
- export class LocalControlManager {
17
- attached;
18
- listeners = new Set();
19
- innerUnsub = null;
20
- state = "connected";
21
- stale = false;
22
- released = false;
23
- runtimeSocket = null;
24
- managedControl;
25
- /**
26
- * Creates the process-wide LocalControlManager singleton.
27
- * Throws if one already exists — use release() first.
28
- */
29
- constructor(attached) {
30
- if (singletonInstance) {
31
- throw new Error("LocalControlManager: another instance already exists. " +
32
- "Call release() on the existing instance before creating a new one.");
33
- }
34
- singletonInstance = this;
35
- this.attached = attached;
36
- this.stale = false;
37
- this.managedControl = createLazyAttachedLocalControlApi(async () => {
38
- if (!this.stale) {
39
- return this.attached?.control ?? attached.control;
40
- }
41
- const server = await import("@aria-cli/server");
42
- const ariaDir = process.env.ARIA_HOME ?? `${process.env.HOME}/.aria`;
43
- const runtimeRoot = server.resolveRuntimeRootDirectory();
44
- const owner = server.findRuntimeOwnerRecordByAriaHome(runtimeRoot, ariaDir);
45
- if (!owner?.runtimeSocket) {
46
- throw new Error("Cannot reconnect: no daemon found after restart");
47
- }
48
- const resilient = await createResilientAttachedClient({
49
- runtimeSocket: owner.runtimeSocket,
50
- clientKind: "local-api",
51
- logDir: join(ariaDir, "logs"),
52
- });
53
- return resilient.api;
54
- }, () => {
55
- this.stale = true;
56
- }, process.env.ARIA_HOME ?? `${process.env.HOME}/.aria`);
57
- this.bind(attached);
58
- }
59
- emit(next) {
60
- if (next === this.state)
61
- return;
62
- this.state = next;
63
- for (const fn of this.listeners) {
64
- try {
65
- fn(next);
66
- }
67
- catch {
68
- // Never let listeners break the manager.
69
- }
70
- }
71
- }
72
- bind(attached) {
73
- this.innerUnsub?.();
74
- this.innerUnsub = null;
75
- this.attached = attached;
76
- const control = this.managedControl;
77
- const current = control.getConnectionState?.() ?? attached.getConnectionState?.() ?? "connected";
78
- this.emit(current);
79
- const subscribe = control.onConnectionStateChange;
80
- if (subscribe) {
81
- this.innerUnsub = subscribe((next) => this.emit(next));
82
- }
83
- }
84
- /** Replace the active attached client while keeping all consumers on one stable manager. */
85
- replaceAttached(attached) {
86
- if (this.released) {
87
- throw new Error("LocalControlManager: cannot replace attached client after release(). " +
88
- "Create a new manager instead.");
89
- }
90
- log.debug(`[LocalControlManager] Replacing attached client runtime=${attached.runtimeId} node=${attached.nodeId}`);
91
- this.stale = false;
92
- this.bind(attached);
93
- }
94
- getControl() {
95
- return this.managedControl;
96
- }
97
- getAttached() {
98
- return this.attached;
99
- }
100
- getCredentials() {
101
- const control = this.managedControl;
102
- const clientId = control.getClientId?.() ?? this.attached?.attachedClientId;
103
- const clientAuthToken = control.getClientAuthToken?.() ?? this.attached?.attachedClientAuthToken;
104
- if (!clientId || !clientAuthToken)
105
- return null;
106
- return { clientId, clientAuthToken };
107
- }
108
- async resolveRuntimeSocket() {
109
- if (this.runtimeSocket)
110
- return this.runtimeSocket;
111
- try {
112
- const server = await import("@aria-cli/server");
113
- const ariaDir = process.env.ARIA_HOME ?? `${process.env.HOME}/.aria`;
114
- const root = server.resolveRuntimeRootDirectory();
115
- this.runtimeSocket =
116
- server.findRuntimeOwnerRecordByAriaHome(root, ariaDir)?.runtimeSocket ?? null;
117
- return this.runtimeSocket;
118
- }
119
- catch {
120
- return null;
121
- }
122
- }
123
- getState() {
124
- return this.state;
125
- }
126
- onStateChange(listener) {
127
- this.listeners.add(listener);
128
- return () => {
129
- this.listeners.delete(listener);
130
- };
131
- }
132
- async release() {
133
- if (this.released)
134
- return;
135
- this.released = true;
136
- this.innerUnsub?.();
137
- this.innerUnsub = null;
138
- const attached = this.attached;
139
- this.attached = null;
140
- if (singletonInstance === this) {
141
- singletonInstance = null;
142
- }
143
- await attached?.release().catch(() => { });
144
- }
145
- }
146
- //# sourceMappingURL=local-control-manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"local-control-manager.js","sourceRoot":"","sources":["../src/local-control-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,mCAAmC,CAAC;AAW3C,wBAAsB,IAAI,CAAC,IAAI,WAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB7D"}
package/dist/main.js DELETED
@@ -1,38 +0,0 @@
1
- import "./runtime/configure-bun-sqlite.js";
2
- import { installProcessCrashHandlers } from "./runtime/crash-handlers.js";
3
- import { installOwnerLeaseIfNeeded } from "./runtime/owner-lease.js";
4
- import { parseInternalInvocation } from "./runtime/internal-mode.js";
5
- import { isPublicCommandInvocation } from "./runtime/public-mode.js";
6
- import { runInternalMode } from "./runtime/run-internal-mode.js";
7
- import { runCommandMode } from "./entrypoints/command-mode.js";
8
- import { runInteractiveEntrypoint } from "./entrypoints/interactive.js";
9
- import { parseInteractiveInvocation } from "./runtime/interactive-invocation.js";
10
- import { isChildProcess, superviseInteractiveSession } from "./relaunch.js";
11
- export async function main(argv = process.argv) {
12
- installProcessCrashHandlers();
13
- installOwnerLeaseIfNeeded();
14
- const userArgs = argv.slice(2);
15
- const internal = parseInternalInvocation(userArgs);
16
- if (internal) {
17
- await runInternalMode(internal);
18
- return;
19
- }
20
- if (isPublicCommandInvocation(userArgs)) {
21
- await runCommandMode(argv);
22
- return;
23
- }
24
- const interactive = parseInteractiveInvocation(userArgs);
25
- if (isChildProcess()) {
26
- await runInteractiveEntrypoint(interactive);
27
- return;
28
- }
29
- await superviseInteractiveSession(interactive);
30
- }
31
- if (import.meta.main) {
32
- main(process.argv).catch((error) => {
33
- const message = error instanceof Error ? (error.stack ?? error.message) : String(error);
34
- process.stderr.write(`${message}\n`);
35
- process.exit(1);
36
- });
37
- }
38
- //# sourceMappingURL=main.js.map
package/dist/main.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,mCAAmC,CAAC;AAC3C,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI;IAC5C,2BAA2B,EAAE,CAAC;IAC9B,yBAAyB,EAAE,CAAC;IAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/B,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IAED,IAAI,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,cAAc,EAAE,EAAE,CAAC;QACrB,MAAM,wBAAwB,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IAED,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;AACjD,CAAC;AAED,IAAK,MAAM,CAAC,IAAwC,CAAC,IAAI,EAAE,CAAC;IAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACjC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,62 +0,0 @@
1
- import { createHash } from "node:crypto";
2
- import * as nodePath from "node:path";
3
- import { PrincipalFingerprintSchema, SigningPublicKeySchema, TlsCaFingerprintSchema, } from "@aria-cli/tools/network-runtime";
4
- const LOCAL_HOSTS = new Set(["localhost", "127.0.0.1", "::1"]);
5
- export function isLocalCoordinationHost(hostname) {
6
- if (LOCAL_HOSTS.has(hostname))
7
- return true;
8
- return hostname.toLowerCase().endsWith(".localhost");
9
- }
10
- export function parseAndValidateCoordinationUrl(rawUrl) {
11
- let parsed;
12
- try {
13
- parsed = new URL(rawUrl);
14
- }
15
- catch {
16
- throw new Error(`Invalid coordination URL: ${rawUrl}`);
17
- }
18
- const hostname = parsed.hostname.toLowerCase();
19
- if (parsed.protocol === "https:")
20
- return parsed;
21
- if (parsed.protocol === "http:" && isLocalCoordinationHost(hostname))
22
- return parsed;
23
- throw new Error(`Insecure coordination URL "${rawUrl}". Use https:// (http:// allowed only for localhost).`);
24
- }
25
- export function normalizeTlsCaFingerprintId(fingerprint) {
26
- const normalized = TlsCaFingerprintSchema.parse(fingerprint).trim().toLowerCase();
27
- if (!/^[a-f0-9]{16,128}$/.test(normalized)) {
28
- throw new Error("Invalid fingerprint format for trusted CA path");
29
- }
30
- return normalized;
31
- }
32
- function normalizePrincipalFingerprintId(fingerprint) {
33
- const normalized = PrincipalFingerprintSchema.parse(fingerprint).trim().toLowerCase();
34
- if (!/^[a-f0-9]{16,128}$/.test(normalized)) {
35
- throw new Error("Invalid fingerprint format for responder identity");
36
- }
37
- return normalized;
38
- }
39
- export function trustedCaPathForFingerprint(ariaDir, fingerprint) {
40
- const id = normalizeTlsCaFingerprintId(fingerprint);
41
- const trustedDir = nodePath.resolve(nodePath.join(ariaDir, "network", "trusted-cas"));
42
- const targetPath = nodePath.resolve(nodePath.join(trustedDir, `${id}.pem`));
43
- if (!targetPath.startsWith(`${trustedDir}${nodePath.sep}`)) {
44
- throw new Error("Trusted CA path escapes trusted-cas directory");
45
- }
46
- return targetPath;
47
- }
48
- export function signingKeyFingerprintHex(signingPublicKeyB64) {
49
- return PrincipalFingerprintSchema.parse(createHash("sha256")
50
- .update(Buffer.from(SigningPublicKeySchema.parse(signingPublicKeyB64), "base64"))
51
- .digest("hex"));
52
- }
53
- export function assertResponderIdentityMatchesExpectedFingerprint(expectedFingerprint, responderSigningPublicKeyB64) {
54
- if (!expectedFingerprint)
55
- return;
56
- const expected = normalizePrincipalFingerprintId(expectedFingerprint);
57
- const actual = signingKeyFingerprintHex(responderSigningPublicKeyB64);
58
- if (!(actual === expected || actual.startsWith(expected))) {
59
- throw new Error("Responder signing key fingerprint mismatch");
60
- }
61
- }
62
- //# sourceMappingURL=network-security.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"network-security.js","sourceRoot":"","sources":["../src/network-security.ts"],"names":[],"mappings":"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"}