@aria-cli/cli 1.0.56 → 1.0.57

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 (306) hide show
  1. package/bin/aria.mjs +2 -2
  2. package/dist/.tsbuildinfo +1 -1
  3. package/package.json +12 -12
  4. package/dist/attached-local-control-client.js.map +0 -1
  5. package/dist/bootstrap-local-control-client.js.map +0 -1
  6. package/dist/capability-aware-method-proxy.js.map +0 -1
  7. package/dist/cli-context.js.map +0 -1
  8. package/dist/commands/arions.js.map +0 -1
  9. package/dist/commands/auth.js.map +0 -1
  10. package/dist/commands/daemon.js.map +0 -1
  11. package/dist/commands/definitions.js.map +0 -1
  12. package/dist/commands/index.js.map +0 -1
  13. package/dist/commands/login-handler.js.map +0 -1
  14. package/dist/commands/logout-handler.js.map +0 -1
  15. package/dist/commands/memory-handlers.js.map +0 -1
  16. package/dist/commands/pairing.js.map +0 -1
  17. package/dist/commands/runtime-cutover-reset-command.js.map +0 -1
  18. package/dist/commands/runtime-cutover-reset.js.map +0 -1
  19. package/dist/commands/terminal-setup.js.map +0 -1
  20. package/dist/config/aria-config.js.map +0 -1
  21. package/dist/config/index.js.map +0 -1
  22. package/dist/config/loader.js.map +0 -1
  23. package/dist/config.js.map +0 -1
  24. package/dist/daemon-info.js.map +0 -1
  25. package/dist/ensure-daemon.js.map +0 -1
  26. package/dist/entrypoints/command-mode.js.map +0 -1
  27. package/dist/entrypoints/daemon.js.map +0 -1
  28. package/dist/entrypoints/headless-stdio.js.map +0 -1
  29. package/dist/entrypoints/interactive.d.ts.map +0 -1
  30. package/dist/entrypoints/interactive.js.map +0 -1
  31. package/dist/event-loop-watchdog.js.map +0 -1
  32. package/dist/headless/auth-orchestrator.js.map +0 -1
  33. package/dist/headless/auth-service.js.map +0 -1
  34. package/dist/headless/bootstrap-fast-path.js.map +0 -1
  35. package/dist/headless/call-command.js.map +0 -1
  36. package/dist/headless/daemon-service.js.map +0 -1
  37. package/dist/headless/hook-actions.js.map +0 -1
  38. package/dist/headless/hook-service.js.map +0 -1
  39. package/dist/headless/kernel-services.js.map +0 -1
  40. package/dist/headless/kernel.js.map +0 -1
  41. package/dist/headless/operations/arion.js.map +0 -1
  42. package/dist/headless/operations/auth.js.map +0 -1
  43. package/dist/headless/operations/client.js.map +0 -1
  44. package/dist/headless/operations/config.js.map +0 -1
  45. package/dist/headless/operations/daemon.js.map +0 -1
  46. package/dist/headless/operations/hook.js.map +0 -1
  47. package/dist/headless/operations/index.js.map +0 -1
  48. package/dist/headless/operations/memory.js.map +0 -1
  49. package/dist/headless/operations/message.js.map +0 -1
  50. package/dist/headless/operations/model.js.map +0 -1
  51. package/dist/headless/operations/peer.js.map +0 -1
  52. package/dist/headless/operations/run.js.map +0 -1
  53. package/dist/headless/operations/session.js.map +0 -1
  54. package/dist/headless/operations/system.js.map +0 -1
  55. package/dist/headless/operations/utils.js.map +0 -1
  56. package/dist/headless/run-orchestrator.js.map +0 -1
  57. package/dist/headless/stdio-server.js.map +0 -1
  58. package/dist/history/SessionHistory.js.map +0 -1
  59. package/dist/history/SessionHistoryClient.js.map +0 -1
  60. package/dist/history/conversation-message.js.map +0 -1
  61. package/dist/history/index.js.map +0 -1
  62. package/dist/history/jsonl-replay.js.map +0 -1
  63. package/dist/history/repair-tool-pairing.js.map +0 -1
  64. package/dist/history/stall-phase-bridge.js.map +0 -1
  65. package/dist/history/turn-accumulator.js.map +0 -1
  66. package/dist/index.d.ts.map +0 -1
  67. package/dist/index.js.map +0 -1
  68. package/dist/ink-repl.d.ts.map +0 -1
  69. package/dist/ink-repl.js.map +0 -1
  70. package/dist/local-control-bootstrap.js.map +0 -1
  71. package/dist/local-control-client.js.map +0 -1
  72. package/dist/local-control-error-reporting.js.map +0 -1
  73. package/dist/local-control-http-client.js.map +0 -1
  74. package/dist/local-control-lazy-wrapper.js.map +0 -1
  75. package/dist/local-control-manager.js.map +0 -1
  76. package/dist/main.d.ts.map +0 -1
  77. package/dist/main.js.map +0 -1
  78. package/dist/network-security.js.map +0 -1
  79. package/dist/networking-server.js.map +0 -1
  80. package/dist/peer-identity.js.map +0 -1
  81. package/dist/polling-subscription.js.map +0 -1
  82. package/dist/relaunch.d.ts +0 -63
  83. package/dist/relaunch.d.ts.map +0 -1
  84. package/dist/relaunch.js.map +0 -1
  85. package/dist/release-notes.js.map +0 -1
  86. package/dist/repl-cleanup.js.map +0 -1
  87. package/dist/runtime/configure-bun-sqlite.js.map +0 -1
  88. package/dist/runtime/crash-handlers.js.map +0 -1
  89. package/dist/runtime/interactive-invocation.js.map +0 -1
  90. package/dist/runtime/internal-mode.js.map +0 -1
  91. package/dist/runtime/launch-spec.js.map +0 -1
  92. package/dist/runtime/owner-lease.js.map +0 -1
  93. package/dist/runtime/public-mode.js.map +0 -1
  94. package/dist/runtime/run-internal-mode.d.ts.map +0 -1
  95. package/dist/runtime/run-internal-mode.js.map +0 -1
  96. package/dist/runtime/runtime-kind.js.map +0 -1
  97. package/dist/runtime/spawn-aria.js.map +0 -1
  98. package/dist/selectable-client.js.map +0 -1
  99. package/dist/selectable-peer.js.map +0 -1
  100. package/dist/session.js.map +0 -1
  101. package/dist/slash-commands.js.map +0 -1
  102. package/dist/sounds.js.map +0 -1
  103. package/dist/ui/App.js.map +0 -1
  104. package/dist/ui/components/AnthropicMethodPicker.js.map +0 -1
  105. package/dist/ui/components/ArionPrompt.js.map +0 -1
  106. package/dist/ui/components/AutocompleteDropdown.js.map +0 -1
  107. package/dist/ui/components/AutonomySelector.js.map +0 -1
  108. package/dist/ui/components/Banner.js.map +0 -1
  109. package/dist/ui/components/ConversationHistory.js.map +0 -1
  110. package/dist/ui/components/CopilotDeviceLoginFlow.js.map +0 -1
  111. package/dist/ui/components/CopilotSourcePicker.js.map +0 -1
  112. package/dist/ui/components/Cost.js.map +0 -1
  113. package/dist/ui/components/CustomSelect/option-map.js.map +0 -1
  114. package/dist/ui/components/CustomSelect/select-option.js.map +0 -1
  115. package/dist/ui/components/CustomSelect/select.js.map +0 -1
  116. package/dist/ui/components/CustomSelect/use-select-state.js.map +0 -1
  117. package/dist/ui/components/CustomSelect/use-select.js.map +0 -1
  118. package/dist/ui/components/ErrorDisplay.js.map +0 -1
  119. package/dist/ui/components/FallbackToolUseRejectedMessage.js.map +0 -1
  120. package/dist/ui/components/FileEditToolUpdatedMessage.js.map +0 -1
  121. package/dist/ui/components/HandoffMarker.js.map +0 -1
  122. package/dist/ui/components/HighlightedCode.js.map +0 -1
  123. package/dist/ui/components/InputArea.js.map +0 -1
  124. package/dist/ui/components/Message.js.map +0 -1
  125. package/dist/ui/components/OAuthLoginFlow.js.map +0 -1
  126. package/dist/ui/components/OutputTruncation.js.map +0 -1
  127. package/dist/ui/components/PermissionPrompt.js.map +0 -1
  128. package/dist/ui/components/PipelineTimingPanel.js.map +0 -1
  129. package/dist/ui/components/ProviderMethodPicker.js.map +0 -1
  130. package/dist/ui/components/ProviderPicker.js.map +0 -1
  131. package/dist/ui/components/RenderItemView.js.map +0 -1
  132. package/dist/ui/components/Spinner.js.map +0 -1
  133. package/dist/ui/components/StatusBar.js.map +0 -1
  134. package/dist/ui/components/StreamingIndicator.js.map +0 -1
  135. package/dist/ui/components/StructuredDiff.js.map +0 -1
  136. package/dist/ui/components/TextInputOverlay.js.map +0 -1
  137. package/dist/ui/components/ThinkingBlock.js.map +0 -1
  138. package/dist/ui/components/ToolCost.js.map +0 -1
  139. package/dist/ui/components/ToolExecution.js.map +0 -1
  140. package/dist/ui/components/ToolHeader.js.map +0 -1
  141. package/dist/ui/components/ToolRenderLayoutContext.js.map +0 -1
  142. package/dist/ui/components/ToolResultWrapper.js.map +0 -1
  143. package/dist/ui/components/ToolUseLoader.js.map +0 -1
  144. package/dist/ui/components/TraceWaterfall.js.map +0 -1
  145. package/dist/ui/components/index.js.map +0 -1
  146. package/dist/ui/components/messages/AssistantTextMessage.js.map +0 -1
  147. package/dist/ui/components/messages/UserImageMessage.js.map +0 -1
  148. package/dist/ui/components/messages/UserTextMessage.js.map +0 -1
  149. package/dist/ui/components/overlays/ArionSelector.js.map +0 -1
  150. package/dist/ui/components/overlays/ClientSelector.js.map +0 -1
  151. package/dist/ui/components/overlays/CommandPalette.js.map +0 -1
  152. package/dist/ui/components/overlays/DaemonControl.js.map +0 -1
  153. package/dist/ui/components/overlays/InviteShareOverlay.js.map +0 -1
  154. package/dist/ui/components/overlays/JoinInviteOverlay.js.map +0 -1
  155. package/dist/ui/components/overlays/MemoryBrowser.js.map +0 -1
  156. package/dist/ui/components/overlays/MessageSelector.js.map +0 -1
  157. package/dist/ui/components/overlays/ModelSelector.js.map +0 -1
  158. package/dist/ui/components/overlays/PairRequestOverlay.js.map +0 -1
  159. package/dist/ui/components/overlays/PeerSelector.js.map +0 -1
  160. package/dist/ui/components/overlays/SessionSelector.js.map +0 -1
  161. package/dist/ui/components/overlays/SoundSelector.js.map +0 -1
  162. package/dist/ui/components/overlays/ThemeSelector.js.map +0 -1
  163. package/dist/ui/components/overlays/index.js.map +0 -1
  164. package/dist/ui/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +0 -1
  165. package/dist/ui/components/permissions/FallbackPermissionRequest.js.map +0 -1
  166. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +0 -1
  167. package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +0 -1
  168. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +0 -1
  169. package/dist/ui/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +0 -1
  170. package/dist/ui/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +0 -1
  171. package/dist/ui/components/permissions/PermissionRequest.js.map +0 -1
  172. package/dist/ui/components/permissions/PermissionRequestTitle.js.map +0 -1
  173. package/dist/ui/components/permissions/hooks.js.map +0 -1
  174. package/dist/ui/components/permissions/toolUseOptions.js.map +0 -1
  175. package/dist/ui/components/permissions/utils.js.map +0 -1
  176. package/dist/ui/components/text-input/Cursor.js.map +0 -1
  177. package/dist/ui/components/text-input/TextInput.js.map +0 -1
  178. package/dist/ui/components/text-input/imagePaste.js.map +0 -1
  179. package/dist/ui/components/text-input/index.js.map +0 -1
  180. package/dist/ui/components/text-input/useDoublePress.js.map +0 -1
  181. package/dist/ui/components/text-input/useTextInput.js.map +0 -1
  182. package/dist/ui/components/tool-types.js.map +0 -1
  183. package/dist/ui/constants/figures.js.map +0 -1
  184. package/dist/ui/constants/index.js.map +0 -1
  185. package/dist/ui/display-mode.js.map +0 -1
  186. package/dist/ui/display-policy.js.map +0 -1
  187. package/dist/ui/hooks/index.js.map +0 -1
  188. package/dist/ui/hooks/useCommandAutocomplete.js.map +0 -1
  189. package/dist/ui/hooks/useDoublePress.js.map +0 -1
  190. package/dist/ui/hooks/useIndicatorState.js.map +0 -1
  191. package/dist/ui/hooks/useInterval.js.map +0 -1
  192. package/dist/ui/hooks/useKeyboardShortcuts.js.map +0 -1
  193. package/dist/ui/hooks/useTerminalSize.js.map +0 -1
  194. package/dist/ui/hooks/useUnifiedMessages.js.map +0 -1
  195. package/dist/ui/indicator-state.js.map +0 -1
  196. package/dist/ui/markdown/highlight.js.map +0 -1
  197. package/dist/ui/markdown/index.js.map +0 -1
  198. package/dist/ui/markdown/tokenizer.js.map +0 -1
  199. package/dist/ui/render-item.js.map +0 -1
  200. package/dist/ui/screens/REPL.js.map +0 -1
  201. package/dist/ui/screens/approval-lifecycle.js.map +0 -1
  202. package/dist/ui/status-line.js.map +0 -1
  203. package/dist/ui/theme/index.js.map +0 -1
  204. package/dist/ui/theme/themes/claude-dark-daltonized.js.map +0 -1
  205. package/dist/ui/theme/themes/claude-dark.js.map +0 -1
  206. package/dist/ui/theme/themes/claude-light-daltonized.js.map +0 -1
  207. package/dist/ui/theme/themes/claude-light.js.map +0 -1
  208. package/dist/ui/theme/themes/dark-accessible.js.map +0 -1
  209. package/dist/ui/theme/themes/dark.js.map +0 -1
  210. package/dist/ui/theme/themes/light-accessible.js.map +0 -1
  211. package/dist/ui/theme/themes/light.js.map +0 -1
  212. package/dist/ui/theme/types.js.map +0 -1
  213. package/dist/ui/theme.js.map +0 -1
  214. package/dist/ui/to-render-items.js.map +0 -1
  215. package/dist/ui/tools/AgentTool/index.js.map +0 -1
  216. package/dist/ui/tools/ArchitectTool/index.js.map +0 -1
  217. package/dist/ui/tools/AskUserTool/index.js.map +0 -1
  218. package/dist/ui/tools/BashTool/BashToolResultMessage.js.map +0 -1
  219. package/dist/ui/tools/BashTool/OutputLine.js.map +0 -1
  220. package/dist/ui/tools/BashTool/index.js.map +0 -1
  221. package/dist/ui/tools/BrowseTool/index.js.map +0 -1
  222. package/dist/ui/tools/BrowserTool/index.js.map +0 -1
  223. package/dist/ui/tools/CbmTool/index.js.map +0 -1
  224. package/dist/ui/tools/CheckDelegationTool/index.js.map +0 -1
  225. package/dist/ui/tools/CheckMessagesTool/index.js.map +0 -1
  226. package/dist/ui/tools/CreateQuipTool/index.js.map +0 -1
  227. package/dist/ui/tools/CreateSkillTool/index.js.map +0 -1
  228. package/dist/ui/tools/CreateToolTool/index.js.map +0 -1
  229. package/dist/ui/tools/DelegateRemoteTool/index.js.map +0 -1
  230. package/dist/ui/tools/DeployTool/index.js.map +0 -1
  231. package/dist/ui/tools/FffTool/index.js.map +0 -1
  232. package/dist/ui/tools/FileEditTool/index.js.map +0 -1
  233. package/dist/ui/tools/FileReadTool/index.js.map +0 -1
  234. package/dist/ui/tools/FileWriteTool/index.js.map +0 -1
  235. package/dist/ui/tools/ForkTool/index.js.map +0 -1
  236. package/dist/ui/tools/FrgTool/index.js.map +0 -1
  237. package/dist/ui/tools/GetThreadTool/index.js.map +0 -1
  238. package/dist/ui/tools/GlobTool/index.js.map +0 -1
  239. package/dist/ui/tools/GrepTool/index.js.map +0 -1
  240. package/dist/ui/tools/HatchArionTool/index.js.map +0 -1
  241. package/dist/ui/tools/LearnSkillTool/index.js.map +0 -1
  242. package/dist/ui/tools/LearnTool/index.js.map +0 -1
  243. package/dist/ui/tools/LearnToolTool/index.js.map +0 -1
  244. package/dist/ui/tools/ListClientsTool/index.js.map +0 -1
  245. package/dist/ui/tools/LspTool/index.js.map +0 -1
  246. package/dist/ui/tools/MCPTool/index.js.map +0 -1
  247. package/dist/ui/tools/ManageNetworkTool/index.js.map +0 -1
  248. package/dist/ui/tools/MemoryReadTool/index.js.map +0 -1
  249. package/dist/ui/tools/MemoryWriteTool/index.js.map +0 -1
  250. package/dist/ui/tools/NotebookEditTool/index.js.map +0 -1
  251. package/dist/ui/tools/NotebookReadTool/index.js.map +0 -1
  252. package/dist/ui/tools/OutlookReadTool/index.js.map +0 -1
  253. package/dist/ui/tools/OutlookReplyTool/index.js.map +0 -1
  254. package/dist/ui/tools/OutlookSendTool/index.js.map +0 -1
  255. package/dist/ui/tools/PauseDelegationTool/index.js.map +0 -1
  256. package/dist/ui/tools/ProbeTool/index.js.map +0 -1
  257. package/dist/ui/tools/ProcessTool/index.js.map +0 -1
  258. package/dist/ui/tools/QuestListTool/index.js.map +0 -1
  259. package/dist/ui/tools/QuestReportTool/index.js.map +0 -1
  260. package/dist/ui/tools/QuestUpdateTool/index.js.map +0 -1
  261. package/dist/ui/tools/QuipCommentTool/index.js.map +0 -1
  262. package/dist/ui/tools/QuipReadTool/index.js.map +0 -1
  263. package/dist/ui/tools/RestArionTool/index.js.map +0 -1
  264. package/dist/ui/tools/RestartTool/index.js.map +0 -1
  265. package/dist/ui/tools/ResumeDelegationTool/index.js.map +0 -1
  266. package/dist/ui/tools/RetireArionTool/index.js.map +0 -1
  267. package/dist/ui/tools/RgTool/index.js.map +0 -1
  268. package/dist/ui/tools/SearchKnowledgeTool/index.js.map +0 -1
  269. package/dist/ui/tools/SearchMessagesTool/index.js.map +0 -1
  270. package/dist/ui/tools/SelfDiagnoseTool/index.js.map +0 -1
  271. package/dist/ui/tools/SendMessageTool/index.js.map +0 -1
  272. package/dist/ui/tools/SerenaTool/index.js.map +0 -1
  273. package/dist/ui/tools/SessionHistoryTool/index.js.map +0 -1
  274. package/dist/ui/tools/SgTool/index.js.map +0 -1
  275. package/dist/ui/tools/SlackReactTool/index.js.map +0 -1
  276. package/dist/ui/tools/SlackReadTool/index.js.map +0 -1
  277. package/dist/ui/tools/SlackSendTool/index.js.map +0 -1
  278. package/dist/ui/tools/SpawnWorkerTool/index.js.map +0 -1
  279. package/dist/ui/tools/StickerRequestTool/index.js.map +0 -1
  280. package/dist/ui/tools/ThinkTool/index.js.map +0 -1
  281. package/dist/ui/tools/UgTool/index.js.map +0 -1
  282. package/dist/ui/tools/UseSkillTool/index.js.map +0 -1
  283. package/dist/ui/tools/WakeArionTool/index.js.map +0 -1
  284. package/dist/ui/tools/WebFetchTool/index.js.map +0 -1
  285. package/dist/ui/tools/WebSearchTool/index.js.map +0 -1
  286. package/dist/ui/tools/lsTool/index.js.map +0 -1
  287. package/dist/ui/tools/registry.js.map +0 -1
  288. package/dist/ui/tools/tool-renderer.js.map +0 -1
  289. package/dist/ui/tools/truncation.js.map +0 -1
  290. package/dist/ui/types/anthropic.js.map +0 -1
  291. package/dist/ui/types/index.js.map +0 -1
  292. package/dist/ui/types/message.js.map +0 -1
  293. package/dist/ui/types/tool.js.map +0 -1
  294. package/dist/ui/utils/array.js.map +0 -1
  295. package/dist/ui/utils/cursor.js.map +0 -1
  296. package/dist/ui/utils/diff.js.map +0 -1
  297. package/dist/ui/utils/format.js.map +0 -1
  298. package/dist/ui/utils/fuzzy.js.map +0 -1
  299. package/dist/ui/utils/index.js.map +0 -1
  300. package/dist/ui/utils/keys.js.map +0 -1
  301. package/dist/ui/utils/patch.js.map +0 -1
  302. package/dist/ui/utils/risk.js.map +0 -1
  303. package/dist/ui/utils/terminal-image.js.map +0 -1
  304. package/dist/ui/utils/validation.js.map +0 -1
  305. package/dist/ui/verb-pairs.js.map +0 -1
  306. package/dist/ui.js.map +0 -1
