@phnx-labs/agents-cli 1.22.113 → 1.22.115

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 (802) hide show
  1. package/CHANGELOG.md +139 -0
  2. package/README.md +32 -113
  3. package/dist/browser.js +0 -0
  4. package/dist/cli/command-registry.d.ts +0 -60
  5. package/dist/cli/command-registry.js +57 -66
  6. package/dist/commands/accounts.d.ts +3 -77
  7. package/dist/commands/accounts.js +13 -366
  8. package/dist/commands/apply.d.ts +0 -4
  9. package/dist/commands/apply.js +3 -3
  10. package/dist/commands/audit.js +1 -1
  11. package/dist/commands/auth.js +0 -2
  12. package/dist/commands/browser-picker.d.ts +3 -6
  13. package/dist/commands/browser-picker.js +2 -2
  14. package/dist/commands/browser-sessions-picker.d.ts +2 -1
  15. package/dist/commands/browser.d.ts +53 -0
  16. package/dist/commands/browser.js +199 -9
  17. package/dist/commands/computer-sessions-picker.d.ts +2 -1
  18. package/dist/commands/computer.d.ts +14 -19
  19. package/dist/commands/computer.js +65 -10
  20. package/dist/commands/config.js +46 -2
  21. package/dist/commands/daemon.d.ts +0 -23
  22. package/dist/commands/daemon.js +1 -1
  23. package/dist/commands/detach-core.d.ts +2 -1
  24. package/dist/commands/detach.d.ts +0 -3
  25. package/dist/commands/detach.js +3 -3
  26. package/dist/commands/doctor.d.ts +2 -3
  27. package/dist/commands/doctor.js +0 -11
  28. package/dist/commands/events.d.ts +1 -3
  29. package/dist/commands/events.js +4 -7
  30. package/dist/commands/exec.d.ts +0 -1
  31. package/dist/commands/exec.js +2 -7
  32. package/dist/commands/feed-watch.js +52 -8
  33. package/dist/commands/feed.d.ts +3 -3
  34. package/dist/commands/feed.js +1 -1
  35. package/dist/commands/focus.d.ts +4 -4
  36. package/dist/commands/focus.js +1 -1
  37. package/dist/commands/go.d.ts +0 -17
  38. package/dist/commands/go.js +2 -19
  39. package/dist/commands/harness-hooks.d.ts +0 -7
  40. package/dist/commands/harness-hooks.js +1 -1
  41. package/dist/commands/harness-wizard.d.ts +2 -2
  42. package/dist/commands/harness.d.ts +3 -8
  43. package/dist/commands/harness.js +1 -1
  44. package/dist/commands/inspect.d.ts +2 -3
  45. package/dist/commands/inspect.js +1 -1
  46. package/dist/commands/logs.js +1 -1
  47. package/dist/commands/mcp.js +8 -83
  48. package/dist/commands/memory.js +4 -47
  49. package/dist/commands/message.d.ts +1 -1
  50. package/dist/commands/message.js +7 -7
  51. package/dist/commands/plugins.js +1 -93
  52. package/dist/commands/projects.d.ts +2 -18
  53. package/dist/commands/projects.js +89 -3
  54. package/dist/commands/repo.js +0 -44
  55. package/dist/commands/resource-view.d.ts +3 -2
  56. package/dist/commands/resume.d.ts +0 -1
  57. package/dist/commands/resume.js +5 -2
  58. package/dist/commands/routines.d.ts +1 -3
  59. package/dist/commands/routines.js +1 -1
  60. package/dist/commands/run-account-picker.d.ts +2 -1
  61. package/dist/commands/run-broadcast.d.ts +2 -1
  62. package/dist/commands/run-device-picker.d.ts +2 -1
  63. package/dist/commands/secrets-passthrough.d.ts +14 -0
  64. package/dist/commands/secrets-passthrough.js +23 -4
  65. package/dist/commands/send.d.ts +4 -4
  66. package/dist/commands/send.js +6 -51
  67. package/dist/commands/sessions-backfill.d.ts +2 -35
  68. package/dist/commands/sessions-backfill.js +1 -1
  69. package/dist/commands/sessions-backup-setup.js +1 -1
  70. package/dist/commands/sessions-bookmark.d.ts +0 -10
  71. package/dist/commands/sessions-bookmark.js +1 -1
  72. package/dist/commands/sessions-inject.d.ts +2 -3
  73. package/dist/commands/sessions-inject.js +8 -17
  74. package/dist/commands/sessions-picker-factory.d.ts +4 -14
  75. package/dist/commands/sessions-picker-factory.js +2 -2
  76. package/dist/commands/sessions-picker.d.ts +3 -9
  77. package/dist/commands/sessions-picker.js +2 -2
  78. package/dist/commands/sessions-resume.d.ts +2 -4
  79. package/dist/commands/sessions-resume.js +0 -6
  80. package/dist/commands/sessions-share.d.ts +5 -7
  81. package/dist/commands/sessions-share.js +98 -49
  82. package/dist/commands/sessions-stats.d.ts +2 -1
  83. package/dist/commands/sessions-stop.d.ts +0 -3
  84. package/dist/commands/sessions-stop.js +1 -1
  85. package/dist/commands/sessions-tail.d.ts +2 -1
  86. package/dist/commands/sessions-trace.d.ts +4 -6
  87. package/dist/commands/sessions-trace.js +1 -1
  88. package/dist/commands/sessions.d.ts +13 -104
  89. package/dist/commands/sessions.js +11 -18
  90. package/dist/commands/setup-browser.js +18 -2
  91. package/dist/commands/setup-computer.js +20 -6
  92. package/dist/commands/setup-mine.d.ts +0 -6
  93. package/dist/commands/setup-mine.js +1 -1
  94. package/dist/commands/setup-secrets.js +24 -4
  95. package/dist/commands/setup-terminal.d.ts +3 -0
  96. package/dist/commands/setup-terminal.js +22 -0
  97. package/dist/commands/setup.d.ts +3 -4
  98. package/dist/commands/setup.js +21 -11
  99. package/dist/commands/skills.js +0 -8
  100. package/dist/commands/ssh.d.ts +6 -0
  101. package/dist/commands/ssh.js +92 -233
  102. package/dist/commands/sync.js +14 -5
  103. package/dist/commands/teams-picker.d.ts +2 -5
  104. package/dist/commands/teams-picker.js +2 -2
  105. package/dist/commands/teams.d.ts +1 -7
  106. package/dist/commands/teams.js +2 -2
  107. package/dist/commands/tmux.d.ts +1 -1
  108. package/dist/commands/tmux.js +1 -1
  109. package/dist/commands/traces.js +1 -1
  110. package/dist/commands/upgrade.d.ts +2 -1
  111. package/dist/commands/utils.d.ts +1 -1
  112. package/dist/commands/utils.js +1 -1
  113. package/dist/lib/account-capabilities.d.ts +2 -1
  114. package/dist/lib/account-catalog.d.ts +4 -13
  115. package/dist/lib/account-catalog.js +1 -1
  116. package/dist/lib/account-registry.d.ts +3 -4
  117. package/dist/lib/account-registry.js +1 -1
  118. package/dist/lib/accounting/account-launch.d.ts +4 -3
  119. package/dist/lib/accounting/account-pool.d.ts +2 -1
  120. package/dist/lib/accounting/rotate.d.ts +3 -9
  121. package/dist/lib/accounting/rotate.js +2 -14
  122. package/dist/lib/accounting/usage-sync.d.ts +5 -4
  123. package/dist/lib/accounting/usage.d.ts +7 -31
  124. package/dist/lib/accounting/usage.js +4 -4
  125. package/dist/lib/accounts/add.d.ts +0 -5
  126. package/dist/lib/accounts/add.js +1 -7
  127. package/dist/lib/accounts/migrate.d.ts +8 -8
  128. package/dist/lib/accounts/migrate.js +1 -1
  129. package/dist/lib/acp/client.d.ts +3 -2
  130. package/dist/lib/acp/harnesses.d.ts +2 -2
  131. package/dist/lib/acp/harnesses.js +1 -1
  132. package/dist/lib/acp/run.d.ts +2 -1
  133. package/dist/lib/actor.d.ts +3 -2
  134. package/dist/lib/add-dir.d.ts +2 -17
  135. package/dist/lib/add-dir.js +2 -6
  136. package/dist/lib/address.d.ts +56 -0
  137. package/dist/lib/address.js +143 -0
  138. package/dist/lib/agent-spec/agents.d.ts +12 -28
  139. package/dist/lib/agent-spec/agents.js +2 -6
  140. package/dist/lib/agent-spec/primitives.d.ts +0 -7
  141. package/dist/lib/agent-spec/primitives.js +0 -6
  142. package/dist/lib/agent-spec/types.d.ts +2 -1
  143. package/dist/lib/analytics/dashboard.d.ts +1 -5
  144. package/dist/lib/analytics/dashboard.js +0 -2
  145. package/dist/lib/analytics/mix-commands.d.ts +0 -7
  146. package/dist/lib/analytics/mix-commands.js +3 -3
  147. package/dist/lib/analytics/recipes.d.ts +0 -12
  148. package/dist/lib/analytics/recipes.js +7 -31
  149. package/dist/lib/analytics/usage-db.d.ts +5 -32
  150. package/dist/lib/analytics/usage-db.js +1 -70
  151. package/dist/lib/answer-router.d.ts +7 -6
  152. package/dist/lib/answer-router.js +5 -11
  153. package/dist/lib/artifact-actions.d.ts +0 -4
  154. package/dist/lib/artifacts-client.d.ts +20 -0
  155. package/dist/lib/artifacts-client.js +46 -0
  156. package/dist/lib/ask-classifier.d.ts +3 -4
  157. package/dist/lib/ask-classifier.js +0 -7
  158. package/dist/lib/auth-health.d.ts +3 -46
  159. package/dist/lib/auth-health.js +3 -3
  160. package/dist/lib/auth-mint.d.ts +6 -6
  161. package/dist/lib/auth-mint.js +7 -7
  162. package/dist/lib/bench/runner.d.ts +2 -2
  163. package/dist/lib/bench/runner.js +1 -1
  164. package/dist/lib/bench/storage.d.ts +0 -1
  165. package/dist/lib/bench/storage.js +1 -1
  166. package/dist/lib/boot-profile.d.ts +0 -2
  167. package/dist/lib/boot-profile.js +0 -4
  168. package/dist/lib/brand.d.ts +0 -6
  169. package/dist/lib/brand.js +1 -1
  170. package/dist/lib/browser/arc-discovery.d.ts +4 -12
  171. package/dist/lib/browser/arc-discovery.js +1 -1
  172. package/dist/lib/browser/cdp.d.ts +1 -1
  173. package/dist/lib/browser/chrome.d.ts +2 -2
  174. package/dist/lib/browser/chrome.js +0 -4
  175. package/dist/lib/browser/chromium-discovery.d.ts +3 -2
  176. package/dist/lib/browser/drivers/arc.d.ts +3 -20
  177. package/dist/lib/browser/drivers/arc.js +2 -7
  178. package/dist/lib/browser/drivers/firefox.d.ts +2 -6
  179. package/dist/lib/browser/drivers/firefox.js +1 -1
  180. package/dist/lib/browser/drivers/local.d.ts +2 -1
  181. package/dist/lib/browser/drivers/ssh.d.ts +2 -3
  182. package/dist/lib/browser/drivers/ssh.js +0 -7
  183. package/dist/lib/browser/firefox-discovery.d.ts +4 -3
  184. package/dist/lib/browser/har.d.ts +8 -7
  185. package/dist/lib/browser/hygiene.d.ts +2 -3
  186. package/dist/lib/browser/hygiene.js +1 -1
  187. package/dist/lib/browser/ipc.d.ts +4 -3
  188. package/dist/lib/browser/ipc.js +1 -1
  189. package/dist/lib/browser/login-detection.d.ts +1 -8
  190. package/dist/lib/browser/registry.d.ts +2 -1
  191. package/dist/lib/browser/remote-control.d.ts +0 -7
  192. package/dist/lib/browser/remote-control.js +2 -2
  193. package/dist/lib/browser/resolve-target.d.ts +2 -6
  194. package/dist/lib/browser/resolve-target.js +3 -3
  195. package/dist/lib/browser/runtime-state.d.ts +59 -4
  196. package/dist/lib/browser/runtime-state.js +99 -18
  197. package/dist/lib/browser/service.d.ts +4 -4
  198. package/dist/lib/browser/service.js +21 -1
  199. package/dist/lib/browser/sessions-list.d.ts +0 -10
  200. package/dist/lib/browser/sessions-list.js +3 -3
  201. package/dist/lib/browser/stream.d.ts +2 -1
  202. package/dist/lib/browser/task-index.d.ts +4 -4
  203. package/dist/lib/browser/task-index.js +1 -1
  204. package/dist/lib/browser/types.d.ts +0 -20
  205. package/dist/lib/browser/types.js +1 -34
  206. package/dist/lib/browser/upload.d.ts +0 -27
  207. package/dist/lib/budget/ledger.d.ts +0 -2
  208. package/dist/lib/budget/ledger.js +1 -1
  209. package/dist/lib/budget/live-cloud.d.ts +2 -1
  210. package/dist/lib/budget/preflight.d.ts +3 -5
  211. package/dist/lib/budget/preflight.js +1 -1
  212. package/dist/lib/catchup.d.ts +2 -1
  213. package/dist/lib/channels/owner-forward.d.ts +5 -4
  214. package/dist/lib/channels/owner-sink.js +2 -2
  215. package/dist/lib/channels/providers/desktop.js +1 -1
  216. package/dist/lib/channels/providers/rush.d.ts +2 -1
  217. package/dist/lib/channels/registry.d.ts +1 -1
  218. package/dist/lib/channels/registry.js +1 -1
  219. package/dist/lib/channels/resolve.d.ts +3 -2
  220. package/dist/lib/channels/send.d.ts +5 -4
  221. package/dist/lib/cli-resources.d.ts +3 -9
  222. package/dist/lib/cli-resources.js +4 -2
  223. package/dist/lib/cloud/cursor.d.ts +1 -2
  224. package/dist/lib/cloud/cursor.js +1 -1
  225. package/dist/lib/cloud/dispatch.d.ts +2 -1
  226. package/dist/lib/cloud/dispatch.js +1 -1
  227. package/dist/lib/cloud/factory.d.ts +0 -2
  228. package/dist/lib/cloud/factory.js +1 -1
  229. package/dist/lib/cloud/rush.d.ts +3 -11
  230. package/dist/lib/cloud/rush.js +1 -1
  231. package/dist/lib/cloud/session-index.d.ts +2 -1
  232. package/dist/lib/cloud/types.d.ts +2 -1
  233. package/dist/lib/cloudflare/creds.d.ts +10 -0
  234. package/dist/lib/cloudflare/creds.js +46 -0
  235. package/dist/lib/cloudflare/provision.d.ts +35 -0
  236. package/dist/lib/cloudflare/provision.js +144 -0
  237. package/dist/lib/codex-policy.d.ts +2 -1
  238. package/dist/lib/commands.d.ts +7 -7
  239. package/dist/lib/commands.js +1 -1
  240. package/dist/lib/comms-render.d.ts +1 -1
  241. package/dist/lib/computer/context.d.ts +11 -3
  242. package/dist/lib/computer/context.js +2 -2
  243. package/dist/lib/computer/policy.d.ts +0 -12
  244. package/dist/lib/computer/policy.js +1 -1
  245. package/dist/lib/computer/sessions-list.d.ts +55 -0
  246. package/dist/lib/computer/sessions-list.js +168 -1
  247. package/dist/lib/computer-client.d.ts +3 -3
  248. package/dist/lib/computer-client.js +0 -1
  249. package/dist/lib/concurrency.d.ts +2 -1
  250. package/dist/lib/config-keys.d.ts +16 -3
  251. package/dist/lib/config-keys.js +47 -2
  252. package/dist/lib/convert.d.ts +0 -12
  253. package/dist/lib/convert.js +1 -12
  254. package/dist/lib/crabbox/cli.d.ts +6 -24
  255. package/dist/lib/crabbox/cli.js +2 -28
  256. package/dist/lib/crabbox/lease.d.ts +5 -6
  257. package/dist/lib/crabbox/lease.js +1 -1
  258. package/dist/lib/crabbox/progress.d.ts +2 -1
  259. package/dist/lib/crabbox/setup-copy.d.ts +2 -3
  260. package/dist/lib/crabbox/setup-copy.js +1 -1
  261. package/dist/lib/daemon/account-state-daemon-service.d.ts +1 -1
  262. package/dist/lib/daemon/attention-notify-service.d.ts +2 -1
  263. package/dist/lib/daemon/catchup-service.d.ts +2 -1
  264. package/dist/lib/daemon/daemon.d.ts +4 -4
  265. package/dist/lib/daemon/daemon.js +9 -2
  266. package/dist/lib/daemon/feed-stream-service.d.ts +23 -0
  267. package/dist/lib/daemon/feed-stream-service.js +40 -0
  268. package/dist/lib/daemon/harness-update-service.d.ts +2 -19
  269. package/dist/lib/daemon/harness-update-service.js +3 -3
  270. package/dist/lib/daemon/runner.d.ts +3 -3
  271. package/dist/lib/daemon/self-update-service.d.ts +1 -16
  272. package/dist/lib/daemon/self-update-service.js +6 -6
  273. package/dist/lib/daemon/state-dir-check-service.d.ts +2 -1
  274. package/dist/lib/daemon/supervisor.d.ts +3 -2
  275. package/dist/lib/daemon-services.d.ts +3 -2
  276. package/dist/lib/daemon-services.js +5 -0
  277. package/dist/lib/daemon-webhooks.d.ts +1 -1
  278. package/dist/lib/deeplink/register.d.ts +3 -13
  279. package/dist/lib/deeplink/register.js +3 -3
  280. package/dist/lib/deeplink/url.d.ts +3 -2
  281. package/dist/lib/device-config.d.ts +4 -15
  282. package/dist/lib/device-config.js +164 -8
  283. package/dist/lib/devices/connect.d.ts +51 -6
  284. package/dist/lib/devices/connect.js +169 -21
  285. package/dist/lib/devices/discovery-policy.d.ts +3 -2
  286. package/dist/lib/devices/doctor-findings.js +1 -1
  287. package/dist/lib/devices/doctor-overview-cache.d.ts +3 -2
  288. package/dist/lib/devices/fleet-divergence.d.ts +2 -1
  289. package/dist/lib/devices/fleet.d.ts +3 -4
  290. package/dist/lib/devices/fleet.js +1 -1
  291. package/dist/lib/devices/harness-inventory.d.ts +3 -2
  292. package/dist/lib/devices/health-report.d.ts +3 -2
  293. package/dist/lib/devices/health.d.ts +1 -8
  294. package/dist/lib/devices/health.js +1 -1
  295. package/dist/lib/devices/interactive-host.d.ts +0 -2
  296. package/dist/lib/devices/interactive-host.js +1 -1
  297. package/dist/lib/devices/known-hosts.d.ts +2 -20
  298. package/dist/lib/devices/known-hosts.js +2 -2
  299. package/dist/lib/devices/pool.d.ts +2 -1
  300. package/dist/lib/devices/resolve-target.d.ts +2 -2
  301. package/dist/lib/devices/rollout-verify.d.ts +3 -2
  302. package/dist/lib/devices/stats-cache.d.ts +3 -2
  303. package/dist/lib/devices/sync.d.ts +6 -5
  304. package/dist/lib/devices/worker-pick.d.ts +3 -12
  305. package/dist/lib/devices/worker-pick.js +1 -1
  306. package/dist/lib/diff-text.d.ts +2 -1
  307. package/dist/lib/doctor-diff.d.ts +2 -1
  308. package/dist/lib/drift-sync.d.ts +3 -2
  309. package/dist/lib/drift.d.ts +3 -3
  310. package/dist/lib/drift.js +1 -1
  311. package/dist/lib/event-families.d.ts +0 -6
  312. package/dist/lib/event-families.js +3 -3
  313. package/dist/lib/event-provenance.d.ts +2 -1
  314. package/dist/lib/events-ingest.d.ts +4 -3
  315. package/dist/lib/exec-account-home.d.ts +2 -4
  316. package/dist/lib/exec-account-home.js +1 -1
  317. package/dist/lib/exec-bounded.d.ts +3 -4
  318. package/dist/lib/exec-bounded.js +1 -1
  319. package/dist/lib/exec.d.ts +6 -18
  320. package/dist/lib/exec.js +1 -1
  321. package/dist/lib/factory/snapshot.d.ts +2 -2
  322. package/dist/lib/factory/snapshot.js +1 -1
  323. package/dist/lib/feed/activity-stream.d.ts +2 -5
  324. package/dist/lib/feed/activity-stream.js +2 -2
  325. package/dist/lib/feed/activity.d.ts +8 -33
  326. package/dist/lib/feed/activity.js +8 -8
  327. package/dist/lib/feed/answer.d.ts +3 -2
  328. package/dist/lib/feed/attention.js +5 -1
  329. package/dist/lib/feed/envelope.d.ts +79 -0
  330. package/dist/lib/feed/envelope.js +23 -0
  331. package/dist/lib/feed/events.d.ts +8 -47
  332. package/dist/lib/feed/events.js +9 -141
  333. package/dist/lib/feed/feed.d.ts +9 -42
  334. package/dist/lib/feed/feed.js +1 -60
  335. package/dist/lib/feed/hub-server.d.ts +86 -0
  336. package/dist/lib/feed/hub-server.js +334 -0
  337. package/dist/lib/feed/hub.d.ts +95 -0
  338. package/dist/lib/feed/hub.js +255 -0
  339. package/dist/lib/feed/pr-status.d.ts +0 -2
  340. package/dist/lib/feed/pr-status.js +1 -5
  341. package/dist/lib/feed/tool-activity.d.ts +108 -0
  342. package/dist/lib/feed/tool-activity.js +313 -0
  343. package/dist/lib/feed/tools.d.ts +198 -0
  344. package/dist/lib/feed/tools.js +265 -0
  345. package/dist/lib/feed/watch.d.ts +51 -52
  346. package/dist/lib/feed/watch.js +147 -17
  347. package/dist/lib/feed-broadcast.d.ts +5 -47
  348. package/dist/lib/feed-broadcast.js +9 -9
  349. package/dist/lib/feed-outcome.d.ts +3 -6
  350. package/dist/lib/feed-outcome.js +2 -2
  351. package/dist/lib/feed-policy.d.ts +5 -6
  352. package/dist/lib/feed-policy.js +2 -2
  353. package/dist/lib/feed-post.d.ts +3 -4
  354. package/dist/lib/feed-post.js +1 -1
  355. package/dist/lib/feed-ranking.d.ts +2 -2
  356. package/dist/lib/feed-ranking.js +1 -1
  357. package/dist/lib/fleet/apply.d.ts +5 -6
  358. package/dist/lib/fleet/apply.js +4 -4
  359. package/dist/lib/fleet/manifest.d.ts +2 -1
  360. package/dist/lib/fleet/remote-login.d.ts +18 -36
  361. package/dist/lib/fleet/remote-login.js +20 -19
  362. package/dist/lib/fleet/types.d.ts +0 -8
  363. package/dist/lib/fleet-cache.d.ts +1 -18
  364. package/dist/lib/fleet-cache.js +0 -5
  365. package/dist/lib/fleet-shared-repo-sync.d.ts +3 -3
  366. package/dist/lib/fleet-shared-repo-sync.js +1 -1
  367. package/dist/lib/fleet-shared-state.d.ts +3 -2
  368. package/dist/lib/format.d.ts +3 -2
  369. package/dist/lib/format.js +1 -1
  370. package/dist/lib/friction-heuristics.d.ts +2 -1
  371. package/dist/lib/fs-walk.d.ts +2 -1
  372. package/dist/lib/fuzzy.d.ts +2 -1
  373. package/dist/lib/gemini-settings.d.ts +0 -1
  374. package/dist/lib/gemini-settings.js +1 -1
  375. package/dist/lib/git.d.ts +7 -81
  376. package/dist/lib/git.js +2 -199
  377. package/dist/lib/github/gh-overload.d.ts +0 -4
  378. package/dist/lib/github/gh-overload.js +2 -2
  379. package/dist/lib/github/project-prs.d.ts +118 -0
  380. package/dist/lib/github/project-prs.js +173 -0
  381. package/dist/lib/github/rest.d.ts +2 -1
  382. package/dist/lib/harness/exec-config-version.d.ts +2 -1
  383. package/dist/lib/harness-auth-capabilities.d.ts +5 -4
  384. package/dist/lib/harness-connection-test.d.ts +2 -1
  385. package/dist/lib/heal.d.ts +3 -20
  386. package/dist/lib/heal.js +2 -39
  387. package/dist/lib/help.d.ts +3 -2
  388. package/dist/lib/helper-download.d.ts +0 -12
  389. package/dist/lib/helper-download.js +2 -2
  390. package/dist/lib/helper-versions.d.ts +2 -1
  391. package/dist/lib/helper-versions.js +1 -1
  392. package/dist/lib/hooks/install.d.ts +8 -49
  393. package/dist/lib/hooks/install.js +2 -96
  394. package/dist/lib/hooks/match.d.ts +2 -1
  395. package/dist/lib/hosts/credential-transport.d.ts +0 -2
  396. package/dist/lib/hosts/credential-transport.js +1 -1
  397. package/dist/lib/hosts/dispatch.d.ts +2 -24
  398. package/dist/lib/hosts/dispatch.js +2 -2
  399. package/dist/lib/hosts/logs.d.ts +2 -1
  400. package/dist/lib/hosts/passthrough.d.ts +1 -1
  401. package/dist/lib/hosts/passthrough.js +0 -1
  402. package/dist/lib/hosts/progress.d.ts +0 -5
  403. package/dist/lib/hosts/progress.js +1 -1
  404. package/dist/lib/hosts/ready.d.ts +3 -4
  405. package/dist/lib/hosts/ready.js +0 -8
  406. package/dist/lib/hosts/reconcile.d.ts +2 -8
  407. package/dist/lib/hosts/reconcile.js +1 -1
  408. package/dist/lib/hosts/reconnect.d.ts +4 -11
  409. package/dist/lib/hosts/reconnect.js +2 -2
  410. package/dist/lib/hosts/registry.d.ts +1 -1
  411. package/dist/lib/hosts/remote-cmd.d.ts +55 -4
  412. package/dist/lib/hosts/remote-cmd.js +125 -8
  413. package/dist/lib/hosts/remote-cmd.test-fixture.d.ts +2 -0
  414. package/dist/lib/hosts/remote-cmd.test-fixture.js +22 -0
  415. package/dist/lib/hosts/session-index.d.ts +3 -2
  416. package/dist/lib/hosts/ssh-config.d.ts +2 -3
  417. package/dist/lib/hosts/ssh-config.js +0 -10
  418. package/dist/lib/humans.d.ts +0 -2
  419. package/dist/lib/humans.js +2 -2
  420. package/dist/lib/import.d.ts +4 -3
  421. package/dist/lib/installations/installation-lock.d.ts +0 -2
  422. package/dist/lib/installations/installation-lock.js +2 -2
  423. package/dist/lib/installations/launch-gate.d.ts +0 -9
  424. package/dist/lib/installations/launch-gate.js +1 -1
  425. package/dist/lib/installations/migrate.d.ts +0 -11
  426. package/dist/lib/installations/migrate.js +1 -1
  427. package/dist/lib/installations/shims.d.ts +1 -1
  428. package/dist/lib/installations/shims.js +2 -2
  429. package/dist/lib/installations/update-runtime.js +1 -1
  430. package/dist/lib/linear-cache.d.ts +2 -1
  431. package/dist/lib/linux-userns.d.ts +2 -3
  432. package/dist/lib/linux-userns.js +0 -4
  433. package/dist/lib/loop.d.ts +2 -1
  434. package/dist/lib/mailbox-gc.d.ts +2 -1
  435. package/dist/lib/mailbox-target.d.ts +2 -1
  436. package/dist/lib/mailbox.d.ts +0 -6
  437. package/dist/lib/mailbox.js +1 -1
  438. package/dist/lib/manifest.d.ts +0 -14
  439. package/dist/lib/manifest.js +2 -2
  440. package/dist/lib/mcp-registry.d.ts +2 -1
  441. package/dist/lib/mcp.js +17 -11
  442. package/dist/lib/memory.d.ts +2 -13
  443. package/dist/lib/memory.js +4 -4
  444. package/dist/lib/menubar/download-menubar.d.ts +0 -2
  445. package/dist/lib/menubar/download-menubar.js +1 -5
  446. package/dist/lib/menubar/install-menubar.d.ts +3 -14
  447. package/dist/lib/menubar/install-menubar.js +3 -3
  448. package/dist/lib/menubar/migrate-prefs.d.ts +53 -0
  449. package/dist/lib/menubar/migrate-prefs.js +168 -0
  450. package/dist/lib/menubar/resolve-version.d.ts +1 -9
  451. package/dist/lib/menubar/resolve-version.js +4 -4
  452. package/dist/lib/menubar/snapshot.d.ts +24 -2
  453. package/dist/lib/menubar/snapshot.js +26 -0
  454. package/dist/lib/model-tier-overrides.d.ts +3 -2
  455. package/dist/lib/monitors/config.d.ts +0 -2
  456. package/dist/lib/monitors/config.js +0 -4
  457. package/dist/lib/monitors/engine.d.ts +1 -1
  458. package/dist/lib/monitors/remote.d.ts +3 -2
  459. package/dist/lib/monitors/sources/webhook.d.ts +2 -15
  460. package/dist/lib/monitors/sources/webhook.js +1 -38
  461. package/dist/lib/monitors/state.d.ts +4 -7
  462. package/dist/lib/monitors/state.js +2 -2
  463. package/dist/lib/notify.d.ts +1 -1
  464. package/dist/lib/notify.js +1 -1
  465. package/dist/lib/onepassword.d.ts +5 -14
  466. package/dist/lib/onepassword.js +0 -64
  467. package/dist/lib/open-url.d.ts +3 -2
  468. package/dist/lib/openclaw-keychain.d.ts +4 -17
  469. package/dist/lib/openclaw-keychain.js +3 -33
  470. package/dist/lib/operator.d.ts +2 -2
  471. package/dist/lib/operator.js +1 -1
  472. package/dist/lib/output/git-output.d.ts +4 -14
  473. package/dist/lib/output/git-output.js +1 -1
  474. package/dist/lib/owner-message.d.ts +3 -29
  475. package/dist/lib/owner-message.js +3 -3
  476. package/dist/lib/packages/output-home.d.ts +2 -4
  477. package/dist/lib/packages/output-home.js +2 -2
  478. package/dist/lib/perf/db.d.ts +0 -2
  479. package/dist/lib/perf/db.js +2 -7
  480. package/dist/lib/permissions-registry.d.ts +2 -3
  481. package/dist/lib/permissions-registry.js +0 -4
  482. package/dist/lib/permissions.d.ts +6 -16
  483. package/dist/lib/permissions.js +2 -15
  484. package/dist/lib/picker.d.ts +6 -5
  485. package/dist/lib/placement.d.ts +3 -6
  486. package/dist/lib/placement.js +0 -17
  487. package/dist/lib/platform/posixpath.d.ts +2 -1
  488. package/dist/lib/platform/winpath.d.ts +2 -1
  489. package/dist/lib/plugins/plugin-marketplace.d.ts +2 -2
  490. package/dist/lib/plugins/plugin-marketplace.js +1 -1
  491. package/dist/lib/pr-land-detach.d.ts +2 -1
  492. package/dist/lib/probe.d.ts +4 -1
  493. package/dist/lib/probe.js +5 -2
  494. package/dist/lib/profiles-presets.d.ts +2 -1
  495. package/dist/lib/profiles.d.ts +3 -9
  496. package/dist/lib/profiles.js +1 -9
  497. package/dist/lib/project-doctor.d.ts +2 -1
  498. package/dist/lib/project-launch.d.ts +2 -2
  499. package/dist/lib/project-probe.d.ts +4 -3
  500. package/dist/lib/project-pull.d.ts +2 -1
  501. package/dist/lib/project-resources.d.ts +2 -2
  502. package/dist/lib/project-resources.js +1 -1
  503. package/dist/lib/project-root.d.ts +2 -6
  504. package/dist/lib/project-root.js +1 -1
  505. package/dist/lib/project-schedule.d.ts +2 -1
  506. package/dist/lib/project-status.d.ts +2 -16
  507. package/dist/lib/project-status.js +3 -3
  508. package/dist/lib/pwsh.d.ts +33 -0
  509. package/dist/lib/pwsh.js +56 -0
  510. package/dist/lib/reconcile-and-repair.d.ts +5 -4
  511. package/dist/lib/redact.d.ts +15 -1
  512. package/dist/lib/redact.js +105 -3
  513. package/dist/lib/refresh-coordinator.d.ts +2 -1
  514. package/dist/lib/refresh.d.ts +9 -4
  515. package/dist/lib/refresh.js +92 -72
  516. package/dist/lib/remote-agents-json.d.ts +3 -2
  517. package/dist/lib/reserved-stores.d.ts +0 -2
  518. package/dist/lib/reserved-stores.js +3 -5
  519. package/dist/lib/resource-content-diff.d.ts +0 -2
  520. package/dist/lib/resource-content-diff.js +1 -1
  521. package/dist/lib/resource-patterns.d.ts +2 -1
  522. package/dist/lib/resource-profiles.d.ts +2 -8
  523. package/dist/lib/resource-profiles.js +3 -27
  524. package/dist/lib/resources/workflows.d.ts +1 -1
  525. package/dist/lib/resources.d.ts +4 -9
  526. package/dist/lib/resources.js +1 -1
  527. package/dist/lib/routine-context.d.ts +2 -5
  528. package/dist/lib/routine-context.js +2 -2
  529. package/dist/lib/routine-notify-owner.d.ts +8 -7
  530. package/dist/lib/routine-notify-owner.js +5 -5
  531. package/dist/lib/routine-process-cleanup.d.ts +2 -1
  532. package/dist/lib/routine-readiness.d.ts +0 -2
  533. package/dist/lib/routine-readiness.js +0 -7
  534. package/dist/lib/routines-project.d.ts +3 -4
  535. package/dist/lib/routines-project.js +1 -1
  536. package/dist/lib/rules/compile.d.ts +3 -25
  537. package/dist/lib/rules/compile.js +1 -1
  538. package/dist/lib/rules/compose.d.ts +3 -9
  539. package/dist/lib/rules/rules.d.ts +4 -15
  540. package/dist/lib/rules/rules.js +1 -64
  541. package/dist/lib/run-defaults.d.ts +1 -1
  542. package/dist/lib/run-notify.d.ts +2 -1
  543. package/dist/lib/run-trace-sync.d.ts +1 -1
  544. package/dist/lib/run-trace-sync.js +1 -1
  545. package/dist/lib/scheduler.d.ts +2 -1
  546. package/dist/lib/scheduling/routines.d.ts +9 -21
  547. package/dist/lib/scheduling/routines.js +3 -46
  548. package/dist/lib/secrets-cli.d.ts +11 -0
  549. package/dist/lib/secrets-cli.js +30 -0
  550. package/dist/lib/secrets-client.d.ts +0 -17
  551. package/dist/lib/secrets-client.js +7 -28
  552. package/dist/lib/secrets-policy.d.ts +12 -17
  553. package/dist/lib/secrets-policy.js +5 -5
  554. package/dist/lib/secrets-types.d.ts +3 -2
  555. package/dist/lib/secrets-types.js +2 -1
  556. package/dist/lib/self-heal/checks/install-staging.js +1 -1
  557. package/dist/lib/self-heal/registry.d.ts +3 -2
  558. package/dist/lib/self-heal/types.d.ts +1 -1
  559. package/dist/lib/self-heal/types.js +1 -1
  560. package/dist/lib/self-update.d.ts +5 -5
  561. package/dist/lib/self-update.js +4 -4
  562. package/dist/lib/session/actor-sidecar.d.ts +3 -2
  563. package/dist/lib/session/artifacts.d.ts +0 -2
  564. package/dist/lib/session/artifacts.js +1 -1
  565. package/dist/lib/session/bash-command.d.ts +2 -7
  566. package/dist/lib/session/bundle.d.ts +4 -6
  567. package/dist/lib/session/bundle.js +1 -5
  568. package/dist/lib/session/cloud.d.ts +0 -4
  569. package/dist/lib/session/cloud.js +2 -15
  570. package/dist/lib/session/detached.d.ts +9 -1
  571. package/dist/lib/session/detached.js +31 -2
  572. package/dist/lib/session/digest.d.ts +2 -2
  573. package/dist/lib/session/digest.js +1 -1
  574. package/dist/lib/session/fork.d.ts +3 -2
  575. package/dist/lib/session/highlights.d.ts +6 -5
  576. package/dist/lib/session/hook-sessions.d.ts +2 -1
  577. package/dist/lib/session/host-link.d.ts +2 -1
  578. package/dist/lib/session/inject.d.ts +1 -1
  579. package/dist/lib/session/inject.js +1 -1
  580. package/dist/lib/session/insights.d.ts +3 -15
  581. package/dist/lib/session/insights.js +2 -2
  582. package/dist/lib/session/local-tmux-attach.d.ts +2 -18
  583. package/dist/lib/session/local-tmux-attach.js +1 -1
  584. package/dist/lib/session/migrations.d.ts +0 -1
  585. package/dist/lib/session/migrations.js +1 -1
  586. package/dist/lib/session/mirror.d.ts +5 -8
  587. package/dist/lib/session/mirror.js +2 -2
  588. package/dist/lib/session/parse.d.ts +1 -32
  589. package/dist/lib/session/parse.js +4 -4
  590. package/dist/lib/session/presence.d.ts +2 -1
  591. package/dist/lib/session/prompt.d.ts +3 -2
  592. package/dist/lib/session/prompt.js +38 -1
  593. package/dist/lib/session/recovery.d.ts +3 -2
  594. package/dist/lib/session/remote/peer-stream.d.ts +26 -7
  595. package/dist/lib/session/remote/peer-stream.js +35 -8
  596. package/dist/lib/session/remote/remote-bundle.d.ts +2 -1
  597. package/dist/lib/session/remote/remote-list.d.ts +5 -5
  598. package/dist/lib/session/remote/remote.d.ts +4 -3
  599. package/dist/lib/session/remote/watch.d.ts +2 -7
  600. package/dist/lib/session/remote/watch.js +3 -3
  601. package/dist/lib/session/remote-active.d.ts +2 -1
  602. package/dist/lib/session/render.d.ts +2 -2
  603. package/dist/lib/session/render.js +1 -1
  604. package/dist/lib/session/resume-owner.d.ts +1 -1
  605. package/dist/lib/session/resume-owner.js +1 -1
  606. package/dist/lib/session/run-names.d.ts +2 -1
  607. package/dist/lib/session/session-cache.d.ts +7 -26
  608. package/dist/lib/session/session-cache.js +2 -8
  609. package/dist/lib/session/share-html.d.ts +1 -21
  610. package/dist/lib/session/share-html.js +1 -1
  611. package/dist/lib/session/shell-programs.d.ts +2 -1
  612. package/dist/lib/session/state.d.ts +41 -8
  613. package/dist/lib/session/state.js +112 -11
  614. package/dist/lib/session/stream-render.d.ts +2 -1
  615. package/dist/lib/session/sync/agents.d.ts +0 -4
  616. package/dist/lib/session/sync/agents.js +0 -0
  617. package/dist/lib/session/sync/backend.d.ts +8 -8
  618. package/dist/lib/session/sync/backend.js +3 -3
  619. package/dist/lib/session/sync/managed-config.d.ts +0 -8
  620. package/dist/lib/session/sync/managed-key.d.ts +0 -2
  621. package/dist/lib/session/sync/managed-key.js +1 -1
  622. package/dist/lib/session/sync/provision.d.ts +1 -1
  623. package/dist/lib/session/sync/provision.js +2 -2
  624. package/dist/lib/session/sync/r2.d.ts +4 -1
  625. package/dist/lib/session/sync/r2.js +4 -7
  626. package/dist/lib/session/sync/transcript-crypto.d.ts +2 -1
  627. package/dist/lib/session/tail.d.ts +2 -1
  628. package/dist/lib/session/team-filter.d.ts +1 -1
  629. package/dist/lib/session/throughput.d.ts +2 -3
  630. package/dist/lib/session/throughput.js +1 -1
  631. package/dist/lib/session/timeline-pass.d.ts +3 -42
  632. package/dist/lib/session/timeline-pass.js +4 -4
  633. package/dist/lib/session/timeline.d.ts +3 -13
  634. package/dist/lib/session/timeline.js +3 -3
  635. package/dist/lib/session/tool-calls.d.ts +2 -2
  636. package/dist/lib/session/tool-calls.js +1 -1
  637. package/dist/lib/session/tool-index.d.ts +0 -8
  638. package/dist/lib/session/tool-index.js +2 -2
  639. package/dist/lib/session/tool-store.d.ts +2 -1
  640. package/dist/lib/session/trajectory-compare.d.ts +2 -1
  641. package/dist/lib/session/trajectory-lineage.d.ts +2 -1
  642. package/dist/lib/session/trajectory-text.d.ts +3 -2
  643. package/dist/lib/session/trajectory.d.ts +2 -1
  644. package/dist/lib/session/viewing-in.d.ts +2 -1
  645. package/dist/lib/sessions-client.js +0 -3
  646. package/dist/lib/settings-manifest.d.ts +2 -1
  647. package/dist/lib/setup-tool-install.d.ts +3 -0
  648. package/dist/lib/setup-tool-install.js +26 -0
  649. package/dist/lib/setup-tool-status.d.ts +22 -0
  650. package/dist/lib/setup-tool-status.js +215 -0
  651. package/dist/lib/share-runtime.d.ts +11 -0
  652. package/dist/lib/share-runtime.js +63 -0
  653. package/dist/lib/shim-heal.d.ts +1 -5
  654. package/dist/lib/shim-heal.js +0 -6
  655. package/dist/lib/smart-launch.d.ts +5 -10
  656. package/dist/lib/smart-launch.js +4 -12
  657. package/dist/lib/snapshot.d.ts +3 -2
  658. package/dist/lib/ssh-exec.d.ts +49 -4
  659. package/dist/lib/ssh-exec.js +119 -0
  660. package/dist/lib/ssh-tunnel.d.ts +3 -2
  661. package/dist/lib/staleness/checkers/permissions.d.ts +0 -2
  662. package/dist/lib/staleness/checkers/permissions.js +1 -1
  663. package/dist/lib/staleness/fingerprint.d.ts +0 -7
  664. package/dist/lib/staleness/fingerprint.js +1 -1
  665. package/dist/lib/staleness/prune.d.ts +3 -2
  666. package/dist/lib/staleness/registry.d.ts +1 -1
  667. package/dist/lib/staleness/writers/sources.d.ts +0 -8
  668. package/dist/lib/staleness/writers/sources.js +1 -1
  669. package/dist/lib/startup/command-registry.d.ts +6 -4
  670. package/dist/lib/startup/command-registry.js +11 -8
  671. package/dist/lib/state.d.ts +1 -3
  672. package/dist/lib/state.js +3 -6
  673. package/dist/lib/storage/selection.d.ts +2 -2
  674. package/dist/lib/storage/selection.js +2 -2
  675. package/dist/lib/subagents-registry.d.ts +4 -3
  676. package/dist/lib/subagents.d.ts +2 -1
  677. package/dist/lib/subagents.js +3 -2
  678. package/dist/lib/summarizer/pass.d.ts +3 -6
  679. package/dist/lib/summarizer/pass.js +2 -2
  680. package/dist/lib/summarizer/summarize.d.ts +4 -3
  681. package/dist/lib/sync-passphrase.d.ts +3 -2
  682. package/dist/lib/sync-status.d.ts +3 -16
  683. package/dist/lib/sync-status.js +2 -2
  684. package/dist/lib/sync-umbrella.d.ts +9 -3
  685. package/dist/lib/sync-umbrella.js +18 -10
  686. package/dist/lib/system-run-sync.d.ts +2 -1
  687. package/dist/lib/teams/agents.d.ts +2 -4
  688. package/dist/lib/teams/agents.js +1 -1
  689. package/dist/lib/teams/forEach.d.ts +3 -2
  690. package/dist/lib/teams/pr-watch.d.ts +4 -11
  691. package/dist/lib/teams/pr-watch.js +4 -4
  692. package/dist/lib/teams/registry.d.ts +2 -3
  693. package/dist/lib/teams/registry.js +1 -1
  694. package/dist/lib/teams/remoteWorktree.d.ts +0 -16
  695. package/dist/lib/teams/remoteWorktree.js +3 -3
  696. package/dist/lib/teams/scheduler.d.ts +6 -5
  697. package/dist/lib/teams/scheduler.js +1 -1
  698. package/dist/lib/teams/supervisor.d.ts +4 -3
  699. package/dist/lib/teams/worktree.d.ts +0 -9
  700. package/dist/lib/teams/worktree.js +0 -32
  701. package/dist/lib/term-client.d.ts +44 -0
  702. package/dist/lib/term-client.js +117 -0
  703. package/dist/lib/terminal/inject.d.ts +3 -16
  704. package/dist/lib/terminal/inject.js +1 -29
  705. package/dist/lib/terminal/resolve.d.ts +3 -9
  706. package/dist/lib/terminal/resolve.js +3 -7
  707. package/dist/lib/tmux/binary.d.ts +2 -1
  708. package/dist/lib/tmux/orphan-reap.d.ts +6 -7
  709. package/dist/lib/tmux/orphan-reap.js +1 -1
  710. package/dist/lib/tmux/session.d.ts +4 -3
  711. package/dist/lib/traces/backend.d.ts +1 -2
  712. package/dist/lib/traces/backend.js +1 -2
  713. package/dist/lib/traces/classify.d.ts +3 -2
  714. package/dist/lib/traces/config.d.ts +0 -8
  715. package/dist/lib/traces/insights.d.ts +2 -1
  716. package/dist/lib/traces/phenotype.d.ts +3 -3
  717. package/dist/lib/traces/provision.d.ts +2 -4
  718. package/dist/lib/traces/provision.js +3 -3
  719. package/dist/lib/traces/schema2-build.d.ts +1 -1
  720. package/dist/lib/traces/schema2-danger.d.ts +2 -1
  721. package/dist/lib/traces/schema2.d.ts +5 -4
  722. package/dist/lib/traces/segments.d.ts +4 -20
  723. package/dist/lib/traces/segments.js +3 -3
  724. package/dist/lib/traces/sync.d.ts +2 -3
  725. package/dist/lib/traces/sync.js +1 -1
  726. package/dist/lib/triggers/handlers.d.ts +4 -13
  727. package/dist/lib/triggers/handlers.js +1 -1
  728. package/dist/lib/triggers/webhook.d.ts +5 -27
  729. package/dist/lib/triggers/webhook.js +4 -4
  730. package/dist/lib/types.d.ts +11 -9
  731. package/dist/lib/usage-refresh.d.ts +4 -10
  732. package/dist/lib/usage-refresh.js +3 -8
  733. package/dist/lib/verbs.d.ts +2 -1
  734. package/dist/lib/version-duplicates.d.ts +2 -3
  735. package/dist/lib/version-duplicates.js +3 -33
  736. package/dist/lib/version.d.ts +2 -1
  737. package/dist/lib/warn-unpushed.d.ts +2 -1
  738. package/dist/lib/watchdog/history.d.ts +3 -2
  739. package/dist/lib/watchdog/log.d.ts +0 -6
  740. package/dist/lib/watchdog/log.js +1 -1
  741. package/dist/lib/watchdog/rotate.d.ts +2 -26
  742. package/dist/lib/watchdog/rotate.js +4 -12
  743. package/dist/lib/watchdog/runner.d.ts +0 -7
  744. package/dist/lib/watchdog/runner.js +4 -4
  745. package/dist/lib/watchdog/service.d.ts +2 -2
  746. package/dist/lib/watchdog/service.js +1 -1
  747. package/dist/lib/watchdog/watchdog-agent.d.ts +2 -1
  748. package/dist/lib/watchdog/watchdog.d.ts +2 -1
  749. package/dist/lib/watchdog/watchdogTail.d.ts +2 -1
  750. package/dist/lib/workflows-registry.d.ts +3 -2
  751. package/dist/lib/workflows.d.ts +4 -7
  752. package/dist/lib/workflows.js +1 -1
  753. package/dist/lib/worktree/held.d.ts +4 -28
  754. package/dist/lib/worktree/held.js +3 -3
  755. package/package.json +3 -5
  756. package/scripts/postinstall.js +5 -4
  757. package/dist/commands/artifacts-setup.d.ts +0 -53
  758. package/dist/commands/artifacts-setup.js +0 -161
  759. package/dist/commands/artifacts.d.ts +0 -18
  760. package/dist/commands/artifacts.js +0 -58
  761. package/dist/commands/attach.d.ts +0 -12
  762. package/dist/commands/attach.js +0 -86
  763. package/dist/commands/auth-mint.d.ts +0 -12
  764. package/dist/commands/auth-mint.js +0 -108
  765. package/dist/commands/pty.d.ts +0 -20
  766. package/dist/commands/pty.js +0 -404
  767. package/dist/commands/reconnect.d.ts +0 -46
  768. package/dist/commands/reconnect.js +0 -115
  769. package/dist/commands/share.d.ts +0 -293
  770. package/dist/commands/share.js +0 -1424
  771. package/dist/lib/config-machine-keys.d.ts +0 -14
  772. package/dist/lib/config-machine-keys.js +0 -21
  773. package/dist/lib/pty-client.d.ts +0 -49
  774. package/dist/lib/pty-client.js +0 -315
  775. package/dist/lib/pty-server.d.ts +0 -59
  776. package/dist/lib/pty-server.js +0 -653
  777. package/dist/lib/share/analytics.d.ts +0 -13
  778. package/dist/lib/share/analytics.js +0 -45
  779. package/dist/lib/share/backend.d.ts +0 -120
  780. package/dist/lib/share/backend.js +0 -176
  781. package/dist/lib/share/capture.d.ts +0 -31
  782. package/dist/lib/share/capture.js +0 -174
  783. package/dist/lib/share/config.d.ts +0 -72
  784. package/dist/lib/share/config.js +0 -211
  785. package/dist/lib/share/delete.d.ts +0 -122
  786. package/dist/lib/share/delete.js +0 -173
  787. package/dist/lib/share/html.d.ts +0 -22
  788. package/dist/lib/share/html.js +0 -88
  789. package/dist/lib/share/http-error.d.ts +0 -52
  790. package/dist/lib/share/http-error.js +0 -65
  791. package/dist/lib/share/og.d.ts +0 -25
  792. package/dist/lib/share/og.js +0 -84
  793. package/dist/lib/share/provision.d.ts +0 -127
  794. package/dist/lib/share/provision.js +0 -285
  795. package/dist/lib/share/publish.d.ts +0 -388
  796. package/dist/lib/share/publish.js +0 -818
  797. package/dist/lib/share/worker-template.d.ts +0 -27
  798. package/dist/lib/share/worker-template.js +0 -2424
  799. package/dist/lib/storage/index.d.ts +0 -14
  800. package/dist/lib/storage/index.js +0 -14
  801. package/dist/lib/storage/visibility.d.ts +0 -82
  802. package/dist/lib/storage/visibility.js +0 -99
