@undefineds.co/linx 0.3.26 → 0.3.28

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 (362) hide show
  1. package/README.md +4 -3
  2. package/dist/index.js +3 -832
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/agent-stream-bridge-contract.js +2 -0
  5. package/dist/lib/agent-stream-bridge-contract.js.map +1 -0
  6. package/dist/lib/auto-mode/auth.js +100 -2
  7. package/dist/lib/auto-mode/auth.js.map +1 -1
  8. package/dist/lib/auto-mode/backend-kind.js +13 -0
  9. package/dist/lib/auto-mode/backend-kind.js.map +1 -0
  10. package/dist/lib/auto-mode/display.js +1 -1
  11. package/dist/lib/auto-mode/display.js.map +1 -1
  12. package/dist/lib/auto-mode/format.js +1 -1
  13. package/dist/lib/auto-mode/format.js.map +1 -1
  14. package/dist/lib/auto-mode/hooks/{index.js → registry.js} +1 -1
  15. package/dist/lib/auto-mode/hooks/registry.js.map +1 -0
  16. package/dist/lib/auto-mode/pod-ai.js +1 -14
  17. package/dist/lib/auto-mode/pod-ai.js.map +1 -1
  18. package/dist/lib/auto-mode/pod-approval-store.js +596 -0
  19. package/dist/lib/auto-mode/pod-approval-store.js.map +1 -0
  20. package/dist/lib/auto-mode/pod-approval.js +4 -607
  21. package/dist/lib/auto-mode/pod-approval.js.map +1 -1
  22. package/dist/lib/auto-mode/pod-persistence-builders.js +266 -0
  23. package/dist/lib/auto-mode/pod-persistence-builders.js.map +1 -0
  24. package/dist/lib/auto-mode/pod-persistence.js +1 -281
  25. package/dist/lib/auto-mode/pod-persistence.js.map +1 -1
  26. package/dist/lib/auto-mode/runner.js +41 -378
  27. package/dist/lib/auto-mode/runner.js.map +1 -1
  28. package/dist/lib/auto-mode/runtime.js +25 -0
  29. package/dist/lib/auto-mode/runtime.js.map +1 -0
  30. package/dist/lib/auto-mode/secretary-reaction-window.js +12 -0
  31. package/dist/lib/auto-mode/secretary-reaction-window.js.map +1 -0
  32. package/dist/lib/auto-mode/secretary-runtime-config.js +66 -0
  33. package/dist/lib/auto-mode/secretary-runtime-config.js.map +1 -0
  34. package/dist/lib/auto-mode/secretary.js +2 -64
  35. package/dist/lib/auto-mode/secretary.js.map +1 -1
  36. package/dist/lib/auto-mode/session-log.js +25 -0
  37. package/dist/lib/auto-mode/session-log.js.map +1 -0
  38. package/dist/lib/auto-mode/shell-command.js +172 -0
  39. package/dist/lib/auto-mode/shell-command.js.map +1 -0
  40. package/dist/lib/auto-mode-command.js +2 -1
  41. package/dist/lib/auto-mode-command.js.map +1 -1
  42. package/dist/lib/backend-command-router-contract.js +2 -0
  43. package/dist/lib/backend-command-router-contract.js.map +1 -0
  44. package/dist/lib/{pi-adapter/backend-credentials.js → backend-credentials.js} +8 -8
  45. package/dist/lib/backend-credentials.js.map +1 -0
  46. package/dist/lib/linx-ai-connect-command.js +201 -0
  47. package/dist/lib/linx-ai-connect-command.js.map +1 -0
  48. package/dist/lib/linx-assistant-message-rendering.js +33 -0
  49. package/dist/lib/linx-assistant-message-rendering.js.map +1 -0
  50. package/dist/lib/linx-auto-command-routing.js +53 -0
  51. package/dist/lib/linx-auto-command-routing.js.map +1 -0
  52. package/dist/lib/linx-auto-editor-indicator-host.js +15 -0
  53. package/dist/lib/linx-auto-editor-indicator-host.js.map +1 -0
  54. package/dist/lib/linx-auto-editor-indicator.js +56 -0
  55. package/dist/lib/linx-auto-editor-indicator.js.map +1 -0
  56. package/dist/lib/linx-auto-mode-cli-admission.js +16 -0
  57. package/dist/lib/linx-auto-mode-cli-admission.js.map +1 -0
  58. package/dist/lib/linx-backend-command-router.js +64 -0
  59. package/dist/lib/linx-backend-command-router.js.map +1 -0
  60. package/dist/lib/linx-backend-event-source.js +32 -0
  61. package/dist/lib/linx-backend-event-source.js.map +1 -0
  62. package/dist/lib/linx-chat-completion-projection.js +276 -0
  63. package/dist/lib/linx-chat-completion-projection.js.map +1 -0
  64. package/dist/lib/linx-cloud-errors.js +1 -0
  65. package/dist/lib/linx-cloud-errors.js.map +1 -1
  66. package/dist/lib/linx-cloud-models.js +75 -0
  67. package/dist/lib/linx-cloud-models.js.map +1 -0
  68. package/dist/lib/linx-cloud-runtime-auth.js +146 -0
  69. package/dist/lib/linx-cloud-runtime-auth.js.map +1 -0
  70. package/dist/lib/linx-cloud-runtime-coordinator.js +102 -0
  71. package/dist/lib/linx-cloud-runtime-coordinator.js.map +1 -0
  72. package/dist/lib/linx-codex-plugin-command.js +56 -0
  73. package/dist/lib/linx-codex-plugin-command.js.map +1 -0
  74. package/dist/lib/linx-command-autocomplete.js +123 -0
  75. package/dist/lib/linx-command-autocomplete.js.map +1 -0
  76. package/dist/lib/linx-completion-backend.js +2 -0
  77. package/dist/lib/linx-completion-backend.js.map +1 -0
  78. package/dist/lib/linx-config-command.js +12 -0
  79. package/dist/lib/linx-config-command.js.map +1 -0
  80. package/dist/lib/linx-editor-component-router.js +83 -0
  81. package/dist/lib/linx-editor-component-router.js.map +1 -0
  82. package/dist/lib/linx-extension-ui-context-router.js +43 -0
  83. package/dist/lib/linx-extension-ui-context-router.js.map +1 -0
  84. package/dist/lib/linx-external-open-host.js +8 -0
  85. package/dist/lib/linx-external-open-host.js.map +1 -0
  86. package/dist/lib/linx-external-url.js +16 -0
  87. package/dist/lib/linx-external-url.js.map +1 -0
  88. package/dist/lib/linx-footer-patch.js +52 -0
  89. package/dist/lib/linx-footer-patch.js.map +1 -0
  90. package/dist/lib/linx-input-command-routing.js +65 -0
  91. package/dist/lib/linx-input-command-routing.js.map +1 -0
  92. package/dist/lib/linx-interactive-auth-state-host.js +50 -0
  93. package/dist/lib/linx-interactive-auth-state-host.js.map +1 -0
  94. package/dist/lib/linx-interactive-autocomplete-host.js +32 -0
  95. package/dist/lib/linx-interactive-autocomplete-host.js.map +1 -0
  96. package/dist/lib/linx-interactive-bootstrap.js +66 -0
  97. package/dist/lib/linx-interactive-bootstrap.js.map +1 -0
  98. package/dist/lib/linx-interactive-branding.js +24 -0
  99. package/dist/lib/linx-interactive-branding.js.map +1 -0
  100. package/dist/lib/linx-interactive-chat-text-host.js +16 -0
  101. package/dist/lib/linx-interactive-chat-text-host.js.map +1 -0
  102. package/dist/lib/linx-interactive-command-routing-host.js +31 -0
  103. package/dist/lib/linx-interactive-command-routing-host.js.map +1 -0
  104. package/dist/lib/linx-interactive-command-routing.js +75 -0
  105. package/dist/lib/linx-interactive-command-routing.js.map +1 -0
  106. package/dist/lib/linx-interactive-command-surface.js +16 -0
  107. package/dist/lib/linx-interactive-command-surface.js.map +1 -0
  108. package/dist/lib/linx-interactive-editor-text-host.js +16 -0
  109. package/dist/lib/linx-interactive-editor-text-host.js.map +1 -0
  110. package/dist/lib/linx-interactive-error-display.js +8 -0
  111. package/dist/lib/linx-interactive-error-display.js.map +1 -0
  112. package/dist/lib/linx-interactive-event-router.js +91 -0
  113. package/dist/lib/linx-interactive-event-router.js.map +1 -0
  114. package/dist/lib/linx-interactive-extension-input-host.js +7 -0
  115. package/dist/lib/linx-interactive-extension-input-host.js.map +1 -0
  116. package/dist/lib/linx-interactive-extension-selector-host.js +12 -0
  117. package/dist/lib/linx-interactive-extension-selector-host.js.map +1 -0
  118. package/dist/lib/linx-interactive-header-host.js +14 -0
  119. package/dist/lib/linx-interactive-header-host.js.map +1 -0
  120. package/dist/lib/linx-interactive-lifecycle-host.js +4 -0
  121. package/dist/lib/linx-interactive-lifecycle-host.js.map +1 -0
  122. package/dist/lib/linx-interactive-login-ui-router.js +81 -0
  123. package/dist/lib/linx-interactive-login-ui-router.js.map +1 -0
  124. package/dist/lib/linx-interactive-model-registry-host.js +14 -0
  125. package/dist/lib/linx-interactive-model-registry-host.js.map +1 -0
  126. package/dist/lib/linx-interactive-post-init.js +60 -0
  127. package/dist/lib/linx-interactive-post-init.js.map +1 -0
  128. package/dist/lib/linx-interactive-provider-count-host.js +4 -0
  129. package/dist/lib/linx-interactive-provider-count-host.js.map +1 -0
  130. package/dist/lib/linx-interactive-run-router.js +43 -0
  131. package/dist/lib/linx-interactive-run-router.js.map +1 -0
  132. package/dist/lib/linx-interactive-runtime-host.js +113 -0
  133. package/dist/lib/linx-interactive-runtime-host.js.map +1 -0
  134. package/dist/lib/linx-interactive-selector-host.js +12 -0
  135. package/dist/lib/linx-interactive-selector-host.js.map +1 -0
  136. package/dist/lib/linx-interactive-shell-state.js +215 -0
  137. package/dist/lib/linx-interactive-shell-state.js.map +1 -0
  138. package/dist/lib/linx-interactive-status-display.js +9 -0
  139. package/dist/lib/linx-interactive-status-display.js.map +1 -0
  140. package/dist/lib/linx-interactive-stop-router.js +85 -0
  141. package/dist/lib/linx-interactive-stop-router.js.map +1 -0
  142. package/dist/lib/linx-interactive-streaming-message-host.js +11 -0
  143. package/dist/lib/linx-interactive-streaming-message-host.js.map +1 -0
  144. package/dist/lib/linx-interactive-submit-router.js +63 -0
  145. package/dist/lib/linx-interactive-submit-router.js.map +1 -0
  146. package/dist/lib/linx-interactive-update-router.js +78 -0
  147. package/dist/lib/linx-interactive-update-router.js.map +1 -0
  148. package/dist/lib/linx-interactive-update-state-host.js +43 -0
  149. package/dist/lib/linx-interactive-update-state-host.js.map +1 -0
  150. package/dist/lib/linx-interactive-warning-display.js +4 -0
  151. package/dist/lib/linx-interactive-warning-display.js.map +1 -0
  152. package/dist/lib/linx-interrupt-control-host.js +22 -0
  153. package/dist/lib/linx-interrupt-control-host.js.map +1 -0
  154. package/dist/lib/linx-interrupt-control.js +116 -0
  155. package/dist/lib/linx-interrupt-control.js.map +1 -0
  156. package/dist/lib/linx-login-flow.js +566 -0
  157. package/dist/lib/linx-login-flow.js.map +1 -0
  158. package/dist/lib/linx-models-command.js +71 -0
  159. package/dist/lib/linx-models-command.js.map +1 -0
  160. package/dist/lib/linx-package-command.js +117 -0
  161. package/dist/lib/linx-package-command.js.map +1 -0
  162. package/dist/lib/linx-peer-command-routing.js +20 -0
  163. package/dist/lib/linx-peer-command-routing.js.map +1 -0
  164. package/dist/lib/linx-pi-cli-command.js +121 -0
  165. package/dist/lib/linx-pi-cli-command.js.map +1 -0
  166. package/dist/lib/linx-pi-completion-events.js +101 -0
  167. package/dist/lib/linx-pi-completion-events.js.map +1 -0
  168. package/dist/lib/linx-pi-normalized-event-stream.js +41 -0
  169. package/dist/lib/linx-pi-normalized-event-stream.js.map +1 -0
  170. package/dist/lib/linx-pi-resume-cli-admission.js +21 -0
  171. package/dist/lib/linx-pi-resume-cli-admission.js.map +1 -0
  172. package/dist/lib/linx-pi-runtime-execution.js +67 -0
  173. package/dist/lib/linx-pi-runtime-execution.js.map +1 -0
  174. package/dist/lib/linx-pi-startup-control.js +49 -0
  175. package/dist/lib/linx-pi-startup-control.js.map +1 -0
  176. package/dist/lib/linx-pi-startup-plan.js +103 -0
  177. package/dist/lib/linx-pi-startup-plan.js.map +1 -0
  178. package/dist/lib/linx-pi-stream-errors.js +10 -0
  179. package/dist/lib/linx-pi-stream-errors.js.map +1 -0
  180. package/dist/lib/linx-pod-backed-extension-ui.js +29 -0
  181. package/dist/lib/linx-pod-backed-extension-ui.js.map +1 -0
  182. package/dist/lib/linx-pod-data-session-factory.js +19 -0
  183. package/dist/lib/linx-pod-data-session-factory.js.map +1 -0
  184. package/dist/lib/linx-pod-mirror-runtime-host.js +50 -0
  185. package/dist/lib/linx-pod-mirror-runtime-host.js.map +1 -0
  186. package/dist/lib/linx-pod-mirror-sync-cli-admission.js +18 -0
  187. package/dist/lib/linx-pod-mirror-sync-cli-admission.js.map +1 -0
  188. package/dist/lib/linx-pod-mirror-sync-command.js +30 -0
  189. package/dist/lib/linx-pod-mirror-sync-command.js.map +1 -0
  190. package/dist/lib/{pi-adapter/sync-recovery.js → linx-pod-mirror-sync-recovery.js} +13 -13
  191. package/dist/lib/linx-pod-mirror-sync-recovery.js.map +1 -0
  192. package/dist/lib/{pi-adapter/pod-mirror.js → linx-pod-mirror.js} +63 -40
  193. package/dist/lib/linx-pod-mirror.js.map +1 -0
  194. package/dist/lib/linx-restored-auto-startup.js +21 -0
  195. package/dist/lib/linx-restored-auto-startup.js.map +1 -0
  196. package/dist/lib/linx-resume-output.js +209 -0
  197. package/dist/lib/linx-resume-output.js.map +1 -0
  198. package/dist/lib/linx-retired-command.js +22 -0
  199. package/dist/lib/linx-retired-command.js.map +1 -0
  200. package/dist/lib/linx-rewind-command.js +209 -0
  201. package/dist/lib/linx-rewind-command.js.map +1 -0
  202. package/dist/lib/linx-runtime-adapter-contract.js +2 -0
  203. package/dist/lib/linx-runtime-adapter-contract.js.map +1 -0
  204. package/dist/lib/linx-runtime-adapter-defaults.js +17 -0
  205. package/dist/lib/linx-runtime-adapter-defaults.js.map +1 -0
  206. package/dist/lib/linx-runtime-adapter-dependencies.js +2 -0
  207. package/dist/lib/linx-runtime-adapter-dependencies.js.map +1 -0
  208. package/dist/lib/linx-runtime-agent-session.js +130 -0
  209. package/dist/lib/linx-runtime-agent-session.js.map +1 -0
  210. package/dist/lib/linx-runtime-auth.js +5 -0
  211. package/dist/lib/linx-runtime-auth.js.map +1 -0
  212. package/dist/lib/linx-runtime-backend-composition.js +73 -0
  213. package/dist/lib/linx-runtime-backend-composition.js.map +1 -0
  214. package/dist/lib/linx-runtime-coding-tools.js +58 -0
  215. package/dist/lib/linx-runtime-coding-tools.js.map +1 -0
  216. package/dist/lib/linx-runtime-completion-backend.js +27 -0
  217. package/dist/lib/linx-runtime-completion-backend.js.map +1 -0
  218. package/dist/lib/linx-runtime-oauth-provider.js +57 -0
  219. package/dist/lib/linx-runtime-oauth-provider.js.map +1 -0
  220. package/dist/lib/linx-runtime-provider-registration.js +33 -0
  221. package/dist/lib/linx-runtime-provider-registration.js.map +1 -0
  222. package/dist/lib/linx-runtime-resources.js +167 -0
  223. package/dist/lib/linx-runtime-resources.js.map +1 -0
  224. package/dist/lib/linx-runtime-system-prompt.js +27 -0
  225. package/dist/lib/linx-runtime-system-prompt.js.map +1 -0
  226. package/dist/lib/linx-runtime-thinking.js +21 -0
  227. package/dist/lib/linx-runtime-thinking.js.map +1 -0
  228. package/dist/lib/linx-selector-choice.js +38 -0
  229. package/dist/lib/linx-selector-choice.js.map +1 -0
  230. package/dist/lib/linx-self-update.js +113 -0
  231. package/dist/lib/linx-self-update.js.map +1 -0
  232. package/dist/lib/linx-session-command-routing-host.js +24 -0
  233. package/dist/lib/linx-session-command-routing-host.js.map +1 -0
  234. package/dist/lib/linx-session-command-routing.js +68 -0
  235. package/dist/lib/linx-session-command-routing.js.map +1 -0
  236. package/dist/lib/linx-session-cwd-router.js +15 -0
  237. package/dist/lib/linx-session-cwd-router.js.map +1 -0
  238. package/dist/lib/linx-session-history.js +388 -0
  239. package/dist/lib/linx-session-history.js.map +1 -0
  240. package/dist/lib/{pi-adapter/session.js → linx-session-manager.js} +94 -46
  241. package/dist/lib/linx-session-manager.js.map +1 -0
  242. package/dist/lib/linx-session-metadata.js +55 -0
  243. package/dist/lib/linx-session-metadata.js.map +1 -0
  244. package/dist/lib/linx-session-selector-ui.js +32 -0
  245. package/dist/lib/linx-session-selector-ui.js.map +1 -0
  246. package/dist/lib/linx-session-thinking-capability-router.js +55 -0
  247. package/dist/lib/linx-session-thinking-capability-router.js.map +1 -0
  248. package/dist/lib/linx-session-work-control.js +187 -0
  249. package/dist/lib/linx-session-work-control.js.map +1 -0
  250. package/dist/lib/linx-shell-command-executor.js +41 -0
  251. package/dist/lib/linx-shell-command-executor.js.map +1 -0
  252. package/dist/lib/linx-shell-command-router.js +151 -0
  253. package/dist/lib/linx-shell-command-router.js.map +1 -0
  254. package/dist/lib/{pi-adapter/control-state.js → linx-startup-control-state.js} +6 -6
  255. package/dist/lib/linx-startup-control-state.js.map +1 -0
  256. package/dist/lib/linx-startup-login-policy.js +48 -0
  257. package/dist/lib/linx-startup-login-policy.js.map +1 -0
  258. package/dist/lib/linx-status-line-command.js +382 -0
  259. package/dist/lib/linx-status-line-command.js.map +1 -0
  260. package/dist/lib/{status-line-command.js → linx-status-line-config-command.js} +2 -12
  261. package/dist/lib/linx-status-line-config-command.js.map +1 -0
  262. package/dist/lib/linx-status-line.js +12 -4
  263. package/dist/lib/linx-status-line.js.map +1 -1
  264. package/dist/lib/linx-stream-abort.js +12 -0
  265. package/dist/lib/linx-stream-abort.js.map +1 -0
  266. package/dist/lib/linx-stream-error-formatting.js +54 -0
  267. package/dist/lib/linx-stream-error-formatting.js.map +1 -0
  268. package/dist/lib/linx-submitted-user-message-recording.js +16 -0
  269. package/dist/lib/linx-submitted-user-message-recording.js.map +1 -0
  270. package/dist/lib/linx-symphony-interactive-command.js +493 -0
  271. package/dist/lib/linx-symphony-interactive-command.js.map +1 -0
  272. package/dist/lib/linx-terminal-title-router.js +49 -0
  273. package/dist/lib/linx-terminal-title-router.js.map +1 -0
  274. package/dist/lib/{pi-adapter/theme.js → linx-theme.js} +2 -2
  275. package/dist/lib/linx-theme.js.map +1 -0
  276. package/dist/lib/linx-top-level-command-admission.js +27 -0
  277. package/dist/lib/linx-top-level-command-admission.js.map +1 -0
  278. package/dist/lib/linx-update-notification.js +209 -0
  279. package/dist/lib/linx-update-notification.js.map +1 -0
  280. package/dist/lib/linx-welcome-header.js +148 -0
  281. package/dist/lib/linx-welcome-header.js.map +1 -0
  282. package/dist/lib/linx-workspace-command.js +45 -0
  283. package/dist/lib/linx-workspace-command.js.map +1 -0
  284. package/dist/lib/native-backend-command-router.js +25 -0
  285. package/dist/lib/native-backend-command-router.js.map +1 -0
  286. package/dist/lib/native-backend-proxy.js +2 -0
  287. package/dist/lib/native-backend-proxy.js.map +1 -0
  288. package/dist/lib/native-backend-stream-backend.js +15 -0
  289. package/dist/lib/native-backend-stream-backend.js.map +1 -0
  290. package/dist/lib/oidc-auth.js +2 -4
  291. package/dist/lib/oidc-auth.js.map +1 -1
  292. package/dist/lib/pi-adapter/runtime.js +32 -841
  293. package/dist/lib/pi-adapter/runtime.js.map +1 -1
  294. package/dist/lib/pi-adapter/stream.js +17 -516
  295. package/dist/lib/pi-adapter/stream.js.map +1 -1
  296. package/dist/lib/{pi-adapter/pod-approval.js → pod-backed-extension-ui-context.js} +2 -2
  297. package/dist/lib/pod-backed-extension-ui-context.js.map +1 -0
  298. package/dist/lib/pod-chat-store-runtime.js +38 -0
  299. package/dist/lib/pod-chat-store-runtime.js.map +1 -0
  300. package/dist/lib/pod-chat-store.js +15 -65
  301. package/dist/lib/pod-chat-store.js.map +1 -1
  302. package/dist/lib/{pi-adapter/pod-mirror-mapping.js → pod-mirror-mapping.js} +8 -18
  303. package/dist/lib/pod-mirror-mapping.js.map +1 -0
  304. package/dist/lib/{pi-adapter/pod-native.js → pod-native.js} +1 -1
  305. package/dist/lib/pod-native.js.map +1 -0
  306. package/dist/lib/pod-status-output.js.map +1 -0
  307. package/dist/lib/{pi-adapter/auto-input-controller.js → secretary-auto-input-controller.js} +62 -77
  308. package/dist/lib/secretary-auto-input-controller.js.map +1 -0
  309. package/dist/lib/{pi-adapter/session-control.js → session-control.js} +80 -29
  310. package/dist/lib/session-control.js.map +1 -0
  311. package/dist/lib/shell-lifecycle.js +199 -0
  312. package/dist/lib/shell-lifecycle.js.map +1 -0
  313. package/dist/lib/solid-local-store.js +3 -3
  314. package/dist/lib/solid-local-store.js.map +1 -1
  315. package/dist/lib/symphony/pod-projection.js +1 -31
  316. package/dist/lib/symphony/pod-projection.js.map +1 -1
  317. package/dist/lib/{symphony-command.js → symphony/run.js} +11 -16
  318. package/dist/lib/symphony/run.js.map +1 -0
  319. package/dist/lib/symphony/runtime.js +30 -0
  320. package/dist/lib/symphony/runtime.js.map +1 -0
  321. package/dist/lib/symphony/status.js +242 -0
  322. package/dist/lib/symphony/status.js.map +1 -0
  323. package/dist/linx-cli-app.js +70 -0
  324. package/dist/linx-cli-app.js.map +1 -0
  325. package/dist/linx-cli-runtime-adapter-factory.js +12 -0
  326. package/dist/linx-cli-runtime-adapter-factory.js.map +1 -0
  327. package/dist/plugins/linx-symphony-codex/.codex-plugin/plugin.json +1 -1
  328. package/package.json +1 -1
  329. package/dist/lib/auto-mode/hooks/index.js.map +0 -1
  330. package/dist/lib/auto-mode/index.js +0 -10
  331. package/dist/lib/auto-mode/index.js.map +0 -1
  332. package/dist/lib/codex-plugin/index.js +0 -5
  333. package/dist/lib/codex-plugin/index.js.map +0 -1
  334. package/dist/lib/pi-adapter/auth.js +0 -68
  335. package/dist/lib/pi-adapter/auth.js.map +0 -1
  336. package/dist/lib/pi-adapter/auto-input-controller.js.map +0 -1
  337. package/dist/lib/pi-adapter/backend-command.js +0 -2
  338. package/dist/lib/pi-adapter/backend-command.js.map +0 -1
  339. package/dist/lib/pi-adapter/backend-credentials.js.map +0 -1
  340. package/dist/lib/pi-adapter/branding.js +0 -1188
  341. package/dist/lib/pi-adapter/branding.js.map +0 -1
  342. package/dist/lib/pi-adapter/control-state.js.map +0 -1
  343. package/dist/lib/pi-adapter/index.js +0 -4
  344. package/dist/lib/pi-adapter/index.js.map +0 -1
  345. package/dist/lib/pi-adapter/interactive.js +0 -3191
  346. package/dist/lib/pi-adapter/interactive.js.map +0 -1
  347. package/dist/lib/pi-adapter/pod-approval.js.map +0 -1
  348. package/dist/lib/pi-adapter/pod-mirror-mapping.js.map +0 -1
  349. package/dist/lib/pi-adapter/pod-mirror.js.map +0 -1
  350. package/dist/lib/pi-adapter/pod-native.js.map +0 -1
  351. package/dist/lib/pi-adapter/pod-status-output.js.map +0 -1
  352. package/dist/lib/pi-adapter/pod-tools.js +0 -140
  353. package/dist/lib/pi-adapter/pod-tools.js.map +0 -1
  354. package/dist/lib/pi-adapter/session-control.js.map +0 -1
  355. package/dist/lib/pi-adapter/session.js.map +0 -1
  356. package/dist/lib/pi-adapter/sync-recovery.js.map +0 -1
  357. package/dist/lib/pi-adapter/theme.js.map +0 -1
  358. package/dist/lib/pi-adapter/web-fetch.js +0 -170
  359. package/dist/lib/pi-adapter/web-fetch.js.map +0 -1
  360. package/dist/lib/status-line-command.js.map +0 -1
  361. package/dist/lib/symphony-command.js.map +0 -1
  362. /package/dist/lib/{pi-adapter/pod-status-output.js → pod-status-output.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-symphony-interactive-command.js","sourceRoot":"","sources":["../../src/lib/linx-symphony-interactive-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ const LINX_TERMINAL_TITLE_ROUTER = Symbol.for('linx.tui.terminalTitleRouter');
2
+ export function registerLinxTerminalTitleHandler(interactive, entry) {
3
+ const state = getLinxTerminalTitleRouterState(interactive);
4
+ if (state.handlers.some((existing) => existing.name === entry.name)) {
5
+ return;
6
+ }
7
+ state.handlers.push(entry);
8
+ state.handlers.sort((left, right) => (left.priority ?? 0) - (right.priority ?? 0));
9
+ installLinxTerminalTitleRouter(interactive, state);
10
+ }
11
+ export function setLinxTerminalTitle(interactive, title) {
12
+ interactive?.ui?.terminal?.setTitle?.(title);
13
+ }
14
+ export function requestLinxTerminalTitleRefresh(interactive) {
15
+ interactive?.updateTerminalTitle?.();
16
+ }
17
+ function getLinxTerminalTitleRouterState(interactive) {
18
+ if (!interactive || typeof interactive !== 'object') {
19
+ return { installed: true, handlers: [] };
20
+ }
21
+ const existing = interactive[LINX_TERMINAL_TITLE_ROUTER];
22
+ if (existing && typeof existing === 'object' && Array.isArray(existing.handlers)) {
23
+ return existing;
24
+ }
25
+ const state = {
26
+ installed: false,
27
+ handlers: [],
28
+ };
29
+ interactive[LINX_TERMINAL_TITLE_ROUTER] = state;
30
+ return state;
31
+ }
32
+ function installLinxTerminalTitleRouter(interactive, state) {
33
+ if (state.installed) {
34
+ return;
35
+ }
36
+ const originalUpdateTerminalTitle = typeof interactive?.updateTerminalTitle === 'function'
37
+ ? interactive.updateTerminalTitle.bind(interactive)
38
+ : undefined;
39
+ interactive.updateTerminalTitle = function patchedLinxTerminalTitleRouter(...args) {
40
+ const result = originalUpdateTerminalTitle?.(...args);
41
+ const context = { interactive: this, args };
42
+ for (const entry of state.handlers) {
43
+ entry.handler(context);
44
+ }
45
+ return result;
46
+ };
47
+ state.installed = true;
48
+ }
49
+ //# sourceMappingURL=linx-terminal-title-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-terminal-title-router.js","sourceRoot":"","sources":["../../src/lib/linx-terminal-title-router.ts"],"names":[],"mappings":"AAoBA,MAAM,0BAA0B,GAAG,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;AAE7E,MAAM,UAAU,gCAAgC,CAC9C,WAAgB,EAChB,KAAoC;IAEpC,MAAM,KAAK,GAAG,+BAA+B,CAAC,WAAW,CAAC,CAAA;IAC1D,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,OAAM;IACR,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAA;IAClF,8BAA8B,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;AACpD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAgB,EAAE,KAAa;IAClE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAA;AAC9C,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,WAAgB;IAC9D,WAAW,EAAE,mBAAmB,EAAE,EAAE,CAAA;AACtC,CAAC;AAED,SAAS,+BAA+B,CAAC,WAAgB;IACvD,IAAI,CAAC,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IAC1C,CAAC;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,0BAA0B,CAAC,CAAA;IACxD,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjF,OAAO,QAAwC,CAAA;IACjD,CAAC;IAED,MAAM,KAAK,GAAiC;QAC1C,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,EAAE;KACb,CAAA;IACD,WAAW,CAAC,0BAA0B,CAAC,GAAG,KAAK,CAAA;IAC/C,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,8BAA8B,CACrC,WAAgB,EAChB,KAAmC;IAEnC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,OAAM;IACR,CAAC;IAED,MAAM,2BAA2B,GAAG,OAAO,WAAW,EAAE,mBAAmB,KAAK,UAAU;QACxF,CAAC,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC;QACnD,CAAC,CAAC,SAAS,CAAA;IAEb,WAAW,CAAC,mBAAmB,GAAG,SAAS,8BAA8B,CAAC,GAAG,IAAe;QAC1F,MAAM,MAAM,GAAG,2BAA2B,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;QACrD,MAAM,OAAO,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QAC3C,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IACD,KAAK,CAAC,SAAS,GAAG,IAAI,CAAA;AACxB,CAAC"}
@@ -74,11 +74,11 @@ const LINX_THEME = {
74
74
  bashMode: 'green',
75
75
  },
76
76
  };