package/bin/aria.mjs CHANGED
@@ -6,7 +6,7 @@ var tX0=Object.defineProperty;var eX0=($)=>$;function $Y0($,Z){this[$]=eX0.bind(
6
6
  `)});let F=()=>{K=!0,V.destroy(),B()};Y?.addEventListener("abort",F,{once:!0}),V.on("data",(D)=>{W+=D;while(!0){let O=W.indexOf(`
7
7
  `);if(O===-1)break;let L=W.slice(0,O).trim();if(W=W.slice(O+1),L.length===0)continue;try{let q=E7.parse(JSON.parse(L));if(q.id!==G.id){H=Error("Local control socket response ID mismatch");break}if(!q.ok){let A=A7(q.error,q.diagnostic);if("reason"in q&&typeof q.reason==="string")A.reason=q.reason;H=A;break}z.push(X(q.payload))}catch(q){H=q;break}}B()}),V.once("error",(D)=>{H=D,B()}),V.once("end",()=>{K=!0,B()}),V.once("close",()=>{K=!0,B()});try{while(!0){if(z.length>0){yield z.shift();continue}if(H)throw H;if(K)return;await new Promise((D)=>{U=D})}}finally{Y?.removeEventListener("abort",F),V.destroy()}}}}function oK($){let Z=$.pollIntervalMs??1000,J=async(X)=>_$($.runtimeSocket,"listInbox",U4.optional().parse(X),(Y)=>o8.array().parse(Y));return{async submitRun(X){let Y=S8.parse(X);return du(_$($.runtimeSocket,"submitRun",Y,(Q)=>i9.parse(Q)))},async resumeRun(X){return _$($.runtimeSocket,"resumeRun",G6.parse(X),(Y)=>i9.parse(Y))},streamRun(X,Y){return hO($.runtimeSocket,"streamRun",S8.parse(X),(Q)=>f6.parse(Q),Y)},subscribeRuntimeEvents(X){return hO($.runtimeSocket,"subscribeRuntimeEvents",X2.optional().parse(X),(Y)=>r1.parse(Y))},async sendBestEffort(X){return _$($.runtimeSocket,"sendBestEffort",Q8.parse(X),(Y)=>V6.parse(Y))},async sendDurable(X){return _$($.runtimeSocket,"sendDurable",Q8.parse(X),(Y)=>W6.parse(Y))},listInbox:J,subscribeInbox(X){return cu(()=>J({limit:100,unreadOnly:!1}),{pollIntervalMs:Z,initialAfterCreatedAt:X?.afterCreatedAt??0})},async listPeers(){return _$($.runtimeSocket,"listPeers",void 0,(X)=>y4.array().parse(X))},async listNearbyPeers(){return _$($.runtimeSocket,"listNearbyPeers",void 0,(X)=>y6.array().parse(X))},subscribePeers(){return cu(()=>_$($.runtimeSocket,"listPeers",void 0,(X)=>y4.array().parse(X)),{pollIntervalMs:Z,getVersionKey:(X)=>[X.updatedAt,X.endpointRevision,X.identityState,X.transportState,X.lastSeenAt??"",X.transportPublicKey,X.displayNameSnapshot??""].join("|")})},async getRuntimeStatus(){return _$($.runtimeSocket,"getRuntimeStatus",void 0,(X)=>x8.parse(X))},async getModelSnapshot(){return _$($.runtimeSocket,"getModelSnapshot",void 0,(X)=>jJ.parse(X))},async refreshModelSnapshot(X){return _$($.runtimeSocket,"refreshModelSnapshot",X,(Y)=>jJ.parse(Y))},async setCurrentModel(X){return _$($.runtimeSocket,"setCurrentModel",{model:X},(Y)=>jJ.parse(Y))},async getSessionCredentialOverlayState(){return _$($.runtimeSocket,"getSessionCredentialOverlayState",void 0,(X)=>MJ.parse(X))},async setSessionCredentialOverlay(X){return _$($.runtimeSocket,"setSessionCredentialOverlay",gK.parse(X),(Y)=>MJ.parse(Y))},async clearSessionCredentialOverlay(){return _$($.runtimeSocket,"clearSessionCredentialOverlay",void 0,(X)=>MJ.parse(X))},async startAutonomousLoop(X){return _$($.runtimeSocket,"startAutonomousLoop",_J.optional().parse(X),(Y)=>x8.parse(Y))},async stopAutonomousLoop(){return _$($.runtimeSocket,"stopAutonomousLoop",void 0,(X)=>x8.parse(X))},async getRuntimeBootstrap(){return _$($.runtimeSocket,"getRuntimeBootstrap",void 0,(X)=>r8.parse(X))},async listPendingPairRequests(){return _$($.runtimeSocket,"listPendingPairRequests",void 0,(X)=>v6.array().parse(X))},async respondToPairRequest(X){return _$($.runtimeSocket,"respondToPairRequest",h4.parse(X),(Y)=>h6.parse(Y))},async createInvite(X){return _$($.runtimeSocket,"createInvite",K6.parse(X),(Y)=>H6.parse(Y))},async listPendingInvites(){return _$($.runtimeSocket,"listPendingInvites",void 0,(X)=>v4.array().parse(X))},async acceptInviteToken(X){return _$($.runtimeSocket,"acceptInviteToken",U6.parse(X),(Y)=>B6.parse(Y))},async cancelInvite(X){return _$($.runtimeSocket,"cancelInvite",LZ.parse(X),(Y)=>AZ.parse(Y))},async invitePeer(X){return _$($.runtimeSocket,"invitePeer",z6.parse(X),(Y)=>NZ.parse(Y))},async acceptInvite(X){return _$($.runtimeSocket,"acceptInvite",f4.parse(X),(Y)=>$3.parse(Y))},async directPair(X){return _$($.runtimeSocket,"directPair",w9.parse(X),(Y)=>x6.parse(Y))},async revokePeer(X){return _$($.runtimeSocket,"revokePeer",x4.parse(X),(Y)=>g6.parse(Y))},async repairPeer(X){return _$($.runtimeSocket,"repairPeer",F6.parse(X),(Y)=>qZ.parse(Y))},async appendSessionMessages(X,Y){await _$($.runtimeSocket,"sessionAppendMessages",{sessionId:X,messages:Y},()=>{return})},async markSessionCompleted(X){await _$($.runtimeSocket,"sessionMarkCompleted",{sessionId:X},()=>{return})},async replaceSessionMessages(X,Y){await _$($.runtimeSocket,"sessionReplaceMessages",{sessionId:X,messages:Y},()=>{return})}}}function rK($){let Z=EZ.parse($.auth);return{...oK({runtimeSocket:$.runtimeSocket,pollIntervalMs:$.pollIntervalMs}),async sendBestEffort(Y){return _$($.runtimeSocket,"sendBestEffort",Q8.parse(Y),(Q)=>V6.parse(Q),Z)},async sendDurable(Y){return _$($.runtimeSocket,"sendDurable",Q8.parse(Y),(Q)=>W6.parse(Q),Z)},async submitRun(Y){let Q=S8.parse(Y);return du(_$($.runtimeSocket,"submitRun",Q,(G)=>i9.parse(G),Z))},async resumeRun(Y){return _$($.runtimeSocket,"resumeRun",G6.parse(Y),(Q)=>i9.parse(Q),Z)},streamRun(Y,Q){return hO($.runtimeSocket,"streamRun",S8.parse(Y),(G)=>f6.parse(G),Q,Z)},async listAttachedClients(){return _$($.runtimeSocket,"listAttachedClients",void 0,(Y)=>lZ.array().parse(Y),Z)},listDirectClientInbox:async(Y)=>_$($.runtimeSocket,"listDirectClientInbox",U4.optional().parse(Y),(Q)=>o8.array().parse(Q),Z),subscribeDirectClientInbox(Y){return hO($.runtimeSocket,"subscribeDirectClientInbox",Y2.optional().parse(Y),(Q)=>o8.parse(Q),void 0,Z)}}}var lu=E(()=>{E8()});var SQ="x-aria-local-client-id",bQ="x-aria-local-client-proof";import{existsSync as au}from"fs";import{createRequire as mY0}from"module";import{join as uY0}from"path";function iu(){return tT("bun:sqlite")}function ou(){let $=process.env.ARIA_BUN_CUSTOM_SQLITE_PATH?.trim();if($)return au($)?$:null;if(process.platform==="darwin"){let J=["/opt/homebrew/opt/sqlite/lib/libsqlite3.dylib","/usr/local/opt/sqlite/lib/libsqlite3.dylib"].find((X)=>au(X));if(J)return J}return null}function eT(){let $=globalThis,Z=$[nu];if(Z&&typeof Z==="object")return Z;let J={attempted:!1};return $[nu]=J,J}function ru(){let $=eT();if($.attempted)return;$.attempted=!0;let Z=ou();if(!Z)return;iu().Database.setCustomSQLite?.(Z),$.customPath=Z}function sK(){ru()}function su($){if($&&typeof $==="object"){let Z=$;return{changes:typeof Z.changes==="number"?Z.changes:typeof Z.affectedRows==="number"?Z.affectedRows:0,lastInsertRowid:typeof Z.lastInsertRowid==="number"||typeof Z.lastInsertRowid==="bigint"?Z.lastInsertRowid:void 0}}return{changes:0}}function cY0($){return{run(...Z){return su($.run(...Z))},get(...Z){let J=$.get(...Z);return J===null?void 0:J},all(...Z){return $.all(...Z)}}}function pY0(){return tT("better-sqlite3")}function dY0($){return{run(...Z){let J=$.run(...Z);return{changes:J.changes,lastInsertRowid:J.lastInsertRowid}},get(...Z){return $.get(...Z)},all(...Z){return $.all(...Z)}}}function lY0($){let J=new(pY0())($.path,$.readonly?{readonly:!0}:void 0);return{kind:"better-sqlite3",nativeHandle:J,capabilities:{pragmas:!0,transactions:!0,preparedStatements:!0,loadableExtensions:!0,customSQLiteConfigured:!1},pragma(X,Y){let Q=X.trim();if(Q.includes("=")||/^wal_checkpoint/i.test(Q)){J.pragma(Q);return}if(Y?.simple)return J.pragma(Q,{simple:!0});return J.prepare(`PRAGMA ${Q}`).all()},exec(X){J.exec(X)},prepare(X){return dY0(J.prepare(X))},transaction(X){return J.transaction(X)},close(){J.close()},loadExtension:J.loadExtension?(X)=>{J.loadExtension(X)}:void 0}}function V2($){let Z;try{Z=iu()}catch(Y){if(process.env.VITEST||process.argv.some((Q)=>Q.includes("vitest"))||process.argv.some((Q)=>Q.includes("vite")))return P7($);throw Error(`[sqlite-open] bun:sqlite failed to load under Bun runtime: ${Y instanceof Error?Y.message:String(Y)}`)}ru();let J=eT(),X=new Z.Database($.path,{create:!$.readonly,readonly:$.readonly??!1});return{kind:"bun",nativeHandle:X,capabilities:{pragmas:!0,transactions:!0,preparedStatements:!0,loadableExtensions:J.customPath!==void 0||process.platform!=="darwin",customSQLiteConfigured:J.customPath!==void 0,...J.customPath?{customSQLitePath:J.customPath}:{}},pragma(Y,Q){let G=Y.trim();if(G.includes("=")||/^wal_checkpoint/i.test(G)){X.exec(`PRAGMA ${G}`);return}let V=typeof X.query==="function"?X.query.bind(X):X.prepare?.bind(X);if(!V){X.exec(`PRAGMA ${G}`);return}if(Q?.simple){let W=V(`PRAGMA ${G}`).get();if(!W)return;let K=Object.values(W);return K.length===1?K[0]:W}return V(`PRAGMA ${G}`).all()},exec(Y){X.exec(Y)},prepare(Y){let Q=typeof X.prepare==="function"?X.prepare(Y):X.query?.(Y);if(!Q)throw Error("[sqlite] No prepare/query API available on bun:sqlite Database");return cY0(Q)},transaction(Y){return X.transaction(Y)},close(){X.close()},loadExtension:X.loadExtension?(Y)=>{X.loadExtension(Y)}:void 0}}function aY0(){return tT("node:sqlite")}function nY0($){return{run(...Z){return su($.run(...Z))},get(...Z){return $.get(...Z)},all(...Z){return $.all(...Z)}}}function iY0($){let{DatabaseSync:Z}=aY0(),J=new Z($.path,{readOnly:$.readonly??!1,open:!0});return{kind:"node:sqlite",nativeHandle:J,capabilities:{pragmas:!0,transactions:!0,preparedStatements:!0,loadableExtensions:!1,customSQLiteConfigured:!1},pragma(X,Y){let Q=X.trim();if(Q.includes("=")||/^wal_checkpoint/i.test(Q)){J.exec(`PRAGMA ${Q}`);return}let G=J.prepare(`PRAGMA ${Q}`);if(Y?.simple){let V=G.get();if(!V)return;let W=Object.values(V);return W.length===1?W[0]:V}return G.all()},exec(X){J.exec(X)},prepare(X){return nY0(J.prepare(X))},transaction(X){return(...Y)=>{J.exec("BEGIN");try{let Q=X(...Y);return J.exec("COMMIT"),Q}catch(Q){throw J.exec("ROLLBACK"),Q}}},close(){J.close()}}}function P7($){try{return lY0($)}catch{return iY0($)}}function $C(){return ou()}function ZC(){return eT().customPath}var tT,nu="__ARIA_BUN_SQLITE_CONFIG_STATE__";var JC=E(()=>{tT=mY0(uY0(process.cwd(),"__aria_module_loader__.js"))});var tu=E(()=>{JC()});var tK=E(()=>{JC();tu()});import{createHash as oY0}from"crypto";function r$($,Z){let J=oY0("sha256");if(typeof $==="string")if(Z)J.update($,Z);else J.update($);else J.update($);return J.digest("hex")}var eu=()=>{};import{EventEmitter as rY0}from"events";import{randomUUID as sY0}from"crypto";var CJ;var XC=E(()=>{CJ=class CJ extends rY0{stdin;stdout;pending=new Map;buffer="";requestTimeout;constructor($={}){super();this.requestTimeout=$.timeout??30000}connect($,Z){this.stdin=$,this.stdout=Z,Z.on("data",(J)=>{this.buffer+=J.toString(),this.processBuffer()}),Z.on("error",(J)=>{this.emit("error",J)}),Z.on("end",()=>{this.emit("close")})}processBuffer(){let $;while(($=this.buffer.indexOf(`
8
8
  `))!==-1){let Z=this.buffer.slice(0,$).trim();if(this.buffer=this.buffer.slice($+1),Z)try{this.handleMessage(JSON.parse(Z))}catch(J){this.emit("error",Error(`Invalid JSON: ${Z}`))}}}handleMessage($){if(typeof $!=="object"||$===null||!("jsonrpc"in $)||$.jsonrpc!=="2.0")return;let Z=$;if("id"in Z&&Z.id!==void 0){let J=Z,X=this.pending.get(String(J.id));if(X)if(this.pending.delete(String(J.id)),clearTimeout(X.timeout),J.error)X.reject(Error(`${J.error.code}: ${J.error.message}`));else X.resolve(J.result);return}if("method"in Z){let J=Z;this.emit(J.method,J.params),this.emit("notification",{method:J.method,params:J.params})}}async request($,Z){if(!this.stdin)throw Error("Not connected");let J=sY0(),X={jsonrpc:"2.0",id:J,method:$,params:Z};return new Promise((Y,Q)=>{let G=setTimeout(()=>{if(this.pending.has(J))this.pending.delete(J),Q(Error(`Request timeout: ${$}`))},this.requestTimeout);this.pending.set(J,{resolve:Y,reject:Q,timeout:G}),this.send(X)})}notify($,Z){let J={jsonrpc:"2.0",method:$,params:Z};this.send(J)}send($){if(!this.stdin)throw Error("Not connected");this.stdin.write(JSON.stringify($)+`
9
- `)}close(){for(let[,$]of this.pending)clearTimeout($.timeout),$.reject(Error("Connection closed"));this.pending.clear(),this.buffer="",this.stdin=void 0,this.stdout?.removeAllListeners(),this.stdout=void 0}}});import{spawn as tY0}from"child_process";import{EventEmitter as eY0}from"events";import{PassThrough as $Q0,Writable as ZQ0}from"stream";function $c($=process.env){let Z={};for(let[J,X]of Object.entries($)){if(X===void 0)continue;if(J.toUpperCase().startsWith("GIT_"))continue;Z[J]=X}return Z}var JQ0="1.0.54",XQ0,rZ;var YC=E(()=>{XC();XQ0={name:"aria-cli",version:JQ0};rZ=class rZ extends eY0{config;process;transport="stdio";rpc;capabilities={};_initialized=!1;sseAbortController;sseStreamPromise;ssePostUrl;sseSessionId;sseOutput;_disconnecting=!1;_reconnecting=!1;_reconnectAttempts=0;static RECONNECT_BASE_DELAY_MS=1000;static RECONNECT_MAX_DELAY_MS=30000;static RECONNECT_MAX_ATTEMPTS=5;constructor($){super();this.config=$,this.rpc=new CJ}get name(){return this.config.name}get initialized(){return this._initialized}async initialize(){if(!this._reconnecting)this._disconnecting=!1,this._reconnectAttempts=0;this.transport=this.config.transport??"stdio";try{if(this.transport==="stdio")await this.initializeStdioTransport();else await this.initializeSSETransport();this.rpc.on("notifications/tools/list_changed",()=>this.emit("tools/list_changed")),this.rpc.on("notifications/resources/list_changed",()=>this.emit("resources/list_changed")),this.rpc.on("notifications/prompts/list_changed",()=>this.emit("prompts/list_changed"));let $=await this.rpc.request("initialize",{protocolVersion:"2024-11-05",capabilities:{roots:{listChanged:!0}},clientInfo:XQ0});return this.capabilities=$.capabilities||{},this._initialized=!0,this.rpc.notify("notifications/initialized",{}),this.capabilities}catch($){throw await this.cleanupAfterInitializeFailure(),$}}async attemptReconnect(){if(this._disconnecting||this._reconnecting)return;this._reconnecting=!0;while(this._reconnectAttempts<rZ.RECONNECT_MAX_ATTEMPTS&&!this._disconnecting){this._reconnectAttempts++;let $=Math.min(rZ.RECONNECT_BASE_DELAY_MS*Math.pow(2,this._reconnectAttempts-1),rZ.RECONNECT_MAX_DELAY_MS);if(this.emit("log",{level:"info",message:`Reconnect attempt ${this._reconnectAttempts}/${rZ.RECONNECT_MAX_ATTEMPTS} in ${$}ms`}),await new Promise((Z)=>setTimeout(Z,$)),this._disconnecting)break;try{this.rpc.close(),this.rpc=new CJ,await this.initialize(),this._reconnectAttempts=0,this._reconnecting=!1,this.emit("reconnected");return}catch(Z){this.emit("log",{level:"error",message:`Reconnect attempt ${this._reconnectAttempts} failed: ${Z.message}`})}}if(this._reconnecting=!1,!this._disconnecting)this._initialized=!1,this.emit("error",Error(`Failed to reconnect after ${rZ.RECONNECT_MAX_ATTEMPTS} attempts`))}async initializeStdioTransport(){if(!this.config.command)throw Error("Command required for stdio transport");if(this.process=tY0(this.config.command,this.config.args||[],{env:{...$c(),...$c(this.config.env??{})},stdio:["pipe","pipe","pipe"]}),!this.process.stdin||!this.process.stdout)throw Error("Failed to create stdio streams");this.rpc.connect(this.process.stdin,this.process.stdout),this.process.stderr?.on("data",($)=>{this.emit("log",{level:"error",message:$.toString()})}),this.process.on("exit",($)=>{if(this._initialized=!1,this.rpc.close(),this.emit("exit",$),!this._disconnecting)this.attemptReconnect()})}async initializeSSETransport(){let $=this.config.url;if(!$)throw Error("URL required for sse transport");let Z=new ZQ0({write:(Y,Q,G)=>{let V=Y.toString();this.postSSEMessages(V).then(()=>G()).catch((W)=>G(W))}}),J=new $Q0;this.sseOutput=J,this.rpc.connect(Z,J),this.sseAbortController=new AbortController;let X=await fetch($,{method:"GET",headers:{Accept:"text/event-stream"},signal:this.sseAbortController.signal});if(!X.ok||!X.body){let Y=await X.text();throw Error(`Failed to connect SSE transport: ${X.status} ${X.statusText} ${Y}`)}this.sseSessionId=X.headers.get("mcp-session-id")??void 0,this.ssePostUrl=$,this.sseStreamPromise=this.consumeSSE(X.body,$)}async postSSEMessages($){let Z=$.trim();if(!Z)return;let J=this.ssePostUrl||this.config.url;if(!J)throw Error("SSE transport endpoint is not configured");let X=Z.split(`
9
+ `)}close(){for(let[,$]of this.pending)clearTimeout($.timeout),$.reject(Error("Connection closed"));this.pending.clear(),this.buffer="",this.stdin=void 0,this.stdout?.removeAllListeners(),this.stdout=void 0}}});import{spawn as tY0}from"child_process";import{EventEmitter as eY0}from"events";import{PassThrough as $Q0,Writable as ZQ0}from"stream";function $c($=process.env){let Z={};for(let[J,X]of Object.entries($)){if(X===void 0)continue;if(J.toUpperCase().startsWith("GIT_"))continue;Z[J]=X}return Z}var JQ0="1.0.57",XQ0,rZ;var YC=E(()=>{XC();XQ0={name:"aria-cli",version:JQ0};rZ=class rZ extends eY0{config;process;transport="stdio";rpc;capabilities={};_initialized=!1;sseAbortController;sseStreamPromise;ssePostUrl;sseSessionId;sseOutput;_disconnecting=!1;_reconnecting=!1;_reconnectAttempts=0;static RECONNECT_BASE_DELAY_MS=1000;static RECONNECT_MAX_DELAY_MS=30000;static RECONNECT_MAX_ATTEMPTS=5;constructor($){super();this.config=$,this.rpc=new CJ}get name(){return this.config.name}get initialized(){return this._initialized}async initialize(){if(!this._reconnecting)this._disconnecting=!1,this._reconnectAttempts=0;this.transport=this.config.transport??"stdio";try{if(this.transport==="stdio")await this.initializeStdioTransport();else await this.initializeSSETransport();this.rpc.on("notifications/tools/list_changed",()=>this.emit("tools/list_changed")),this.rpc.on("notifications/resources/list_changed",()=>this.emit("resources/list_changed")),this.rpc.on("notifications/prompts/list_changed",()=>this.emit("prompts/list_changed"));let $=await this.rpc.request("initialize",{protocolVersion:"2024-11-05",capabilities:{roots:{listChanged:!0}},clientInfo:XQ0});return this.capabilities=$.capabilities||{},this._initialized=!0,this.rpc.notify("notifications/initialized",{}),this.capabilities}catch($){throw await this.cleanupAfterInitializeFailure(),$}}async attemptReconnect(){if(this._disconnecting||this._reconnecting)return;this._reconnecting=!0;while(this._reconnectAttempts<rZ.RECONNECT_MAX_ATTEMPTS&&!this._disconnecting){this._reconnectAttempts++;let $=Math.min(rZ.RECONNECT_BASE_DELAY_MS*Math.pow(2,this._reconnectAttempts-1),rZ.RECONNECT_MAX_DELAY_MS);if(this.emit("log",{level:"info",message:`Reconnect attempt ${this._reconnectAttempts}/${rZ.RECONNECT_MAX_ATTEMPTS} in ${$}ms`}),await new Promise((Z)=>setTimeout(Z,$)),this._disconnecting)break;try{this.rpc.close(),this.rpc=new CJ,await this.initialize(),this._reconnectAttempts=0,this._reconnecting=!1,this.emit("reconnected");return}catch(Z){this.emit("log",{level:"error",message:`Reconnect attempt ${this._reconnectAttempts} failed: ${Z.message}`})}}if(this._reconnecting=!1,!this._disconnecting)this._initialized=!1,this.emit("error",Error(`Failed to reconnect after ${rZ.RECONNECT_MAX_ATTEMPTS} attempts`))}async initializeStdioTransport(){if(!this.config.command)throw Error("Command required for stdio transport");if(this.process=tY0(this.config.command,this.config.args||[],{env:{...$c(),...$c(this.config.env??{})},stdio:["pipe","pipe","pipe"]}),!this.process.stdin||!this.process.stdout)throw Error("Failed to create stdio streams");this.rpc.connect(this.process.stdin,this.process.stdout),this.process.stderr?.on("data",($)=>{this.emit("log",{level:"error",message:$.toString()})}),this.process.on("exit",($)=>{if(this._initialized=!1,this.rpc.close(),this.emit("exit",$),!this._disconnecting)this.attemptReconnect()})}async initializeSSETransport(){let $=this.config.url;if(!$)throw Error("URL required for sse transport");let Z=new ZQ0({write:(Y,Q,G)=>{let V=Y.toString();this.postSSEMessages(V).then(()=>G()).catch((W)=>G(W))}}),J=new $Q0;this.sseOutput=J,this.rpc.connect(Z,J),this.sseAbortController=new AbortController;let X=await fetch($,{method:"GET",headers:{Accept:"text/event-stream"},signal:this.sseAbortController.signal});if(!X.ok||!X.body){let Y=await X.text();throw Error(`Failed to connect SSE transport: ${X.status} ${X.statusText} ${Y}`)}this.sseSessionId=X.headers.get("mcp-session-id")??void 0,this.ssePostUrl=$,this.sseStreamPromise=this.consumeSSE(X.body,$)}async postSSEMessages($){let Z=$.trim();if(!Z)return;let J=this.ssePostUrl||this.config.url;if(!J)throw Error("SSE transport endpoint is not configured");let X=Z.split(`
10
10
  `).map((Y)=>Y.trim()).filter((Y)=>Y.length>0);for(let Y of X){let Q=await fetch(J,{method:"POST",headers:{"Content-Type":"application/json",...this.sseSessionId?{"mcp-session-id":this.sseSessionId}:{}},body:Y});if(!Q.ok){let V=await Q.text();throw Error(`SSE transport POST failed: ${Q.status} ${Q.statusText} ${V}`)}let G=(await Q.text()).trim();if(!G||!this.sseOutput)continue;for(let V of G.split(`
11
11
  `)){let W=V.trim();if(!W)continue;if(W.startsWith("{")&&W.endsWith("}"))this.sseOutput.write(`${W}
12
12
  `)}}}async consumeSSE($,Z){let J=$.getReader(),X=new TextDecoder,Y="",Q="",G=[],V=()=>{if(G.length===0){Q="";return}let W=G.join(`
@@ -4716,7 +4716,7 @@ ${$.toString("base64").match(/.{1,64}/g)?.join(`
4716
4716
  CREATE INDEX IF NOT EXISTS idx_delegation_transitions_id
4717
4717
  ON delegation_transitions(delegation_id);
4718
4718
  `)}mapRow($){if(!$)return;let Z=G0.safeParse($.remote_node_id?.trim());return{id:$.id,type:$.type,task:$.task,state:$.state,...$.arion_name?{arionName:$.arion_name}:{},...Z.success?{remoteNodeId:Z.data}:{},...$.remote_display_name_snapshot?{remoteDisplayNameSnapshot:$.remote_display_name_snapshot}:{},...$.tier?{tier:$.tier}:{},...$.result?{result:$.result}:{},...$.error?{error:$.error}:{},createdAt:$.created_at,updatedAt:$.updated_at,...$.metadata?{metadata:$.metadata}:{}}}create($){let Z=Date.now(),J=$.metadata?JSON.stringify($.metadata):null;this.db.transaction(()=>{this.stmtInsert.run($.id,$.type,$.task,"created",$.arionName??null,$.remoteNodeId??null,$.remoteDisplayNameSnapshot??null,$.tier??null,J,Z,Z),this.stmtInsertTransition.run($.id,null,"created",Z,null)})()}transition($,Z,J){let X=Date.now(),Q=this.stmtGet.get($)?.state??null;this.db.transaction(()=>{this.stmtUpdateState.run(Z,X,$),this.stmtInsertTransition.run($,Q,Z,X,J??null)})()}complete($,Z){let J=Date.now(),Y=this.stmtGet.get($)?.state??null;this.db.transaction(()=>{this.stmtUpdateResult.run("completed",Z??null,null,J,$),this.stmtInsertTransition.run($,Y,"completed",J,null)})()}fail($,Z){let J=Date.now(),Y=this.stmtGet.get($)?.state??null;this.db.transaction(()=>{this.stmtUpdateResult.run("failed",null,Z,J,$),this.stmtInsertTransition.run($,Y,"failed",J,Z)})()}get($){return this.mapRow(this.stmtGet.get($))}findRecoverable(){return this.stmtFindNonTerminal.all().map(($)=>this.mapRow($))}cleanup($=86400000){let Z=Date.now()-$;this.db.transaction(()=>{this.stmtCleanup.run(Z),this.stmtCleanupStore.run(Z)})()}record($){switch($.event){case"created":if(!this.get($.id))this.create({id:$.id,type:$.type,task:$.task,arionName:$.arionName,remoteNodeId:$.remoteNodeId,remoteDisplayNameSnapshot:$.remoteDisplayNameSnapshot,tier:$.tier});this.transition($.id,"running");break;case"completed":this.complete($.id,$.result);break;case"failed":this.fail($.id,$.error??"Unknown error");break;case"aborted":this.transition($.id,"aborted");break}}}var U80=E(()=>{E8()});var Y8=E(()=>{aU();iq();aU();aU();aU();B$0();P$0();eE();Yy();tE();Qy();V80();Gy();X_();zy();Uy();By();W_();_f();jf();Dy();Oy();H80();jk();G_();Ny();U80();lE();XE();eq();I0();N$0();lf();u$0()});import{jsx as b5,jsxs as U_}from"react/jsx-runtime";import{useState as LM0,useRef as F80}from"react";import{Box as YB,Text as lX,useInput as AM0}from"ink";function Ly({currentLevel:$,onSelect:Z,onCancel:J,isActive:X=!0}){let Y=e(),Q=hZ.indexOf($),G=Q>=0?Q:0,[V,W]=LM0(G),K=F80(G),H=F80(!1),z=(B)=>{W((F)=>{let D=B(F);return K.current=D,D})},U=process.stdin.isTTY??!1;return AM0((B,F)=>{if(H.current)return;if(F.upArrow)z((D)=>Math.max(0,D-1));else if(F.downArrow)z((D)=>Math.min(hZ.length-1,D+1));else if(F.return)H.current=!0,Z(hZ[K.current]);else if(V$(B,F))H.current=!0,J()},{isActive:X&&U}),U_(YB,{flexDirection:"column",borderStyle:"round",borderColor:Y.colors.secondary,paddingX:1,paddingY:1,width:48,children:[b5(YB,{marginBottom:1,children:b5(lX,{bold:!0,children:"Autonomy Level"})}),b5(YB,{marginBottom:1,children:U_(lX,{children:["Current: ",b5(lX,{bold:!0,children:$})]})}),hZ.map((B,F)=>{let D=F===V,O=D?"\u25CF":"\u25CB",L=B==="high"||B==="full";return U_(YB,{gap:1,children:[b5(lX,{color:D?Y.colors.primary:void 0,children:O}),b5(lX,{color:D?Y.colors.primary:L?Y.colors.warning:void 0,bold:D,children:B.padEnd(10)}),b5(lX,{color:Y.colors.textMuted,children:qM0[B]})]},B)}),b5(YB,{marginTop:1,children:U_(lX,{color:Y.colors.textMuted,children:["\u2191\u2193"," Navigate Enter Select Esc Cancel"]})})]})}var qM0;var D80=E(()=>{E0();Y8();qM0={minimal:"Confirm all tool calls",balanced:"Confirm dangerous only",high:"Auto-approve everything",full:"Auto-approve everything"}});import{jsxs as AD$,jsx as qD$}from"react/jsx-runtime";import{Box as _D$,Text as PD$}from"ink";var O80=E(()=>{E0()});import{jsx as aX,jsxs as B_}from"react/jsx-runtime";import{Box as F_,Text as nX}from"ink";function PM0($){if($<1000)return`${Math.round($)}ms`;if($<60000)return`${($/1000).toFixed(1)}s`;let Z=Math.floor($/60000),J=Math.round($%60000/1000);return`${Z}m ${J}s`}function N80($,Z,J){let X=Math.round(Z*$),Y=Math.max(EM0,Math.round(J*$)),Q=Math.max(0,$-X-Y);return"\u2591".repeat(X)+"\u2588".repeat(Y)+"\u2591".repeat(Q)}function qy({spans:$,width:Z}){let J=e(),X=Z??_M0,Y=$.filter((H)=>H.endTime!==void 0||H.durationMs!==void 0);if(Y.length===0)return aX(F_,{children:aX(nX,{dimColor:!0,children:"(no completed spans)"})});let Q=Y.map((H)=>{let z=H.durationMs??H.endTime-H.startTime,U=H.endTime??H.startTime+z;return{...H,durationMs:z,endTime:U}}),G=Math.min(...Q.map((H)=>H.startTime)),W=Math.max(...Q.map((H)=>H.endTime))-G;if(W<=0)return aX(F_,{flexDirection:"column",children:Q.map((H)=>B_(nX,{dimColor:!0,children:[Ay[H.spanType]??H.spanType," ","\u2588"," 0ms (",H.name,")"]},H.spanId))});let K=Math.max(...Q.map((H)=>{let z=Ay[H.spanType]??H.spanType;return(H.parentSpanId!==void 0?2:0)+z.length}));return aX(F_,{flexDirection:"column",children:Q.map((H)=>{let z=H.parentSpanId!==void 0,U=z?" ":"",B=Ay[H.spanType]??H.spanType,F=(U+B).padEnd(K),D=(H.startTime-G)/W,O=H.durationMs/W,L=N80(X,D,O),q=PM0(H.durationMs),A=H.spanType==="tool_execution"&&H.name?` (${H.name})`:"";return B_(F_,{children:[B_(nX,{color:J.colors.textMuted,children:[" ",F]}),aX(nX,{children:" "}),aX(nX,{color:z?J.colors.info:J.colors.success,children:L}),aX(nX,{children:" "}),B_(nX,{dimColor:!0,children:[q,A]})]},H.spanId)})})}var EM0=1,_M0=20,Ay;var L80=E(()=>{E0();Ay={model_call:"model_call",tool_execution:"tool_exec",handoff:"handoff",approval:"approval",session_phase:"session",runner_phase:"runner"}});import{jsxs as XW}from"react/jsx-runtime";import{Box as A80,Text as D_}from"ink";function q80($){if($<1000)return`${Math.round($)}ms`;return`${($/1000).toFixed(2)}s`}function Ey({report:$}){let Z=e();if(!$||$.phases.length===0)return null;return XW(A80,{flexDirection:"column",marginTop:1,children:[XW(D_,{color:Z.colors.textMuted,children:[" Pipeline timing (",q80($.totalMs),")"]}),$.phases.map((J)=>XW(A80,{children:[XW(D_,{color:Z.colors.info,children:[" ",J.phase.padEnd(24)]}),XW(D_,{color:Z.colors.text,children:[" ",q80(J.durationMs)]}),XW(D_,{color:Z.colors.textMuted,children:[" (",J.pct,"%)"]})]},`${J.phase}:${J.durationMs}`))]})}var E80=E(()=>{E0()});import{jsxs as _80,jsx as MM0}from"react/jsx-runtime";import{useRef as jM0}from"react";import{Box as TM0,Text as P80}from"ink";import CM0 from"gradient-string";function j80($){if($<60)return`${$}s`;let Z=Math.floor($/60),J=$%60;return`${Z}m ${J}s`}function RM0($){if($>=1000)return`${($/1000).toFixed(1)}k tokens`;return`${$} tokens`}function Py({state:$,elapsedSeconds:Z,totalTokens:J,thoughtForSeconds:X,currentVerb:Y}){let Q=[...M80,...[...M80].reverse()],G=Math.floor(Date.now()/120)%Q.length,V=jM0(W1().present),W=Y||V.current,K=e(),H=G%_y.length,z=[..._y.slice(H),..._y.slice(0,H)],U=CM0(z),B=`${Q[G]} ${W}\u2026`,F=U(B),D=j80(Z),O=RM0(J),L;if($==="thinking")L="(thinking)";else if(X&&X>0)L=`(${D} \xB7 \u2193 ${O} \xB7 thought for ${j80(X)})`;else L=`(${D} \xB7 \u2193 ${O} \xB7 esc to cancel)`;return _80(TM0,{flexDirection:"row",marginTop:1,children:[_80(P80,{children:[F," "]}),MM0(P80,{color:K.colors.textMuted,children:L})]})}var _y,M80;var T80=E(()=>{E0();CG();_y=["#5f97cd","#7baed4","#97c4db","#7baed4"],M80=process.platform==="darwin"?["\xB7","\u2722","\u2733","\u2217","\u273B","\u273D"]:["\xB7","\u2722","*","\u2217","\u273B","\u273D"]});import{jsxs as R80,jsx as C80}from"react/jsx-runtime";import{Box as wM0,Text as w80}from"ink";function My($){return $>=70?"high":$>=30?"moderate":"low"}function SM0($){let Z=e();switch($){case"low":return{highlightColor:Z.colors.success,textColor:Z.colors.primary};case"moderate":return{highlightColor:Z.colors.warning,textColor:Z.colors.warning};case"high":return{highlightColor:Z.colors.error,textColor:Z.colors.error}}}function I3($){if($===null)return e().colors.primary;let Z=My($);return SM0(Z).textColor}function bM0({riskScore:$}){let Z=My($);return R80(w80,{color:I3($),children:["Risk: ",Z]})}function M1({title:$,riskScore:Z}){return R80(wM0,{flexDirection:"column",children:[C80(w80,{bold:!0,color:e().colors.primary,children:$}),Z!==null&&C80(bM0,{riskScore:Z})]})}var iX=E(()=>{E0()});function k3($,Z){}import{structuredPatch as IM0}from"diff";function O_($,Z,J,X=3){let Y=IM0($,$,Z,J,"","",{context:X}),Q=0,G=0,V=Y.hunks.map((W)=>{let K=[],H=W.oldStart,z=W.newStart;for(let U of W.lines){let B=U.slice(1);if(U.startsWith("+"))K.push({type:"added",content:B,newLineNo:z++}),Q++;else if(U.startsWith("-"))K.push({type:"removed",content:B,oldLineNo:H++}),G++;else K.push({type:"unchanged",content:B,oldLineNo:H++,newLineNo:z++})}return{oldStart:W.oldStart,oldLines:W.oldLines,newStart:W.newStart,newLines:W.newLines,lines:K}});return{filePath:$,hunks:V,additions:Q,deletions:G}}var jy=()=>{};import{jsx as N_,jsxs as kM0}from"react/jsx-runtime";import{existsSync as fM0,readFileSync as yM0}from"fs";import{useMemo as S80}from"react";import{Box as Ty,Text as vM0}from"ink";import{relative as hM0}from"path";function b80({file_path:$,new_string:Z,old_string:J,verbose:X,useBorder:Y=!0,width:Q}){let G=S80(()=>fM0($)?yM0($,"utf8"):"",[$]),V=S80(()=>{let W=G.replace(J,Z);return O_($,G,W)},[$,G,J,Z]);return N_(Ty,{flexDirection:"column",children:kM0(Ty,{borderColor:e().colors.secondary,borderStyle:Y?"round":void 0,flexDirection:"column",paddingX:1,children:[N_(Ty,{paddingBottom:1,children:N_(vM0,{bold:!0,children:X?$:hM0(process.cwd(),$)})}),N_(oJ,{diff:V,dim:!1,width:Q,showHeader:!1})]})})}var I80=E(()=>{IG();E0();jy()});import{jsx as Cy,jsxs as xM0}from"react/jsx-runtime";import{Box as gM0,Text as Ry}from"ink";function k80({isFocused:$,isSelected:Z,smallPointer:J,children:X}){let Y=e();return xM0(gM0,{gap:1,children:[$&&Cy(Ry,{color:Y.colors.primary,children:J?uM0:mM0}),Cy(Ry,{color:$?Y.colors.primary:void 0,bold:Z,children:X}),Z&&Cy(Ry,{color:Y.colors.success,children:cM0})]})}var mM0="\u276F",uM0="\u25BE",cM0="\u2714";var f80=E(()=>{E0()});var L_;var y80=E(()=>{I5();L_=class L_ extends Map{first;constructor($){let Z=[],J,X,Y=0;for(let Q of $){let G={...Q,previous:X,next:void 0,index:Y};if(X)X.next=G;J||=G;let V="value"in Q?Q.value:wy(Q);Z.push([V,G]),Y++,X=G}super(Z);this.first=J}}});import{isDeepStrictEqual as pM0}from"util";import{useReducer as dM0,useCallback as Sy,useMemo as lM0,useState as aM0,useEffect as by}from"react";var nM0=($,Z)=>{switch(Z.type){case"focus-next-option":{if(!$.focusedValue)return $;let J=$.optionMap.get($.focusedValue);if(!J)return $;let X=J.next;while(X&&!("value"in X))X=X.next;if(!X)return $;if(!(X.index>=$.visibleToIndex))return{...$,focusedValue:X.value};let Q=Math.min($.optionMap.size,$.visibleToIndex+1),G=Q-$.visibleOptionCount;return{...$,focusedValue:X.value,visibleFromIndex:G,visibleToIndex:Q}}case"focus-previous-option":{if(!$.focusedValue)return $;let J=$.optionMap.get($.focusedValue);if(!J)return $;let X=J.previous;while(X&&!("value"in X))X=X.previous;if(!X)return $;if(!(X.index<=$.visibleFromIndex))return{...$,focusedValue:X.value};let Q=Math.max(0,$.visibleFromIndex-1),G=Q+$.visibleOptionCount;return{...$,focusedValue:X.value,visibleFromIndex:Q,visibleToIndex:G}}case"select-focused-option":return{...$,previousValue:$.value,value:$.focusedValue};case"reset":return Z.state;case"set-focus":return{...$,focusedValue:Z.value}}},Iy=($)=>$.flatMap((Z)=>{if("options"in Z){let J=Iy(Z.options),X=J.flatMap((Q)=>("value"in Q)?Q.value:[]);return[...Z.header!==void 0?[{header:Z.header,optionValues:X}]:[],...J]}return Z}),v80=({visibleOptionCount:$,defaultValue:Z,options:J})=>{let X=Iy(J),Y=typeof $==="number"?Math.min($,X.length):X.length,Q=new L_(X),G=Q.first,V=G&&"value"in G?G.value:void 0;return{optionMap:Q,visibleOptionCount:Y,focusedValue:V,visibleFromIndex:0,visibleToIndex:Y,previousValue:Z,value:Z}},h80=({visibleOptionCount:$=5,options:Z,defaultValue:J,onChange:X,onFocus:Y,focusValue:Q})=>{let G=Iy(Z),[V,W]=dM0(nM0,{visibleOptionCount:$,defaultValue:J,options:Z},v80),[K,H]=aM0(G);if(G!==K&&!pM0(G,K))W({type:"reset",state:v80({visibleOptionCount:$,defaultValue:J,options:Z})}),H(G);let z=Sy(()=>{W({type:"focus-next-option"})},[]),U=Sy(()=>{W({type:"focus-previous-option"})},[]),B=Sy(()=>{W({type:"select-focused-option"})},[]),F=lM0(()=>{return G.map((D,O)=>({...D,index:O})).slice(V.visibleFromIndex,V.visibleToIndex)},[G,V.visibleFromIndex,V.visibleToIndex]);return by(()=>{if(V.value&&V.previousValue!==V.value)X?.(V.value)},[V.previousValue,V.value,Z,X]),by(()=>{if(V.focusedValue)Y?.(V.focusedValue)},[V.focusedValue,Y]),by(()=>{if(Q)W({type:"set-focus",value:Q})},[Q]),{focusedValue:V.focusedValue,visibleFromIndex:V.visibleFromIndex,visibleToIndex:V.visibleToIndex,value:V.value,visibleOptions:F,focusNextOption:z,focusPreviousOption:U,selectFocusedOption:B}};var x80=E(()=>{y80()});import{useInput as iM0}from"ink";var g80=({isDisabled:$=!1,state:Z})=>{iM0((J,X)=>{if(X.downArrow)Z.focusNextOption();if(X.upArrow)Z.focusPreviousOption();if(X.return)Z.selectFocusedOption()},{isActive:!$})};var m80=()=>{};import{jsx as ky,Fragment as oM0,jsxs as rM0}from"react/jsx-runtime";import{Box as sM0,Text as tM0}from"ink";function j1({isDisabled:$=!1,visibleOptionCount:Z=5,highlightText:J,options:X,defaultValue:Y,onChange:Q,onFocus:G,focusValue:V}){let W=h80({visibleOptionCount:Z,options:X,defaultValue:Y,onChange:Q,onFocus:G,focusValue:V});g80({isDisabled:$,state:W});let K=e();return ky(sM0,{flexDirection:"column",children:W.visibleOptions.map((H)=>{let z="value"in H?H.value:wy(H),U=!$&&W.focusedValue!==void 0&&("value"in H?W.focusedValue===H.value:H.optionValues.includes(W.focusedValue)),B=!!W.value&&("value"in H?W.value===H.value:H.optionValues.includes(W.value)),F="header"in H,D="label"in H?H.label:H.header,O=D;if(J&&D.includes(J)){let L=D.indexOf(J);O=rM0(oM0,{children:[D.slice(0,L),ky(tM0,{color:K.colors.primary,bold:!0,children:J}),D.slice(L+J.length)]})}return ky(k80,{isFocused:U,isSelected:B,smallPointer:F,children:O},z)})})}var wy=($)=>`HEADER-${$.optionValues.join(",")}`;var I5=E(()=>{f80();x80();m80();E0()});import{jsx as A_,jsxs as fy}from"react/jsx-runtime";import{Box as u80,Text as c80}from"ink";import{useMemo as eM0}from"react";import{basename as $j0,extname as Zj0,isAbsolute as Jj0,resolve as yy}from"path";import Xj0 from"chalk";function Yj0($){return(Jj0($)?yy($):yy(process.cwd(),$)).startsWith(yy(process.cwd()))}function Qj0($){let Z=Yj0($)?[{label:"Yes, and don't ask again this session",value:"yes-dont-ask-again"}]:[];return[{label:"Yes",value:"yes"},...Z,{label:`No, and provide instructions (${Xj0.bold.hex(e().colors.warning)("esc")})`,value:"no"}]}function p80({toolUseConfirm:$,onDone:Z,verbose:J}){let{columns:X}=Z9(),{file_path:Y,new_string:Q,old_string:G}=$.input,V=eM0(()=>({completion_type:"str_replace_single",language_name:Gj0(Y)}),[Y]);return k3($,V),fy(u80,{flexDirection:"column",borderStyle:"round",borderColor:I3($.riskScore),marginTop:1,paddingLeft:1,paddingRight:1,paddingBottom:1,children:[A_(M1,{title:"Edit file",riskScore:$.riskScore}),A_(b80,{file_path:Y,new_string:Q,old_string:G,verbose:J,width:X-12}),fy(u80,{flexDirection:"column",children:[fy(c80,{children:["Do you want to make this edit to ",A_(c80,{bold:!0,children:$j0(Y)}),"?"]}),A_(j1,{options:Qj0(Y),onChange:(W)=>{switch(W){case"yes":$.onAllow("temporary"),Z();break;case"yes-dont-ask-again":$.onAllow("permanent"),Z();break;case"no":$.onReject(),Z();break}}})]})]})}function Gj0($){let Z=Zj0($);return Z?Z.slice(1):"unknown"}var d80=E(()=>{E0();iX();I80();V1();I5()});import QB from"chalk";function Vj0($){let J=$.replace(/'[^']*'/g,"").replace(/"[^"]*"/g,"");if(/&&|\|\||[;|]/.test(J))return!0;if(/`/.test(J))return!0;if(/\$\(/.test(J))return!0;return!1}function l80({toolUseConfirm:$,command:Z}){let J=!Vj0(Z)&&$.commandPrefix&&!$.commandPrefix.commandInjectionDetected,X=GB($),Y=J&&X!==null,Q=[];if(Y)Q=[{label:`Yes, and don't ask again for ${QB.bold(X)} commands in ${QB.bold(process.cwd())}`,value:"yes-dont-ask-again-prefix"}];else if(J)Q=[{label:`Yes, and don't ask again for ${QB.bold(Z)} commands in ${QB.bold(process.cwd())}`,value:"yes-dont-ask-again-full"}];return[{label:"Yes",value:"yes"},...Q,{label:`No, and provide instructions (${QB.bold.hex(e().colors.warning)("esc")})`,value:"no"}]}var a80=E(()=>{VB();E0()});import{jsx as WB,jsxs as vy}from"react/jsx-runtime";import{Box as hy,Text as xy}from"ink";import{useMemo as Wj0}from"react";function n80({toolUseConfirm:$,onDone:Z}){let J=e(),{command:X}=$.tool.inputSchema.parse($.input),Y=Wj0(()=>({completion_type:"tool_use_single",language_name:"none"}),[]);return k3($,Y),vy(hy,{flexDirection:"column",borderStyle:"round",borderColor:J.colors.primary,marginTop:1,paddingLeft:1,paddingRight:1,paddingBottom:1,children:[WB(M1,{title:"Bash command",riskScore:$.riskScore}),vy(hy,{flexDirection:"column",paddingX:2,paddingY:1,children:[WB(xy,{children:$.tool.renderToolUseMessage({command:X},{verbose:!1})}),WB(xy,{color:J.colors.textMuted,children:$.description})]}),vy(hy,{flexDirection:"column",children:[WB(xy,{children:"Do you want to proceed?"}),WB(j1,{options:l80({toolUseConfirm:$,command:X}),onChange:(Q)=>{switch(Q){case"yes":$.onAllow("temporary"),Z();break;case"yes-dont-ask-again-prefix":{if(GB($)!==null)$.onAllow("permanent");else $.onAllow("temporary");Z();break}case"yes-dont-ask-again-full":$.onAllow("permanent"),Z();break;case"no":$.onReject(),Z();break}}})]})]})}var i80=E(()=>{E0();VB();iX();I5();a80()});import{jsx as KB,jsxs as q_}from"react/jsx-runtime";import{Box as gy,Text as E_}from"ink";import{useMemo as Kj0}from"react";import my from"chalk";function __({toolUseConfirm:$,onDone:Z,verbose:J}){let X=e(),Y=$.tool.userFacingName($.input),Q=Y.endsWith(" (MCP)")?Y.slice(0,-6):Y,G=Kj0(()=>({completion_type:"tool_use_single",language_name:"none"}),[]);return k3($,G),q_(gy,{flexDirection:"column",borderStyle:"round",borderColor:I3($.riskScore),marginTop:1,paddingLeft:1,paddingRight:1,paddingBottom:1,children:[KB(M1,{title:"Tool use",riskScore:$.riskScore}),q_(gy,{flexDirection:"column",paddingX:2,paddingY:1,children:[q_(E_,{children:[Q,"(",$.tool.renderToolUseMessage($.input,{verbose:J}),")",Y.endsWith(" (MCP)")?KB(E_,{color:X.colors.textMuted,children:" (MCP)"}):""]}),KB(E_,{color:X.colors.textMuted,children:$.description})]}),q_(gy,{flexDirection:"column",children:[KB(E_,{children:"Do you want to proceed?"}),KB(j1,{options:[{label:"Yes",value:"yes"},{label:`Yes, and don't ask again for ${my.bold(Q)} commands in ${my.bold(process.cwd())}`,value:"yes-dont-ask-again"},{label:`No, and provide instructions (${my.bold.hex(e().colors.warning)("esc")})`,value:"no"}],onChange:(V)=>{switch(V){case"yes":$.onAllow("temporary"),Z();break;case"yes-dont-ask-again":$.onAllow("permanent"),Z();break;case"no":$.onReject(),Z();break}}})]})]})}var uy=E(()=>{E0();iX();I5()});import{jsx as P_,jsxs as Hj0}from"react/jsx-runtime";import{existsSync as zj0,readFileSync as Uj0}from"fs";import{useMemo as cy}from"react";import{Box as o80,Text as Bj0}from"ink";import{extname as Fj0,relative as Dj0}from"path";function r80({file_path:$,content:Z,verbose:J,width:X}){let Y=cy(()=>zj0($),[$]),Q=cy(()=>{if(!Y)return"";return Uj0($,"utf8")},[$,Y]),G=cy(()=>{if(!Y)return null;return O_($,Q,Z)},[Y,$,Q,Z]);return Hj0(o80,{borderColor:e().colors.secondary,borderStyle:"round",flexDirection:"column",paddingX:1,children:[P_(o80,{paddingBottom:1,children:P_(Bj0,{bold:!0,children:J?$:Dj0(process.cwd(),$)})}),G?P_(oJ,{diff:G,dim:!1,width:X,showHeader:!1}):P_(H1,{code:Z||"(No content)",language:Fj0($).slice(1)})]})}var s80=E(()=>{IG();E0();fG();jy()});import{jsx as HB,jsxs as py}from"react/jsx-runtime";import{Box as dy,Text as t80}from"ink";import{useMemo as e80}from"react";import{basename as Oj0,extname as Nj0}from"path";import{existsSync as Lj0}from"fs";import Aj0 from"chalk";function $90({toolUseConfirm:$,onDone:Z,verbose:J}){let{file_path:X,content:Y}=$.input,Q=e80(()=>Lj0(X),[X]),G=e80(()=>({completion_type:"write_file_single",language_name:qj0(X)}),[X]),{columns:V}=Z9();return k3($,G),py(dy,{flexDirection:"column",borderStyle:"round",borderColor:I3($.riskScore),marginTop:1,paddingLeft:1,paddingRight:1,paddingBottom:1,children:[HB(M1,{title:`${Q?"Edit":"Create"} file`,riskScore:$.riskScore}),HB(dy,{flexDirection:"column",children:HB(r80,{file_path:X,content:Y,verbose:J,width:V-12})}),py(dy,{flexDirection:"column",children:[py(t80,{children:["Do you want to ",Q?"make this edit to":"create"," ",HB(t80,{bold:!0,children:Oj0(X)}),"?"]}),HB(j1,{options:[{label:"Yes",value:"yes"},{label:"Yes, and don't ask again this session",value:"yes-dont-ask-again"},{label:`No, and provide instructions (${Aj0.bold.hex(e().colors.warning)("esc")})`,value:"no"}],onChange:(W)=>{switch(W){case"yes":$.onAllow("temporary"),Z();break;case"yes-dont-ask-again":$.onAllow("permanent"),Z();break;case"no":$.onReject(),Z();break}}})]})]})}function qj0($){let Z=Nj0($);return Z?Z.slice(1):"unknown"}var Z90=E(()=>{E0();iX();s80();V1();I5()});import{jsx as YW,jsxs as ly}from"react/jsx-runtime";import{Box as ay,Text as J90}from"ink";import{useMemo as Ej0}from"react";import _j0 from"chalk";import{isAbsolute as Pj0,resolve as X90}from"path";function M_($){return Pj0($)?X90($):X90(process.cwd(),$)}function Mj0($){return M_($).startsWith(M_(process.cwd()))}function Tj0(){jj0=!0}function bj0($){let Z=$.tool.name;if(Cj0.has(Z))return"file_path";if(Rj0.has(Z))return"path";if(wj0.has(Z))return"notebook_path";return null}function Ij0($){return Sj0.has($.tool.name)}function kj0($){let Z=bj0($),J=$.input;if(Z&&Z in J)if(typeof J[Z]==="string")return M_(J[Z]);else return M_(process.cwd());return null}function Y90({toolUseConfirm:$,onDone:Z,verbose:J}){let X=kj0($);if(!X)return YW(__,{toolUseConfirm:$,onDone:Z,verbose:J});return YW(yj0,{toolUseConfirm:$,path:X,onDone:Z,verbose:J})}function fj0($,Z){if($.tool.isReadOnly())return[];return Mj0(Z)?[{label:"Yes, and don't ask again for file edits this session",value:"yes-dont-ask-again"}]:[]}function yj0({toolUseConfirm:$,path:Z,onDone:J,verbose:X}){let Y=$.tool.userFacingName($.input),G=`${$.tool.isReadOnly()?"Read":"Edit"} ${Ij0($)?"files":"file"}`,V=Ej0(()=>({completion_type:"tool_use_single",language_name:"none"}),[]);return k3($,V),ly(ay,{flexDirection:"column",borderStyle:"round",borderColor:I3($.riskScore),marginTop:1,paddingLeft:1,paddingRight:1,paddingBottom:1,children:[YW(M1,{title:G,riskScore:$.riskScore}),YW(ay,{flexDirection:"column",paddingX:2,paddingY:1,children:ly(J90,{children:[Y,"(",$.tool.renderToolUseMessage($.input,{verbose:X}),")"]})}),ly(ay,{flexDirection:"column",children:[YW(J90,{children:"Do you want to proceed?"}),YW(j1,{options:[{label:"Yes",value:"yes"},...fj0($,Z),{label:`No, and provide instructions (${_j0.bold.hex(e().colors.warning)("esc")})`,value:"no"}],onChange:(W)=>{switch(W){case"yes":$.onAllow("temporary"),J();break;case"yes-dont-ask-again":Tj0(),$.onAllow("permanent"),J();break;case"no":$.onReject(),J();break}}})]})]})}var jj0=!1,Cj0,Rj0,wj0,Sj0;var Q90=E(()=>{E0();iX();uy();I5();Cj0=new Set(["Edit","file_edit","str_replace_editor","Write","file_write","create_file","Read","file_read","read_file"]),Rj0=new Set(["Glob","glob","Grep","grep","LS","ls"]),wj0=new Set(["NotebookEdit","notebook_edit","NotebookRead","notebook_read"]),Sj0=new Set(["Glob","glob","Grep","grep","LS","ls"])});import{jsx as vj0}from"react/jsx-runtime";import{useInput as hj0}from"ink";import*as G90 from"react";function cj0($){if(xj0.has($))return p80;if(gj0.has($))return $90;if(mj0.has($))return n80;if(uj0.has($))return Y90;return __}function GB($){return $.commandPrefix&&!$.commandPrefix.commandInjectionDetected&&$.commandPrefix.commandPrefix||null}function ny({toolUseConfirm:$,onDone:Z,verbose:J}){let X=G90.useRef(!1);hj0((Q,G)=>{if(X.current)return;if(G.ctrl&&Q==="c"||V$(Q,G))X.current=!0,$.onReject(),Z()});let Y=cj0($.tool.name);return vj0(Y,{toolUseConfirm:$,onDone:Z,verbose:J})}var xj0,gj0,mj0,uj0;var VB=E(()=>{d80();i80();uy();Z90();Q90();xj0=new Set(["Edit","file_edit","str_replace_editor"]),gj0=new Set(["Write","file_write","create_file"]),mj0=new Set(["Bash","bash","execute_command"]),uj0=new Set(["Glob","glob","Grep","grep","LS","ls","Read","file_read","read_file","NotebookRead","notebook_read","NotebookEdit","notebook_edit"])});import{jsx as j_,jsxs as QW}from"react/jsx-runtime";import{useState as V90,useEffect as W90}from"react";import{Box as T_,Text as GW,useInput as pj0}from"ink";function iy($){return/\s/.test($.trimStart())}function dj0($){return $.trimStart().split(/\s+/,1)[0]??""}function oy({commands:$,initialFilter:Z="",onSelect:J,onHandOffInput:X,onCancel:Y}){let[Q,G]=V90(0),[V,W]=V90(Z),K=dj0(V).toLowerCase(),H=$.filter((B)=>B.name.toLowerCase().includes(K));W90(()=>{G((B)=>Math.min(B,Math.max(0,H.length-1)))},[H.length]),W90(()=>{if(!X||!iy(V))return;X(`/${V}`)},[V,X]);let z=H.length>0?Math.min(Q,H.length-1):0,U=process.stdin.isTTY??!1;return pj0((B,F)=>{if(V$(B,F)){Y();return}if(F.return&&iy(V)&&X){X(`/${V}`);return}if(F.return&&H.length>0){J(H[z]);return}if(F.upArrow){G((D)=>Math.max(0,D-1));return}if(F.downArrow){G((D)=>Math.min(H.length-1,D+1));return}if(F.backspace||F.delete){W((D)=>D.slice(0,-1));return}if(B&&!F.ctrl&&!F.meta){let D=V+B;if(X&&iy(D)){X(`/${D}`);return}W(D)}},{isActive:U}),QW(T_,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,children:[QW(T_,{marginBottom:1,children:[j_(GW,{bold:!0,children:"Commands"}),V&&QW(GW,{dimColor:!0,children:[" /",V]})]}),H.map((B,F)=>QW(T_,{children:[QW(GW,{inverse:F===z,children:["/",B.name]}),QW(GW,{dimColor:!0,children:[" ",B.description]})]},B.name)),H.length===0&&j_(GW,{dimColor:!0,children:"No matching commands"}),j_(T_,{marginTop:1,children:j_(GW,{dimColor:!0,children:"\u2191\u2193 navigate \u23CE select esc cancel"})})]})}var K90=()=>{};import{jsx as zB,jsxs as VW}from"react/jsx-runtime";import{useState as H90,useEffect as lj0}from"react";import{Box as C_,Text as oX,useInput as aj0}from"ink";function ry({arions:$,initialFilter:Z="",statusFilter:J="all",onSelect:X,onCancel:Y}){let[Q,G]=H90(0),[V,W]=H90(Z),K=$.filter((U)=>{if(J==="active"&&U.isResting)return!1;if(J==="resting"&&!U.isResting)return!1;return U.name.toLowerCase().includes(V.toLowerCase())});lj0(()=>{G((U)=>Math.min(U,Math.max(0,K.length-1)))},[K.length]);let H=K.length>0?Math.min(Q,K.length-1):0,z=process.stdin.isTTY??!1;return aj0((U,B)=>{if(V$(U,B)){Y();return}if(B.return&&K.length>0){X(K[H]);return}if(B.upArrow){G((F)=>Math.max(0,F-1));return}if(B.downArrow){G((F)=>Math.min(K.length-1,F+1));return}if(B.backspace||B.delete){W((F)=>F.slice(0,-1));return}if(U&&!B.ctrl&&!B.meta)W((F)=>F+U)},{isActive:z}),VW(C_,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,children:[VW(C_,{marginBottom:1,children:[zB(oX,{bold:!0,children:J==="active"?"Active Arions":J==="resting"?"Resting Arions":"Arions"}),V&&VW(oX,{dimColor:!0,children:[" @",V]})]}),K.length===0&&zB(oX,{dimColor:!0,children:$.length===0?"No arions available. Create one with /hatch":J==="active"?"No active arions":J==="resting"?"No resting arions":"No matching arions"}),K.map((U,B)=>{let F=eH(U.color),D=U.isActive?" (active)":U.isResting?" (resting)":"";return VW(C_,{children:[VW(oX,{inverse:B===H,children:[U.emoji," ",zB(oX,{color:F,children:U.name})]}),VW(oX,{dimColor:!0,children:[" ",U.description,D]})]},U.name)}),zB(C_,{marginTop:1,children:zB(oX,{dimColor:!0,children:"\u2191\u2193 navigate \u23CE select esc cancel"})})]})}var z90=E(()=>{LG()});import{jsx as QZ,jsxs as T1}from"react/jsx-runtime";import{useState as sy,useEffect as nj0,useMemo as ij0}from"react";import{Box as k5,Text as M4,useInput as oj0}from"ink";function sj0($){return rj0[$]||$}function B90($){let Z=U90.indexOf($);return Z>=0?Z:U90.length}function tj0($,Z,J){let X=new Map;for(let G of $){let V=G.provider||"other",W=X.get(V)??[];W.push(G),X.set(V,W)}let Y={powerful:0,balanced:1,fast:2,ensemble:3},Q=[...X.entries()].sort(([G],[V])=>B90(G)-B90(V));for(let[G,V]of Q){Z.push({type:"header",label:sj0(G),provider:G});let W=(U)=>{if(!U)return"balanced";let B=U.toLowerCase();if(B.includes("deep"))return"powerful";if(B.includes("quick"))return"fast";return"balanced"},K=[/^claude-opus-|^opus-|^bedrock-opus-/,/^claude-sonnet-|^sonnet-|^bedrock-sonnet-/,/^claude-haiku-|^haiku-|^bedrock-haiku-/,/^claude-/,/^gpt-/,/^o[0-9]/,/^gemini-/],H=(U)=>{let B=U.toLowerCase();for(let F=0;F<K.length;F++)if(K[F].test(B))return F;return K.length},z=[...V].sort((U,B)=>{let F=H(U.name),D=H(B.name);if(F!==D)return F-D;return B.name.localeCompare(U.name)});for(let U of z)J.push(Z.length),Z.push({type:"model",model:U})}}function ty({models:$,initialFilter:Z="",effortLevel:J,onSelect:X,onCancel:Y}){let[Q,G]=sy(Z),[V,W]=sy(J??"high"),H=$.filter((A)=>A.name.toLowerCase().includes(Q.toLowerCase())),{items:z,selectableIndices:U}=ij0(()=>{if(!H.some((M)=>M.provider))return{items:H.map((M)=>({type:"model",model:M})),selectableIndices:H.map((M,C)=>C)};let N=[],_=[];return tj0(H,N,_),{items:N,selectableIndices:_}},[H]),B=U.findIndex((A)=>{let N=z[A];return N?.type==="model"&&N.model.isCurrent}),[F,D]=sy(B>=0?B:0);nj0(()=>{D((A)=>Math.min(A,Math.max(0,U.length-1)))},[U.length]);let O=U.length>0?Math.min(F,U.length-1):0,L=process.stdin.isTTY??!1;oj0((A,N)=>{if(V$(A,N)){Y();return}if(N.return&&U.length>0){let _=U[O],M=z[_];if(M.type==="model")X(M.model,V);return}if(N.leftArrow){W((_)=>{let M=UB.indexOf(_);return UB[Math.max(0,M-1)]});return}if(N.rightArrow){W((_)=>{let M=UB.indexOf(_);return UB[Math.min(UB.length-1,M+1)]});return}if(N.upArrow){D((_)=>Math.max(0,_-1));return}if(N.downArrow){D((_)=>Math.min(U.length-1,_+1));return}if(N.backspace||N.delete){G((_)=>_.slice(0,-1));return}if(A&&!N.ctrl&&!N.meta)G((_)=>_+A)},{isActive:L});let q=U.length>0?` [${O+1}/${U.length}]`:"";return T1(k5,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,children:[T1(k5,{marginBottom:1,children:[QZ(M4,{bold:!0,children:"Model"}),QZ(M4,{dimColor:!0,children:q}),QZ(M4,{children:" "}),Q?QZ(M4,{color:"cyan",children:Q}):QZ(M4,{dimColor:!0,children:"Type to search..."})]}),H.length===0&&QZ(M4,{dimColor:!0,children:"No matching models"}),(()=>{let A=z.reduce((N,_)=>{if(_.type!=="model")return N;return Math.max(N,_.model.name.length)},0);return z.map((N,_)=>{if(N.type==="header"){let a=Ql(N.provider);return T1(k5,{marginTop:_>0?1:0,children:[T1(M4,{color:a.color,children:[a.icon," "]}),QZ(M4,{bold:!0,color:a.color,children:N.label})]},`header-${N.label}-${_}`)}if(N.type==="hint")return QZ(k5,{marginTop:1,children:QZ(M4,{dimColor:!0,italic:!0,children:N.label})},"hint");let M=U[O]===_,C=N.model.description,k=N.model.name.padEnd(A),R=XL(N.model.name);return T1(k5,{children:[T1(M4,{inverse:M,color:M?void 0:R,dimColor:M?!1:!R,children:[N.model.isCurrent?"\u25CF":"\u25CB"," ",k]}),C&&T1(M4,{dimColor:!0,children:[" ",N.model.description]})]},N.model.value??`${N.model.provider}-${N.model.name}`)})})(),T1(k5,{marginTop:1,flexDirection:"column",children:[T1(k5,{children:[T1(M4,{color:F90[V],children:[ej0[V]," "]}),T1(M4,{color:F90[V],bold:!0,children:[$T0[V]," effort"]}),V==="high"&&QZ(M4,{dimColor:!0,children:" (default)"}),QZ(M4,{dimColor:!0,children:" \u2190 \u2192 to adjust"})]}),QZ(k5,{marginTop:0,children:QZ(M4,{dimColor:!0,children:"\u2191\u2193 navigate \u2190 \u2192 effort \u23CE select esc cancel"})})]})]})}var rj0,U90,UB,ej0,$T0,F90;var D90=E(()=>{LG();rj0={anthropic:"Anthropic","openai-codex":"OpenAI Codex",google:"Google",bedrock:"AWS Bedrock","bedrock-converse":"AWS Bedrock (Converse)","github-copilot":"GitHub Copilot",openai:"OpenAI",local:"Local"},U90=["anthropic","openai-codex","google","bedrock","bedrock-converse","github-copilot","openai","local"];UB=["low","medium","high","max"],ej0={low:"\u258C",medium:"\u258C\u258C",high:"\u258C\u258C\u258C",max:"\u258C\u258C\u258C\u258C"},$T0={low:"Low",medium:"Medium",high:"High",max:"Max"},F90={low:"blue",medium:"cyan",high:"yellow",max:"magenta"}});import{jsx as f5,jsxs as f3}from"react/jsx-runtime";import{useState as ey,useEffect as ZT0}from"react";import{Box as WW,Text as C1,useInput as JT0}from"ink";import XT0 from"ink-spinner";function $v({memories:$,mode:Z="browse",isLoading:J=!1,onSelect:X,onCancel:Y}){let[Q,G]=ey(0),[V,W]=ey(""),[K,H]=ey(0),z=8,U=$.filter((N)=>N.content.toLowerCase().includes(V.toLowerCase())),B=Math.max(1,Math.ceil(U.length/8)),F=U.slice(K*8,(K+1)*8);ZT0(()=>{G((N)=>Math.min(N,Math.max(0,F.length-1)))},[F.length]);let D=F.length>0?Math.min(Q,F.length-1):0,O=process.stdin.isTTY??!1;JT0((N,_)=>{if(V$(N,_)){Y();return}if(_.return&&F.length>0&&Z==="forget"){X?.(F[D]);return}if(_.upArrow){G((M)=>Math.max(0,M-1));return}if(_.downArrow){G((M)=>Math.min(F.length-1,M+1));return}if(_.leftArrow&&K>0){H((M)=>M-1),G(0);return}if(_.rightArrow&&K<B-1){H((M)=>M+1),G(0);return}if(_.backspace||_.delete){W((M)=>M.slice(0,-1)),H(0),G(0);return}if(N&&!_.ctrl&&!_.meta)W((M)=>M+N),H(0),G(0)},{isActive:O});function L(N){let _=N instanceof Date?N:new Date(N);if(isNaN(_.getTime()))return"unknown";let C=new Date().getTime()-_.getTime(),k=Math.floor(C/86400000);if(k===0)return"today";if(k===1)return"yesterday";if(k<7)return`${k}d ago`;if(k<30)return`${Math.floor(k/7)}w ago`;return`${Math.floor(k/30)}mo ago`}function q(N,_){if(N.length<=_)return N;return N.slice(0,_-3)+"..."}return f3(WW,{flexDirection:"column",borderStyle:"round",borderColor:Z==="forget"?"red":"cyan",paddingX:1,children:[f3(WW,{marginBottom:1,children:[f5(C1,{bold:!0,color:Z==="forget"?"red":"cyan",children:Z==="forget"?"Select Memory to Delete":"Memories"}),V&&f3(C1,{dimColor:!0,children:[' (filter: "',V,'")']}),f3(C1,{dimColor:!0,children:[" - ",U.length," memories"]})]}),J&&f3(WW,{children:[f5(C1,{color:"cyan",children:f5(XT0,{type:"dots"})}),f5(C1,{dimColor:!0,children:" Loading memories..."})]}),!J&&U.length===0&&f5(C1,{dimColor:!0,children:$.length===0?"No memories stored yet. Use /remember to add some.":"No memories match your filter."}),!J&&F.map((N,_)=>{let M=_===D,C=L(N.createdAt),k=q(N.content,60);return f3(WW,{flexDirection:"row",children:[f3(C1,{inverse:M,children:[M?">":" "," ",k]}),f3(C1,{dimColor:!0,children:[" [",C,"]"]}),N.network&&f3(C1,{dimColor:!0,children:[" (",N.network,")"]})]},N.id)}),!J&&B>1&&f5(WW,{marginTop:1,children:f3(C1,{dimColor:!0,children:["Page ",K+1,"/",B]})}),f5(WW,{marginTop:1,children:f5(C1,{dimColor:!0,children:Z==="forget"?"type to filter arrows navigate enter delete esc cancel":"type to filter arrows navigate esc close"})})]})}var O90=()=>{};import{jsx as BB,jsxs as y3}from"react/jsx-runtime";import{useState as Zv,useEffect as N90}from"react";import{Box as KW,Text as g2,useInput as YT0}from"ink";function QT0($){let J=Date.now()-$.getTime(),X=Math.floor(J/60000),Y=Math.floor(J/3600000),Q=Math.floor(J/86400000);if(X<1)return"just now";if(X<60)return`${X}m ago`;if(Y<24)return`${Y}h ago`;if(Q<7)return`${Q}d ago`;return $.toLocaleDateString()}function Jv({sessions:$,onSelect:Z,onCancel:J,onSearch:X,onPageChange:Y}){let{columns:Q}=Z9(),[G,V]=Zv(0),[W,K]=Zv(""),[H,z]=Zv(0),U=8,B=Math.max(1,Math.ceil($.length/8)),F=$.slice(H*8,(H+1)*8);N90(()=>{V((A)=>Math.min(A,Math.max(0,F.length-1)))},[F.length]),N90(()=>{z((A)=>Math.min(A,Math.max(0,B-1)))},[B]);let D=F.length>0?Math.min(G,F.length-1):0,O=process.stdin.isTTY??!1;YT0((A,N)=>{if(V$(A,N))J();else if(N.return&&F.length>0)Z(F[D].id);else if(N.upArrow)V((_)=>Math.max(0,_-1));else if(N.downArrow)V((_)=>Math.min(F.length-1,_+1));else if(N.leftArrow&&H>0)z((_)=>_-1),V(0);else if(N.leftArrow&&H===0)Y?.("prev"),V(0);else if(N.rightArrow&&H<B-1)z((_)=>_+1),V(0);else if(N.rightArrow&&H===B-1)Y?.("next"),V(0);else if(N.backspace||N.delete){let _=W.slice(0,-1);K(_),z(0),V(0),X(_)}else if(A&&!N.ctrl&&!N.meta){let _=W+A;K(_),z(0),V(0),X(_)}},{isActive:O});function L(A,N){if(A.length<=N)return A;return A.slice(0,N-3)+"..."}let q=Math.max(30,Math.min(120,Q-28));return y3(KW,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:1,children:[y3(KW,{marginBottom:1,children:[BB(g2,{bold:!0,color:"cyan",children:"Sessions"}),W&&y3(g2,{dimColor:!0,children:[' (filter: "',W,'")']}),y3(g2,{dimColor:!0,children:[" - ",$.length," sessions"]})]}),$.length===0?BB(g2,{dimColor:!0,children:W?"No sessions match your filter.":"No sessions yet."}):F.map((A,N)=>{let _=N===D,M=QT0(A.updatedAt),C=A.title??A.preview??"Untitled session",k=H*8+N;return y3(KW,{flexDirection:"column",marginBottom:N<F.length-1?1:0,children:[y3(KW,{flexDirection:"row",children:[y3(g2,{inverse:_,children:[_?">":" "," ",k+1,". ",L(C,q)]}),y3(g2,{dimColor:!0,children:[" [",M,"]"]})]}),y3(g2,{dimColor:!0,children:[" ",A.arion," | ",A.model," | ",A.messageCount," messages"]})]},A.id)}),$.length>0&&B>1&&BB(KW,{marginTop:1,children:y3(g2,{dimColor:!0,children:["Page ",H+1,"/",B]})}),BB(KW,{marginTop:1,children:BB(g2,{dimColor:!0,children:"type to search arrows navigate enter resume esc cancel"})})]})}var L90=E(()=>{V1()});import{jsx as FB,jsxs as rX}from"react/jsx-runtime";import{useState as Xv,useEffect as R_,useMemo as GT0}from"react";import{Box as w_,Text as y5,useInput as VT0}from"ink";function WT0($,Z){if($.length<=Z)return $;return $.slice(0,Z-3)+"\u2026"}function KT0($){switch($){case"user":return"\uD83D\uDC64";case"assistant":return"\uD83E\uDD16";case"system":return"\u2699\uFE0F";case"tool":return"\uD83D\uDD27";default:return" "}}function HT0($){switch($){case"user":return"cyan";case"assistant":return"green";case"system":return"yellow";case"tool":return"gray";default:return"white"}}function Yv({messages:$,onSelect:Z,onCancel:J}){let{columns:X,rows:Y}=Z9(),[Q,G]=Xv(0),[V,W]=Xv(""),K=GT0(()=>{if(!V)return $;let L=V.toLowerCase();return $.filter((q)=>q.text.toLowerCase().includes(L)||q.role.toLowerCase().includes(L)||q.arion&&q.arion.toLowerCase().includes(L))},[$,V]);R_(()=>{G((L)=>Math.min(L,Math.max(0,K.length-1)))},[K.length]),R_(()=>{if(!V){let L=K.reduce((q,A,N)=>A.role==="user"?N:q,0);G(L)}},[]);let H=Math.max(4,Y-10),[z,U]=Xv(0);R_(()=>{if(Q<z)U(Q);else if(Q>=z+H)U(Q-H+1)},[Q,H,z]),R_(()=>{let L=K.reduce((q,A,N)=>A.role==="user"?N:q,0);U(Math.max(0,L-H+2))},[V]);let B=K.slice(z,z+H),F=K.length>0?Math.min(Q,K.length-1):0,D=process.stdin.isTTY??!1;VT0((L,q)=>{if(V$(L,q))J();else if(q.return&&K.length>0){let A=K[F];if(A&&A.role==="user")Z(A.index,A.text)}else if(q.upArrow)G((A)=>Math.max(0,A-1));else if(q.downArrow)G((A)=>Math.min(K.length-1,A+1));else if(q.backspace||q.delete){let A=V.slice(0,-1);W(A),G(0)}else if(L&&!q.ctrl&&!q.meta){let A=V+L;W(A),G(0)}},{isActive:D});let O=Math.max(30,Math.min(120,X-16));return rX(w_,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:1,children:[rX(w_,{marginBottom:1,children:[FB(y5,{bold:!0,color:"cyan",children:"Edit Message"}),V?rX(y5,{dimColor:!0,children:[" ",'(search: "',V,'") \u2014 ',K.length,"/",$.length," messages"]}):rX(y5,{dimColor:!0,children:[" \u2014 ",$.length," messages \xB7 select a user message to edit"]})]}),z>0&&rX(y5,{dimColor:!0,children:[" \u2191 ",z," more above"]}),K.length===0?FB(y5,{dimColor:!0,children:V?`No messages match "${V}".`:"No messages."}):B.map((L,q)=>{let N=z+q===F,_=L.role==="user",M=KT0(L.role),C=HT0(L.role),k=N?"\u276F":" ",R=WT0(L.text.replace(/\n/g," ").trim()||"(empty)",O);return FB(w_,{flexDirection:"row",children:rX(y5,{inverse:N,color:N?void 0:C,dimColor:!_&&!N,bold:_,children:[k," ",M," ",R]})},`${L.index}-${q}`)}),z+H<K.length&&rX(y5,{dimColor:!0,children:[" \u2193 ",K.length-z-H," more below"]}),FB(w_,{marginTop:1,children:FB(y5,{dimColor:!0,children:"type to search \xB7 \u2191\u2193 navigate \xB7 enter select user message \xB7 esc cancel"})})]})}var A90=E(()=>{V1()});import{jsx as Y$,jsxs as u9}from"react/jsx-runtime";import zT0,{useState as UT0,useMemo as Qv}from"react";import{Box as m9,Text as U$,useInput as BT0}from"ink";function q90($){if($.includes("daltonized")||$.includes("accessible"))return"accessible";if($.startsWith("claude-"))return"claude";return"standard"}function OT0($){let Z=$.colors.text.replace("#",""),J=parseInt(Z.slice(0,2),16),X=parseInt(Z.slice(2,4),16),Y=parseInt(Z.slice(4,6),16);return(J*299+X*587+Y*114)/1000<128}function NT0($){return K3().map((Z)=>{let J=VL(Z);return{name:Z,displayName:J.displayName,isCurrent:Z===$,isLight:OT0(J),category:q90(Z)}})}function LT0({theme:$}){let Z=$.colors,J=Z.primary,X=Z.info,Y=Z.success,Q=Z.textMuted,G=Z.text;return u9(m9,{flexDirection:"column",children:[Y$(U$,{color:Q,children:"// fetch a user by ID"}),u9(m9,{children:[Y$(U$,{color:J,children:"async function "}),Y$(U$,{color:G,children:"fetchUser"}),Y$(U$,{color:G,children:"("}),Y$(U$,{color:G,children:"id"}),Y$(U$,{color:G,children:": "}),Y$(U$,{color:Y,children:"string"}),Y$(U$,{color:G,children:") {"})]}),u9(m9,{children:[Y$(U$,{color:G,children:" "}),Y$(U$,{color:J,children:"const "}),Y$(U$,{color:G,children:"res = "}),Y$(U$,{color:J,children:"await "}),Y$(U$,{color:G,children:"fetch("}),Y$(U$,{color:X,children:"`/api/users/${"}),Y$(U$,{color:G,children:"id"}),Y$(U$,{color:X,children:"}`"}),Y$(U$,{color:G,children:")"})]}),u9(m9,{children:[Y$(U$,{color:G,children:" "}),Y$(U$,{color:J,children:"if "}),Y$(U$,{color:G,children:"(!res.ok) "}),Y$(U$,{color:J,children:"throw new "}),Y$(U$,{color:Y,children:"Error"}),Y$(U$,{color:G,children:"("}),Y$(U$,{color:X,children:"`HTTP ${"}),Y$(U$,{color:G,children:"res.status"}),Y$(U$,{color:X,children:"}`"}),Y$(U$,{color:G,children:")"})]}),u9(m9,{children:[Y$(U$,{color:G,children:" "}),Y$(U$,{color:J,children:"return "}),Y$(U$,{color:G,children:"res.json() "}),Y$(U$,{color:J,children:"as "}),Y$(U$,{color:Y,children:"Promise"}),Y$(U$,{color:G,children:"<"}),Y$(U$,{color:Y,children:"User"}),Y$(U$,{color:G,children:">"})]}),Y$(U$,{color:G,children:"}"})]})}function AT0({theme:$}){let{colors:Z,symbols:J}=$;return u9(m9,{flexDirection:"column",borderStyle:"single",borderColor:Z.secondary,paddingX:1,children:[u9(U$,{bold:!0,color:Z.primary,children:[J.prompt," ",$.displayName]}),Y$(m9,{marginTop:1,flexDirection:"column",children:Y$(LT0,{theme:$})}),u9(m9,{marginTop:1,flexDirection:"column",children:[u9(U$,{color:Z.success,children:[J.success," Tests passed (3/3)"]}),u9(U$,{color:Z.error,children:[J.error," Error: connection refused"]}),u9(U$,{color:Z.warning,children:[J.warning," Deprecated API call"]}),Y$(m9,{children:Y$(U$,{color:Z.diffAdded,children:"+ const data = await fetch(url);"})}),Y$(m9,{children:Y$(U$,{color:Z.diffRemoved,children:"- const data = http.get(url);"})}),u9(U$,{color:Z.textMuted,children:[J.info," 1.2k tokens ",J.bullet," $0.01 ",J.bullet," 0.8s"]})]})]})}function Gv({onSelect:$,onCancel:Z}){let J=Qv(()=>e().name,[]),X=Qv(()=>NT0(J),[J]),{items:Y,selectableIndices:Q}=Qv(()=>{let D=[],O=[],L=new Map;for(let q of X){let A=L.get(q.category)??[];A.push(q),L.set(q.category,A)}for(let q of DT0){let A=L.get(q);if(!A?.length)continue;D.push({type:"header",label:FT0[q]??q});for(let N of A)O.push(D.length),D.push({type:"theme",option:N})}return{items:D,selectableIndices:O}},[X]),G=Q.findIndex((D)=>{let O=Y[D];return O?.type==="theme"&&O.option.isCurrent}),[V,W]=UT0(G>=0?G:0),K=Q.length>0?Math.min(V,Q.length-1):0,H=Y[Q[K]],z=H?.type==="theme"?H.option.name:null;if(z)W3(z);let U=zT0.useCallback(()=>{W3(J),Z()},[J,Z]),B=process.stdin.isTTY??!1;BT0((D,O)=>{if(V$(D,O)){U();return}if(O.return&&Q.length>0){let L=Q[K],q=Y[L];if(q.type==="theme")$({name:q.option.name,displayName:q.option.displayName});return}if(O.upArrow){W((L)=>Math.max(0,L-1));return}if(O.downArrow){W((L)=>Math.min(Q.length-1,L+1));return}},{isActive:B});let F=e();return u9(m9,{flexDirection:"column",borderStyle:"round",borderColor:F.colors.primary,paddingX:1,children:[u9(m9,{marginBottom:1,children:[Y$(U$,{bold:!0,color:F.colors.primary,children:"Theme"}),u9(U$,{color:F.colors.textMuted,children:[" ",F.symbols.arrow," select a color theme"]})]}),u9(m9,{children:[Y$(m9,{flexDirection:"column",width:38,children:Y.map((D,O)=>{if(D.type==="header")return Y$(m9,{marginTop:O>0?1:0,children:Y$(U$,{bold:!0,color:F.colors.textMuted,children:D.label})},`header-${D.label}`);let L=Q[K]===O,{option:q}=D;return Y$(m9,{children:u9(U$,{inverse:L,color:L?F.colors.primary:F.colors.text,children:[q.isCurrent?"\u25CF":"\u25CB"," ",q.displayName]})},q.name)})}),Y$(m9,{flexDirection:"column",flexGrow:1,marginLeft:2,children:Y$(AT0,{theme:F})})]}),Y$(m9,{marginTop:1,children:u9(U$,{color:F.colors.textMuted,children:["\u2191\u2193"," navigate ","\u23CE"," select esc cancel"]})})]})}var FT0,DT0;var E90=E(()=>{E0();FT0={standard:"Standard",claude:"Claude",accessible:"Accessible"},DT0=["standard","claude","accessible"]});import{jsxs as sX,jsx as S_}from"react/jsx-runtime";import{useState as _90,useEffect as qT0,useMemo as ET0}from"react";import{Box as Vv,Text as v5,useInput as _T0}from"ink";function PT0($,Z){let J=Z.trim().toLowerCase();if(!J)return!0;return[$.displayNameSnapshot,$.nodeId,$.host,$.port?.toString(),$.principalFingerprint,$.transport,$.status].filter((Y)=>typeof Y==="string"&&Y.length>0).map((Y)=>Y.toLowerCase()).some((Y)=>Y.includes(J))}function Wv($,Z){if(Z<=0)return 0;return Math.min($,Z-1)}function Kv({peers:$,sameHomeClientsAvailable:Z=!1,onSelect:J,onCancel:X}){let[Y,Q]=_90(0),[G,V]=_90(""),W=e(),K=ET0(()=>$.filter((B)=>PT0(B,G)),[$,G]);qT0(()=>{Q((B)=>Wv(B,K.length))},[K.length]);let H=Wv(Y,K.length),z=process.stdin.isTTY??!1;_T0((B,F)=>{if(V$(B,F)){X();return}if(F.return){if(K.length>0)J(K[H]);return}if(F.upArrow){Q((D)=>Math.max(0,D-1));return}if(F.downArrow){Q((D)=>Wv(D+1,K.length));return}if(F.backspace||F.delete){V((D)=>D.slice(0,-1)),Q(0);return}if(B&&!F.ctrl&&!F.meta){V((D)=>D+B),Q(0);return}},{isActive:z});let U=(B)=>`${B.slice(0,4)} ${B.slice(4,8)} ${B.slice(8,12)} ${B.slice(12,16)}`;return sX(Vv,{flexDirection:"column",borderStyle:"round",borderColor:W.colors.secondary,paddingX:1,children:[sX(v5,{bold:!0,color:W.colors.primary,children:[" ","Nearby Peers"," "]}),G?sX(v5,{dimColor:!0,children:[' (filter: "',G,'")']}):null,K.length===0&&S_(v5,{dimColor:!0,children:G?"No peers match your filter.":Z?"No peer nodes. Use /clients for same-home terminals.":"Scanning... no peers found yet"}),K.map((B,F)=>sX(Vv,{children:[sX(v5,{inverse:F===H,color:F===H?W.colors.primary:void 0,children:[F===H?" \u25B8 ":" ",B.displayNameSnapshot]}),B.status==="connected"?S_(v5,{color:"green",children:" \u2713 connected"}):sX(v5,{dimColor:!0,children:[" ",B.host,":",B.port]}),B.principalFingerprint?sX(v5,{color:W.colors.secondary,children:[" ",U(B.principalFingerprint)]}):null]},`${B.displayNameSnapshot}-${B.nodeId}-${F}`)),S_(Vv,{marginTop:K.length>0?1:0,children:S_(v5,{dimColor:!0,children:"type to search \u2191\u2193 navigate \u23CE connect esc cancel"})})]})}var P90=E(()=>{E0()});import{jsxs as HW,jsx as Hv}from"react/jsx-runtime";import{useEffect as MT0,useMemo as jT0,useState as M90}from"react";import{Box as zv,Text as zW,useInput as TT0}from"ink";function CT0($,Z){let J=Z.trim().toLowerCase();if(!J)return!0;return $.displayLabel.toLowerCase().includes(J)||$.clientId.toLowerCase().includes(J)||$.clientKind.toLowerCase().includes(J)}function Uv($,Z){if(Z<=0)return 0;return Math.min($,Z-1)}function Bv({clients:$,onSelect:Z,onCancel:J}){let[X,Y]=M90(0),[Q,G]=M90(""),V=e(),W=jT0(()=>$.filter((z)=>CT0(z,Q)),[$,Q]);MT0(()=>{Y((z)=>Uv(z,W.length))},[W.length]);let K=Uv(X,W.length),H=process.stdin.isTTY??!1;return TT0((z,U)=>{if(V$(z,U)){J();return}if(U.return){if(W.length>0&&!W[K]?.self)Z(W[K]);return}if(U.upArrow){Y((B)=>Math.max(0,B-1));return}if(U.downArrow){Y((B)=>Uv(B+1,W.length));return}if(U.backspace||U.delete){G((B)=>B.slice(0,-1)),Y(0);return}if(z&&!U.ctrl&&!U.meta)G((B)=>B+z),Y(0)},{isActive:H}),HW(zv,{flexDirection:"column",borderStyle:"round",borderColor:V.colors.secondary,paddingX:1,children:[HW(zW,{bold:!0,color:V.colors.primary,children:[" ","Same-Home Clients"," "]}),Q?HW(zW,{dimColor:!0,children:[' (filter: "',Q,'")']}):null,W.length===0&&Hv(zW,{dimColor:!0,children:"No same-home clients found."}),W.map((z,U)=>HW(zv,{flexDirection:"column",children:[HW(zW,{inverse:U===K,color:U===K?V.colors.primary:void 0,children:[U===K?" \u25B8 ":" ",z.displayLabel]}),HW(zW,{dimColor:!0,children:[" ",z.clientId,z.self?" self \xB7 not sendable":""]})]},`${z.clientId}-${U}`)),Hv(zv,{marginTop:W.length>0?1:0,children:Hv(zW,{dimColor:!0,children:"type to search \u2191\u2193 navigate \u23CE select esc cancel"})})]})}var j90=E(()=>{E0()});import{jsx as h5,jsxs as DB}from"react/jsx-runtime";import{Box as b_,Text as m2,useInput as RT0}from"ink";function Fv({inviteToken:$,inviteLabel:Z,expiresAt:J,onClose:X}){let Y=e(),Q=process.stdin.isTTY??!1;return RT0((G,V)=>{if(V.return||V$(G,V))X()},{isActive:Q}),DB(b_,{flexDirection:"column",borderStyle:"round",borderColor:Y.colors.secondary,paddingX:1,paddingY:1,children:[h5(m2,{bold:!0,color:Y.colors.primary,children:"Internet Invite"}),Z?DB(m2,{children:["Label: ",h5(m2,{bold:!0,children:Z})]}):null,J?DB(m2,{dimColor:!0,children:["Expires: ",J]}):null,DB(b_,{marginTop:1,flexDirection:"column",children:[h5(m2,{children:"Share this token:"}),h5(m2,{children:$})]}),DB(b_,{marginTop:1,flexDirection:"column",children:[h5(m2,{children:"Join with:"}),h5(m2,{children:`aria pairing join ${$}`})]}),h5(b_,{marginTop:1,children:h5(m2,{dimColor:!0,children:"Press Enter or Esc to close."})})]})}var T90=E(()=>{E0()});import{jsx as x5,jsxs as wT0}from"react/jsx-runtime";import{useState as ST0}from"react";import{Box as I_,Text as OB,useInput as bT0}from"ink";function Dv({onSubmit:$,onCancel:Z,error:J}){let[X,Y]=ST0(""),Q=e(),G=process.stdin.isTTY??!1;return bT0((V,W)=>{if(V$(V,W)){Z();return}if(W.return){let K=X.trim();if(K.length>0)$(K);return}if(W.backspace||W.delete){Y((K)=>K.slice(0,-1));return}if(V&&!W.ctrl&&!W.meta)Y((K)=>K+V)},{isActive:G}),wT0(I_,{flexDirection:"column",borderStyle:"round",borderColor:Q.colors.secondary,paddingX:1,paddingY:1,children:[x5(OB,{bold:!0,color:Q.colors.primary,children:"Join Invite"}),x5(OB,{children:"Paste the invite token and press Enter."}),x5(I_,{marginTop:1,children:x5(OB,{children:X||" "})}),J?x5(I_,{marginTop:1,children:x5(OB,{color:Q.colors.error,children:J})}):null,x5(I_,{marginTop:1,children:x5(OB,{dimColor:!0,children:"Type token, Enter to join, Esc to cancel."})})]})}var C90=E(()=>{E0()});import{jsxs as tX,jsx as NB}from"react/jsx-runtime";import{useState as IT0,useRef as kT0}from"react";import{Box as LB,Text as eX,useInput as fT0}from"ink";function Ov({request:$,onAccept:Z,onReject:J}){let[X,Y]=IT0("accept"),Q=kT0(!1),G=e(),V=process.stdin.isTTY??!1,W=(K)=>`${K.slice(0,4)} ${K.slice(4,8)} ${K.slice(8,12)} ${K.slice(12,16)}`;return fT0((K,H)=>{if(Q.current)return;if(H.return){if(Q.current=!0,X==="accept")Z();else J();return}if(V$(K,H)){Q.current=!0,J();return}if(H.leftArrow||H.rightArrow||H.tab)Y((z)=>z==="accept"?"reject":"accept")},{isActive:V}),tX(LB,{flexDirection:"column",borderStyle:"round",borderColor:G.colors.warning,paddingX:2,paddingY:1,children:[tX(eX,{bold:!0,color:G.colors.warning,children:[" ","Connection Request"," "]}),NB(LB,{marginTop:1,children:tX(eX,{children:[NB(eX,{bold:!0,children:$.displayNameSnapshot??$.nodeId})," wants to connect"]})}),NB(LB,{children:tX(eX,{dimColor:!0,children:["Fingerprint: ",W($.principalFingerprint)]})}),tX(LB,{marginTop:1,gap:2,children:[tX(eX,{inverse:X==="accept",color:X==="accept"?G.colors.success:void 0,children:[" ","Accept"," "]}),tX(eX,{inverse:X==="reject",color:X==="reject"?G.colors.error:void 0,children:[" ","Reject"," "]})]}),NB(LB,{marginTop:1,children:NB(eX,{dimColor:!0,children:"\u2190\u2192 select \u23CE confirm esc reject"})})]})}var R90=E(()=>{E0()});import{execFile as yT0}from"child_process";import{existsSync as Lv,readdirSync as I90}from"fs";import{dirname as vT0,join as k_,resolve as hT0}from"path";import{fileURLToPath as xT0}from"url";function mT0(){let $=gT0;for(let Z=0;Z<10;Z++){let J=k_($,".comms","sounds","wav");if(Lv(J))return J;let X=hT0($,"..");if(X===$)break;$=X}return null}function H8($){if(!$Y)return[];try{return I90($Y).filter((Z)=>new RegExp($).test(Z)).map((Z)=>k_($Y,Z))}catch{return[]}}function w90($){if(!$Y)return[];let Z=k_($Y,"cloned");try{return I90(Z).filter((J)=>new RegExp($).test(J)).map((J)=>k_(Z,J))}catch{return[]}}function v3($){if($.length===0)return null;return $[Math.floor(Math.random()*$.length)]}function ZY($){Av=$}function k90(){return Av}function f90(){if(process.platform!=="darwin")return"unsupported on this platform";return qv()?"afplay (macOS)":"afplay unavailable"}function qv(){if(S90)return Nv;return S90=!0,Nv=process.platform==="darwin"&&Lv("/usr/bin/afplay"),Nv}function h3($){if(!Av||!$||!Lv($)||!qv())return!1;try{return yT0("afplay",[$],()=>{}),!0}catch{return!1}}function cT0(){let $=Date.now();if($-b90>uT0)AB=1;else AB++;if(b90=$,AB<=1)h3(v3(x3.acknowledge()));else if(AB===2)h3(v3(x3.annoyed()));else if(AB===3)h3(v3(x3.grumpy()));else h3(v3(x3.dark()))}function f_(){h3(v3(x3.readyToWork()))}function y90(){h3(v3(x3.fleetDown()))}function v90(){cT0()}function h90(){h3(v3(x3.questDone()))}function x90($){switch($.type){case"error":h3(v3(x3.error()));break;case"guardrail_rejected":h3(v3(x3.defeat()));break}}function g90(){return $Y!==null&&qv()}function m90(){return $Y!==null}function u90(){return h3(v3(x3.readyToWork()))}var gT0,$Y,Av=!0,S90=!1,Nv=!1,x3,b90=0,AB=0,uT0=15000;var Ev=E(()=>{gT0=vT0(xT0(import.meta.url));$Y=mT0();x3={acknowledge:()=>H8("^(peasant|orc|human|dwarf|elf|troll)_acknowledge"),annoyed:()=>H8("^(peasant|orc|goblin_sapper|human|troll|ogre)_selected"),grumpy:()=>H8("^(goblin_sapper|ogre|ogre_mage)_selected"),dark:()=>[...H8("^ogre_mage_selected"),...H8("^ogre_selected"),...H8("^troll_selected")],defeat:()=>w90("^defeat_"),error:()=>w90("^error_"),readyToWork:()=>[...H8("^peasant_selected"),...H8("^orc_selected"),...H8("^human_selected"),...H8("^dwarf_selected")],fleetUp:()=>[...H8("^orc_acknowledge"),...H8("^troll_acknowledge"),...H8("^ogre_acknowledge"),...H8("^human_acknowledge"),...H8("^knight_acknowledge")],fleetDown:()=>[...H8("^ogre_mage_acknowledge"),...H8("^ship_acknowledge"),...H8("^horde_ship_acknowledge")],questDone:()=>[...H8("^jobs_done"),...H8("^orc_work_completed"),...H8("^peasant_selected"),...H8("^orc_selected"),...H8("^human_selected"),...H8("^peasant_acknowledge"),...H8("^orc_acknowledge")]}});import{jsx as C6,jsxs as R1}from"react/jsx-runtime";import{useState as _v,useCallback as p90}from"react";import{Box as g3,Text as e4,useInput as pT0}from"ink";function Mv({onClose:$}){let Z=e(),J=Z.colors,[X,Y]=_v(0),[Q,G]=_v(k90()),[V,W]=_v("idle"),K=p90(()=>{let D=!Q;ZY(D);let O=W$();if(O.soundEnabled=D,R$(O),G(D),D)f_()},[Q]),H=p90(()=>{let D=Q;if(!D)ZY(!0);let O=u90();if(!D)ZY(!1);W(O?"playing":"unavailable"),setTimeout(()=>W("idle"),1500)},[Q]),z=process.stdin.isTTY??!1;pT0((D,O)=>{if(V$(D,O)){$();return}if(O.upArrow){Y((L)=>Math.max(0,L-1));return}if(O.downArrow){Y((L)=>Math.min(Pv.length-1,L+1));return}if(O.return){let L=Pv[X];if(L?.id==="toggle")K();else if(L?.id==="preview")H();return}},{isActive:z});let U=g90(),B=m90(),F=f90();return R1(g3,{flexDirection:"column",borderStyle:"round",borderColor:J.primary,paddingX:1,children:[R1(g3,{marginBottom:1,children:[C6(e4,{bold:!0,color:J.primary,children:"\uD83D\uDD14 Sound"}),R1(e4,{color:J.textMuted,children:[" ",Z.symbols.arrow," notification preferences"]})]}),R1(g3,{flexDirection:"column",marginBottom:1,children:[R1(g3,{children:[C6(e4,{color:J.textMuted,children:"Status "}),B?C6(e4,{bold:!0,color:Q?J.success:J.textMuted,children:Q?"\u25CF ON":"\u25CB OFF"}):C6(e4,{color:J.warning,children:"\u26A0 Sound files not found"})]}),R1(g3,{children:[C6(e4,{color:J.textMuted,children:"Engine "}),C6(e4,{color:U?J.text:J.warning,children:F})]}),R1(g3,{children:[C6(e4,{color:J.textMuted,children:"Assets "}),C6(e4,{color:B?J.text:J.warning,children:B?"Warcraft II pack found":"missing"})]})]}),C6(g3,{marginBottom:1,children:C6(e4,{color:J.border,children:"\u2500".repeat(40)})}),C6(g3,{flexDirection:"column",children:Pv.map((D,O)=>{let L=O===X,q=D.id==="toggle";return R1(g3,{paddingX:1,children:[R1(e4,{inverse:L,color:L?J.primary:J.text,children:[D.icon," ",q?Q?"Turn off":"Turn on":D.label]}),q&&L&&R1(e4,{color:J.textMuted,children:[" ",Q?"\u2192 disable notifications":"\u2192 enable notifications"]}),D.id==="preview"&&V==="playing"&&C6(e4,{color:J.success,children:" \u266A playing..."}),D.id==="preview"&&V==="unavailable"&&C6(e4,{color:J.warning,children:" \u26A0 preview unavailable"})]},D.id)})}),C6(g3,{marginTop:1,children:R1(e4,{color:J.textMuted,children:["\u2191\u2193"," navigate ","\u23CE"," select ","esc"," close"]})})]})}var Pv;var d90=E(()=>{E0();Ev();Z4();Pv=[{id:"toggle",label:"Toggle sounds",description:"Turn sound notifications on or off",icon:"\uD83D\uDD0A"},{id:"preview",label:"Preview sound",description:"Play a sample notification sound",icon:"\u25B6"}]});import{jsx as l8,jsxs as j4,Fragment as dT0}from"react/jsx-runtime";import{useState as lT0}from"react";import{Box as T4,Text as j9,useInput as aT0}from"ink";function iT0({loopStatus:$}){let J=e().colors;if(!$)return null;let Y={running:J.success,idle:J.info,starting:J.warning,stopping:J.warning,stopped:J.textMuted,error:J.error}[$]??J.text;return l8(j9,{color:Y,children:$})}function jv({onAction:$,onClose:Z,status:J,actionStatus:X}){let Y=e(),Q=Y.colors,G=nT0.filter((z)=>{if(z.showWhenRunning===void 0)return!0;return z.showWhenRunning===J.running}),[V,W]=lT0(0),K=Math.min(V,G.length-1),H=process.stdin.isTTY??!1;return aT0((z,U)=>{if(X)return;if(V$(z,U)){Z();return}if(U.upArrow){W((B)=>Math.max(0,B-1));return}if(U.downArrow){W((B)=>Math.min(G.length-1,B+1));return}if(U.return&&G.length>0){let B=G[K];if(B)$(B.id);return}},{isActive:H}),j4(T4,{flexDirection:"column",borderStyle:"round",borderColor:Q.primary,paddingX:1,children:[j4(T4,{marginBottom:1,children:[l8(j9,{bold:!0,color:Q.primary,children:"\u2699 Daemon"}),j4(j9,{color:Q.textMuted,children:[" ",Y.symbols.arrow," background service control"]})]}),j4(T4,{flexDirection:"column",marginBottom:1,children:[j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Status "}),l8(j9,{bold:!0,color:J.running?Q.success:Q.textMuted,children:J.running?"\u25CF Running":"\u25CB Stopped"})]}),J.running&&j4(dT0,{children:[J.loopStatus&&j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Loop "}),l8(iT0,{loopStatus:J.loopStatus})]}),J.port&&j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Port "}),l8(j9,{color:Q.text,children:J.port})]}),J.nodeId&&j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Node "}),l8(j9,{color:Q.text,children:J.nodeId.length>20?`${J.nodeId.slice(0,20)}\u2026`:J.nodeId})]}),J.runtimeId&&j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Runtime "}),l8(j9,{color:Q.text,children:J.runtimeId.length>20?`${J.runtimeId.slice(0,20)}\u2026`:J.runtimeId})]}),J.clients!==void 0&&j4(T4,{children:[l8(j9,{color:Q.textMuted,children:"Clients "}),j4(j9,{color:J.clients>0?Q.info:Q.textMuted,children:[J.clients," attached"]})]})]})]}),l8(T4,{marginBottom:1,children:l8(j9,{color:Q.border,children:"\u2500".repeat(44)})}),X&&l8(T4,{marginBottom:1,paddingX:1,children:j4(j9,{color:Q.warning,children:["\u27F3 ",X]})}),l8(T4,{flexDirection:"column",children:G.map((z,U)=>{let B=U===K;return j4(T4,{paddingX:1,flexDirection:"column",children:[l8(T4,{children:j4(j9,{inverse:B,color:B?z.id==="stop"?Q.error:Q.primary:Q.text,children:[z.icon," ",z.label]})}),B&&l8(T4,{paddingLeft:3,children:l8(j9,{color:Q.textMuted,children:z.description})})]},z.id)})}),l8(T4,{marginTop:1,children:j4(j9,{color:Q.textMuted,children:["\u2191\u2193"," navigate ","\u23CE"," select ","esc"," close"]})})]})}var nT0;var l90=E(()=>{E0();nT0=[{id:"start",label:"Start daemon",description:"Launch the shared background daemon process",icon:"\u25B6",showWhenRunning:!1},{id:"stop",label:"Stop daemon",description:"Gracefully stop the shared daemon process",icon:"\u25A0",showWhenRunning:!0},{id:"restart",label:"Restart daemon",description:"Restart the shared daemon process cleanly",icon:"\u21BB",showWhenRunning:!0}]});var a90=E(()=>{K90();z90();D90();O90();L90();A90();E90();P90();j90();T90();C90();R90();d90();l90()});var Tv=E(()=>{jw();ww();rl();Ua();Yr();LA();Gb();Wb();zr();Ur();Br();IG();Fr();D80();WS();O80();L80();E80();HS();T80();VB();iX();I5();a90()});import{jsxs as BW,jsx as UW}from"react/jsx-runtime";import{useEffect as oT0,useState as rT0,useRef as n90}from"react";import{Box as y_,Text as JY,useInput as sT0}from"ink";function tT0({status:$}){let Z=e();switch($){case"connected":return BW(JY,{color:Z.colors.success,children:["\u2713"," connected"]});case"expired":return BW(JY,{color:Z.colors.error,children:["\u2717"," expired"]});case"none":return BW(JY,{color:Z.colors.textMuted,children:["\xB7"," not connected"]})}}function i90({providers:$,onSelect:Z,onCancel:J,isActive:X=!0}){let Y=e(),[Q,G]=rT0(0),V=n90(0),W=n90(!1);oT0(()=>{W.current=!1,V.current=0,G(0)},[$]);let K=(z)=>{G((U)=>{let B=z(U);return V.current=B,B})},H=process.stdin.isTTY??!1;return sT0((z,U)=>{if(W.current)return;if(U.upArrow)K((B)=>Math.max(0,B-1));else if(U.downArrow)K((B)=>Math.min($.length-1,B+1));else if(U.return)W.current=!0,Z($[V.current]);else if(V$(z,U))W.current=!0,J()},{isActive:X&&H}),BW(y_,{flexDirection:"column",borderStyle:"round",borderColor:Y.colors.secondary,paddingX:1,paddingY:1,width:56,children:[UW(y_,{marginBottom:1,children:UW(JY,{bold:!0,children:"Select a provider:"})}),$.map((z,U)=>{let B=U===Q,F=B?"\u25B8":" ";return BW(y_,{gap:1,children:[UW(JY,{color:B?Y.colors.primary:void 0,children:F}),UW(JY,{color:B?Y.colors.primary:void 0,bold:B,children:z.label.padEnd(28)}),UW(tT0,{status:z.status})]},z.id)}),UW(y_,{marginTop:1,children:BW(JY,{color:Y.colors.textMuted,children:["\u2191\u2193"," Navigate Enter Select Esc Cancel"]})})]})}var o90=E(()=>{E0()});import{jsxs as u2,jsx as C4}from"react/jsx-runtime";import{useEffect as eT0,useRef as Cv,useState as v_}from"react";import{Box as w1,Text as S1,useInput as $C0}from"ink";function r90({provider:$,onCancel:Z,isActive:J=!0,onComplete:X,authorizeUrl:Y,expectedState:Q,onCodeSubmit:G}){let V=e(),[W,K]=v_("starting"),[H,z]=v_(""),[U,B]=v_(""),[F,D]=v_(""),O=Cv(null),L=Cv(!1),q=Cv(!1),A=process.stdin.isTTY??!1;$C0((_,M)=>{if(V$(_,M))Z()},{isActive:J&&A}),eT0(()=>{if(L.current)return;L.current=!0,K("waiting");let _=new Promise((C)=>{O.current=C}),M=(C)=>{z(C),K("manual")};if(Y&&G){z(Y),dN($,{authorizeUrl:Y,expectedState:Q,onManualFallback:M,manualCodePromise:_}).then(async(C)=>{if(q.current)return;K("exchanging"),await G(C),q.current=!0,K("success")},(C)=>{if(q.current)return;let k=C instanceof Error?C.message:String(C);B(k),K("error")});return}mR($,{onManualFallback:M,manualCodePromise:_}).then((C)=>{if(q.current)return;if(C.success)K("success"),q.current=!0,setTimeout(()=>{X?.({success:!0,message:C.message})},1000);else B(C.message),K("error")},(C)=>{if(q.current)return;let k=C instanceof Error?C.message:String(C);B(k),K("error")})},[Q,Y,G,X,$]);let N=(_)=>{let M=_.trim();if(!M)return;if(K("exchanging"),O.current)O.current(M),O.current=null};return u2(w1,{flexDirection:"column",borderStyle:"round",borderColor:V.colors.secondary,paddingX:1,paddingY:1,width:64,children:[C4(w1,{marginBottom:1,children:u2(S1,{bold:!0,children:["Sign in to ",$]})}),(W==="starting"||W==="waiting")&&u2(w1,{gap:1,children:[C4(VV,{}),C4(S1,{children:"Opening browser to sign in..."})]}),W==="manual"&&u2(w1,{flexDirection:"column",children:[C4(S1,{children:"Open this URL in your browser:"}),C4(w1,{marginTop:1,children:C4(S1,{color:V.colors.primary,wrap:"wrap",children:H})}),C4(w1,{marginTop:1,children:C4(S1,{children:"Paste the authorization code below:"})}),u2(w1,{marginTop:1,children:[C4(S1,{color:V.colors.textMuted,children:"> "}),C4(PG,{value:F,onChange:D,onSubmit:N,placeholder:"paste code here",focus:J,showCursor:!0})]})]}),W==="exchanging"&&u2(w1,{gap:1,children:[C4(VV,{}),C4(S1,{children:"Exchanging code for tokens..."})]}),W==="success"&&u2(S1,{color:V.colors.success,children:["\u2713"," Logged in to ",$]}),W==="error"&&u2(w1,{flexDirection:"column",children:[u2(S1,{color:V.colors.error,children:["\u2717"," ",U]}),C4(w1,{marginTop:1,children:C4(S1,{color:V.colors.textMuted,children:"Press Esc to dismiss"})})]}),W!=="success"&&W!=="error"&&C4(w1,{marginTop:1,children:C4(S1,{color:V.colors.textMuted,children:"Esc Cancel"})})]})}var s90=E(()=>{O6();E0();LA();ow()});import{jsxs as DW,jsx as c2}from"react/jsx-runtime";import{useEffect as ZC0,useRef as t90,useState as JC0}from"react";import{Box as FW,Text as g5,useInput as XC0}from"ink";function YC0({status:$}){let Z=e();if($==="connected")return DW(g5,{color:Z.colors.success,children:["\u2713"," connected"]});if($==="available")return DW(g5,{color:Z.colors.success,children:["\u2713"," available"]});return c2(g5,{color:Z.colors.textMuted,children:"\xB7"})}function OW({options:$,onSelect:Z,onCancel:J,title:X="Select login method:",isActive:Y=!0}){let Q=e(),[G,V]=JC0(0),W=t90(0),K=t90(!1),H=process.stdin.isTTY??!1;ZC0(()=>{K.current=!1,W.current=0,V(0)},[$]);let z=(U)=>{V((B)=>{let F=U(B);return W.current=F,F})};return XC0((U,B)=>{if(K.current)return;if(B.upArrow)z((F)=>Math.max(0,F-1));else if(B.downArrow)z((F)=>Math.min($.length-1,F+1));else if(B.return)K.current=!0,Z($[W.current]);else if(V$(U,B))K.current=!0,J()},{isActive:Y&&H}),DW(FW,{flexDirection:"column",borderStyle:"round",borderColor:Q.colors.secondary,paddingX:1,paddingY:1,width:64,children:[c2(FW,{marginBottom:1,children:c2(g5,{bold:!0,children:X})}),$.map((U,B)=>{let F=B===G,D=F?"\u25B8":" ";return DW(FW,{flexDirection:"column",children:[DW(FW,{gap:1,children:[c2(g5,{color:F?Q.colors.primary:void 0,children:D}),c2(g5,{color:F?Q.colors.primary:void 0,bold:F,children:U.label}),c2(YC0,{status:U.status})]}),U.description&&c2(FW,{marginLeft:3,children:c2(g5,{color:Q.colors.textMuted,dimColor:!0,children:U.description})})]},U.id)}),c2(FW,{marginTop:1,children:DW(g5,{color:Q.colors.textMuted,children:["\u2191\u2193"," Navigate Enter Select Esc Cancel"]})})]})}var Rv=E(()=>{E0()});import{jsx as QC0}from"react/jsx-runtime";function e90({options:$,onSelect:Z,onCancel:J,isActive:X=!0}){return QC0(OW,{options:$,onSelect:Z,onCancel:J,title:"Select Anthropic login method:",isActive:X})}var $40=E(()=>{Rv()});import{jsx as m5,jsxs as wv}from"react/jsx-runtime";import{useRef as GC0,useState as VC0}from"react";import{Box as qB,Text as NW,useInput as WC0}from"ink";function LW({title:$,hint:Z,onSubmit:J,onCancel:X,isActive:Y=!0}){let Q=e(),[G,V]=VC0(""),W=GC0(!1),K=process.stdin.isTTY??!1;WC0((z,U)=>{if(W.current)return;if(V$(z,U)){W.current=!0,X();return}if(U.return){if(G.trim().length>0)W.current=!0,J(G.trim());return}if(U.backspace||U.delete){V((B)=>B.slice(0,-1));return}if(U.upArrow||U.downArrow||U.leftArrow||U.rightArrow||U.tab)return;if(z&&!U.ctrl&&!U.meta)V((B)=>B+z)},{isActive:Y&&K});let H=G.length>0?G.slice(0,4)+"\u2022".repeat(Math.max(0,G.length-4)):"";return wv(qB,{flexDirection:"column",borderStyle:"round",borderColor:Q.colors.secondary,paddingX:1,paddingY:1,width:64,children:[m5(qB,{marginBottom:1,children:m5(NW,{bold:!0,children:$})}),Z&&m5(qB,{marginBottom:1,children:m5(NW,{color:Q.colors.textMuted,dimColor:!0,children:Z})}),wv(qB,{children:[wv(NW,{color:Q.colors.primary,children:["\u25B8"," "]}),m5(NW,{children:H||" "}),m5(NW,{color:Q.colors.textMuted,children:"_"})]}),m5(qB,{marginTop:1,children:m5(NW,{color:Q.colors.textMuted,children:"Enter Submit Esc Cancel"})})]})}var Z40=E(()=>{E0()});function J40($,Z,J={}){let X=J.userName||"User",Y=[],Q=new Map;function G(V,W){for(let K of V.content)switch(K.type){case"text":{if(V.role==="user"){let H=YS(K.text);for(let z of H)if(z.type==="image"&&jL(z.dataUri))Y.push({kind:"user-image",id:`${V.id}-image-${Y.length}`,dataUri:z.dataUri,userName:X,committed:W});else if(z.type==="text"&&z.text.length>0)Y.push({kind:"user-message",id:`${V.id}-text-${Y.length}`,text:z.text,userName:X,committed:W})}else if(V.role==="system"&&K.text.length>0)Y.push({kind:"user-message",id:`${V.id}-text-${Y.length}`,text:K.text,userName:"System",committed:W});else if(V.role==="assistant"&&K.text.trim())Y.push({kind:"assistant-text",id:`${V.id}-text-${Y.length}`,text:K.text,arion:V.arion?{name:V.arion.name,emoji:V.arion.emoji||"\uD83E\uDD8B",color:V.arion.color||"cyan"}:void 0,committed:W});break}case"thinking":{if(K.content?.trim())Y.push({kind:"thinking",id:`${V.id}-thinking-${Y.length}`,content:K.content,durationSec:K.durationMs!=null?K.durationMs/1000:void 0,arion:V.arion?{name:V.arion.name,emoji:V.arion.emoji||"\uD83E\uDD8B",color:V.arion.color||"cyan"}:void 0,committed:W});break}case"tool_use":{let H={kind:"tool-execution",id:`${V.id}-tool-${K.id}`,toolName:K.name,input:K.arguments,output:void 0,status:"pending",durationMs:void 0,usage:void 0,committed:W};Q.set(K.id,H),Y.push(H);break}case"tool_result":{let H=Q.get(K.toolUseId);if(H){if(H.output=K.resultData??K.content,H.status=K.status==="error"?"error":"complete",K.status==="error")H.error=typeof K.content==="string"?K.content:"Tool error";if(K.durationMs!=null)H.durationMs=K.durationMs;if(K.usage)H.usage={inputTokens:K.usage.inputTokens??0,outputTokens:K.usage.outputTokens??0};if(!W)H.committed=!1}break}case"handoff":{Y.push({kind:"handoff",id:`${V.id}-handoff-${Y.length}`,target:K.target,direction:K.direction==="from"?"incoming":"outgoing",committed:W});break}case"error":{Y.push({kind:"error",id:`${V.id}-error-${Y.length}`,message:K.content,suggestion:K.suggestion,committed:W});break}}}for(let V of $)G(V,!0);for(let V of Z)G(V,!1);return Y}var X40=E(()=>{TL()});function Q40($,Z){switch(Z.type){case"STREAM_START":return{kind:"composing",verb:Z.verb};case"THINKING_START":if($.kind!=="composing"&&$.kind!=="idle")return $;return{kind:"thinking",verb:Z.verb,startedAt:Z.startedAt};case"THINKING_END":if($.kind!=="thinking")return $;return{kind:"composing",verb:Z.verb,thoughtForSeconds:Z.durationSeconds};case"TOOL_START":{let J=new Map($.kind==="tool_running"?$.tools:[]);return J.set(Z.callId,Z.displayName),{kind:"tool_running",tools:J}}case"TOOL_END":{if($.kind!=="tool_running")return $;let J=new Map($.tools);if(J.delete(Z.callId),J.size===0)return{kind:"composing",verb:Z.verb};return{kind:"tool_running",tools:J}}case"STREAM_END":return{kind:"idle"};default:return $}}var Y40;var G40=E(()=>{Y40={kind:"idle"}});import{useReducer as KC0,useEffect as Sv,useRef as V40}from"react";function W40($,Z){let[J,X]=KC0(Q40,Y40),Y=V40(!1);Sv(()=>{if(Z&&!Y.current)X({type:"STREAM_START",verb:W1()});else if(!Z&&Y.current)X({type:"STREAM_END"});Y.current=Z},[Z]);let Q=V40(null);return Sv(()=>{if($!==Q.current){if(Q.current!==null)X({type:"STREAM_END"});Q.current=$}},[$]),Sv(()=>{if(!$)return;let G=()=>X({type:"THINKING_START",verb:W1(),startedAt:Date.now()}),V=(H)=>X({type:"THINKING_END",verb:W1(),durationSeconds:Math.round(H.durationMs/1000)}),W=(H)=>X({type:"TOOL_START",callId:H.id,displayName:Na(H.name,!0)}),K=(H)=>X({type:"TOOL_END",callId:H.id,verb:W1()});return $.on("thinking_start",G),$.on("thinking_end",V),$.on("tool_start",W),$.on("tool_result",K),()=>{$.off("thinking_start",G),$.off("thinking_end",V),$.off("tool_start",W),$.off("tool_result",K)}},[$]),J}var K40=E(()=>{G40();CG()});function h_($){let Z=typeof $.nodeId==="string"?$.nodeId.trim():"",J=typeof $.transport==="string"?$.transport:"unknown";if(Z)return`node:${Z}`;let X=typeof $.principalFingerprint==="string"?$.principalFingerprint.trim():"";if(X)return`principal:${X}`;return`endpoint:${J}:${$.host}:${$.port}:${$.displayNameSnapshot}`}function H40($,Z){let J=new Map;for(let X of[...$,...Z]){let Y=h_(X);if(!J.has(Y))J.set(Y,X)}return[...J.values()]}import{jsx as Q$,jsxs as XY,Fragment as HC0}from"react/jsx-runtime";import{useState as u5,useCallback as p2,useMemo as c5,useEffect as GZ}from"react";import{Box as m3,Static as zC0,Text as d2,useApp as UC0,useInput as BC0}from"ink";function bv({session:$,model:Z,maxContextTokens:J,banner:X,messages:Y=[],previewMessages:Q=[],isStreaming:G=!1,queuedMessage:V,onCancelQueuedMessage:W,responseTime:K,commands:H=[],arions:z=[],models:U=[],memories:B=[],memoryBrowserMode:F="browse",isLoadingMemories:D=!1,userName:O,metrics:L,displayMode:q="standard",displayConfig:A,showThinking:N=!0,showCosts:_=!0,showTraces:M=!1,spans:C=[],pipelineTiming:k,activeArion:R,onSubmit:a,onCommand:o,onSelectArion:p,onSelectModel:w,onSelectTheme:m,onSelectMemory:b,onOpenMemoryBrowser:S,onToggleThinking:j,onToggleCosts:I,onToggleTraces:v,onCycleDisplayMode:u,sessions:T=[],onSelectSession:f,onLoadSessions:g,onSearchSessions:l,onLoadMoreSessions:$0,staticRenderEpoch:Y0,openSessionOverlaySignal:x,openThemeOverlaySignal:s,openSoundOverlaySignal:J0,openDaemonOverlaySignal:X0,daemonStatus:n,daemonActionStatus:H0,onDaemonAction:z0,connectionState:O0="connected",inputHistory:R0=[],onSaveInput:b0,obsCtx:Z0,onCancel:K0,approvalRequest:B0,onApprovalChoice:F0,effortLevel:V0,showAutonomySelector:D0,autonomyLevel:C0,onAutonomySelect:_0,onAutonomyCancel:L0,onCycleAutonomy:M0,onCycleEffort:u0,loginPickerProviders:H$,onLoginProviderSelect:A0,onLoginPickerCancel:c0,copilotSourceOptions:z$,onCopilotSourceSelect:r0,onCopilotSourceCancel:G$,oauthProvider:q$,oauthAuthorizeUrl:n8,oauthExpectedState:m$,onOAuthComplete:x$,onOAuthCodeSubmit:W9,onOAuthCancel:b4,copilotDeviceProvider:o3,copilotDeviceProfileLabel:KK,copilotDeviceVerificationUri:HK,copilotDeviceUserCode:p1,onCopilotDeviceComplete:d1,onCopilotDeviceApprove:zK,onCopilotDeviceCancel:Q7,anthropicMethodOptions:UK,onAnthropicMethodSelect:eF,onAnthropicMethodCancel:KJ,anthropicKeyInputVisible:$D,onAnthropicKeySubmit:fY,onAnthropicKeyCancel:ZD,anthropicSetupTokenVisible:yY,onAnthropicSetupTokenSubmit:JD,onAnthropicSetupTokenCancel:vY,openaiMethodOptions:BK,onOpenAIMethodSelect:hY,onOpenAIMethodCancel:XD,openaiKeyInputVisible:xY,onOpenAIKeySubmit:YD,onOpenAIKeyCancel:gY,googleMethodOptions:mY,onGoogleMethodSelect:uY,onGoogleMethodCancel:QD,googleKeyInputVisible:cY,onGoogleKeySubmit:GD,onGoogleKeyCancel:pY,authInteractionOptions:FK,authInteractionTitle:DK,onAuthInteractionSelect:VD,onAuthInteractionCancel:dY,authInteractionInput:lY,onAuthInteractionInputSubmit:aY,onAuthInteractionInputCancel:WD,nearbyPeers:G7=[],localClients:KD=[],onSelectPeer:OK,onSelectClient:Jj,onPeerCancel:HD,onClientsCancel:Xj,openPeersOverlaySignal:nY,openClientsOverlaySignal:zD,inviteShare:l1,onInviteShareClose:Yj,openJoinInviteOverlaySignal:iY,onJoinInviteSubmit:NK,onJoinInviteCancel:HJ,joinInviteError:Qj,incomingPairRequest:V7,onAcceptPairRequest:Gj,onRejectPairRequest:UD,onCancelPairing:r3,openMessageEditOverlaySignal:LK,editableMessages:W7,onEditMessage:Vj,prefillInput:AK,onPrefillConsumed:Wj,meshMessageCount:Kj=0,runtimeSocket:lm=null,clientId:am=null,clientAuthToken:nm=null,resolveCredentials:qK}){let{exit:zJ}=UC0(),{columns:BD,rows:Hj}=Z9(),[EK,X6]=u5(""),[g0,Z$]=u5("none"),[oY,rY]=u5(""),[_K,PK]=u5(""),[d9,K7]=u5("become"),[FD,a1]=u5("all"),[DD,sY]=u5(!1),UJ=Boolean(FK||UK||BK||mY),OD=Boolean(lY||$D||yY||xY||cY),BJ=Boolean(q$||o3||H$||z$);GZ(()=>{if(UJ)Z$("login-method");else if(OD)Z$("login-input");else if(BJ)Z$("login");else if(g0==="login"||g0==="login-method"||g0==="login-input")Z$("none")},[UJ,OD,BJ]);let MK=p2(()=>{Z$("session"),setTimeout(()=>g?.(),0)},[g]);GZ(()=>{if(x===void 0)return;MK()},[x,MK]),GZ(()=>{if(s===void 0)return;Z$("theme")},[s]),GZ(()=>{if(J0===void 0)return;Z$("sound")},[J0]),GZ(()=>{if(X0===void 0)return;Z$("daemon")},[X0]);let[tY,eY]=u5([]);GZ(()=>{if(nY===void 0)return;eY([...G7]),Z$("peers")},[nY]),GZ(()=>{if(zD===void 0)return;Z$("clients")},[zD]),GZ(()=>{if(l1)Z$("invite-share");else if(g0==="invite-share")Z$("none")},[l1,g0]),GZ(()=>{if(iY===void 0)return;Z$("join-invite")},[iY]),GZ(()=>{if(LK===void 0)return;if(W7&&W7.length>0)Z$("message-edit")},[LK]),GZ(()=>{if(AK!==void 0)X6(AK),Wj?.()},[AK]),GZ(()=>{if(g0!=="peers")return;eY((N0)=>{let T0=new Set(N0.map(h_)),Z8=G7.filter((t3)=>!T0.has(h_(t3)));return Z8.length>0?[...N0,...Z8]:N0})},[g0,G7]),GZ(()=>{if(V7&&g0==="none"&&!G)Z$("pair-request");else if(!V7&&g0==="pair-request")Z$("none")},[V7,g0,G]);let zj=process.stdin.isTTY??!1;BC0((N0,T0)=>{if(N0==="\x03"||T0.ctrl&&N0==="c"){if(B0)return;if(G&&K0){K0();return}zJ()}if(V$(N0,T0)){if(B0)return;if(g0!=="none"){BZ();return}if(r3){r3();return}if(G&&V&&W)W();else if(G&&K0)K0();else X6("");return}if(T0.upArrow&&G&&V&&W){W();return}if(T0.ctrl&&N0==="\x1C"&&g0==="none"){u?.();return}if(T0.ctrl&&N0==="t"&&g0==="none"){j?.();return}if(T0.ctrl&&N0==="g"&&g0==="none"){I?.();return}if(T0.ctrl&&N0==="s"&&g0==="none"){v?.();return}if(T0.tab&&N0!=="\t"&&g0==="none"){M0?.();return}if(T0.ctrl&&N0==="\x05"&&g0==="none"){u0?.();return}if(T0.ctrl&&N0==="\x1F"&&g0==="none"){sY((Z8)=>!Z8);return}},{isActive:zj});let zZ=$.getPrimary(),im=zZ?.name||"ARIA",Uj=zZ?.color||"cyan",Bj=zZ?.emoji||"\uD83E\uDD8B",UZ=W40(Z0??null,G??!1),$Q=(g0==="none"&&!B0?4:0)+(!A||A.showStatusBar?1:0),ND=Math.max(Hj-$Q,1),ZQ=p2((N0,T0)=>{if(N0==="command")Z$("command"),rY(T0);else if(N0==="mention")Z$("arion"),PK(T0),K7("mention")},[]),Fj=p2((N0)=>{Z$("none"),X6("");let T0=N0.requiresArgs===!0||(N0.args?.length??0)>0;if(N0.name==="become")Z$("arion"),K7("become"),a1("all");else if(N0.name==="rest")Z$("arion"),K7("rest"),a1("active");else if(N0.name==="wake")Z$("arion"),K7("wake"),a1("resting");else if(N0.name==="model")Z$("model");else if(N0.name==="theme")Z$("theme");else if(N0.name==="sound")Z$("sound");else if(N0.name==="daemon")o(N0.name);else if(N0.name==="memories")S?.("browse"),Z$("memory");else if(N0.name==="forget")S?.("forget"),Z$("memory");else if(N0.name==="resume")MK();else if(N0.name==="exit")zJ();else if(T0){X6(`/${N0.name} `);return}else o(N0.name)},[o,S,zJ]),b6=p2((N0)=>{if(Z$("none"),d9==="mention"){let T0=EK.replace(/@\w*$/,"");X6(T0+"@"+N0.name+" ")}else p?.(N0.name,d9)},[d9,EK,p]),Dj=p2((N0,T0)=>{Z$("none"),w?.(N0.value??N0.name,T0)},[w]),Oj=p2((N0)=>{Z$("none"),m?.(N0)},[m]),Nj=p2((N0)=>{Z$("none"),b?.(N0)},[b]),BZ=p2(()=>{if(Z$("none"),d9!=="mention")X6("");rY(""),PK("")},[d9]),H7=p2((N0)=>{Z$("none"),X6(N0),rY("")},[]),LD=c5(()=>J40(Y,Q,{userName:O}),[Y,Q,O]),I6=c5(()=>Jb(LD,q),[LD,q]),JQ=c5(()=>I6.filter((N0)=>N0.committed),[I6]),XQ=c5(()=>I6.filter((N0)=>!N0.committed),[I6]),A8=G&&V?V:null,FZ=A8!==null,cZ=UZ.kind!=="idle",M$=Math.max(BD-4,20),z7=c5(()=>{if(!A8)return 0;return Math.max(U9(A8,{width:M$}).split(`
4719
- `).length,1)},[M$,A8]),YQ=(FZ?4+z7:0)+(cZ?2:0),DZ=Math.max(ND-YQ,1),s3=c5(()=>{let N0=new Map,T0="";for(let Z8 of I6){let t3=Z8.kind==="user-message"||Z8.kind==="user-image"?`user:${Z8.userName}`:Z8.kind==="assistant-text"?`assistant:${Z8.arion?.name??"ARIA"}`:Z8.kind==="thinking"?`assistant:${Z8.arion?.name??"ARIA"}`:Z8.kind==="tool-execution"?"tool":Z8.kind,QQ=Z8.kind==="user-message"||Z8.kind==="user-image"||Z8.kind==="assistant-text"||Z8.kind==="thinking";if(N0.set(Z8.id,QQ&&t3!==T0),QQ)T0=t3}return N0},[I6]),Lj=c5(()=>{let N0=new Map;for(let T0=0;T0<I6.length;T0++){let Z8=I6[T0],t3=T0>0?I6[T0-1]:void 0,QQ=Z8.kind==="tool-execution"&&t3?.kind==="tool-execution";N0.set(Z8.id,T0>0&&!QQ)}return N0},[I6]),om=c5(()=>{let N0=[];if(X)N0.push({id:"header",_kind:"banner"});for(let T0 of JQ)N0.push({...T0,_kind:"item"});return N0},[X,JQ]);return XY(HC0,{children:[Q$(zC0,{items:om,children:(N0)=>{if(N0._kind==="banner")return Q$(m3,{width:"100%",justifyContent:"center",children:X},N0.id);return Q$(m3,{flexDirection:"column",marginTop:Lj.get(N0.id)?1:0,children:Q$(NA,{item:N0,displayMode:q,showPrefix:s3.get(N0.id)??!1})},N0.id)}},`static-${Y0}`),XY(m3,{flexDirection:"column",width:"100%",children:[XY(m3,{flexDirection:"column",maxHeight:ND,justifyContent:"flex-end",overflowY:"hidden",children:[XQ.length>0&&Q$(m3,{flexDirection:"column",maxHeight:DZ,overflowY:"hidden",children:XQ.map((N0)=>Q$(m3,{flexDirection:"column",marginTop:Lj.get(N0.id)?1:0,children:Q$(NA,{item:N0,displayMode:q,showPrefix:s3.get(N0.id)??!1,previewTailLines:DZ})},N0.id))}),FZ&&XY(m3,{marginTop:1,flexDirection:"column",children:[Q$(ML,{param:{type:"text",text:A8??""},userName:O??"User",columns:BD,showPrefix:!0,addMargin:!1}),Q$(d2,{dimColor:!0,children:" \u2191 queued \u2014 press esc or \u2191 to cancel and edit"})]}),M&&C.length>0&&Q$(qy,{spans:C}),A?.showPipelineTiming&&k&&k.phases.length>0&&Q$(Ey,{report:k}),DD&&XY(m3,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,marginY:1,children:[Q$(d2,{bold:!0,dimColor:!0,children:"Hotkeys"}),Q$(d2,{dimColor:!0,children:" Ctrl+\\ \u2014 cycle display mode"}),Q$(d2,{dimColor:!0,children:" Ctrl+t \u2014 toggle thinking blocks"}),Q$(d2,{dimColor:!0,children:" Ctrl+g \u2014 toggle cost display"}),Q$(d2,{dimColor:!0,children:" Ctrl+e \u2014 cycle effort level"}),Q$(d2,{dimColor:!0,children:" Ctrl+s \u2014 toggle trace waterfall"}),Q$(d2,{dimColor:!0,children:" Escape \u2014 cancel streaming / close overlay / clear input"}),Q$(d2,{dimColor:!0,children:" Ctrl+/ \u2014 toggle this help"})]}),cZ&&Q$(Py,{state:UZ.kind==="thinking"?"thinking":"composing",elapsedSeconds:Math.floor(L?.wallTimeSeconds??0),totalTokens:L?.totalTokens??0,thoughtForSeconds:UZ.kind==="composing"?UZ.thoughtForSeconds:void 0,currentVerb:UZ.kind==="tool_running"?[...new Set(UZ.tools.values())].join(" \xB7 "):UZ.verb.present})]}),XY(m3,{flexDirection:"column",flexShrink:0,children:[D0&&_0&&L0&&Q$(Ly,{currentLevel:C0??T5.autonomy,onSelect:_0,onCancel:L0}),H$&&A0&&c0&&Q$(i90,{providers:H$,onSelect:A0,onCancel:c0}),z$&&r0&&G$&&Q$(Vb,{options:z$,onSelect:r0,onCancel:G$}),g0==="login-method"&&FK&&VD&&dY&&Q$(OW,{options:FK,onSelect:(N0)=>VD(N0.id),onCancel:dY,title:DK??"Choose an option:",isActive:g0==="login-method"}),g0==="login-method"&&UK&&eF&&KJ&&Q$(e90,{options:UK,onSelect:eF,onCancel:KJ,isActive:g0==="login-method"}),g0==="login-input"&&lY&&aY&&WD&&Q$(LW,{title:lY.title,hint:lY.hint,onSubmit:aY,onCancel:WD,isActive:g0==="login-input"}),g0==="login-input"&&$D&&fY&&ZD&&Q$(LW,{title:"Enter Anthropic API key",hint:"Paste your sk-ant-api03-* key",onSubmit:fY,onCancel:ZD,isActive:g0==="login-input"}),g0==="login-input"&&yY&&JD&&vY&&Q$(LW,{title:"Enter setup token",hint:"From `claude setup-token` or admin provisioning",onSubmit:JD,onCancel:vY,isActive:g0==="login-input"}),g0==="login-method"&&BK&&hY&&XD&&Q$(OW,{options:BK,onSelect:hY,onCancel:XD,title:"Select OpenAI login method:",isActive:g0==="login-method"}),g0==="login-input"&&xY&&YD&&gY&&Q$(LW,{title:"Enter OpenAI API key",hint:"Paste your sk-* key",onSubmit:YD,onCancel:gY,isActive:g0==="login-input"}),g0==="login-method"&&mY&&uY&&QD&&Q$(OW,{options:mY,onSelect:uY,onCancel:QD,title:"Select Google login method:",isActive:g0==="login-method"}),g0==="login-input"&&cY&&GD&&pY&&Q$(LW,{title:"Enter Google API key",hint:"Paste your AIza* key",onSubmit:GD,onCancel:pY,isActive:g0==="login-input"}),g0==="login"&&q$&&x$&&b4&&Q$(r90,{provider:q$,onCancel:b4,...n8&&W9?{authorizeUrl:n8,expectedState:m$??void 0,onCodeSubmit:W9}:{onComplete:x$},isActive:g0==="login"}),g0==="login"&&o3&&d1&&Q7&&Q$(Qb,{provider:o3,profileLabel:KK??void 0,...HK&&p1&&zK?{verificationUri:HK,userCode:p1,onApprove:zK}:{onComplete:d1},onCancel:Q7}),XY(m3,{flexDirection:"column",children:[g0==="command"&&Q$(oy,{commands:H,initialFilter:oY,onSelect:Fj,onHandOffInput:H7,onCancel:BZ}),g0==="arion"&&Q$(ry,{arions:z,initialFilter:_K,statusFilter:FD,onSelect:b6,onCancel:BZ}),g0==="model"&&Q$(ty,{models:U,effortLevel:V0,onSelect:Dj,onCancel:BZ}),g0==="theme"&&Q$(Gv,{onSelect:Oj,onCancel:BZ}),g0==="sound"&&Q$(Mv,{onClose:()=>Z$("none")}),g0==="daemon"&&Q$(jv,{status:n??{running:!1},actionStatus:H0,onAction:(N0)=>z0?.(N0),onClose:()=>Z$("none")}),g0==="invite-share"&&l1&&Q$(Fv,{inviteToken:l1.inviteToken,inviteLabel:l1.inviteLabel,expiresAt:l1.expiresAt,onClose:()=>{Z$("none"),Yj?.()}}),g0==="join-invite"&&Q$(Dv,{error:Qj,onSubmit:(N0)=>{Z$("none"),NK?.(N0)},onCancel:()=>{Z$("none"),HJ?.()}}),g0==="memory"&&Q$($v,{memories:B,mode:F,isLoading:D,onSelect:Nj,onCancel:BZ}),g0==="peers"&&Q$(Kv,{peers:tY.length>0?tY:G7,sameHomeClientsAvailable:KD.length>0,onSelect:(N0)=>{Z$("none"),OK?.(N0)},onCancel:BZ}),g0==="clients"&&Q$(Bv,{clients:KD,onSelect:(N0)=>{Z$("none"),X6(`/send ${N0.clientId} `),Jj?.(N0)},onCancel:()=>{Z$("none"),Xj?.()}}),g0==="pair-request"&&V7&&Q$(Ov,{request:V7,onAccept:()=>{Z$("none"),Gj?.()},onReject:()=>{Z$("none"),UD?.()}}),g0==="session"&&Q$(Jv,{sessions:T,onSelect:(N0)=>{Z$("none"),f?.(N0)},onCancel:BZ,onSearch:(N0)=>l?.(N0),onPageChange:(N0)=>$0?.(N0)}),g0==="message-edit"&&W7&&Q$(Yv,{messages:W7,onSelect:(N0,T0)=>{Z$("none"),Vj?.(N0,T0)},onCancel:BZ}),g0==="none"&&!B0&&Q$($S,{userName:O,value:EK,onChange:X6,onSubmit:a,onTrigger:ZQ,onExit:()=>zJ(),history:R0,onSaveInput:b0,focus:g0==="none",isStreaming:G,onDoubleEscape:()=>{if(W7&&W7.length>0)return Z$("message-edit"),!0;return!1}})]}),(!A||A.showStatusBar)&&Q$(Mw,{arion:{name:im,emoji:Bj,color:Uj,traits:zZ?.personality?.traits?.slice(0,2)},model:Z,maxContextTokens:J,responseTime:K,metrics:L,displayMode:q,showCosts:_,activeArion:R,effortLevel:V0,autonomyLevel:C0,meshMessageCount:Kj,connectionState:O0})]})]})]})}var z40=E(()=>{Tv();o90();Wb();s90();Gb();$40();Rv();Z40();Zb();XS();V1();X40();G1();Y8();K40()});function U40($){let Z=!1,J=(X)=>{if(Z)return;Z=!0,$(X)};return{onAbort(){J(!1)},onAllow(X){J(!0)},onReject(){J(!1)},onDone(){queueMicrotask(()=>{if(!Z)J(!1)})}}}import{jsx as Iv,jsxs as FC0}from"react/jsx-runtime";import{useMemo as B40,useState as DC0}from"react";import{Box as OC0,useStdout as NC0}from"ink";function LC0($){let Z=Iz[$.toLowerCase()];return{name:$,userFacingName(J){if(Z)return Z.displayName(J);return $},renderToolUseMessage(J,X){if(Z)return Z.renderInput(J,X);return JSON.stringify(J)},isReadOnly(){return!1},inputSchema:{parse(J){return J??{}}}}}function qC0($){switch($){case"low":return 0.2;case"moderate":return 0.5;case"high":return 0.9}}function F40($){let{stdout:Z}=NC0(),J=Z?.columns??80,[X]=DC0(!1),Y=B40(()=>{if(!$.approvalRequest)return null;return U40($.onApprovalChoice)},[$.approvalRequest,$.onApprovalChoice]),Q=B40(()=>{if(!$.approvalRequest||!Y)return null;let{toolName:G,input:V,riskLevel:W}=$.approvalRequest;return{assistantMessage:AC0,tool:LC0(G),description:`${G} requires approval`,input:V??{},commandPrefix:null,riskScore:qC0(W),onAbort:Y.onAbort,onAllow:Y.onAllow,onReject:Y.onReject}},[Y,$.approvalRequest]);if(Q&&Y)return FC0(OC0,{flexDirection:"column",width:"100%",children:[Iv(bv,{...$}),Iv(ny,{toolUseConfirm:Q,onDone:Y.onDone,verbose:X})]});return Iv(bv,{...$})}var AC0;var D40=E(()=>{z40();VB();OA();OA();AC0={message:{id:"aria-approval"}}});var kv;var O40=E(()=>{kv=[{name:"become",description:"Switch to another arion",usage:"/become <name>",args:["<name>"],requiresArgs:!0},{name:"arions",description:"List all arions",args:[]},{name:"hatch",description:"Create a new arion",usage:"/hatch <name> [description]",args:["<name>","[description]"],requiresArgs:!0},{name:"rest",description:"Put an arion to rest",usage:"/rest <name>",args:["<name>"],requiresArgs:!0},{name:"wake",description:"Wake a resting arion",usage:"/wake <name>",args:["<name>"],requiresArgs:!0},{name:"model",description:"Change or view current AI model",usage:"/model [name|list|refresh] [--provider <name>] [--use-env]",args:["[name|list|refresh]","[--provider <name>]","[--use-env]"]},{name:"autonomy",description:"Change permission approval policy",usage:"/autonomy [level]",args:["[level]"]},{name:"sound",description:"Open sound preferences or toggle notifications",usage:"/sound [on|off]",args:["[on|off]"]},{name:"remember",description:"Store a memory",usage:"/remember <text>",args:["<text>"],requiresArgs:!0},{name:"recall",description:"Search memories",usage:"/recall <query>",args:["<query>"],requiresArgs:!0},{name:"recall_knowledge",description:"Search learned tools (skills, procedures, techniques)",usage:"/recall_knowledge <topic>",args:["<topic>"],requiresArgs:!0},{name:"send",description:"Send a peer or same-home client message through the runtime transport",usage:"/send <peer-name|node-id|client-id> <message>",args:["<peer-name|node-id|client-id>","<message>"],requiresArgs:!0},{name:"forget",description:"Delete a memory",usage:"/forget <id>",args:["<id>"],requiresArgs:!0},{name:"memories",description:"Browse all memories",args:[]},{name:"resume",description:"Resume a previous session",args:["[session-id]"]},{name:"fork",description:"Fork the current session into a new branch",usage:"/fork [session-id] [message-count] [--stay]",args:["[session-id]","[message-count]","[--stay]"]},{name:"clear",description:"Clear the screen",args:[]},{name:"login",description:"Authenticate with provider (bedrock, anthropic, openai, google, copilot)",usage:"/login [provider] [api-key|--profile <label>|--source <gh|device>]",args:["[provider]","[api-key|flags]"]},{name:"logout",description:"Disconnect a provider or clear all credentials",usage:"/logout [provider|all]",args:["[provider|all]"]},{name:"auth",description:"Auth utilities such as importing env credentials into session scope",usage:"/auth import-env [provider ...] | /auth clear-session | /auth status-session",args:["import-env|clear-session|status-session","[provider ...]"]},{name:"help",description:"Show available commands",args:[]},{name:"daemon",description:"Open daemon control panel or run start/stop/restart",usage:"/daemon [start|stop|restart]",args:["[start|stop|restart]"]},{name:"terminal-setup",description:"Install Shift+Enter newline key binding for supported terminals",usage:"/terminal-setup",args:[]},{name:"theme",description:"View or change the color theme",usage:"/theme [name]",args:["[name]"]},{name:"invite",description:"Create an internet invite token",usage:"/invite [label]",args:["[label]"]},{name:"join",description:"Accept an internet invite token",usage:"/join [token]",args:["[token]"]},{name:"peers",description:"Show nearby peers and connect",args:[]},{name:"clients",description:"Show same-home attached clients",args:[]},{name:"exit",description:"Exit ARIA",args:[]}]});function EC0(){return"1.0.56"}var __filename="/Users/hole/aria/.bundle-stage/cli/dist/release-notes.js",x_,N40;var fv=E(()=>{x_=EC0(),N40=["\u26A1 Search millions of lines instantly with native Rust-powered code search","\uD83E\uDDE0 Jump to definitions & find references with real LSP intelligence","\u270F\uFE0F Press Esc\xD72 to edit and fork any previous message in-place","\uD83D\uDD0A Get audio cues when tasks finish \u2014 try /sound to configure","\uD83C\uDFA8 All 87 tools now render rich, beautiful output in the terminal"]});function L40($){let Z=yv.indexOf($);return yv[(Z+1)%yv.length]}function A40($,Z){let J=EB[$],X={};if(Z.showThinking!==J.showThinking)X.showThinking=Z.showThinking;if(Z.showCosts!==J.showCosts)X.showCosts=Z.showCosts;if(Z.showToolArgs!==J.showToolArgs)X.showToolArgs=Z.showToolArgs;if(Z.toolOutput!==J.toolOutput)X.toolOutput=Z.toolOutput;if(Z.showTraces!==J.showTraces)X.showTraces=Z.showTraces;if(Z.showPipelineTiming!==J.showPipelineTiming)X.showPipelineTiming=Z.showPipelineTiming;if(Z.showStatusBar!==J.showStatusBar)X.showStatusBar=Z.showStatusBar;return X}function q40($,Z){return{...EB[$],...Z??{}}}var EB,yv;var vv=E(()=>{EB={minimal:{showThinking:!1,showCosts:!1,showToolArgs:!1,toolOutput:"hidden",showTraces:!1,showPipelineTiming:!1,showStatusBar:!1},standard:{showThinking:!0,showCosts:!0,showToolArgs:!0,toolOutput:"standard",showTraces:!1,showPipelineTiming:!1,showStatusBar:!0},debug:{showThinking:!0,showCosts:!0,showToolArgs:!0,toolOutput:"expanded",showTraces:!0,showPipelineTiming:!0,showStatusBar:!0}},yv=["minimal","standard","debug"]});function _C0($){if(!($ instanceof Error))return!1;let Z=$.message;return Z.includes("has been released")||Z.includes("aborted")}function hv($,Z,J){if(!Z){J?.();return}Z.catch((X)=>{if(!_C0(X))P.warn(`[SessionHistoryClient] ${$} IPC failed:`,X?.message??X);if(J)try{J()}catch(Y){P.warn(`[SessionHistoryClient] ${$} local fallback also failed:`,Y?.message??Y)}})}class AW{readDb;ipc;constructor($,Z){this.readDb=$,this.ipc=Z,$.enableLowContentionMode()}withPhase($,Z){B9($);try{return Z()}finally{F9()}}listSessions(...$){return this.withPhase("session-history:listSessions",()=>this.readDb.listSessions(...$))}loadSessionMessages(...$){return this.withPhase("session-history:loadSessionMessages",()=>this.readDb.loadSessionMessages(...$))}loadSession(...$){return this.withPhase("session-history:loadSession",()=>this.readDb.loadSession(...$))}searchSessionsFts(...$){return this.withPhase("session-history:searchSessionsFts",()=>this.readDb.searchSessionsFts(...$))}searchSessionSummaries(...$){return this.withPhase("session-history:searchSessionSummaries",()=>this.readDb.searchSessionSummaries(...$))}findSessionByPrefix(...$){return this.readDb.findSessionByPrefix(...$)}getSessionRuntimeState(...$){return this.readDb.getSessionRuntimeState(...$)}getInteraction(...$){return this.readDb.getInteraction(...$)}getIncompleteSessions(...$){return this.readDb.getIncompleteSessions(...$)}getInputHistory(...$){return this.withPhase("session-history:getInputHistory",()=>this.readDb.getInputHistory(...$))}addInputHistory(...$){return this.withPhase("session-history:addInputHistory",()=>this.readDb.addInputHistory(...$))}getSessionCount(...$){return this.readDb.getSessionCount(...$)}markStaleSessionsCompleted(...$){return this.withPhase("session-history:markStaleSessionsCompleted",()=>this.readDb.markStaleSessionsCompleted(...$))}getSession(...$){return this.readDb.getSession(...$)}createSession(...$){return this.readDb.createSession(...$)}persistMessagesNonBlocking($,Z){if(Z.length===0)return;this.readDb.markSessionIncremental($),hv("appendSessionMessages",this.ipc.appendSessionMessages?.($,Z),()=>this.readDb.addConversationMessages($,Z))}addConversationMessages($,Z){this.persistMessagesNonBlocking($,Z)}addConversationMessage($,Z){this.persistMessagesNonBlocking($,[Z])}markCompleted($){hv("markSessionCompleted",this.ipc.markSessionCompleted?.($),()=>this.readDb.markCompleted($))}replaceConversationMessages($,Z){hv("replaceSessionMessages",this.ipc.replaceSessionMessages?.($,Z),()=>this.readDb.replaceConversationMessages($,Z))}completeRun(...$){return this.readDb.completeRun(...$)}claimSessionForMutation(...$){return this.readDb.claimSessionForMutation(...$)}releaseSessionClaim(...$){return this.readDb.releaseSessionClaim(...$)}recordPausedRun(...$){return this.readDb.recordPausedRun(...$)}deleteSession(...$){return this.readDb.deleteSession(...$)}forkSession(...$){return this.readDb.forkSession(...$)}cancelInteraction(...$){return this.readDb.cancelInteraction(...$)}setSessionTitle(...$){return this.readDb.setSessionTitle(...$)}recordInteractionResponse(...$){return this.readDb.recordInteractionResponse(...$)}close(){this.readDb.close()}}var xv=E(()=>{S0();jG()});function PC0($){return typeof $!=="string"||$.trim().length>0}function MC0($){let{toolCalls:Z,...J}=$;return J}function jC0($,Z,J){for(let X=Z;X<$.length;X++){let Y=$[X];if(Y.role==="tool"&&Y.toolCallId===J)return!0}return!1}function YY($){let Z=[];for(let J=0;J<$.length;J++){let X=$[J];if(X.role==="assistant"&&X.toolCalls?.length){let Y=new Set(X.toolCalls.map((H)=>H.id)),Q=new Set,G=[],V=J+1;while(V<$.length&&$[V].role==="tool"){let H=$[V];if(H.toolCallId&&Y.has(H.toolCallId)&&!Q.has(H.toolCallId))Q.add(H.toolCallId),G.push(H);V++}let W=X.toolCalls.filter((H)=>{if(Q.has(H.id))return!0;return!jC0($,V,H.id)}),K=W.filter((H)=>!Q.has(H.id));if(W.length===X.toolCalls.length)Z.push(X);else if(W.length>0)Z.push({...X,toolCalls:W});else if(PC0(X.content))Z.push(MC0(X));Z.push(...G);for(let H of K)Z.push({role:"tool",content:`[Tool execution interrupted \u2014 no result for ${H.name}]`,toolCallId:H.id});J=V-1;continue}if(X.role==="tool")continue;Z.push(X)}return Z}function E40($){let Z=[];for(let J of $)for(let X of J.content)switch(X.type){case"thinking":Z.push({id:`thinking-${crypto.randomUUID()}`,role:"thinking_history",content:X.content,wordCount:X.wordCount,durationSeconds:X.durationMs!=null?X.durationMs/1000:void 0,verb:X.verb,arionName:J.arion?.name,arionEmoji:J.arion?.emoji,arionColor:J.arion?.color});break;case"tool_use":Z.push({id:`tool-${crypto.randomUUID()}`,role:"tool_history",tool:{id:X.id,name:X.name,args:X.arguments,status:"pending",startTime:void 0,endTime:void 0}});break;case"tool_result":{let Y;for(let Q=Z.length-1;Q>=0;Q--){let G=Z[Q];if(G.role==="tool_history"&&G.tool.id===X.toolUseId){Y=G;break}}if(Y){if(Y.tool.status=X.status==="error"?"error":"complete",X.status==="error")Y.tool.error=X.content;else Y.tool.result=X.content;if(X.resultData!==void 0)Y.tool.resultData=X.resultData;if(X.durationMs!==void 0)Y.tool.durationMs=X.durationMs;if(X.usage!==void 0)Y.tool.usage=X.usage}break}case"handoff":Z.push({id:`handoff-${crypto.randomUUID()}`,role:"handoff_history",target:X.target,direction:X.direction});break;case"error":Z.push({id:`error-${crypto.randomUUID()}`,role:"error",content:X.content,suggestion:X.suggestion});break;case"text":Z.push({id:`msg-${crypto.randomUUID()}`,role:J.role,content:X.text,arion:J.arion?{name:J.arion.name,emoji:J.arion.emoji,color:J.arion.color}:void 0});break}return Z}var g_=E(()=>{yC()});class p5{textParts=[];thinkingBlocks=[];toolUseBlocks=[];handoffBlocks=[];toolResultMessages=[];seenToolIds=new Set;toolArgsAccumulator=new Map;thinkingInProgress=!1;pendingThinkingContent="";arion;verb;tokenUsage;snapshotMessages;previewAssistantId=`preview-${Date.now()}`;ingest($){switch($.type){case"text_delta":return this.textParts.push($.content),"continue";case"thinking_start":return this.thinkingInProgress=!0,this.pendingThinkingContent="","continue";case"thinking_delta":return this.pendingThinkingContent+=$.content,"continue";case"thinking_end":{this.thinkingInProgress=!1;let Z=Array.isArray($.blocks)&&$.blocks.length>0?$.blocks[0]:void 0,J=typeof Z?.thinking==="string"?Z.thinking:this.pendingThinkingContent,X=J.split(/\s+/).filter(Boolean).length,Y={type:"thinking",content:J,wordCount:X,durationMs:$.durationMs,verb:this.verb};return this.thinkingBlocks.push(Y),this.pendingThinkingContent="","continue"}case"tool_start":{if(this.seenToolIds.has($.id))return"continue";this.seenToolIds.add($.id);let Z={type:"tool_use",id:$.id,name:$.name,arguments:$.input??{}};return this.toolUseBlocks.push(Z),"continue"}case"tool_args_delta":{let J=(this.toolArgsAccumulator.get($.id)??"")+$.args;this.toolArgsAccumulator.set($.id,J);try{let X=JSON.parse(J),Y=this.toolUseBlocks.find((Q)=>Q.type==="tool_use"&&Q.id===$.id);if(Y)Y.arguments=X}catch{}return"continue"}case"tool_result":{if($.input){let Q=this.toolUseBlocks.find((G)=>G.type==="tool_use"&&G.id===$.id);if(Q){let G=typeof $.input==="object"&&!Array.isArray($.input)?$.input:{};if(Object.keys(Q.arguments).length===0)Q.arguments=G}}let Z=$.result,J="usage"in $&&$.usage&&typeof $.usage==="object"&&typeof $.usage.inputTokens==="number"&&typeof $.usage.outputTokens==="number"&&typeof $.usage.totalTokens==="number"&&typeof $.usage.estimatedCost==="number"?$.usage:void 0,X={type:"tool_result",toolUseId:$.id,content:typeof Z.message==="string"?Z.message:"",status:Z.success===!0?"success":"error",durationMs:$.durationMs,resultData:Z.data,usage:J},Y={id:crypto.randomUUID(),role:"tool",content:[X],arion:this.arion,createdAt:new Date().toISOString()};return this.toolResultMessages.push(Y),"continue"}case"handoff_start":{let Z={type:"handoff",target:$.target,direction:"to"};return this.handoffBlocks.push(Z),"continue"}case"handoff_result":{let Z={type:"handoff",target:$.target,direction:"from"};return this.handoffBlocks.push(Z),"continue"}case"turn_complete":return"flush";case"messages_snapshot":return this.snapshotMessages=$.messages,"continue";default:return"continue"}}flush(){let $=[];if(this.thinkingInProgress&&this.pendingThinkingContent){let X=this.pendingThinkingContent.trim(),Y=X.length===0?0:X.split(/\s+/).length,Q={type:"thinking",content:this.pendingThinkingContent,wordCount:Y,verb:this.verb};this.thinkingBlocks.push(Q)}let Z=[];Z.push(...this.thinkingBlocks);let J=this.textParts.join("");if(J)Z.push({type:"text",text:J});if(Z.push(...this.toolUseBlocks),Z.push(...this.handoffBlocks),Z.length>0){let X={id:crypto.randomUUID(),role:"assistant",content:Z,arion:this.arion,tokenUsage:this.tokenUsage,createdAt:new Date().toISOString()};$.push(X)}if($.push(...this.toolResultMessages),this.toolResultMessages.length>0&&this.toolUseBlocks.length>0){let X=new Set(this.toolResultMessages.flatMap((Y)=>Y.content.filter((Q)=>Q.type==="tool_result").map((Q)=>Q.toolUseId)));for(let Y of this.toolUseBlocks){let Q=Y.id;if(Q&&!X.has(Q)){let G={id:crypto.randomUUID(),role:"tool",content:[{type:"tool_result",toolUseId:Q,content:"Tool execution cancelled by user.",status:"error"}],arion:this.arion,createdAt:new Date().toISOString()};$.push(G)}}}return this.textParts=[],this.thinkingBlocks=[],this.toolUseBlocks=[],this.handoffBlocks=[],this.toolResultMessages=[],this.seenToolIds=new Set,this.toolArgsAccumulator=new Map,this.thinkingInProgress=!1,this.pendingThinkingContent="",this.tokenUsage=void 0,this.verb=void 0,this.previewAssistantId=`preview-${Date.now()}`,$}snapshot(){let $=[];if($.push(...this.thinkingBlocks.map((X)=>({...X}))),this.thinkingInProgress&&this.pendingThinkingContent){let X=this.pendingThinkingContent,Y={type:"thinking",content:X,wordCount:X.split(/\s+/).filter(Boolean).length,verb:this.verb};$.push(Y)}let Z=this.textParts.join("");if(Z){let X=Z.lastIndexOf(`
4719
+ `).length,1)},[M$,A8]),YQ=(FZ?4+z7:0)+(cZ?2:0),DZ=Math.max(ND-YQ,1),s3=c5(()=>{let N0=new Map,T0="";for(let Z8 of I6){let t3=Z8.kind==="user-message"||Z8.kind==="user-image"?`user:${Z8.userName}`:Z8.kind==="assistant-text"?`assistant:${Z8.arion?.name??"ARIA"}`:Z8.kind==="thinking"?`assistant:${Z8.arion?.name??"ARIA"}`:Z8.kind==="tool-execution"?"tool":Z8.kind,QQ=Z8.kind==="user-message"||Z8.kind==="user-image"||Z8.kind==="assistant-text"||Z8.kind==="thinking";if(N0.set(Z8.id,QQ&&t3!==T0),QQ)T0=t3}return N0},[I6]),Lj=c5(()=>{let N0=new Map;for(let T0=0;T0<I6.length;T0++){let Z8=I6[T0],t3=T0>0?I6[T0-1]:void 0,QQ=Z8.kind==="tool-execution"&&t3?.kind==="tool-execution";N0.set(Z8.id,T0>0&&!QQ)}return N0},[I6]),om=c5(()=>{let N0=[];if(X)N0.push({id:"header",_kind:"banner"});for(let T0 of JQ)N0.push({...T0,_kind:"item"});return N0},[X,JQ]);return XY(HC0,{children:[Q$(zC0,{items:om,children:(N0)=>{if(N0._kind==="banner")return Q$(m3,{width:"100%",justifyContent:"center",children:X},N0.id);return Q$(m3,{flexDirection:"column",marginTop:Lj.get(N0.id)?1:0,children:Q$(NA,{item:N0,displayMode:q,showPrefix:s3.get(N0.id)??!1})},N0.id)}},`static-${Y0}`),XY(m3,{flexDirection:"column",width:"100%",children:[XY(m3,{flexDirection:"column",maxHeight:ND,justifyContent:"flex-end",overflowY:"hidden",children:[XQ.length>0&&Q$(m3,{flexDirection:"column",maxHeight:DZ,overflowY:"hidden",children:XQ.map((N0)=>Q$(m3,{flexDirection:"column",marginTop:Lj.get(N0.id)?1:0,children:Q$(NA,{item:N0,displayMode:q,showPrefix:s3.get(N0.id)??!1,previewTailLines:DZ})},N0.id))}),FZ&&XY(m3,{marginTop:1,flexDirection:"column",children:[Q$(ML,{param:{type:"text",text:A8??""},userName:O??"User",columns:BD,showPrefix:!0,addMargin:!1}),Q$(d2,{dimColor:!0,children:" \u2191 queued \u2014 press esc or \u2191 to cancel and edit"})]}),M&&C.length>0&&Q$(qy,{spans:C}),A?.showPipelineTiming&&k&&k.phases.length>0&&Q$(Ey,{report:k}),DD&&XY(m3,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,marginY:1,children:[Q$(d2,{bold:!0,dimColor:!0,children:"Hotkeys"}),Q$(d2,{dimColor:!0,children:" Ctrl+\\ \u2014 cycle display mode"}),Q$(d2,{dimColor:!0,children:" Ctrl+t \u2014 toggle thinking blocks"}),Q$(d2,{dimColor:!0,children:" Ctrl+g \u2014 toggle cost display"}),Q$(d2,{dimColor:!0,children:" Ctrl+e \u2014 cycle effort level"}),Q$(d2,{dimColor:!0,children:" Ctrl+s \u2014 toggle trace waterfall"}),Q$(d2,{dimColor:!0,children:" Escape \u2014 cancel streaming / close overlay / clear input"}),Q$(d2,{dimColor:!0,children:" Ctrl+/ \u2014 toggle this help"})]}),cZ&&Q$(Py,{state:UZ.kind==="thinking"?"thinking":"composing",elapsedSeconds:Math.floor(L?.wallTimeSeconds??0),totalTokens:L?.totalTokens??0,thoughtForSeconds:UZ.kind==="composing"?UZ.thoughtForSeconds:void 0,currentVerb:UZ.kind==="tool_running"?[...new Set(UZ.tools.values())].join(" \xB7 "):UZ.verb.present})]}),XY(m3,{flexDirection:"column",flexShrink:0,children:[D0&&_0&&L0&&Q$(Ly,{currentLevel:C0??T5.autonomy,onSelect:_0,onCancel:L0}),H$&&A0&&c0&&Q$(i90,{providers:H$,onSelect:A0,onCancel:c0}),z$&&r0&&G$&&Q$(Vb,{options:z$,onSelect:r0,onCancel:G$}),g0==="login-method"&&FK&&VD&&dY&&Q$(OW,{options:FK,onSelect:(N0)=>VD(N0.id),onCancel:dY,title:DK??"Choose an option:",isActive:g0==="login-method"}),g0==="login-method"&&UK&&eF&&KJ&&Q$(e90,{options:UK,onSelect:eF,onCancel:KJ,isActive:g0==="login-method"}),g0==="login-input"&&lY&&aY&&WD&&Q$(LW,{title:lY.title,hint:lY.hint,onSubmit:aY,onCancel:WD,isActive:g0==="login-input"}),g0==="login-input"&&$D&&fY&&ZD&&Q$(LW,{title:"Enter Anthropic API key",hint:"Paste your sk-ant-api03-* key",onSubmit:fY,onCancel:ZD,isActive:g0==="login-input"}),g0==="login-input"&&yY&&JD&&vY&&Q$(LW,{title:"Enter setup token",hint:"From `claude setup-token` or admin provisioning",onSubmit:JD,onCancel:vY,isActive:g0==="login-input"}),g0==="login-method"&&BK&&hY&&XD&&Q$(OW,{options:BK,onSelect:hY,onCancel:XD,title:"Select OpenAI login method:",isActive:g0==="login-method"}),g0==="login-input"&&xY&&YD&&gY&&Q$(LW,{title:"Enter OpenAI API key",hint:"Paste your sk-* key",onSubmit:YD,onCancel:gY,isActive:g0==="login-input"}),g0==="login-method"&&mY&&uY&&QD&&Q$(OW,{options:mY,onSelect:uY,onCancel:QD,title:"Select Google login method:",isActive:g0==="login-method"}),g0==="login-input"&&cY&&GD&&pY&&Q$(LW,{title:"Enter Google API key",hint:"Paste your AIza* key",onSubmit:GD,onCancel:pY,isActive:g0==="login-input"}),g0==="login"&&q$&&x$&&b4&&Q$(r90,{provider:q$,onCancel:b4,...n8&&W9?{authorizeUrl:n8,expectedState:m$??void 0,onCodeSubmit:W9}:{onComplete:x$},isActive:g0==="login"}),g0==="login"&&o3&&d1&&Q7&&Q$(Qb,{provider:o3,profileLabel:KK??void 0,...HK&&p1&&zK?{verificationUri:HK,userCode:p1,onApprove:zK}:{onComplete:d1},onCancel:Q7}),XY(m3,{flexDirection:"column",children:[g0==="command"&&Q$(oy,{commands:H,initialFilter:oY,onSelect:Fj,onHandOffInput:H7,onCancel:BZ}),g0==="arion"&&Q$(ry,{arions:z,initialFilter:_K,statusFilter:FD,onSelect:b6,onCancel:BZ}),g0==="model"&&Q$(ty,{models:U,effortLevel:V0,onSelect:Dj,onCancel:BZ}),g0==="theme"&&Q$(Gv,{onSelect:Oj,onCancel:BZ}),g0==="sound"&&Q$(Mv,{onClose:()=>Z$("none")}),g0==="daemon"&&Q$(jv,{status:n??{running:!1},actionStatus:H0,onAction:(N0)=>z0?.(N0),onClose:()=>Z$("none")}),g0==="invite-share"&&l1&&Q$(Fv,{inviteToken:l1.inviteToken,inviteLabel:l1.inviteLabel,expiresAt:l1.expiresAt,onClose:()=>{Z$("none"),Yj?.()}}),g0==="join-invite"&&Q$(Dv,{error:Qj,onSubmit:(N0)=>{Z$("none"),NK?.(N0)},onCancel:()=>{Z$("none"),HJ?.()}}),g0==="memory"&&Q$($v,{memories:B,mode:F,isLoading:D,onSelect:Nj,onCancel:BZ}),g0==="peers"&&Q$(Kv,{peers:tY.length>0?tY:G7,sameHomeClientsAvailable:KD.length>0,onSelect:(N0)=>{Z$("none"),OK?.(N0)},onCancel:BZ}),g0==="clients"&&Q$(Bv,{clients:KD,onSelect:(N0)=>{Z$("none"),X6(`/send ${N0.clientId} `),Jj?.(N0)},onCancel:()=>{Z$("none"),Xj?.()}}),g0==="pair-request"&&V7&&Q$(Ov,{request:V7,onAccept:()=>{Z$("none"),Gj?.()},onReject:()=>{Z$("none"),UD?.()}}),g0==="session"&&Q$(Jv,{sessions:T,onSelect:(N0)=>{Z$("none"),f?.(N0)},onCancel:BZ,onSearch:(N0)=>l?.(N0),onPageChange:(N0)=>$0?.(N0)}),g0==="message-edit"&&W7&&Q$(Yv,{messages:W7,onSelect:(N0,T0)=>{Z$("none"),Vj?.(N0,T0)},onCancel:BZ}),g0==="none"&&!B0&&Q$($S,{userName:O,value:EK,onChange:X6,onSubmit:a,onTrigger:ZQ,onExit:()=>zJ(),history:R0,onSaveInput:b0,focus:g0==="none",isStreaming:G,onDoubleEscape:()=>{if(W7&&W7.length>0)return Z$("message-edit"),!0;return!1}})]}),(!A||A.showStatusBar)&&Q$(Mw,{arion:{name:im,emoji:Bj,color:Uj,traits:zZ?.personality?.traits?.slice(0,2)},model:Z,maxContextTokens:J,responseTime:K,metrics:L,displayMode:q,showCosts:_,activeArion:R,effortLevel:V0,autonomyLevel:C0,meshMessageCount:Kj,connectionState:O0})]})]})]})}var z40=E(()=>{Tv();o90();Wb();s90();Gb();$40();Rv();Z40();Zb();XS();V1();X40();G1();Y8();K40()});function U40($){let Z=!1,J=(X)=>{if(Z)return;Z=!0,$(X)};return{onAbort(){J(!1)},onAllow(X){J(!0)},onReject(){J(!1)},onDone(){queueMicrotask(()=>{if(!Z)J(!1)})}}}import{jsx as Iv,jsxs as FC0}from"react/jsx-runtime";import{useMemo as B40,useState as DC0}from"react";import{Box as OC0,useStdout as NC0}from"ink";function LC0($){let Z=Iz[$.toLowerCase()];return{name:$,userFacingName(J){if(Z)return Z.displayName(J);return $},renderToolUseMessage(J,X){if(Z)return Z.renderInput(J,X);return JSON.stringify(J)},isReadOnly(){return!1},inputSchema:{parse(J){return J??{}}}}}function qC0($){switch($){case"low":return 0.2;case"moderate":return 0.5;case"high":return 0.9}}function F40($){let{stdout:Z}=NC0(),J=Z?.columns??80,[X]=DC0(!1),Y=B40(()=>{if(!$.approvalRequest)return null;return U40($.onApprovalChoice)},[$.approvalRequest,$.onApprovalChoice]),Q=B40(()=>{if(!$.approvalRequest||!Y)return null;let{toolName:G,input:V,riskLevel:W}=$.approvalRequest;return{assistantMessage:AC0,tool:LC0(G),description:`${G} requires approval`,input:V??{},commandPrefix:null,riskScore:qC0(W),onAbort:Y.onAbort,onAllow:Y.onAllow,onReject:Y.onReject}},[Y,$.approvalRequest]);if(Q&&Y)return FC0(OC0,{flexDirection:"column",width:"100%",children:[Iv(bv,{...$}),Iv(ny,{toolUseConfirm:Q,onDone:Y.onDone,verbose:X})]});return Iv(bv,{...$})}var AC0;var D40=E(()=>{z40();VB();OA();OA();AC0={message:{id:"aria-approval"}}});var kv;var O40=E(()=>{kv=[{name:"become",description:"Switch to another arion",usage:"/become <name>",args:["<name>"],requiresArgs:!0},{name:"arions",description:"List all arions",args:[]},{name:"hatch",description:"Create a new arion",usage:"/hatch <name> [description]",args:["<name>","[description]"],requiresArgs:!0},{name:"rest",description:"Put an arion to rest",usage:"/rest <name>",args:["<name>"],requiresArgs:!0},{name:"wake",description:"Wake a resting arion",usage:"/wake <name>",args:["<name>"],requiresArgs:!0},{name:"model",description:"Change or view current AI model",usage:"/model [name|list|refresh] [--provider <name>] [--use-env]",args:["[name|list|refresh]","[--provider <name>]","[--use-env]"]},{name:"autonomy",description:"Change permission approval policy",usage:"/autonomy [level]",args:["[level]"]},{name:"sound",description:"Open sound preferences or toggle notifications",usage:"/sound [on|off]",args:["[on|off]"]},{name:"remember",description:"Store a memory",usage:"/remember <text>",args:["<text>"],requiresArgs:!0},{name:"recall",description:"Search memories",usage:"/recall <query>",args:["<query>"],requiresArgs:!0},{name:"recall_knowledge",description:"Search learned tools (skills, procedures, techniques)",usage:"/recall_knowledge <topic>",args:["<topic>"],requiresArgs:!0},{name:"send",description:"Send a peer or same-home client message through the runtime transport",usage:"/send <peer-name|node-id|client-id> <message>",args:["<peer-name|node-id|client-id>","<message>"],requiresArgs:!0},{name:"forget",description:"Delete a memory",usage:"/forget <id>",args:["<id>"],requiresArgs:!0},{name:"memories",description:"Browse all memories",args:[]},{name:"resume",description:"Resume a previous session",args:["[session-id]"]},{name:"fork",description:"Fork the current session into a new branch",usage:"/fork [session-id] [message-count] [--stay]",args:["[session-id]","[message-count]","[--stay]"]},{name:"clear",description:"Clear the screen",args:[]},{name:"login",description:"Authenticate with provider (bedrock, anthropic, openai, google, copilot)",usage:"/login [provider] [api-key|--profile <label>|--source <gh|device>]",args:["[provider]","[api-key|flags]"]},{name:"logout",description:"Disconnect a provider or clear all credentials",usage:"/logout [provider|all]",args:["[provider|all]"]},{name:"auth",description:"Auth utilities such as importing env credentials into session scope",usage:"/auth import-env [provider ...] | /auth clear-session | /auth status-session",args:["import-env|clear-session|status-session","[provider ...]"]},{name:"help",description:"Show available commands",args:[]},{name:"daemon",description:"Open daemon control panel or run start/stop/restart",usage:"/daemon [start|stop|restart]",args:["[start|stop|restart]"]},{name:"terminal-setup",description:"Install Shift+Enter newline key binding for supported terminals",usage:"/terminal-setup",args:[]},{name:"theme",description:"View or change the color theme",usage:"/theme [name]",args:["[name]"]},{name:"invite",description:"Create an internet invite token",usage:"/invite [label]",args:["[label]"]},{name:"join",description:"Accept an internet invite token",usage:"/join [token]",args:["[token]"]},{name:"peers",description:"Show nearby peers and connect",args:[]},{name:"clients",description:"Show same-home attached clients",args:[]},{name:"exit",description:"Exit ARIA",args:[]}]});function EC0(){return"1.0.57"}var __filename="/Users/hole/aria/.bundle-stage/cli/dist/release-notes.js",x_,N40;var fv=E(()=>{x_=EC0(),N40=["\u26A1 Search millions of lines instantly with native Rust-powered code search","\uD83E\uDDE0 Jump to definitions & find references with real LSP intelligence","\u270F\uFE0F Press Esc\xD72 to edit and fork any previous message in-place","\uD83D\uDD0A Get audio cues when tasks finish \u2014 try /sound to configure","\uD83C\uDFA8 All 87 tools now render rich, beautiful output in the terminal"]});function L40($){let Z=yv.indexOf($);return yv[(Z+1)%yv.length]}function A40($,Z){let J=EB[$],X={};if(Z.showThinking!==J.showThinking)X.showThinking=Z.showThinking;if(Z.showCosts!==J.showCosts)X.showCosts=Z.showCosts;if(Z.showToolArgs!==J.showToolArgs)X.showToolArgs=Z.showToolArgs;if(Z.toolOutput!==J.toolOutput)X.toolOutput=Z.toolOutput;if(Z.showTraces!==J.showTraces)X.showTraces=Z.showTraces;if(Z.showPipelineTiming!==J.showPipelineTiming)X.showPipelineTiming=Z.showPipelineTiming;if(Z.showStatusBar!==J.showStatusBar)X.showStatusBar=Z.showStatusBar;return X}function q40($,Z){return{...EB[$],...Z??{}}}var EB,yv;var vv=E(()=>{EB={minimal:{showThinking:!1,showCosts:!1,showToolArgs:!1,toolOutput:"hidden",showTraces:!1,showPipelineTiming:!1,showStatusBar:!1},standard:{showThinking:!0,showCosts:!0,showToolArgs:!0,toolOutput:"standard",showTraces:!1,showPipelineTiming:!1,showStatusBar:!0},debug:{showThinking:!0,showCosts:!0,showToolArgs:!0,toolOutput:"expanded",showTraces:!0,showPipelineTiming:!0,showStatusBar:!0}},yv=["minimal","standard","debug"]});function _C0($){if(!($ instanceof Error))return!1;let Z=$.message;return Z.includes("has been released")||Z.includes("aborted")}function hv($,Z,J){if(!Z){J?.();return}Z.catch((X)=>{if(!_C0(X))P.warn(`[SessionHistoryClient] ${$} IPC failed:`,X?.message??X);if(J)try{J()}catch(Y){P.warn(`[SessionHistoryClient] ${$} local fallback also failed:`,Y?.message??Y)}})}class AW{readDb;ipc;constructor($,Z){this.readDb=$,this.ipc=Z,$.enableLowContentionMode()}withPhase($,Z){B9($);try{return Z()}finally{F9()}}listSessions(...$){return this.withPhase("session-history:listSessions",()=>this.readDb.listSessions(...$))}loadSessionMessages(...$){return this.withPhase("session-history:loadSessionMessages",()=>this.readDb.loadSessionMessages(...$))}loadSession(...$){return this.withPhase("session-history:loadSession",()=>this.readDb.loadSession(...$))}searchSessionsFts(...$){return this.withPhase("session-history:searchSessionsFts",()=>this.readDb.searchSessionsFts(...$))}searchSessionSummaries(...$){return this.withPhase("session-history:searchSessionSummaries",()=>this.readDb.searchSessionSummaries(...$))}findSessionByPrefix(...$){return this.readDb.findSessionByPrefix(...$)}getSessionRuntimeState(...$){return this.readDb.getSessionRuntimeState(...$)}getInteraction(...$){return this.readDb.getInteraction(...$)}getIncompleteSessions(...$){return this.readDb.getIncompleteSessions(...$)}getInputHistory(...$){return this.withPhase("session-history:getInputHistory",()=>this.readDb.getInputHistory(...$))}addInputHistory(...$){return this.withPhase("session-history:addInputHistory",()=>this.readDb.addInputHistory(...$))}getSessionCount(...$){return this.readDb.getSessionCount(...$)}markStaleSessionsCompleted(...$){return this.withPhase("session-history:markStaleSessionsCompleted",()=>this.readDb.markStaleSessionsCompleted(...$))}getSession(...$){return this.readDb.getSession(...$)}createSession(...$){return this.readDb.createSession(...$)}persistMessagesNonBlocking($,Z){if(Z.length===0)return;this.readDb.markSessionIncremental($),hv("appendSessionMessages",this.ipc.appendSessionMessages?.($,Z),()=>this.readDb.addConversationMessages($,Z))}addConversationMessages($,Z){this.persistMessagesNonBlocking($,Z)}addConversationMessage($,Z){this.persistMessagesNonBlocking($,[Z])}markCompleted($){hv("markSessionCompleted",this.ipc.markSessionCompleted?.($),()=>this.readDb.markCompleted($))}replaceConversationMessages($,Z){hv("replaceSessionMessages",this.ipc.replaceSessionMessages?.($,Z),()=>this.readDb.replaceConversationMessages($,Z))}completeRun(...$){return this.readDb.completeRun(...$)}claimSessionForMutation(...$){return this.readDb.claimSessionForMutation(...$)}releaseSessionClaim(...$){return this.readDb.releaseSessionClaim(...$)}recordPausedRun(...$){return this.readDb.recordPausedRun(...$)}deleteSession(...$){return this.readDb.deleteSession(...$)}forkSession(...$){return this.readDb.forkSession(...$)}cancelInteraction(...$){return this.readDb.cancelInteraction(...$)}setSessionTitle(...$){return this.readDb.setSessionTitle(...$)}recordInteractionResponse(...$){return this.readDb.recordInteractionResponse(...$)}close(){this.readDb.close()}}var xv=E(()=>{S0();jG()});function PC0($){return typeof $!=="string"||$.trim().length>0}function MC0($){let{toolCalls:Z,...J}=$;return J}function jC0($,Z,J){for(let X=Z;X<$.length;X++){let Y=$[X];if(Y.role==="tool"&&Y.toolCallId===J)return!0}return!1}function YY($){let Z=[];for(let J=0;J<$.length;J++){let X=$[J];if(X.role==="assistant"&&X.toolCalls?.length){let Y=new Set(X.toolCalls.map((H)=>H.id)),Q=new Set,G=[],V=J+1;while(V<$.length&&$[V].role==="tool"){let H=$[V];if(H.toolCallId&&Y.has(H.toolCallId)&&!Q.has(H.toolCallId))Q.add(H.toolCallId),G.push(H);V++}let W=X.toolCalls.filter((H)=>{if(Q.has(H.id))return!0;return!jC0($,V,H.id)}),K=W.filter((H)=>!Q.has(H.id));if(W.length===X.toolCalls.length)Z.push(X);else if(W.length>0)Z.push({...X,toolCalls:W});else if(PC0(X.content))Z.push(MC0(X));Z.push(...G);for(let H of K)Z.push({role:"tool",content:`[Tool execution interrupted \u2014 no result for ${H.name}]`,toolCallId:H.id});J=V-1;continue}if(X.role==="tool")continue;Z.push(X)}return Z}function E40($){let Z=[];for(let J of $)for(let X of J.content)switch(X.type){case"thinking":Z.push({id:`thinking-${crypto.randomUUID()}`,role:"thinking_history",content:X.content,wordCount:X.wordCount,durationSeconds:X.durationMs!=null?X.durationMs/1000:void 0,verb:X.verb,arionName:J.arion?.name,arionEmoji:J.arion?.emoji,arionColor:J.arion?.color});break;case"tool_use":Z.push({id:`tool-${crypto.randomUUID()}`,role:"tool_history",tool:{id:X.id,name:X.name,args:X.arguments,status:"pending",startTime:void 0,endTime:void 0}});break;case"tool_result":{let Y;for(let Q=Z.length-1;Q>=0;Q--){let G=Z[Q];if(G.role==="tool_history"&&G.tool.id===X.toolUseId){Y=G;break}}if(Y){if(Y.tool.status=X.status==="error"?"error":"complete",X.status==="error")Y.tool.error=X.content;else Y.tool.result=X.content;if(X.resultData!==void 0)Y.tool.resultData=X.resultData;if(X.durationMs!==void 0)Y.tool.durationMs=X.durationMs;if(X.usage!==void 0)Y.tool.usage=X.usage}break}case"handoff":Z.push({id:`handoff-${crypto.randomUUID()}`,role:"handoff_history",target:X.target,direction:X.direction});break;case"error":Z.push({id:`error-${crypto.randomUUID()}`,role:"error",content:X.content,suggestion:X.suggestion});break;case"text":Z.push({id:`msg-${crypto.randomUUID()}`,role:J.role,content:X.text,arion:J.arion?{name:J.arion.name,emoji:J.arion.emoji,color:J.arion.color}:void 0});break}return Z}var g_=E(()=>{yC()});class p5{textParts=[];thinkingBlocks=[];toolUseBlocks=[];handoffBlocks=[];toolResultMessages=[];seenToolIds=new Set;toolArgsAccumulator=new Map;thinkingInProgress=!1;pendingThinkingContent="";arion;verb;tokenUsage;snapshotMessages;previewAssistantId=`preview-${Date.now()}`;ingest($){switch($.type){case"text_delta":return this.textParts.push($.content),"continue";case"thinking_start":return this.thinkingInProgress=!0,this.pendingThinkingContent="","continue";case"thinking_delta":return this.pendingThinkingContent+=$.content,"continue";case"thinking_end":{this.thinkingInProgress=!1;let Z=Array.isArray($.blocks)&&$.blocks.length>0?$.blocks[0]:void 0,J=typeof Z?.thinking==="string"?Z.thinking:this.pendingThinkingContent,X=J.split(/\s+/).filter(Boolean).length,Y={type:"thinking",content:J,wordCount:X,durationMs:$.durationMs,verb:this.verb};return this.thinkingBlocks.push(Y),this.pendingThinkingContent="","continue"}case"tool_start":{if(this.seenToolIds.has($.id))return"continue";this.seenToolIds.add($.id);let Z={type:"tool_use",id:$.id,name:$.name,arguments:$.input??{}};return this.toolUseBlocks.push(Z),"continue"}case"tool_args_delta":{let J=(this.toolArgsAccumulator.get($.id)??"")+$.args;this.toolArgsAccumulator.set($.id,J);try{let X=JSON.parse(J),Y=this.toolUseBlocks.find((Q)=>Q.type==="tool_use"&&Q.id===$.id);if(Y)Y.arguments=X}catch{}return"continue"}case"tool_result":{if($.input){let Q=this.toolUseBlocks.find((G)=>G.type==="tool_use"&&G.id===$.id);if(Q){let G=typeof $.input==="object"&&!Array.isArray($.input)?$.input:{};if(Object.keys(Q.arguments).length===0)Q.arguments=G}}let Z=$.result,J="usage"in $&&$.usage&&typeof $.usage==="object"&&typeof $.usage.inputTokens==="number"&&typeof $.usage.outputTokens==="number"&&typeof $.usage.totalTokens==="number"&&typeof $.usage.estimatedCost==="number"?$.usage:void 0,X={type:"tool_result",toolUseId:$.id,content:typeof Z.message==="string"?Z.message:"",status:Z.success===!0?"success":"error",durationMs:$.durationMs,resultData:Z.data,usage:J},Y={id:crypto.randomUUID(),role:"tool",content:[X],arion:this.arion,createdAt:new Date().toISOString()};return this.toolResultMessages.push(Y),"continue"}case"handoff_start":{let Z={type:"handoff",target:$.target,direction:"to"};return this.handoffBlocks.push(Z),"continue"}case"handoff_result":{let Z={type:"handoff",target:$.target,direction:"from"};return this.handoffBlocks.push(Z),"continue"}case"turn_complete":return"flush";case"messages_snapshot":return this.snapshotMessages=$.messages,"continue";default:return"continue"}}flush(){let $=[];if(this.thinkingInProgress&&this.pendingThinkingContent){let X=this.pendingThinkingContent.trim(),Y=X.length===0?0:X.split(/\s+/).length,Q={type:"thinking",content:this.pendingThinkingContent,wordCount:Y,verb:this.verb};this.thinkingBlocks.push(Q)}let Z=[];Z.push(...this.thinkingBlocks);let J=this.textParts.join("");if(J)Z.push({type:"text",text:J});if(Z.push(...this.toolUseBlocks),Z.push(...this.handoffBlocks),Z.length>0){let X={id:crypto.randomUUID(),role:"assistant",content:Z,arion:this.arion,tokenUsage:this.tokenUsage,createdAt:new Date().toISOString()};$.push(X)}if($.push(...this.toolResultMessages),this.toolResultMessages.length>0&&this.toolUseBlocks.length>0){let X=new Set(this.toolResultMessages.flatMap((Y)=>Y.content.filter((Q)=>Q.type==="tool_result").map((Q)=>Q.toolUseId)));for(let Y of this.toolUseBlocks){let Q=Y.id;if(Q&&!X.has(Q)){let G={id:crypto.randomUUID(),role:"tool",content:[{type:"tool_result",toolUseId:Q,content:"Tool execution cancelled by user.",status:"error"}],arion:this.arion,createdAt:new Date().toISOString()};$.push(G)}}}return this.textParts=[],this.thinkingBlocks=[],this.toolUseBlocks=[],this.handoffBlocks=[],this.toolResultMessages=[],this.seenToolIds=new Set,this.toolArgsAccumulator=new Map,this.thinkingInProgress=!1,this.pendingThinkingContent="",this.tokenUsage=void 0,this.verb=void 0,this.previewAssistantId=`preview-${Date.now()}`,$}snapshot(){let $=[];if($.push(...this.thinkingBlocks.map((X)=>({...X}))),this.thinkingInProgress&&this.pendingThinkingContent){let X=this.pendingThinkingContent,Y={type:"thinking",content:X,wordCount:X.split(/\s+/).filter(Boolean).length,verb:this.verb};$.push(Y)}let Z=this.textParts.join("");if(Z){let X=Z.lastIndexOf(`
4720
4720
  `);if(X>=0)$.push({type:"text",text:Z.slice(0,X+1)})}for(let X of this.toolUseBlocks){let Y={...X};if(Y.type==="tool_use"&&Object.keys(Y.arguments).length===0){let Q=this.toolArgsAccumulator.get(Y.id);if(Q){let G=p5.tryParsePartialArgs(Q);if(G)Y.arguments=G}}$.push(Y)}$.push(...this.handoffBlocks.map((X)=>({...X})));let J=[];if($.length>0)J.push({id:this.previewAssistantId,role:"assistant",content:$,arion:this.arion,createdAt:new Date().toISOString()});return J.push(...this.toolResultMessages.map((X)=>({...X,content:[...X.content]}))),J}getSnapshotMessages(){return this.snapshotMessages}hasPendingContent(){return this.textParts.length>0||this.thinkingBlocks.length>0||this.toolUseBlocks.length>0||this.handoffBlocks.length>0||this.toolResultMessages.length>0||this.thinkingInProgress}setArion($){this.arion=$}setVerb($){this.verb=$}setTokenUsage($){if(this.tokenUsage)this.tokenUsage={input:this.tokenUsage.input+$.input,output:this.tokenUsage.output+$.output};else this.tokenUsage={...$}}static tryParsePartialArgs($){let Z=$.trim();if(!Z.startsWith("{")||Z.length<4)return;try{return JSON.parse(Z)}catch{}try{let J=JSON.parse(Z+"}");if(Object.keys(J).length>0)return J}catch{}try{let J=JSON.parse(Z+'"}');if(Object.keys(J).length>0)return J}catch{}for(let J=Z.length-1;J>0;J--)if(Z[J]===",")try{let X=JSON.parse(Z.slice(0,J)+"}");if(Object.keys(X).length>0)return X}catch{}return}}import{readFileSync as TC0,existsSync as gv}from"fs";function mv($){if(!gv($))return[];let J=TC0($,"utf-8").split(`
4721
4721
  `).filter((Q)=>Q.trim().length>0),X=new p5,Y=[];for(let Q of J){let G;try{G=JSON.parse(Q)}catch{continue}if(!G.event||typeof G.event.type!=="string")continue;if(G.event.type==="user_message"){if(X.hasPendingContent())Y.push(...X.flush());let W=G.event.content??"",K=G.event.id,H=aQ(W);if(K)H.id=K;Y.push(H);continue}if(X.ingest(G.event)==="flush"){let W=X.flush();Y.push(...W)}}if(X.hasPendingContent()){let Q=X.flush();Y.push(...Q)}return Y}function _40($){for(let J of $.content){if(J.type==="tool_use"&&J.id)return`tool_use:${J.id}`;if(J.type==="tool_result"&&J.toolUseId)return`tool_result:${J.toolUseId}`}let Z=$.content.filter((J)=>J.type==="text").map((J)=>J.text).join("");return`${$.role}:${Z}`}function m_($,Z){if(!Z)return{messages:$,backfillMessages:[]};let J;try{J=mv(Z)}catch{return{messages:$,backfillMessages:[]}}if(J.length===0)return{messages:$,backfillMessages:[]};if($.length>=J.length)return{messages:$,backfillMessages:[]};let X=new Set($.map(_40)),Y=[];for(let G of J){let V=_40(G);if(!X.has(V))Y.push(G)}return{messages:[...$,...Y],backfillMessages:Y}}function u_($,Z,J){let X=`${$}/arions/${Z}/logs/${J}.jsonl`;if(gv(X))return X;let Y=`${$}/logs/${J}.jsonl`;if(gv(Y))return Y;return null}var P40=E(()=>{g_()});var uv={};A$(uv,{toModelMessages:()=>KN,replaySessionFromJsonl:()=>mv,repairToolCallPairing:()=>YY,mergeWithJsonlRecovery:()=>m_,fromV1Columns:()=>iQ,fromModelMessages:()=>nQ,findJsonlForSession:()=>u_,extractToolCalls:()=>rQ,extractToolCallId:()=>tQ,extractThinking:()=>sQ,extractTextContent:()=>oQ,createUserMessage:()=>aQ,createSystemMessage:()=>l0,createIncomingMessagePair:()=>WN,createErrorMessage:()=>X$,conversationMessageToHistoryMessages:()=>E40,TurnAccumulator:()=>p5,SessionHistoryClient:()=>AW,SessionHistory:()=>g4,ConversationMessageSchema:()=>VN,ContentBlockSchema:()=>sc,ArionRefSchema:()=>ec});var QY=E(()=>{gC();xv();g_();P40()});import{existsSync as CC0}from"fs";import{fileURLToPath as M40}from"url";function RC0(){return[M40(new URL("../main.ts",import.meta.url)),M40(new URL("../main.js",import.meta.url))]}function cv(){let $=process.env.ARIA_RUNTIME_KIND?.trim();if($==="source-bun"||$==="compiled-bun"||$==="bundled-bun")return $;let Z=process.argv[1]??"";if(!Z.endsWith(".ts")&&!Z.endsWith(".js")&&!Z.endsWith(".mjs"))return"compiled-bun";if(RC0().some((J)=>CC0(J)))return"source-bun";return"bundled-bun"}function j40(){return cv()==="compiled-bun"}var pv=()=>{};import{existsSync as dv}from"fs";import{fileURLToPath as c_}from"url";function T40(){return process.platform==="win32"?"bun.exe":"bun"}function wC0(){let $=[c_(new URL("../main.ts",import.meta.url)),c_(new URL("../main.js",import.meta.url))];for(let Z of $)if(dv(Z))return Z;throw Error("[aria] Could not resolve Bun source entrypoint for internal relaunch")}function SC0(){let $=process.argv[1]??"";if(dv($))return $;let Z=[c_(new URL("../../bin/aria.mjs",import.meta.url)),c_(new URL("../bin/aria.mjs",import.meta.url))];for(let J of Z)if(dv(J))return J;throw Error("[aria] Could not resolve bundled entrypoint for internal relaunch")}function p_($){let Z=cv(),J=$.args??[],X={...process.env,...$.env??{}},Y=$.cwd??process.cwd();switch(Z){case"source-bun":return{command:T40(),args:[wC0(),"__internal",$.mode,...J],env:X,cwd:Y};case"bundled-bun":return{command:T40(),args:[SC0(),"__internal",$.mode,...J],env:X,cwd:Y};case"compiled-bun":return{command:process.execPath,args:["__internal",$.mode,...J],env:X,cwd:Y}}}var lv=E(()=>{pv()});function d_($,Z={}){let J={},X={cwd:$.cwd,env:$.env,stdio:Z.stdio??["inherit","inherit","inherit"]};if(Z.ipc)X.ipc=(Q)=>{for(let G of J.message??[])G(Q)};let Y=Bun.spawn([$.command,...$.args],X);return Y.exited.then((Q)=>{for(let G of J.close??[])G(Q)}).catch((Q)=>{let G=Q instanceof Error?Q:Error(String(Q));for(let V of J.error??[])V(G)}),{send(Q){Y.send(Q)},on(Q,G){(J[Q]??=[]).push(G)},unref(){Y.unref()}}}import{existsSync as PB,mkdirSync as bC0,readFileSync as w40,writeFileSync as IC0,unlinkSync as av,readdirSync as kC0}from"fs";import{dirname as O_$,join as iv,resolve as N_$}from"path";function S40($){ZH($)}function fC0($){return WC($)}function l_($){KC($)}function yC0($){if(!$||typeof $!=="object")return!1;let Z=$;return Z.code==="EPIPE"||Z.code==="EIO"||Z.code==="ERR_STREAM_DESTROYED"}function b1($){try{process.stderr.write($)}catch(Z){if(yC0(Z))return;throw Z}}function vC0($){if(!$||typeof $!=="object")return $ instanceof Error&&/^exit:\d+$/.test($.message);if($.__ariaProcessExit===!0)return!0;return $ instanceof Error&&/^exit:\d+$/.test($.message)}function d5($){let Z=$?.trim()||null;if(y8=Z,Z)process.env[B4]=Z;else delete process.env[B4]}function ov(){return y8}function qW($){I1=$||"ARIA",process.env[M7]=I1}function b40(){return process.env[$H]==="true"}function I40(...$){return iv(f9(),...$)}function k40(){return I40("crash-markers")}function rv($){return iv(k40(),`${$}.json`)}function xC0($){let Z=rv($);if(!PB(Z))return null;try{return JSON.parse(w40(Z,"utf-8"))}catch{return null}}function gC0($){try{let Z=k40();bC0(Z,{recursive:!0}),IC0(rv($.sessionId),JSON.stringify($),"utf-8")}catch{}}function nv($){try{let Z=rv($);if(PB(Z))av(Z)}catch{}}function mC0(){return I40("crash-reports","latest.json")}function C40($,Z){b1(`[aria] Session ${$} exceeded crash limit (${Z}/${_B}). Starting fresh instead of resuming.
4722
4722
  `),nv($),y8=null,d5(null)}function uC0(){let $=mC0();if(!PB($))return null;try{let Z=JSON.parse(w40($,"utf-8"));try{av($)}catch{}return{message:Z?.error?.message??"unknown",stack:Z?.error?.stack??void 0,heapMb:Z?.process?.heapUsedMb,rssMb:Z?.process?.rssMb}}catch{try{av($)}catch{}return null}}async function R40($){let Z=fC0(process.pid);if(Z){if(Date.now()-new Date(Z.timestamp).getTime()<hC0)return l_(process.pid),{sessionId:Z.sessionId,arionName:Z.arionName||$,source:"marker"};l_(process.pid)}try{let{SessionHistory:J}=await Promise.resolve().then(() => (QY(),uv)),{getAriaDir:X}=await Promise.resolve().then(() => (Z4(),OL)),Y=X(),Q=new Set([$]),G=iv(Y,"arions");if(PB(G)){for(let W of kC0(G,{withFileTypes:!0}))if(W.isDirectory()&&W.name.trim())Q.add(W.name.trim())}let V=null;for(let W of Q){let K=J.resolvePerArionPath(Y,W);if(!PB(K))continue;let H=new J(K);try{let z=H.getIncompleteSessions(1);if(z.length===0)continue;let U=z[0],B=U.updatedAt.getTime();if(!V||B>V.updatedAtMs||B===V.updatedAtMs&&W===$)V={sessionId:U.id,arionName:W,updatedAtMs:B}}finally{H.close()}}if(V)return{sessionId:V.sessionId,arionName:V.arionName,source:V.arionName===$?"history":"history-scan"}}catch(J){b1(`[aria] SessionHistory fallback failed: ${J instanceof Error?J.message:String(J)}