@@ -102,7 +102,7 @@ export declare function controlOpts(): string[];
102
102
  * ignored. Pure so the ordering contract is unit-testable. See RUSH-1767.
103
103
  */
104
104
  export declare function sshConnectOpts(mux: string[], hostKeyOpts?: string[]): string[];
105
- export interface SshExecOptions {
105
+ interface SshExecOptions {
106
106
  /** Piped to the remote command's stdin (never interpolated into the shell). */
107
107
  input?: string;
108
108
  /** Kill the ssh process after this many ms. */
@@ -146,7 +146,7 @@ export declare function sshExec(target: string, remoteCmd: string, opts?: SshExe
146
146
  * down the remote side (RUSH-2114).
147
147
  */
148
148
  export declare function sshExecAsync(target: string, remoteCmd: string, opts?: SshExecOptions): Promise<SshExecResult>;
149
- export interface SshExecRawResult {
149
+ interface SshExecRawResult {
150
150
  code: number | null;
151
151
  stdout: Buffer;
152
152
  stderr: Buffer;
@@ -160,7 +160,7 @@ export interface SshExecRawResult {
160
160
  * U+FFFD replacement char (which would desync a byte offset from the wire).
161
161
  */
162
162
  export declare function sshExecRaw(target: string, remoteCmd: string, opts?: SshExecOptions): SshExecRawResult;
163
- export interface SshExecRawStreamOptions extends SshExecOptions {
163
+ interface SshExecRawStreamOptions extends SshExecOptions {
164
164
  onStdout: (chunk: Buffer) => void;
165
165
  onStderr?: (chunk: Buffer) => void;
166
166
  signal?: AbortSignal;
@@ -173,10 +173,54 @@ export interface SshExecRawStreamOptions extends SshExecOptions {
173
173
  * offset-resumed log following where a UTF-8 decode boundary must not shift the
174
174
  * byte cursor.
175
175
  */
176
+ /** Grace between SIGTERM and SIGKILL for a stream that will not stop. */
177
+ export declare const SSH_STREAM_KILL_GRACE_MS = 3000;
178
+ /** Bytes of a stream's stderr retained; the rest is dropped, with a note. */
179
+ export declare const SSH_STREAM_MAX_STDERR: number;
180
+ export interface SshStreamResult {
181
+ code: number | null;
182
+ stderr: Buffer;
183
+ timedOut: boolean;
184
+ /** True when the child had to be SIGKILLed after ignoring SIGTERM. */
185
+ killed: boolean;
186
+ /** True when stderr was truncated at {@link SSH_STREAM_MAX_STDERR}. */
187
+ stderrTruncated: boolean;
188
+ }
189
+ /**
190
+ * Stream one ssh command's stdout, with the args and env a CALLER built.
191
+ *
192
+ * This exists because {@link sshExecRawStream} assembles its own ssh args, which
193
+ * means it cannot carry a device's canonical auth — the askpass shim for a
194
+ * password-auth box, `-i`/`IdentitiesOnly` for an explicit identity file, or the
195
+ * managed known-hosts pinning. A caller that has already built those through
196
+ * `buildSshInvocation` needs a way to run them, and duplicating the transport to
197
+ * get it would be the worse answer. So this takes `args`/`env` verbatim and adds
198
+ * only the lifecycle guarantees:
199
+ *
200
+ * - **SIGTERM then SIGKILL.** A timeout or abort that only sends SIGTERM leaks a
201
+ * child that ignores it — ssh does, mid-handshake — and the promise never
202
+ * settles. After {@link SSH_STREAM_KILL_GRACE_MS} the child is SIGKILLed and
203
+ * `killed` says so.
204
+ * - **Bounded stderr.** A peer that writes endlessly to stderr would otherwise
205
+ * grow this buffer without limit; it is capped and `stderrTruncated` says so.
206
+ * - **`onStdout` cannot break the caller's cleanup.** A throw from the consumer
207
+ * is captured and re-thrown by the awaiting caller, so a write failure ends the
208
+ * transfer instead of escaping as an unhandled error inside a stream event.
209
+ */
210
+ export declare function sshStreamWithArgs(opts: {
211
+ args: string[];
212
+ env?: Record<string, string>;
213
+ onStdout: (chunk: Buffer) => void;
214
+ timeoutMs?: number;
215
+ killGraceMs?: number;
216
+ maxStderrBytes?: number;
217
+ signal?: AbortSignal;
218
+ sshBin?: string;
219
+ }): Promise<SshStreamResult>;
176
220
  export declare function sshExecRawStream(target: string, remoteCmd: string, opts: SshExecRawStreamOptions): Promise<Omit<SshExecRawResult, 'stdout'>>;
177
221
  /** True if `target` is reachable over ssh (a passwordless `true` succeeds quickly). */
178
222
  export declare function sshReachable(target: string, timeoutMs?: number): boolean;
179
- export interface SshStreamOptions {
223
+ interface SshStreamOptions {
180
224
  /**
181
225
  * Allocate a remote pseudo-terminal (`ssh -tt`) so an interactive remote
182
226
  * command (a picker, a prompt) renders live on the local terminal. Callers
@@ -261,3 +305,4 @@ export declare function saveLocalTerminal(): string | undefined;
261
305
  * mode resets.
262
306
  */
263
307
  export declare function sshStream(target: string, remoteCmd: string, opts?: SshStreamOptions): number;
308
+ export {};
@@ -317,6 +317,125 @@ export function sshExecRaw(target, remoteCmd, opts = {}) {
317
317
  * offset-resumed log following where a UTF-8 decode boundary must not shift the
318
318
  * byte cursor.
319
319
  */
320
+ /** Grace between SIGTERM and SIGKILL for a stream that will not stop. */
321
+ export const SSH_STREAM_KILL_GRACE_MS = 3_000;
322
+ /** Bytes of a stream's stderr retained; the rest is dropped, with a note. */
323
+ export const SSH_STREAM_MAX_STDERR = 8 * 1024;
324
+ /**
325
+ * Stream one ssh command's stdout, with the args and env a CALLER built.
326
+ *
327
+ * This exists because {@link sshExecRawStream} assembles its own ssh args, which
328
+ * means it cannot carry a device's canonical auth — the askpass shim for a
329
+ * password-auth box, `-i`/`IdentitiesOnly` for an explicit identity file, or the
330
+ * managed known-hosts pinning. A caller that has already built those through
331
+ * `buildSshInvocation` needs a way to run them, and duplicating the transport to
332
+ * get it would be the worse answer. So this takes `args`/`env` verbatim and adds
333
+ * only the lifecycle guarantees:
334
+ *
335
+ * - **SIGTERM then SIGKILL.** A timeout or abort that only sends SIGTERM leaks a
336
+ * child that ignores it — ssh does, mid-handshake — and the promise never
337
+ * settles. After {@link SSH_STREAM_KILL_GRACE_MS} the child is SIGKILLed and
338
+ * `killed` says so.
339
+ * - **Bounded stderr.** A peer that writes endlessly to stderr would otherwise
340
+ * grow this buffer without limit; it is capped and `stderrTruncated` says so.
341
+ * - **`onStdout` cannot break the caller's cleanup.** A throw from the consumer
342
+ * is captured and re-thrown by the awaiting caller, so a write failure ends the
343
+ * transfer instead of escaping as an unhandled error inside a stream event.
344
+ */
345
+ export function sshStreamWithArgs(opts) {
346
+ const maxStderr = opts.maxStderrBytes ?? SSH_STREAM_MAX_STDERR;
347
+ const grace = opts.killGraceMs ?? SSH_STREAM_KILL_GRACE_MS;
348
+ return new Promise((resolve, reject) => {
349
+ const child = spawn(opts.sshBin ?? 'ssh', opts.args, {
350
+ stdio: ['ignore', 'pipe', 'pipe'],
351
+ env: opts.env ? { ...process.env, ...opts.env } : process.env,
352
+ windowsHide: true,
353
+ // Own process group on POSIX so a kill reaches the whole tree. Killing only
354
+ // the ssh pid is not enough: a descendant that inherited stdout keeps the
355
+ // pipe open, `'close'` never fires, and the promise hangs for as long as
356
+ // that grandchild lives — which defeats the timeout entirely.
357
+ detached: process.platform !== 'win32',
358
+ });
359
+ const stderr = [];
360
+ let stderrBytes = 0;
361
+ let stderrTruncated = false;
362
+ let timedOut = false;
363
+ let killed = false;
364
+ let consumerError;
365
+ let settled = false;
366
+ let killTimer;
367
+ /** Signal the whole group where the platform supports it, else just the child. */
368
+ const signal = (sig) => {
369
+ try {
370
+ if (process.platform !== 'win32' && child.pid)
371
+ process.kill(-child.pid, sig);
372
+ else
373
+ child.kill(sig);
374
+ }
375
+ catch { /* already gone */ }
376
+ };
377
+ const escalate = () => {
378
+ signal('SIGTERM');
379
+ // Escalation, not a second polite ask: a child still alive after the grace
380
+ // is one that is not going to honour SIGTERM.
381
+ killTimer = setTimeout(() => { killed = true; signal('SIGKILL'); }, grace);
382
+ killTimer.unref?.();
383
+ };
384
+ const stop = () => escalate();
385
+ const finish = (code) => {
386
+ if (settled)
387
+ return;
388
+ settled = true;
389
+ if (timer)
390
+ clearTimeout(timer);
391
+ if (killTimer)
392
+ clearTimeout(killTimer);
393
+ opts.signal?.removeEventListener('abort', stop);
394
+ if (consumerError !== undefined) {
395
+ reject(consumerError);
396
+ return;
397
+ }
398
+ resolve({ code, stderr: Buffer.concat(stderr), timedOut, killed, stderrTruncated });
399
+ };
400
+ const timer = opts.timeoutMs
401
+ ? setTimeout(() => { timedOut = true; escalate(); }, opts.timeoutMs)
402
+ : null;
403
+ child.stdout.on('data', (chunk) => {
404
+ if (consumerError !== undefined)
405
+ return;
406
+ try {
407
+ opts.onStdout(chunk);
408
+ }
409
+ catch (error) {
410
+ // Captured, not thrown: a throw here would surface as an unhandled error
411
+ // on the stream and skip the caller's cleanup entirely.
412
+ consumerError = error;
413
+ escalate();
414
+ }
415
+ });
416
+ child.stderr.on('data', (chunk) => {
417
+ const room = maxStderr - stderrBytes;
418
+ if (room <= 0) {
419
+ stderrTruncated = true;
420
+ return;
421
+ }
422
+ if (chunk.length > room) {
423
+ stderrTruncated = true;
424
+ stderr.push(chunk.subarray(0, room));
425
+ stderrBytes = maxStderr;
426
+ return;
427
+ }
428
+ stderr.push(chunk);
429
+ stderrBytes += chunk.length;
430
+ });
431
+ child.once('error', () => finish(null));
432
+ child.once('close', finish);
433
+ if (opts.signal?.aborted)
434
+ escalate();
435
+ else
436
+ opts.signal?.addEventListener('abort', stop, { once: true });
437
+ });
438
+ }
320
439
  export function sshExecRawStream(target, remoteCmd, opts) {
321
440
  assertValidSshTarget(target);
322
441
  const mux = opts.multiplex === false ? [] : controlOpts();
@@ -19,7 +19,7 @@
19
19
  */
20
20
  import { type ChildProcess } from 'child_process';
21
21
  import { type DeviceProfile } from './devices/registry.js';
22
- export interface StartTunnelOptions {
22
+ interface StartTunnelOptions {
23
23
  extraSshArgs?: string[];
24
24
  }
25
25
  /** Build the ssh argv (after the `ssh` program name) for an `-L` tunnel. Pure.
@@ -37,7 +37,7 @@ export declare function buildTunnelArgs(user: string, host: string, localPort: n
37
37
  */
38
38
  export declare function startSSHTunnel(user: string, host: string, localPort: number, remotePort: number, opts?: StartTunnelOptions): Promise<ChildProcess>;
39
39
  /** One registered device, resolved to everything an ssh invocation needs. */
40
- export interface ResolvedRemoteDevice {
40
+ interface ResolvedRemoteDevice {
41
41
  device: DeviceProfile;
42
42
  target: string;
43
43
  user: string;
@@ -59,3 +59,4 @@ export declare function resolveRemoteDevice(name: string, opts?: {
59
59
  expectPlatform?: DeviceProfile['platform'];
60
60
  forWhat?: string;
61
61
  }): Promise<ResolvedRemoteDevice>;
62
+ export {};
@@ -9,8 +9,6 @@
9
9
  * counts as stale.
10
10
  */
11
11
  import type { PermEntry } from '../types.js';
12
- /** Walk user + system permissions/groups/. First-wins user > system on names. */
13
- export declare function collectPermissionGroupFiles(): Record<string, string>;
14
12
  /** Build the permissions section of the manifest. */
15
13
  export declare function buildPermissions(): PermEntry;
16
14
  /** True when the stored permissions section no longer matches current state. */
@@ -14,7 +14,7 @@ import { getUserPermissionsDir, getPermissionsDir } from '../../state.js';
14
14
  import { fingerprintFile, isFileStale } from '../fingerprint.js';
15
15
  import { getActivePermissionPresetName } from '../../permissions.js';
16
16
  /** Walk user + system permissions/groups/. First-wins user > system on names. */
17
- export function collectPermissionGroupFiles() {
17
+ function collectPermissionGroupFiles() {
18
18
  const seen = new Map();
19
19
  for (const baseDir of [getUserPermissionsDir(), getPermissionsDir()]) {
20
20
  const groupsDir = path.join(baseDir, 'groups');
@@ -27,12 +27,5 @@ export declare function isFileStale(stored: Fingerprint, currentPath: string): b
27
27
  * sha256 only on stat mismatch.
28
28
  */
29
29
  export declare function isDirStale(storedDirPath: string, storedFiles: Fingerprint[], currentDirPath: string): boolean;
30
- /**
31
- * Walk a directory and return sorted absolute paths of every regular file.
32
- * No content reads. Uses the same FINGERPRINT_SKIP allowlist as
33
- * `fingerprintDir` so both produce the same path set (required for the
34
- * dir-stale path comparison to work).
35
- */
36
- export declare function walkDirPaths(dirPath: string): string[];
37
30
  /** True if two sorted-or-unsorted name sets differ. */
38
31
  export declare function nameSetDiffers(a: string[], b: string[]): boolean;
@@ -120,7 +120,7 @@ export function isDirStale(storedDirPath, storedFiles, currentDirPath) {
120
120
  * `fingerprintDir` so both produce the same path set (required for the
121
121
  * dir-stale path comparison to work).
122
122
  */
123
- export function walkDirPaths(dirPath) {
123
+ function walkDirPaths(dirPath) {
124
124
  const results = [];
125
125
  function walk(dir) {
126
126
  let entries;
@@ -55,7 +55,7 @@ import type { SyncManifest } from './types.js';
55
55
  */
56
56
  export declare const PRUNABLE_KINDS: readonly ["commands", "skills"];
57
57
  export type PrunableKind = typeof PRUNABLE_KINDS[number];
58
- export interface PruneInput {
58
+ interface PruneInput {
59
59
  agent: AgentId;
60
60
  version: string;
61
61
  versionHome: string;
@@ -71,7 +71,7 @@ export interface PruneInput {
71
71
  */
72
72
  sourceNames: Record<PrunableKind, ReadonlyArray<string>>;
73
73
  }
74
- export interface PruneOutcome {
74
+ interface PruneOutcome {
75
75
  /** Names actually removed from the version home, per kind. */
76
76
  pruned: Record<PrunableKind, string[]>;
77
77
  /**
@@ -86,3 +86,4 @@ export interface PruneOutcome {
86
86
  * source, from one agent@version home. Deletes nothing when no manifest exists.
87
87
  */
88
88
  export declare function pruneRemovedResources(input: PruneInput): PruneOutcome;
89
+ export {};
@@ -9,7 +9,7 @@ export type { ResourceWriter, WriteArgs, WriteResult, RemoveArgs, RemoveResult }
9
9
  export type { ResourceDetector, DetectArgs } from './detectors/types.js';
10
10
  export type { RulesSelection } from './writers/rules.js';
11
11
  /** Per-kind selection payload. Most kinds are string[]; rules is special. */
12
- export type SelectionFor<K extends ResourceKind> = K extends 'rules' ? RulesSelection : string[];
12
+ type SelectionFor<K extends ResourceKind> = K extends 'rules' ? RulesSelection : string[];
13
13
  export declare const WRITERS: Record<ResourceKind, Partial<Record<AgentId, ResourceWriter<any>>>>;
14
14
  export declare const DETECTORS: Record<ResourceKind, Partial<Record<AgentId, ResourceDetector>>>;
15
15
  /**
@@ -1,12 +1,4 @@
1
1
  import type { AgentId } from '../../types.js';
2
- export type EnabledExtra = {
3
- alias: string;
4
- dir: string;
5
- };
6
- /** Trusted source bases for content-like kinds. Project layer excluded. */
7
- export declare function trustedSourceBases(): {
8
- dir: string;
9
- }[];
10
2
  /** Every `plugins/<plugin>/skills` dir across trusted source bases, filtered to an optional plugin/agent scope. */
11
3
  export declare function pluginSkillDirs(options?: {
12
4
  agent?: AgentId;
@@ -12,7 +12,7 @@ import * as path from 'path';
12
12
  import { getUserAgentsDir, getAgentsDir, getEnabledExtraRepos, getCommandsDir, getSkillsDir, getHooksDir } from '../../state.js';
13
13
  import { isSafeSegmentName, safeJoin } from '../../paths.js';
14
14
  /** Trusted source bases for content-like kinds. Project layer excluded. */
15
- export function trustedSourceBases() {
15
+ function trustedSourceBases() {
16
16
  return [
17
17
  { dir: getUserAgentsDir() },
18
18
  { dir: getAgentsDir() },
@@ -17,15 +17,17 @@ export declare const KNOWN_TOP_LEVEL_COMMANDS: ReadonlySet<string>;
17
17
  * name is gone, the spellchecker finds a neighbour, and the CLI runs something
18
18
  * the user never asked for instead of saying the command is gone.
19
19
  *
20
- * `set` moved under `agents models`/`agents config` (RUSH-2579); `share` moved
21
- * under `agents artifacts share` (RUSH-2580). login/logout/budget/bench/mine/
20
+ * `set` moved under `agents models`/`agents config` (RUSH-2579); `share`,
21
+ * `unshare`, and the whole `artifacts` group moved OUT to the standalone
22
+ * `artifacts` CLI (`@phnx-labs/artifacts-cli`, PHNX-3992) — artifact sharing is
23
+ * no longer an agents-cli surface at all. login/logout/budget/bench/mine/
22
24
  * cost/output/profiles/snapshot/cp/resume/roster moved under nested homes
23
25
  * (cli-surface-consolidate). `timeline` was removed as a duplicated surface —
24
26
  * use `agents feed --filter updates` (RUSH-2692). `status` moved under
25
27
  * `agents sync status` (RUSH-2864). `tickets` was removed — use `linear`
26
28
  * (linear-cli) (RUSH-2932). `alias` moved under `agents setup alias` (RUSH-2965).
27
- * `inbox` was a pure alias of `agents feed` (RUSH-2984). `unshare` nested under
28
- * `agents artifacts unshare` (RUSH-2989). `audit` nested under `agents events audit`.
29
+ * `inbox` was a pure alias of `agents feed` (RUSH-2984). `audit` nested under
30
+ * `agents events audit`.
29
31
  * `trends` was removed with the insights recipe collapse — the one counter
30
32
  * surface is `agents insights mix` (PHNX-3391). `serve` (the
31
33
  * read-only local web companion + `--control` anchor) was removed with the
@@ -2,14 +2,14 @@ const LOADED_COMMAND_NAMES = [
2
2
  'accounts', 'auth', 'view', 'inspect', 'feedback', 'commands', 'hooks', 'skills', 'rules', 'memory',
3
3
  'permissions', 'mcp', 'clis', 'subagents', 'plugins', 'workflows', 'add', 'use',
4
4
  'remove', 'rm', 'purge', 'update', 'prune', 'import', 'registry', 'search', 'install', 'packages',
5
- 'routines', 'monitors', 'projects', 'run', '_callback', 'open', 'reconnect', 'fork', 'config',
5
+ 'routines', 'monitors', 'projects', 'run', '_callback', 'open', 'fork', 'config',
6
6
  'models', 'modes', 'trash', 'restore', 'doctor',
7
7
  'route', 'routes', 'harness', 'harnesses', 'secrets', 'menubar', 'sync',
8
8
  'refresh-rules', 'factory', 'insights', 'trace', 'reminders',
9
- 'pty', 'tmux', 'watchdog', 'browser', 'computer', 'logs', 'events',
9
+ 'tmux', 'watchdog', 'browser', 'computer', 'logs', 'events',
10
10
  'ssh', 'devices', 'fleet', 'repos', 'repo', 'setup', 'uninstall', 'upgrade', 'sessions',
11
- 'teams', 'cloud', 'message', 'send', 'notify', 'feed',
12
- 'mailboxes', 'mailbox', 'artifacts', 'webhooks',
11
+ 'teams', 'cloud', 'message', 'send', 'feed',
12
+ 'mailboxes', 'mailbox', 'webhooks',
13
13
  'humans', 'daemon', 'traces',
14
14
  ];
15
15
  const INLINE_COMMAND_NAMES = [
@@ -37,15 +37,17 @@ export const KNOWN_TOP_LEVEL_COMMANDS = new Set([
37
37
  * name is gone, the spellchecker finds a neighbour, and the CLI runs something
38
38
  * the user never asked for instead of saying the command is gone.
39
39
  *
40
- * `set` moved under `agents models`/`agents config` (RUSH-2579); `share` moved
41
- * under `agents artifacts share` (RUSH-2580). login/logout/budget/bench/mine/
40
+ * `set` moved under `agents models`/`agents config` (RUSH-2579); `share`,
41
+ * `unshare`, and the whole `artifacts` group moved OUT to the standalone
42
+ * `artifacts` CLI (`@phnx-labs/artifacts-cli`, PHNX-3992) — artifact sharing is
43
+ * no longer an agents-cli surface at all. login/logout/budget/bench/mine/
42
44
  * cost/output/profiles/snapshot/cp/resume/roster moved under nested homes
43
45
  * (cli-surface-consolidate). `timeline` was removed as a duplicated surface —
44
46
  * use `agents feed --filter updates` (RUSH-2692). `status` moved under
45
47
  * `agents sync status` (RUSH-2864). `tickets` was removed — use `linear`
46
48
  * (linear-cli) (RUSH-2932). `alias` moved under `agents setup alias` (RUSH-2965).
47
- * `inbox` was a pure alias of `agents feed` (RUSH-2984). `unshare` nested under
48
- * `agents artifacts unshare` (RUSH-2989). `audit` nested under `agents events audit`.
49
+ * `inbox` was a pure alias of `agents feed` (RUSH-2984). `audit` nested under
50
+ * `agents events audit`.
49
51
  * `trends` was removed with the insights recipe collapse — the one counter
50
52
  * surface is `agents insights mix` (PHNX-3391). `serve` (the
51
53
  * read-only local web companion + `--control` anchor) was removed with the
@@ -81,6 +83,7 @@ export const RETIRED_TOP_LEVEL_COMMANDS = new Set([
81
83
  'roster',
82
84
  'set',
83
85
  'share',
86
+ 'artifacts',
84
87
  'timeline',
85
88
  'status',
86
89
  'tickets',
@@ -12,7 +12,7 @@
12
12
  * teams/agents, trash, backups). Backed up by
13
13
  * `agents repo push`.
14
14
  * ~/.agents/.cache/ — regenerable runtime data (shims, packages, helpers
15
- * for daemon/pty, terminals, cloud, drive, browser
15
+ * for daemon, terminals, cloud, drive, browser
16
16
  * chrome-data, logs, companion). Gitignored.
17
17
  *
18
18
  * Resolution precedence for resources: project > user > system.
@@ -350,8 +350,6 @@ export declare function getHelpersDir(): string;
350
350
  * the daemon module is exercised. Never set in production code.
351
351
  */
352
352
  export declare function getDaemonDir(): string;
353
- /** Path to PTY server scratch (~/.agents/.cache/helpers/pty/). */
354
- export declare function getPtyDir(): string;
355
353
  /** Path to tmux scratch (~/.agents/.cache/helpers/tmux/) — shared server socket + per-session meta JSONs. */
356
354
  export declare function getTmuxDir(): string;
357
355
  /** Path to remote-resource auto-pull cache (~/.agents/.cache/.fetch/). */
package/dist/lib/state.js CHANGED
@@ -12,7 +12,7 @@
12
12
  * teams/agents, trash, backups). Backed up by
13
13
  * `agents repo push`.
14
14
  * ~/.agents/.cache/ — regenerable runtime data (shims, packages, helpers
15
- * for daemon/pty, terminals, cloud, drive, browser
15
+ * for daemon, terminals, cloud, drive, browser
16
16
  * chrome-data, logs, companion). Gitignored.
17
17
  *
18
18
  * Resolution precedence for resources: project > user > system.
@@ -141,7 +141,6 @@ const COMPANION_CACHE_DIR = path.join(CACHE_DIR, 'companion');
141
141
  const BROWSER_RUNTIME_DIR = path.join(CACHE_DIR, 'browser');
142
142
  const HELPERS_DIR = path.join(CACHE_DIR, 'helpers');
143
143
  const DAEMON_DIR = path.join(HELPERS_DIR, 'daemon');
144
- const PTY_DIR = path.join(HELPERS_DIR, 'pty');
145
144
  const TMUX_DIR = path.join(HELPERS_DIR, 'tmux');
146
145
  const FETCH_CACHE_DIR = path.join(CACHE_DIR, '.fetch');
147
146
  const CLI_VERSION_CACHE_FILE = path.join(CACHE_DIR, '.cli-version-cache.json');
@@ -216,8 +215,8 @@ export function getOptionalUserAgentsDir() {
216
215
  * Origin `owner/repo` slug (lowercased, `.git` stripped) of a git checkout, or
217
216
  * null when `dir` isn't a git repo / has no origin. Extracts the slug from any
218
217
  * remote URL form: `git@host:owner/repo.git`, `https://host/owner/repo.git`,
219
- * `ssh://git@host/owner/repo`. Sync (mirrors readGitConfigUser in git.ts) so it
220
- * can be used from the synchronous getProjectAgentsDir walk.
218
+ * `ssh://git@host/owner/repo`. Sync (uses `execFileSync`, not the async git
219
+ * helpers) so it can be used from the synchronous getProjectAgentsDir walk.
221
220
  */
222
221
  function gitOriginSlug(dir) {
223
222
  let url;
@@ -673,8 +672,6 @@ export function getHelpersDir() { return HELPERS_DIR; }
673
672
  * the daemon module is exercised. Never set in production code.
674
673
  */
675
674
  export function getDaemonDir() { return process.env.AGENTS_DAEMON_DIR ?? DAEMON_DIR; }
676
- /** Path to PTY server scratch (~/.agents/.cache/helpers/pty/). */
677
- export function getPtyDir() { return PTY_DIR; }
678
675
  /** Path to tmux scratch (~/.agents/.cache/helpers/tmux/) — shared server socket + per-session meta JSONs. */
679
676
  export function getTmuxDir() { return TMUX_DIR; }
680
677
  /** Path to remote-resource auto-pull cache (~/.agents/.cache/.fetch/). */
@@ -13,8 +13,8 @@
13
13
  * covers — those differ (share uses an email-handle namespace with public reads
14
14
  * and covers; a traces/sessions adapter uses the userId and differs again). Each
15
15
  * surface keeps its own DISCRIMINATED, typed adapter that reads this decision and
16
- * returns its own `kind`-tagged backend. See `lib/share/backend.ts` and
17
- * `lib/traces/backend.ts` for the two adapters.
16
+ * returns its own `kind`-tagged backend. See `lib/traces/backend.ts` for a
17
+ * concrete adapter.
18
18
  */
19
19
  import { type PhoenixSession } from '../identity/client.js';
20
20
  /** The two legitimate principals any managed-capable surface can resolve to. */
@@ -13,8 +13,8 @@
13
13
  * covers — those differ (share uses an email-handle namespace with public reads
14
14
  * and covers; a traces/sessions adapter uses the userId and differs again). Each
15
15
  * surface keeps its own DISCRIMINATED, typed adapter that reads this decision and
16
- * returns its own `kind`-tagged backend. See `lib/share/backend.ts` and
17
- * `lib/traces/backend.ts` for the two adapters.
16
+ * returns its own `kind`-tagged backend. See `lib/traces/backend.ts` for a
17
+ * concrete adapter.
18
18
  */
19
19
  import { readSession } from '../identity/client.js';
20
20
  /**
@@ -1,11 +1,11 @@
1
1
  import type { AgentId, InstalledSubagent, SubagentFrontmatter } from './types.js';
2
2
  /** A path an installed subagent occupies, tagged for removal/trash handling. */
3
- export interface OccupiedEntry {
3
+ interface OccupiedEntry {
4
4
  path: string;
5
5
  kind: 'file' | 'dir';
6
6
  }
7
7
  /** Parsed metadata for one installed subagent (drives the rich listing). */
8
- export interface SubagentMeta {
8
+ interface SubagentMeta {
9
9
  frontmatter: SubagentFrontmatter;
10
10
  files: string[];
11
11
  /** Primary on-disk path for the listing's `path` field (a file or a dir, per layout). */
@@ -15,7 +15,7 @@ export interface SubagentMeta {
15
15
  * The complete on-disk contract for one agent's subagents. Every operation is
16
16
  * expressed here so the engine below never branches on the agent id.
17
17
  */
18
- export interface SubagentTarget {
18
+ interface SubagentTarget {
19
19
  /** Absolute container dir under a home root (a version home or an agent home). */
20
20
  dir(home: string): string;
21
21
  /** Materialize central subagent `sub` into container `dir`. Throws on fs error. */
@@ -96,3 +96,4 @@ export declare function trashSubagentFromHome(agent: AgentId, home: string, name
96
96
  success: boolean;
97
97
  error?: string;
98
98
  };
99
+ export {};
@@ -151,7 +151,7 @@ export declare function subagentContentMatches(installedDir: string, sourceDir:
151
151
  * enumerator so a new agent needs no arm here -- just a registry entry.
152
152
  */
153
153
  export declare function listSubagentsForAgent(agentId: AgentId, home: string): InstalledSubagent[];
154
- export interface VersionSubagentDiff {
154
+ interface VersionSubagentDiff {
155
155
  agent: AgentId;
156
156
  version: string;
157
157
  orphans: string[];
@@ -179,3 +179,4 @@ export declare function removeSubagentFromVersion(agent: AgentId, version: strin
179
179
  success: boolean;
180
180
  error?: string;
181
181
  };
182
+ export {};
@@ -377,8 +377,9 @@ export function transformSubagentForCodex(subagentDir) {
377
377
  throw new Error(`Invalid AGENT.md in ${subagentDir}`);
378
378
  }
379
379
  const instructions = flattenSubagentInstructions(subagentDir);
380
- // Escape TOML multi-line string (""") content — only """ needs escaping.
381
- const safeInstructions = instructions.replace(/"""/g, '\\"""');
380
+ // TOML multi-line basic strings still process backslash escapes, so a literal
381
+ // backslash (a Windows path, a regex) must be doubled before """ is escaped.
382
+ const safeInstructions = instructions.replace(/\\/g, '\\\\').replace(/"""/g, '\\"""');
382
383
  const safeName = frontmatter.name.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
383
384
  const safeDesc = frontmatter.description.replace(/\\/g, '\\\\').replace(/"/g, '\\"');
384
385
  let toml = `name = "${safeName}"\n`;
@@ -13,11 +13,7 @@
13
13
  import type { ActiveSession } from '../session/active.js';
14
14
  import { type SummarizerConfig } from './config.js';
15
15
  import { summarize as defaultSummarize } from './summarize.js';
16
- /** Max sessions summarized per tick — a debounce ceiling on local-model calls. */
17
- export declare const SUMMARIZER_MAX_PER_TICK = 8;
18
- /** Narration headlines handed to the model per session — the recent tail, not the history. */
19
- export declare const SUMMARIZER_STEP_INPUT = 12;
20
- export interface SummarizerPassOptions {
16
+ interface SummarizerPassOptions {
21
17
  now?: number;
22
18
  config?: SummarizerConfig;
23
19
  /** Live sessions to consider; default = this box's warm local-session cache. */
@@ -34,7 +30,7 @@ export interface SummarizerPassOptions {
34
30
  /** Skip the reader-recency gate (tests pass sessions directly). */
35
31
  requireReader?: boolean;
36
32
  }
37
- export interface SummarizerPassResult {
33
+ interface SummarizerPassResult {
38
34
  disabled: boolean;
39
35
  computed: number;
40
36
  reused: number;
@@ -45,3 +41,4 @@ export interface SummarizerPassResult {
45
41
  * is isolated so one bad transcript can't stall the whole tick.
46
42
  */
47
43
  export declare function runSummarizerPass(opts?: SummarizerPassOptions): Promise<SummarizerPassResult>;
44
+ export {};
@@ -16,9 +16,9 @@ import { isActiveSessionsJournalReaderRecent, readActiveSessionsCache, } from '.
16
16
  import { resolveSummarizerConfig, isSummarizerRunnable } from './config.js';
17
17
  import { summarize as defaultSummarize } from './summarize.js';
18
18
  /** Max sessions summarized per tick — a debounce ceiling on local-model calls. */
19
- export const SUMMARIZER_MAX_PER_TICK = 8;
19
+ const SUMMARIZER_MAX_PER_TICK = 8;
20
20
  /** Narration headlines handed to the model per session — the recent tail, not the history. */
21
- export const SUMMARIZER_STEP_INPUT = 12;
21
+ const SUMMARIZER_STEP_INPUT = 12;
22
22
  /**
23
23
  * Merge model checkpoint TEXTS with any prior stored checkpoints so a line that
24
24
  * already existed keeps its original `at`, and only genuinely new lines get
@@ -13,7 +13,7 @@
13
13
  */
14
14
  import type { TodoProgress } from '../session/types.js';
15
15
  /** Live progress fed to the model alongside the goal-bearing prompt. */
16
- export interface SummarizeProgress {
16
+ interface SummarizeProgress {
17
17
  /** Latest checklist write (TodoWrite / update_plan), when the session has one. */
18
18
  todos?: TodoProgress;
19
19
  /** Plan markdown from the last ExitPlanMode, when present. */
@@ -29,7 +29,7 @@ export interface SummarizeProgress {
29
29
  steps?: string[];
30
30
  }
31
31
  /** The validated model output. `at` timestamps are stamped by the caller. */
32
- export interface SummarizeResult {
32
+ interface SummarizeResult {
33
33
  goal: string;
34
34
  /** Progress checkpoints, newest last (short lines). */
35
35
  checkpoints: string[];
@@ -39,7 +39,7 @@ export interface SummarizeResult {
39
39
  done: boolean;
40
40
  }[];
41
41
  }
42
- export interface SummarizeOptions {
42
+ interface SummarizeOptions {
43
43
  baseUrl: string;
44
44
  model: string;
45
45
  maxTokens?: number;
@@ -73,3 +73,4 @@ export declare function extractJsonObject(text: string): string | undefined;
73
73
  * failure (the caller then marks the session `summaryState: 'skipped'`).
74
74
  */
75
75
  export declare function summarize(prompt: string, progress: SummarizeProgress, opts: SummarizeOptions): Promise<SummarizeResult | undefined>;
76
+ export {};
@@ -5,8 +5,8 @@ export declare const LEGACY_PASSPHRASE_ENV = "AGENTS_SECRETS_PASSPHRASE";
5
5
  /** Reset the one-shot warning latches. Tests only — production never re-warns. */
6
6
  export declare function resetSyncPassphraseWarnings(): void;
7
7
  /** Where a resolved sync passphrase came from, so callers can report honestly. */
8
- export type SyncPassphraseSource = 'sync-env' | 'legacy-env' | null;
9
- export interface ResolvedSyncPassphrase {
8
+ type SyncPassphraseSource = 'sync-env' | 'legacy-env' | null;
9
+ interface ResolvedSyncPassphrase {
10
10
  value: string | null;
11
11
  source: SyncPassphraseSource;
12
12
  }
@@ -25,3 +25,4 @@ export declare function resolveSyncPassphraseFromEnv(): ResolvedSyncPassphrase;
25
25
  export declare function warnEnvPassphraseReadableOnce(): void;
26
26
  /** The message a headless caller shows when no passphrase is available. */
27
27
  export declare function missingSyncPassphraseMessage(): string;
28
+ export {};