77
- export function ensureLinxPiTheme(agentDir) {
77
+ export function ensureLinxTheme(agentDir) {
78
78
  const themesDir = join(agentDir, 'themes');
79
79
  mkdirSync(themesDir, { recursive: true });
80
80
  const themePath = join(themesDir, 'linx.json');
81
81
  writeFileSync(themePath, `${JSON.stringify(LINX_THEME, null, 2)}\n`);
82
82
  return themePath;
83
83
  }
84
- //# sourceMappingURL=theme.js.map
84
+ //# sourceMappingURL=linx-theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-theme.js","sourceRoot":"","sources":["../../src/lib/linx-theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,UAAU,GAAG;IACjB,OAAO,EAAE,6HAA6H;IACtI,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE;QACJ,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,SAAS;QACpB,aAAa,EAAE,SAAS;QACxB,aAAa,EAAE,SAAS;QACxB,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,SAAS;KACvB;IACD,MAAM,EAAE;QACN,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,MAAM;QACpB,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE,MAAM;QACb,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,EAAE;QACR,YAAY,EAAE,MAAM;QACpB,UAAU,EAAE,YAAY;QACxB,aAAa,EAAE,WAAW;QAC1B,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,aAAa;QAC9B,iBAAiB,EAAE,EAAE;QACrB,kBAAkB,EAAE,SAAS;QAC7B,aAAa,EAAE,eAAe;QAC9B,aAAa,EAAE,eAAe;QAC9B,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,OAAO;QACpB,iBAAiB,EAAE,MAAM;QACzB,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,MAAM;QACrB,IAAI,EAAE,MAAM;QACZ,YAAY,EAAE,QAAQ;QACtB,aAAa,EAAE,OAAO;QACtB,eAAe,EAAE,KAAK;QACtB,eAAe,EAAE,MAAM;QACvB,aAAa,EAAE,SAAS;QACxB,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,SAAS;QACzB,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,SAAS;QACvB,UAAU,EAAE,SAAS;QACrB,cAAc,EAAE,SAAS;QACzB,iBAAiB,EAAE,SAAS;QAC5B,WAAW,EAAE,UAAU;QACvB,eAAe,EAAE,SAAS;QAC1B,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,SAAS;QACzB,YAAY,EAAE,SAAS;QACvB,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,OAAO;KAClB;CACF,CAAA;AAED,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC1C,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IACzC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAC9C,aAAa,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;IACpE,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -0,0 +1,27 @@
1
+ export const RESERVED_NON_TOP_LEVEL_COMMANDS = new Set([
2
+ 'automode',
3
+ 'chat',
4
+ 'footer',
5
+ 'fork',
6
+ 'help',
7
+ 'model',
8
+ 'new',
9
+ 'pi',
10
+ 'pi-frontend',
11
+ 'resume',
12
+ 'session',
13
+ 'sessions',
14
+ 'status-line',
15
+ 'statusline',
16
+ 'watch',
17
+ ]);
18
+ export function assertDefaultStartupPromptTokenIsAllowed(argv, options = {}) {
19
+ if (!options.rejectReservedPromptCommands || argv.print || argv.backend) {
20
+ return;
21
+ }
22
+ const firstPromptToken = Array.isArray(argv.prompt) ? argv.prompt[0] : undefined;
23
+ if (firstPromptToken && RESERVED_NON_TOP_LEVEL_COMMANDS.has(firstPromptToken)) {
24
+ throw new Error(`Unknown command: ${firstPromptToken}`);
25
+ }
26
+ }
27
+ //# sourceMappingURL=linx-top-level-command-admission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-top-level-command-admission.js","sourceRoot":"","sources":["../../src/lib/linx-top-level-command-admission.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,GAAG,CAAC;IACrD,UAAU;IACV,MAAM;IACN,QAAQ;IACR,MAAM;IACN,MAAM;IACN,OAAO;IACP,KAAK;IACL,IAAI;IACJ,aAAa;IACb,QAAQ;IACR,SAAS;IACT,UAAU;IACV,aAAa;IACb,YAAY;IACZ,OAAO;CACR,CAAC,CAAA;AAYF,MAAM,UAAU,wCAAwC,CACtD,IAAsC,EACtC,UAA+C,EAAE;IAEjD,IAAI,CAAC,OAAO,CAAC,4BAA4B,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACxE,OAAM;IACR,CAAC;IAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAChF,IAAI,gBAAgB,IAAI,+BAA+B,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CAAC,oBAAoB,gBAAgB,EAAE,CAAC,CAAA;IACzD,CAAC;AACH,CAAC"}
@@ -0,0 +1,209 @@
1
+ import { checkForNewLinxVersion, installLinxSelfUpdateAndRestart, LINX_CHANGELOG_URL, LINX_CLI_VERSION, LINX_UPDATE_PACKAGE_NAME, } from './linx-self-update.js';
2
+ import { openExternalUrl } from './linx-external-url.js';
3
+ import { canChooseLinxInteractiveExtensionSelectorOption, chooseLinxInteractiveExtensionSelectorOption, } from './linx-interactive-extension-selector-host.js';
4
+ import { normalizeSelectorChoice } from './linx-selector-choice.js';
5
+ import { registerLinxInteractiveRunHandler } from './linx-interactive-run-router.js';
6
+ import { registerLinxInteractiveUpdateNotificationHandler, registerLinxInteractiveVersionCheckHandler, } from './linx-interactive-update-router.js';
7
+ import { appendLinxInteractiveChatText } from './linx-interactive-chat-text-host.js';
8
+ import { showLinxInteractiveStatus } from './linx-interactive-status-display.js';
9
+ import { showLinxInteractiveError } from './linx-interactive-error-display.js';
10
+ import { getLinxInteractiveUpdateState } from './linx-interactive-update-state-host.js';
11
+ const UPDATE_OPTION_INSTALL = 'Install update and restart';
12
+ const UPDATE_OPTION_CHANGELOG = 'Open changelog';
13
+ const UPDATE_OPTION_LATER = 'Later';
14
+ export function installLinxUpdateNotification(interactive, options = {}) {
15
+ patchVersionCheck(interactive);
16
+ patchUpdateNotification(interactive, options);
17
+ }
18
+ export async function checkAndShowLinxUpdate(interactive, options = {}) {
19
+ const latest = await checkForNewLinxVersion();
20
+ if (!latest) {
21
+ if (options.manual) {
22
+ showLinxInteractiveStatus(interactive, `LinX ${LINX_CLI_VERSION} is up to date.`);
23
+ }
24
+ return;
25
+ }
26
+ const notification = requestLinxUpdateNotification(interactive, latest, {
27
+ ...options,
28
+ force: options.manual === true,
29
+ });
30
+ if (options.manual === true) {
31
+ await notification;
32
+ }
33
+ }
34
+ export function replayDeferredLinxUpdateNotification(interactive, options = {}) {
35
+ const updateState = getLinxInteractiveUpdateState(interactive);
36
+ const version = normalizeLinxUpdateVersion(updateState.deferredUpdateVersion);
37
+ if (!version || shouldDeferLinxUpdateNotification(options)) {
38
+ return;
39
+ }
40
+ updateState.deferredUpdateVersion = undefined;
41
+ startLinxUpdateSelectorInBackground(interactive, version);
42
+ }
43
+ function patchVersionCheck(interactive) {
44
+ installLinxUpstreamPiUpdateSuppression(interactive);
45
+ registerLinxInteractiveVersionCheckHandler(interactive, {
46
+ name: 'linx-update-notification:check-linx-version',
47
+ priority: 0,
48
+ async handler() {
49
+ const version = await checkForNewLinxVersion();
50
+ return version ? { handled: true, version } : { handled: true };
51
+ },
52
+ });
53
+ }
54
+ function installLinxUpstreamPiUpdateSuppression(interactive) {
55
+ registerLinxInteractiveRunHandler(interactive, {
56
+ name: 'linx-update-notification:suppress-upstream-pi-update',
57
+ priority: 0,
58
+ handler({ interactive: runInteractive }) {
59
+ getLinxInteractiveUpdateState(runInteractive).suppressUpstreamPiUpdate = true;
60
+ },
61
+ });
62
+ }
63
+ function patchUpdateNotification(interactive, options) {
64
+ registerLinxInteractiveUpdateNotificationHandler(interactive, {
65
+ name: 'linx-update-notification:show-linx-update',
66
+ priority: 0,
67
+ handler({ interactive: target, newVersion }) {
68
+ if (getLinxInteractiveUpdateState(target).suppressUpstreamPiUpdate) {
69
+ return true;
70
+ }
71
+ const normalizedVersion = normalizeLinxUpdateVersion(newVersion);
72
+ if (!normalizedVersion) {
73
+ return true;
74
+ }
75
+ startLinxUpdateNotificationInBackground(target, normalizedVersion, options);
76
+ return true;
77
+ },
78
+ });
79
+ }
80
+ export function scheduleLinxVersionCheckAfterInit(interactive, options = {}) {
81
+ const updateState = getLinxInteractiveUpdateState(interactive);
82
+ if (updateState.updateCheckScheduled) {
83
+ return;
84
+ }
85
+ updateState.updateCheckScheduled = true;
86
+ queueMicrotask(() => {
87
+ void checkForNewLinxVersion()
88
+ .then((latest) => {
89
+ if (!latest) {
90
+ return;
91
+ }
92
+ startLinxUpdateNotificationInBackground(interactive, latest, options);
93
+ })
94
+ .catch(() => undefined);
95
+ });
96
+ }
97
+ async function showLinxUpdateSelector(interactive, newVersion) {
98
+ const updateState = getLinxInteractiveUpdateState(interactive);
99
+ if (updateState.updateInProgress) {
100
+ return;
101
+ }
102
+ updateState.updateInProgress = true;
103
+ try {
104
+ const title = [
105
+ 'LinX update available',
106
+ `Current ${LINX_CLI_VERSION} -> latest ${newVersion}`,
107
+ 'Choose how to handle this update.',
108
+ ].join('\n');
109
+ const options = [UPDATE_OPTION_LATER, UPDATE_OPTION_INSTALL, UPDATE_OPTION_CHANGELOG];
110
+ const rawSelected = canChooseLinxInteractiveExtensionSelectorOption(interactive)
111
+ ? await chooseLinxInteractiveExtensionSelectorOption(interactive, title, options)
112
+ : undefined;
113
+ const selected = normalizeSelectorChoice(rawSelected, options);
114
+ if (selected === UPDATE_OPTION_INSTALL) {
115
+ await installLinxSelfUpdateAndRestart(interactive, newVersion);
116
+ return;
117
+ }
118
+ if (selected === UPDATE_OPTION_CHANGELOG) {
119
+ openExternalUrl(LINX_CHANGELOG_URL, interactive);
120
+ showLinxInteractiveStatus(interactive, `Opened LinX changelog for ${newVersion}.`, { render: false });
121
+ return;
122
+ }
123
+ if (!selected) {
124
+ showLinxUpdateFallback(interactive, newVersion);
125
+ return;
126
+ }
127
+ showLinxInteractiveStatus(interactive, `Skipped LinX ${newVersion} for now.`, { render: false });
128
+ }
129
+ finally {
130
+ updateState.updateInProgress = false;
131
+ }
132
+ }
133
+ function requestLinxUpdateNotification(interactive, newVersion, options = {}) {
134
+ const updateState = getLinxInteractiveUpdateState(interactive);
135
+ if (!options.force && shouldDeferLinxUpdateNotification(options)) {
136
+ updateState.deferredUpdateVersion = newVersion;
137
+ return;
138
+ }
139
+ updateState.deferredUpdateVersion = undefined;
140
+ return showLinxUpdateSelector(interactive, newVersion);
141
+ }
142
+ function startLinxUpdateNotificationInBackground(interactive, newVersion, options = {}) {
143
+ try {
144
+ const result = requestLinxUpdateNotification(interactive, newVersion, options);
145
+ catchLinxBackgroundUpdateError(interactive, result);
146
+ }
147
+ catch (error) {
148
+ reportLinxBackgroundUpdateError(interactive, error);
149
+ }
150
+ }
151
+ function startLinxUpdateSelectorInBackground(interactive, newVersion) {
152
+ try {
153
+ catchLinxBackgroundUpdateError(interactive, showLinxUpdateSelector(interactive, newVersion));
154
+ }
155
+ catch (error) {
156
+ reportLinxBackgroundUpdateError(interactive, error);
157
+ }
158
+ }
159
+ function catchLinxBackgroundUpdateError(interactive, result) {
160
+ if (!result || typeof result.catch !== 'function') {
161
+ return;
162
+ }
163
+ void result.catch((error) => {
164
+ reportLinxBackgroundUpdateError(interactive, error);
165
+ });
166
+ }
167
+ function reportLinxBackgroundUpdateError(interactive, error) {
168
+ const message = error instanceof Error ? error.message : String(error);
169
+ showLinxInteractiveError(interactive, `LinX update failed: ${message}`);
170
+ }
171
+ function shouldDeferLinxUpdateNotification(options) {
172
+ return options.shouldDefer?.() === true;
173
+ }
174
+ function normalizeLinxUpdateVersion(value) {
175
+ const direct = normalizeNonEmptyString(value);
176
+ if (direct) {
177
+ return direct;
178
+ }
179
+ if (!isRecord(value)) {
180
+ return undefined;
181
+ }
182
+ for (const key of ['version', 'latest', 'latestVersion', 'packageVersion', 'newVersion']) {
183
+ const nested = normalizeNonEmptyString(value[key]);
184
+ if (nested) {
185
+ return nested;
186
+ }
187
+ }
188
+ return undefined;
189
+ }
190
+ function showLinxUpdateFallback(interactive, newVersion) {
191
+ const lines = [
192
+ '\x1b[1m\x1b[33mLinX update available\x1b[39m\x1b[22m',
193
+ `\x1b[2mCurrent ${LINX_CLI_VERSION} -> latest ${newVersion}\x1b[22m`,
194
+ `\x1b[2mRun \x1b[22m\x1b[36mnpm install -g ${LINX_UPDATE_PACKAGE_NAME}@latest\x1b[39m\x1b[2m if this terminal cannot show the update selector.\x1b[22m`,
195
+ `\x1b[2mChangelog: \x1b[22m\x1b[36m${LINX_CHANGELOG_URL}\x1b[39m`,
196
+ ];
197
+ appendLinxInteractiveChatText(interactive, lines.join('\n'));
198
+ }
199
+ function normalizeNonEmptyString(value) {
200
+ if (typeof value !== 'string') {
201
+ return undefined;
202
+ }
203
+ const normalized = value.trim();
204
+ return normalized || undefined;
205
+ }
206
+ function isRecord(value) {
207
+ return typeof value === 'object' && value !== null;
208
+ }
209
+ //# sourceMappingURL=linx-update-notification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-update-notification.js","sourceRoot":"","sources":["../../src/lib/linx-update-notification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ import { basename } from 'node:path';
2
+ import { keyHint, rawKeyHint } from '@earendil-works/pi-coding-agent';
3
+ import { truncateToWidth, visibleWidth, wrapTextWithAnsi } from '@earendil-works/pi-tui';
4
+ import { LINX_TUI_KEYMAP_COMMAND, LINX_TUI_KEYMAP_LABEL, LINX_TUI_LOGIN_COMMAND } from './linx-tui-contract.js';
5
+ import { loadCredentials } from './credentials-store.js';
6
+ import { extractUsernameFromWebId, resolveProfileDisplayName } from './profile-identity.js';
7
+ import { suppressPodStatusOutput } from './pod-status-output.js';
8
+ import { LINX_CLI_VERSION } from './linx-self-update.js';
9
+ import { resolveLinxInteractiveRuntimeProviderLabel } from './linx-interactive-runtime-host.js';
10
+ import { registerLinxTerminalTitleHandler, requestLinxTerminalTitleRefresh, setLinxTerminalTitle } from './linx-terminal-title-router.js';
11
+ import { invalidateLinxInteractiveHeader, replaceLinxInteractiveHeader } from './linx-interactive-header-host.js';
12
+ import { resolveLinxSessionCwd, resolveLinxSessionId, resolveLinxSessionModelId, resolveLinxSessionName } from './linx-session-metadata.js';
13
+ export function installLinxWelcomeHeader(interactive) {
14
+ registerLinxTerminalTitleHandler(interactive, {
15
+ name: 'linx-welcome-header:terminal-title',
16
+ priority: 0,
17
+ handler({ interactive: titleInteractive }) {
18
+ setLinxWelcomeTerminalTitle(titleInteractive);
19
+ },
20
+ });
21
+ }
22
+ function setLinxWelcomeTerminalTitle(interactive) {
23
+ const cwd = resolveLinxSessionCwd({ interactive }, process.cwd());
24
+ const sessionName = resolveLinxSessionName({ interactive });
25
+ const suffix = sessionName ? `${sessionName} - ${basename(cwd)}` : basename(cwd);
26
+ setLinxTerminalTitle(interactive, `LinX - ${suffix}`);
27
+ }
28
+ export function renderLinxWelcomeHeaderAfterInit(interactive) {
29
+ const quietStartup = interactive?.options?.verbose ? false : interactive?.settingsManager?.getQuietStartup?.();
30
+ if (quietStartup) {
31
+ return;
32
+ }
33
+ let profileDisplayName = null;
34
+ const replacement = new LinxWelcomeCard(() => buildLinxWelcomeCardState(interactive, profileDisplayName));
35
+ replaceLinxInteractiveHeader(interactive, replacement);
36
+ requestLinxTerminalTitleRefresh(interactive);
37
+ void suppressPodStatusOutput(() => resolveProfileDisplayName())
38
+ .then((displayName) => {
39
+ if (!displayName || displayName === profileDisplayName) {
40
+ return;
41
+ }
42
+ profileDisplayName = displayName;
43
+ invalidateLinxInteractiveHeader(interactive, replacement);
44
+ })
45
+ .catch(() => undefined);
46
+ }
47
+ class LinxWelcomeCard {
48
+ getState;
49
+ constructor(getState) {
50
+ this.getState = getState;
51
+ }
52
+ invalidate() { }
53
+ render(width) {
54
+ const innerWidth = Math.max(20, width - 4);
55
+ const state = this.getState();
56
+ const titleBlock = [
57
+ `\x1b[1mLinX\x1b[22m \x1b[2mv${LINX_CLI_VERSION}\x1b[22m`,
58
+ `\x1b[1mWelcome back, ${state.username}\x1b[22m`,
59
+ ];
60
+ const rows = [
61
+ renderField('WebID', state.webId, innerWidth),
62
+ renderField('Provider', state.provider, innerWidth),
63
+ renderField('Model', state.model, innerWidth),
64
+ renderField('Workspace', state.workspace, innerWidth),
65
+ renderField('Session', state.session, innerWidth),
66
+ '',
67
+ truncateToWidth(`\x1b[2mNext\x1b[22m ${state.next}`, innerWidth),
68
+ ];
69
+ const headerLines = titleBlock.map((line) => truncateToWidth(line, innerWidth));
70
+ const body = [
71
+ ...headerLines.map((line) => padLine(line, innerWidth)),
72
+ padLine('', innerWidth),
73
+ ...rows.flatMap((line) => wrapAndPad(line, innerWidth)),
74
+ ];
75
+ return [
76
+ `┌${'─'.repeat(innerWidth + 2)}┐`,
77
+ ...body.map((line) => `│ ${line} │`),
78
+ `└${'─'.repeat(innerWidth + 2)}┘`,
79
+ ];
80
+ }
81
+ }
82
+ export function buildLinxWelcomeCardState(interactive, profileDisplayName = null) {
83
+ const credentials = loadCredentials();
84
+ const webId = credentials?.webId ?? 'not logged in';
85
+ const workspace = resolveLinxSessionCwd({ interactive }, process.cwd());
86
+ const sessionId = resolveLinxSessionId({ interactive });
87
+ const sessionName = resolveLinxSessionName({ interactive });
88
+ const session = sessionName && sessionId ? `${sessionName} (${formatSessionId(sessionId)})` : formatSessionId(sessionId);
89
+ const model = resolveLinxSessionModelId({ interactive }) ?? 'unknown-model';
90
+ return {
91
+ webId,
92
+ username: profileDisplayName ?? extractUsernameFromWebId(webId),
93
+ provider: resolveLinxInteractiveRuntimeProviderLabel(interactive),
94
+ model,
95
+ workspace,
96
+ session,
97
+ next: [
98
+ safeKeyHint('tui.input.submit', 'send'),
99
+ safeKeyHint('app.model.select', 'model'),
100
+ safeRawKeyHint(LINX_TUI_LOGIN_COMMAND, 'auth'),
101
+ safeRawKeyHint(LINX_TUI_KEYMAP_COMMAND, LINX_TUI_KEYMAP_LABEL),
102
+ ].join(' \x1b[2m·\x1b[22m '),
103
+ };
104
+ }
105
+ function safeKeyHint(keybinding, description) {
106
+ try {
107
+ return keyHint(keybinding, description);
108
+ }
109
+ catch {
110
+ return `\x1b[2m${keybinding}\x1b[22m \x1b[2m${description}\x1b[22m`;
111
+ }
112
+ }
113
+ function safeRawKeyHint(key, description) {
114
+ try {
115
+ return rawKeyHint(key, description);
116
+ }
117
+ catch {
118
+ return `\x1b[2m${key}\x1b[22m \x1b[2m${description}\x1b[22m`;
119
+ }
120
+ }
121
+ function renderField(label, value, width) {
122
+ const prefix = `\x1b[2m${label}\x1b[22m`;
123
+ const paddedPrefix = prefix + ' '.repeat(Math.max(1, 10 - visibleWidth(prefix)));
124
+ return truncateToWidth(`${paddedPrefix} ${value}`, width);
125
+ }
126
+ function wrapAndPad(line, width) {
127
+ if (!line) {
128
+ return [padLine('', width)];
129
+ }
130
+ const wrapped = wrapTextWithAnsi(line, width);
131
+ return wrapped.length > 0
132
+ ? wrapped.map((entry) => padLine(entry, width))
133
+ : [padLine('', width)];
134
+ }
135
+ function formatSessionId(sessionId) {
136
+ if (typeof sessionId !== 'string' || !sessionId.trim()) {
137
+ return 'new session';
138
+ }
139
+ return sessionId.trim();
140
+ }
141
+ function padLine(line, width) {
142
+ const visible = visibleWidth(line);
143
+ if (visible >= width) {
144
+ return truncateToWidth(line, width);
145
+ }
146
+ return `${line}${' '.repeat(width - visible)}`;
147
+ }
148
+ //# sourceMappingURL=linx-welcome-header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-welcome-header.js","sourceRoot":"","sources":["../../src/lib/linx-welcome-header.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import { existsSync, statSync } from 'node:fs';
2
+ import { resolve } from 'node:path';
3
+ import { showLinxInteractiveError } from './linx-interactive-error-display.js';
4
+ import { showLinxInteractiveStatus } from './linx-interactive-status-display.js';
5
+ import { setLinxShellRuntimeCwd } from './linx-session-cwd-router.js';
6
+ import { resolveLinxSessionCwd } from './linx-session-metadata.js';
7
+ export async function changeInteractiveCwd(interactive, runtime, target) {
8
+ if (!target) {
9
+ showLinxInteractiveStatus(interactive, `Current workspace: ${resolveInteractiveCwd(interactive, runtime)}`);
10
+ return;
11
+ }
12
+ const nextCwd = resolve(resolveInteractiveCwd(interactive, runtime), target);
13
+ if (!existsSync(nextCwd)) {
14
+ showLinxInteractiveError(interactive, `Workspace not found: ${nextCwd}`);
15
+ showLinxInteractiveStatus(interactive, undefined);
16
+ return;
17
+ }
18
+ if (!statSync(nextCwd).isDirectory()) {
19
+ showLinxInteractiveError(interactive, `Workspace is not a directory: ${nextCwd}`);
20
+ showLinxInteractiveStatus(interactive, undefined);
21
+ return;
22
+ }
23
+ process.chdir(nextCwd);
24
+ setRuntimeCwd(interactive, runtime, nextCwd);
25
+ await runtime?.backendCommandRouter?.setCwd?.(nextCwd);
26
+ showLinxInteractiveStatus(interactive, `Workspace changed to ${nextCwd}. Session history stays in the current thread.`);
27
+ }
28
+ export function resolveInteractiveCwd(interactive, runtime) {
29
+ return resolveLinxSessionCwd({ interactive, runtime }, process.cwd());
30
+ }
31
+ export function setRuntimeCwd(interactive, runtime, cwd) {
32
+ setLinxShellRuntimeCwd(interactive, runtime, cwd);
33
+ }
34
+ export function scheduleLinxCwdStartupNotice(interactive, sessionCwd) {
35
+ const storedCwd = resolveLinxSessionCwd({ interactive }, sessionCwd);
36
+ const currentCwd = process.cwd();
37
+ if (currentCwd === storedCwd) {
38
+ return;
39
+ }
40
+ setTimeout(() => {
41
+ process.stdout.write(`\n\x1b[33m Session was at ${storedCwd}\x1b[0m\n` +
42
+ `\x1b[33m You're now at ${currentCwd}\x1b[0m\n`);
43
+ }, 300);
44
+ }
45
+ //# sourceMappingURL=linx-workspace-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linx-workspace-command.js","sourceRoot":"","sources":["../../src/lib/linx-workspace-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAA;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,WAAgB,EAAE,OAAY,EAAE,MAA0B;IACnG,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,yBAAyB,CAAC,WAAW,EAAE,sBAAsB,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,CAAA;QAC3G,OAAM;IACR,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAA;IAC5E,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,wBAAwB,CAAC,WAAW,EAAE,wBAAwB,OAAO,EAAE,CAAC,CAAA;QACxE,yBAAyB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QACjD,OAAM;IACR,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACrC,wBAAwB,CAAC,WAAW,EAAE,iCAAiC,OAAO,EAAE,CAAC,CAAA;QACjF,yBAAyB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QACjD,OAAM;IACR,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACtB,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,MAAM,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,CAAA;IACtD,yBAAyB,CAAC,WAAW,EAAE,wBAAwB,OAAO,gDAAgD,CAAC,CAAA;AACzH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAAgB,EAAE,OAAY;IAClE,OAAO,qBAAqB,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;AACvE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,WAAgB,EAAE,OAAY,EAAE,GAAW;IACvE,sBAAsB,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,WAAgB,EAAE,UAAkB;IAC/E,MAAM,SAAS,GAAG,qBAAqB,CAAC,EAAE,WAAW,EAAE,EAAE,UAAU,CAAC,CAAA;IACpE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IAEhC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAM;IACR,CAAC;IAED,UAAU,CAAC,GAAG,EAAE;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,8BAA8B,SAAS,WAAW;YAClD,4BAA4B,UAAU,WAAW,CAClD,CAAA;IACH,CAAC,EAAE,GAAG,CAAC,CAAA;AACT,CAAC"}
@@ -0,0 +1,25 @@
1
+ export function createNativeBackendCommandRouter(proxy) {
2
+ const executeCommand = proxy?.executeCommand;
3
+ if (!proxy || typeof executeCommand !== 'function') {
4
+ return undefined;
5
+ }
6
+ const setCwd = proxy.setCwd;
7
+ const setSessionControl = proxy.setSessionControl;
8
+ const router = {
9
+ backend: proxy.record.backend,
10
+ execute(input) {
11
+ return executeCommand.call(proxy, input);
12
+ },
13
+ subscribe(listener) {
14
+ return proxy.subscribe(listener);
15
+ },
16
+ };
17
+ if (typeof setCwd === 'function') {
18
+ router.setCwd = (nextCwd) => setCwd.call(proxy, nextCwd);
19
+ }
20
+ if (typeof setSessionControl === 'function') {
21
+ router.setSessionControl = (control) => setSessionControl.call(proxy, control);
22
+ }
23
+ return router;
24
+ }
25
+ //# sourceMappingURL=native-backend-command-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-backend-command-router.js","sourceRoot":"","sources":["../../src/lib/native-backend-command-router.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,gCAAgC,CAC9C,KAAmD;IAEnD,MAAM,cAAc,GAAG,KAAK,EAAE,cAAc,CAAA;IAC5C,IAAI,CAAC,KAAK,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;QACnD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;IAC3B,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAA;IACjD,MAAM,MAAM,GAAyB;QACnC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO;QAC7B,OAAO,CAAC,KAAK;YACX,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC;QACD,SAAS,CAAC,QAAQ;YAChB,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAClC,CAAC;KACF,CAAA;IAED,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,OAAO,iBAAiB,KAAK,UAAU,EAAE,CAAC;QAC5C,MAAM,CAAC,iBAAiB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAChF,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=native-backend-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-backend-proxy.js","sourceRoot":"","sources":["../../src/lib/native-backend-proxy.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ export function createNativeBackendStreamBackend(proxy) {
2
+ if (!proxy) {
3
+ return undefined;
4
+ }
5
+ const sendTurn = proxy.sendTurn;
6
+ return {
7
+ sendTurn(input) {
8
+ return sendTurn.call(proxy, input);
9
+ },
10
+ subscribe(listener) {
11
+ return proxy.subscribe(listener);
12
+ },
13
+ };
14
+ }
15
+ //# sourceMappingURL=native-backend-stream-backend.js.map