@skrr-ai/cli 0.1.110 → 0.1.113

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 (399) hide show
  1. package/bin/run.js +15 -1
  2. package/dist/base-command.d.ts +31 -3
  3. package/dist/base-command.js +136 -22
  4. package/dist/commands/actions/list.js +2 -1
  5. package/dist/commands/agenda/trigger/create.js +1 -1
  6. package/dist/commands/agenda/trigger/list.js +2 -1
  7. package/dist/commands/agent-groups/list.js +2 -1
  8. package/dist/commands/agents/actions/list.js +2 -1
  9. package/dist/commands/agents/always-on/status.js +5 -0
  10. package/dist/commands/agents/chat.js +4 -1
  11. package/dist/commands/agents/create.d.ts +3 -1
  12. package/dist/commands/agents/create.js +36 -3
  13. package/dist/commands/agents/duplicate.js +4 -0
  14. package/dist/commands/agents/eval/list.js +2 -1
  15. package/dist/commands/agents/files/list.js +2 -1
  16. package/dist/commands/agents/folders/list.js +2 -1
  17. package/dist/commands/agents/goals/list.js +2 -1
  18. package/dist/commands/agents/intuitions/list.js +8 -5
  19. package/dist/commands/agents/list.d.ts +12 -0
  20. package/dist/commands/agents/list.js +45 -8
  21. package/dist/commands/agents/releases/known-issues/list.js +2 -1
  22. package/dist/commands/agents/releases/list.js +5 -1
  23. package/dist/commands/agents/releases/trusted-publishers/list.js +2 -1
  24. package/dist/commands/agents/roles/list.js +2 -1
  25. package/dist/commands/agents/skills/list.js +2 -1
  26. package/dist/commands/agents/todos/list.js +2 -1
  27. package/dist/commands/agents/triggers/list.js +2 -1
  28. package/dist/commands/api-keys/list.js +2 -1
  29. package/dist/commands/apps/channel.d.ts +20 -0
  30. package/dist/commands/apps/channel.js +64 -0
  31. package/dist/commands/apps/check-draft.d.ts +12 -0
  32. package/dist/commands/apps/check-draft.js +41 -0
  33. package/dist/commands/apps/check.d.ts +42 -0
  34. package/dist/commands/apps/check.js +91 -0
  35. package/dist/commands/apps/create.d.ts +15 -0
  36. package/dist/commands/apps/create.js +59 -0
  37. package/dist/commands/apps/data/put.d.ts +18 -0
  38. package/dist/commands/apps/data/put.js +72 -0
  39. package/dist/commands/apps/data/query.d.ts +20 -0
  40. package/dist/commands/apps/data/query.js +88 -0
  41. package/dist/commands/apps/disclosure.d.ts +16 -0
  42. package/dist/commands/apps/disclosure.js +71 -0
  43. package/dist/commands/apps/file/cat.d.ts +15 -0
  44. package/dist/commands/apps/file/cat.js +50 -0
  45. package/dist/commands/apps/file/ls.d.ts +13 -0
  46. package/dist/commands/apps/file/ls.js +47 -0
  47. package/dist/commands/apps/file/mv.d.ts +15 -0
  48. package/dist/commands/apps/file/mv.js +49 -0
  49. package/dist/commands/apps/file/rm.d.ts +15 -0
  50. package/dist/commands/apps/file/rm.js +53 -0
  51. package/dist/commands/apps/file/write.d.ts +17 -0
  52. package/dist/commands/apps/file/write.js +81 -0
  53. package/dist/commands/apps/install.d.ts +19 -0
  54. package/dist/commands/apps/install.js +136 -0
  55. package/dist/commands/apps/installations/list.d.ts +11 -0
  56. package/dist/commands/apps/installations/list.js +49 -0
  57. package/dist/commands/apps/installations/show.d.ts +12 -0
  58. package/dist/commands/apps/installations/show.js +61 -0
  59. package/dist/commands/apps/layout/set.d.ts +11 -0
  60. package/dist/commands/apps/layout/set.js +125 -0
  61. package/dist/commands/apps/layout/show.d.ts +9 -0
  62. package/dist/commands/apps/layout/show.js +33 -0
  63. package/dist/commands/apps/list.d.ts +10 -0
  64. package/dist/commands/apps/list.js +45 -0
  65. package/dist/commands/apps/logs.d.ts +13 -0
  66. package/dist/commands/apps/logs.js +55 -0
  67. package/dist/commands/apps/preview.d.ts +12 -0
  68. package/dist/commands/apps/preview.js +39 -0
  69. package/dist/commands/apps/publish/propose.d.ts +14 -0
  70. package/dist/commands/apps/publish/propose.js +45 -0
  71. package/dist/commands/apps/pull.d.ts +14 -0
  72. package/dist/commands/apps/pull.js +56 -0
  73. package/dist/commands/apps/push.d.ts +15 -0
  74. package/dist/commands/apps/push.js +75 -0
  75. package/dist/commands/apps/reconsent.d.ts +13 -0
  76. package/dist/commands/apps/reconsent.js +67 -0
  77. package/dist/commands/apps/report.d.ts +20 -0
  78. package/dist/commands/apps/report.js +63 -0
  79. package/dist/commands/apps/resume.d.ts +12 -0
  80. package/dist/commands/apps/resume.js +36 -0
  81. package/dist/commands/apps/settings/set.d.ts +13 -0
  82. package/dist/commands/apps/settings/set.js +54 -0
  83. package/dist/commands/apps/settings/show.d.ts +11 -0
  84. package/dist/commands/apps/settings/show.js +31 -0
  85. package/dist/commands/apps/show.d.ts +12 -0
  86. package/dist/commands/apps/show.js +49 -0
  87. package/dist/commands/apps/suspend.d.ts +12 -0
  88. package/dist/commands/apps/suspend.js +35 -0
  89. package/dist/commands/apps/uninstall.d.ts +13 -0
  90. package/dist/commands/apps/uninstall.js +43 -0
  91. package/dist/commands/apps/upgrade.d.ts +14 -0
  92. package/dist/commands/apps/upgrade.js +49 -0
  93. package/dist/commands/apps/version/create.d.ts +14 -0
  94. package/dist/commands/apps/version/create.js +53 -0
  95. package/dist/commands/apps/version/show.d.ts +12 -0
  96. package/dist/commands/apps/version/show.js +39 -0
  97. package/dist/commands/apps/versions.d.ts +12 -0
  98. package/dist/commands/apps/versions.js +40 -0
  99. package/dist/commands/apps/webhooks/list.d.ts +12 -0
  100. package/dist/commands/apps/webhooks/list.js +47 -0
  101. package/dist/commands/characters/list.js +2 -1
  102. package/dist/commands/chats/files/list.js +2 -1
  103. package/dist/commands/chats/folders/list.js +2 -1
  104. package/dist/commands/chats/list.js +2 -1
  105. package/dist/commands/chats/spaces/list.js +2 -1
  106. package/dist/commands/chats/widgets/list.js +2 -1
  107. package/dist/commands/code/jobs/list.js +4 -1
  108. package/dist/commands/commerce/incidents/list.js +2 -1
  109. package/dist/commands/commitments/accounting.js +3 -0
  110. package/dist/commands/commitments/action-proposals.d.ts +8 -0
  111. package/dist/commands/commitments/action-proposals.js +17 -2
  112. package/dist/commands/commitments/cost.d.ts +11 -0
  113. package/dist/commands/commitments/cost.js +25 -0
  114. package/dist/commands/commitments/create.js +6 -1
  115. package/dist/commands/commitments/endpoints/list.js +2 -1
  116. package/dist/commands/commitments/links/list.js +2 -1
  117. package/dist/commands/commitments/list.js +2 -1
  118. package/dist/commands/commitments/liveness.d.ts +30 -0
  119. package/dist/commands/commitments/liveness.js +22 -5
  120. package/dist/commands/commitments/pack/list.js +2 -1
  121. package/dist/commands/commitments/preflight.js +6 -2
  122. package/dist/commands/commitments/update.js +10 -1
  123. package/dist/commands/compass/list.js +2 -1
  124. package/dist/commands/context.js +7 -1
  125. package/dist/commands/convos/list.js +3 -2
  126. package/dist/commands/dm/list.js +2 -1
  127. package/dist/commands/dm/work.d.ts +19 -0
  128. package/dist/commands/dm/work.js +54 -0
  129. package/dist/commands/feeds/list.js +2 -1
  130. package/dist/commands/followups/list.js +2 -1
  131. package/dist/commands/followups/plans/cancel.d.ts +13 -0
  132. package/dist/commands/followups/plans/cancel.js +26 -0
  133. package/dist/commands/followups/plans/create.d.ts +11 -0
  134. package/dist/commands/followups/plans/create.js +37 -0
  135. package/dist/commands/followups/plans/example.d.ts +6 -0
  136. package/dist/commands/followups/plans/example.js +12 -0
  137. package/dist/commands/followups/plans/list.d.ts +13 -0
  138. package/dist/commands/followups/plans/list.js +50 -0
  139. package/dist/commands/followups/plans/observability.d.ts +11 -0
  140. package/dist/commands/followups/plans/observability.js +46 -0
  141. package/dist/commands/followups/plans/revise.d.ts +14 -0
  142. package/dist/commands/followups/plans/revise.js +38 -0
  143. package/dist/commands/followups/plans/show.d.ts +11 -0
  144. package/dist/commands/followups/plans/show.js +32 -0
  145. package/dist/commands/goals/key-results/list.js +2 -1
  146. package/dist/commands/goals/labels/list.js +3 -2
  147. package/dist/commands/goals/list.js +3 -2
  148. package/dist/commands/grants/list.js +2 -1
  149. package/dist/commands/harnesses/grants/list.js +2 -1
  150. package/dist/commands/harnesses/leases/list.js +2 -1
  151. package/dist/commands/harnesses/list.js +10 -1
  152. package/dist/commands/ingress/list.js +2 -1
  153. package/dist/commands/initiatives/list.js +2 -1
  154. package/dist/commands/instruction-blocks/list.js +2 -1
  155. package/dist/commands/instructions/list.js +2 -1
  156. package/dist/commands/integrations/connections/list.js +2 -1
  157. package/dist/commands/integrations/tools/list.js +2 -1
  158. package/dist/commands/labels/list.js +3 -2
  159. package/dist/commands/learning/adapters.d.ts +16 -0
  160. package/dist/commands/learning/adapters.js +44 -0
  161. package/dist/commands/machines/dedicated/list.js +2 -1
  162. package/dist/commands/machines/hosted/list.js +2 -1
  163. package/dist/commands/machines/list.js +2 -1
  164. package/dist/commands/machines/show.js +5 -2
  165. package/dist/commands/measures/list.js +2 -1
  166. package/dist/commands/memory/list.js +2 -1
  167. package/dist/commands/memory/proposals/list.js +2 -1
  168. package/dist/commands/memory/stores/list.js +2 -1
  169. package/dist/commands/memory/topics/list.js +2 -1
  170. package/dist/commands/memory/versions/list.js +2 -1
  171. package/dist/commands/messages/list.js +2 -1
  172. package/dist/commands/northstars/intents/list.js +2 -1
  173. package/dist/commands/northstars/list.js +2 -1
  174. package/dist/commands/northstars/recommendations/list.js +2 -1
  175. package/dist/commands/outbox/list.js +2 -1
  176. package/dist/commands/profiles/list.js +2 -1
  177. package/dist/commands/projects/docs/list.js +8 -1
  178. package/dist/commands/projects/updates/list.js +2 -1
  179. package/dist/commands/proposals/list.js +2 -1
  180. package/dist/commands/requests/comments/list.js +2 -1
  181. package/dist/commands/requests/list.js +2 -1
  182. package/dist/commands/shares/list.js +2 -1
  183. package/dist/commands/shortcuts/list.js +2 -1
  184. package/dist/commands/signals/monitors/list.js +2 -1
  185. package/dist/commands/signals/schemas/list.js +2 -1
  186. package/dist/commands/signals/sources/list.js +2 -1
  187. package/dist/commands/space-directory-views/list.js +2 -1
  188. package/dist/commands/spaces/actions/list.js +4 -3
  189. package/dist/commands/spaces/briefs/list.js +2 -1
  190. package/dist/commands/spaces/cycles/list.js +2 -1
  191. package/dist/commands/spaces/files/folders/list.js +2 -1
  192. package/dist/commands/spaces/files/list.js +3 -2
  193. package/dist/commands/spaces/heartbeats/list.js +3 -2
  194. package/dist/commands/spaces/labels/list.js +3 -2
  195. package/dist/commands/spaces/list.d.ts +3 -18
  196. package/dist/commands/spaces/list.js +28 -35
  197. package/dist/commands/spaces/live/cards/list.js +2 -1
  198. package/dist/commands/spaces/members/list.d.ts +1 -0
  199. package/dist/commands/spaces/members/list.js +4 -1
  200. package/dist/commands/spaces/show.js +2 -2
  201. package/dist/commands/spaces/skills/list.js +6 -2
  202. package/dist/commands/spaces/states/list.js +2 -1
  203. package/dist/commands/spaces/views/list.js +2 -1
  204. package/dist/commands/spaces/widgets/list.js +3 -2
  205. package/dist/commands/spaces/workflow-templates/list.js +2 -1
  206. package/dist/commands/spaces/workflows/fixtures/list.js +2 -1
  207. package/dist/commands/spaces/workflows/list.js +3 -2
  208. package/dist/commands/spaces/workflows/proposals/list.js +2 -1
  209. package/dist/commands/spaces/workflows/triggers/list.js +2 -1
  210. package/dist/commands/store/acquisitions/list.js +2 -1
  211. package/dist/commands/store/admissions/list.js +17 -1
  212. package/dist/commands/store/advisories/list.js +2 -1
  213. package/dist/commands/store/follows/list.js +2 -1
  214. package/dist/commands/store/publishers/domains/list.js +2 -1
  215. package/dist/commands/store/reports/list.js +2 -1
  216. package/dist/commands/subscriptions/list.js +2 -1
  217. package/dist/commands/tasks/actionability.js +7 -30
  218. package/dist/commands/tasks/activity.js +3 -7
  219. package/dist/commands/tasks/approvals/list.js +2 -1
  220. package/dist/commands/tasks/assign.d.ts +1 -0
  221. package/dist/commands/tasks/assign.js +43 -7
  222. package/dist/commands/tasks/attachments/list.js +2 -1
  223. package/dist/commands/tasks/chat/send.js +34 -0
  224. package/dist/commands/tasks/comments/add.js +6 -1
  225. package/dist/commands/tasks/comments/list.js +2 -1
  226. package/dist/commands/tasks/complete.js +26 -2
  227. package/dist/commands/tasks/continue.d.ts +18 -0
  228. package/dist/commands/tasks/continue.js +54 -0
  229. package/dist/commands/tasks/create-tree.d.ts +5 -0
  230. package/dist/commands/tasks/create-tree.js +399 -219
  231. package/dist/commands/tasks/create.d.ts +1 -0
  232. package/dist/commands/tasks/create.js +63 -11
  233. package/dist/commands/tasks/deliverable/add.js +10 -3
  234. package/dist/commands/tasks/deliverable/list.js +2 -1
  235. package/dist/commands/tasks/events/list.js +2 -1
  236. package/dist/commands/tasks/execution-state.d.ts +12 -0
  237. package/dist/commands/tasks/execution-state.js +28 -0
  238. package/dist/commands/tasks/expectations/assess.js +40 -5
  239. package/dist/commands/tasks/guide.d.ts +10 -0
  240. package/dist/commands/tasks/guide.js +20 -0
  241. package/dist/commands/tasks/labels/list.js +2 -1
  242. package/dist/commands/tasks/list.d.ts +19 -0
  243. package/dist/commands/tasks/list.js +97 -4
  244. package/dist/commands/tasks/move.js +10 -2
  245. package/dist/commands/tasks/preflight.d.ts +14 -0
  246. package/dist/commands/tasks/preflight.js +77 -0
  247. package/dist/commands/tasks/resource/list.js +2 -1
  248. package/dist/commands/tasks/result/submit.js +10 -1
  249. package/dist/commands/tasks/review.js +6 -1
  250. package/dist/commands/tasks/revisions.d.ts +2 -0
  251. package/dist/commands/tasks/revisions.js +8 -1
  252. package/dist/commands/tasks/show.js +17 -11
  253. package/dist/commands/tasks/start.d.ts +1 -0
  254. package/dist/commands/tasks/start.js +35 -0
  255. package/dist/commands/tasks/templates/list.js +2 -1
  256. package/dist/commands/tasks/timeline.d.ts +5 -0
  257. package/dist/commands/tasks/timeline.js +9 -1
  258. package/dist/commands/tasks/update.d.ts +1 -0
  259. package/dist/commands/tasks/update.js +25 -2
  260. package/dist/commands/tasks/updates/add.js +6 -1
  261. package/dist/commands/tasks/updates/list.js +2 -1
  262. package/dist/commands/tasks/upsert.d.ts +1 -0
  263. package/dist/commands/tasks/upsert.js +8 -1
  264. package/dist/commands/token/list.js +2 -1
  265. package/dist/commands/tokens/list.js +2 -1
  266. package/dist/commands/tones/list.js +4 -2
  267. package/dist/commands/triggers/list.js +2 -1
  268. package/dist/commands/views/list.js +2 -1
  269. package/dist/commands/webhooks/list.js +2 -1
  270. package/dist/commands/whoami.js +1 -1
  271. package/dist/commands/widgets/list.js +2 -1
  272. package/dist/commands/widgets/save-as-app.d.ts +13 -0
  273. package/dist/commands/widgets/save-as-app.js +65 -0
  274. package/dist/commands/work-views/list.js +2 -1
  275. package/dist/commands/worklog/list.js +2 -1
  276. package/dist/commands/workspaces/list.js +3 -2
  277. package/dist/commands/workspaces/members.d.ts +1 -0
  278. package/dist/commands/workspaces/members.js +5 -2
  279. package/dist/generated/managed-instruction-guides.json +2 -2
  280. package/dist/help.js +7 -0
  281. package/dist/lib/agent-proactive-baseline.d.ts +9 -0
  282. package/dist/lib/agent-proactive-baseline.js +44 -0
  283. package/dist/lib/agentic-stream.d.ts +4 -1
  284. package/dist/lib/agentic-stream.js +29 -4
  285. package/dist/lib/appData.d.ts +75 -0
  286. package/dist/lib/appData.js +274 -0
  287. package/dist/lib/appInstallations.d.ts +117 -0
  288. package/dist/lib/appInstallations.js +960 -0
  289. package/dist/lib/appSettings.d.ts +3 -0
  290. package/dist/lib/appSettings.js +71 -0
  291. package/dist/lib/appWebhooks.d.ts +7 -0
  292. package/dist/lib/appWebhooks.js +59 -0
  293. package/dist/lib/apps-command.d.ts +44 -0
  294. package/dist/lib/apps-command.js +164 -0
  295. package/dist/lib/apps.d.ts +45 -0
  296. package/dist/lib/apps.js +148 -0
  297. package/dist/lib/appsCheck.d.ts +12 -0
  298. package/dist/lib/appsCheck.js +173 -0
  299. package/dist/lib/appsFs.d.ts +58 -0
  300. package/dist/lib/appsFs.js +384 -0
  301. package/dist/lib/auth-failure.d.ts +20 -0
  302. package/dist/lib/auth-failure.js +40 -3
  303. package/dist/lib/cli-installers.d.ts +9 -2
  304. package/dist/lib/command-miss.js +107 -0
  305. package/dist/lib/commitment-loop-status.js +25 -3
  306. package/dist/lib/commitments.d.ts +44 -3
  307. package/dist/lib/commitments.js +107 -9
  308. package/dist/lib/compasses.d.ts +4 -0
  309. package/dist/lib/compasses.js +11 -0
  310. package/dist/lib/daemon-setup.js +7 -7
  311. package/dist/lib/daemonHandoff.js +3 -2
  312. package/dist/lib/dedicated-ssh.d.ts +2 -0
  313. package/dist/lib/dedicated-ssh.js +98 -28
  314. package/dist/lib/json-output.d.ts +33 -0
  315. package/dist/lib/json-output.js +37 -0
  316. package/dist/lib/list-output.d.ts +9 -4
  317. package/dist/lib/list-output.js +36 -9
  318. package/dist/lib/lookbackPlanHelp.d.ts +19 -0
  319. package/dist/lib/lookbackPlanHelp.js +27 -0
  320. package/dist/lib/lookbackPlans.d.ts +22 -0
  321. package/dist/lib/lookbackPlans.js +88 -0
  322. package/dist/lib/machines.d.ts +27 -6
  323. package/dist/lib/machines.js +25 -14
  324. package/dist/lib/member-output.d.ts +20 -0
  325. package/dist/lib/member-output.js +57 -0
  326. package/dist/lib/preflight-copy.d.ts +7 -0
  327. package/dist/lib/preflight-copy.js +31 -0
  328. package/dist/lib/roles.d.ts +2 -2
  329. package/dist/lib/task-admission.d.ts +9 -0
  330. package/dist/lib/task-admission.js +35 -0
  331. package/dist/lib/task-batch.d.ts +4 -0
  332. package/dist/lib/task-batch.js +2 -0
  333. package/dist/lib/task-operations.d.ts +25 -0
  334. package/dist/lib/task-operations.js +123 -0
  335. package/dist/lib/task-preflight.d.ts +35 -0
  336. package/dist/lib/task-preflight.js +121 -0
  337. package/dist/lib/task-resource-references.d.ts +23 -0
  338. package/dist/lib/task-resource-references.js +119 -0
  339. package/dist/lib/task-spec-verification.d.ts +42 -0
  340. package/dist/lib/task-spec-verification.js +101 -0
  341. package/dist/lib/task-work.d.ts +11 -0
  342. package/dist/lib/task-work.js +41 -0
  343. package/dist/lib/task-write-attribution.d.ts +26 -0
  344. package/dist/lib/task-write-attribution.js +47 -0
  345. package/dist/lib/tasks.d.ts +13 -0
  346. package/dist/lib/tasks.js +61 -8
  347. package/dist/lib/triggers.d.ts +7 -0
  348. package/dist/lib/triggers.js +54 -4
  349. package/dist/lib/usage-discovery.d.ts +4 -0
  350. package/dist/lib/usage-discovery.js +14 -4
  351. package/dist/lib/widgetApps.d.ts +10 -0
  352. package/dist/lib/widgetApps.js +47 -0
  353. package/dist/lib/widgetStaticScan.js +25 -1
  354. package/dist/lib/workspaces.d.ts +11 -4
  355. package/dist/lib/workspaces.js +7 -3
  356. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.d.ts +14 -1
  357. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/computerWire.js +47 -2
  358. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonToolApproval.d.ts +49 -1
  359. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonToolApproval.js +26 -0
  360. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonWire.d.ts +118 -0
  361. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonWire.js +614 -0
  362. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.d.ts +2 -0
  363. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refresh.js +15 -2
  364. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refreshClassification.d.ts +5 -0
  365. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/refreshClassification.js +3 -1
  366. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionRevocation.d.ts +177 -0
  367. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/sessionRevocation.js +484 -0
  368. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/telemetryRedaction.d.ts +11 -0
  369. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/telemetryRedaction.js +46 -7
  370. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/toolApprovalSignature.d.ts +232 -0
  371. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/toolApprovalSignature.js +372 -0
  372. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/types.d.ts +17 -1
  373. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/types.js +12 -1
  374. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.d.ts +14 -1
  375. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/computerWire.js +45 -2
  376. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonToolApproval.d.ts +49 -1
  377. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonToolApproval.js +24 -0
  378. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonWire.d.ts +118 -0
  379. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonWire.js +608 -0
  380. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.d.ts +2 -0
  381. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refresh.js +15 -2
  382. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refreshClassification.d.ts +5 -0
  383. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/refreshClassification.js +3 -1
  384. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionRevocation.d.ts +177 -0
  385. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/sessionRevocation.js +472 -0
  386. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/telemetryRedaction.d.ts +11 -0
  387. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/telemetryRedaction.js +44 -6
  388. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/toolApprovalSignature.d.ts +232 -0
  389. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/toolApprovalSignature.js +360 -0
  390. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/types.d.ts +17 -1
  391. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/types.js +12 -1
  392. package/dist/node_modules/@skrr-ai/auth-core/package.json +30 -0
  393. package/dist/node_modules/@skrr-ai/data-provider/index.js +25245 -18730
  394. package/docs/v1/README.md +1 -0
  395. package/docs/v1/lookback-plans.md +88 -0
  396. package/docs/v1/operations.md +52 -0
  397. package/docs/v1/space-search.md +19 -0
  398. package/oclif.manifest.json +4792 -477
  399. package/package.json +27 -3
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../base-command");
5
6
  const api_fetch_1 = require("../../lib/api-fetch");
@@ -50,7 +51,7 @@ class FeedsList extends base_command_1.BaseCommand {
50
51
  this.handleApiError(err);
51
52
  }
52
53
  if (flags.json) {
53
- this.log(JSON.stringify(response, null, 2));
54
+ this.printJsonResult((0, list_output_1.listResult)(response, 'items'));
54
55
  return;
55
56
  }
56
57
  const r = response;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../base-command");
5
6
  const followups_1 = require("../../lib/followups");
@@ -72,7 +73,7 @@ class FollowupsList extends base_command_1.BaseCommand {
72
73
  return;
73
74
  }
74
75
  if (flags.json) {
75
- this.log(JSON.stringify(response, null, 2));
76
+ this.printJsonResult((0, list_output_1.listResult)(response, 'followups'));
76
77
  return;
77
78
  }
78
79
  const rows = response.followups ?? [];
@@ -0,0 +1,13 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansCancel extends BaseCommand {
3
+ static description: string;
4
+ static args: {
5
+ id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ revision: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ reason: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ };
12
+ run(): Promise<void>;
13
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
6
+ class LookbackPlansCancel extends base_command_1.BaseCommand {
7
+ static description = 'Cancel the remaining lookbacks of a plan';
8
+ static args = { id: lookbackPlans_1.lookbackPlanIdArg };
9
+ static flags = {
10
+ revision: core_1.Flags.integer({ description: 'Expected current revision; stale edits are refused', min: 1 }),
11
+ reason: core_1.Flags.string({ description: 'Why the remaining lookbacks are no longer needed' }),
12
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
13
+ };
14
+ async run() {
15
+ this.requireAuth();
16
+ const { args, flags } = await this.parse(LookbackPlansCancel);
17
+ try {
18
+ const result = await lookbackPlans_1.lookbackPlansApi.cancel(args.id, { expectedRevision: flags.revision, reason: flags.reason });
19
+ this.log(flags.json ? JSON.stringify(result, null, 2) : `Lookback plan ${result.plan.id}: ${result.plan.state} (r${result.plan.revision}).`);
20
+ }
21
+ catch (err) {
22
+ this.handleApiError(err);
23
+ }
24
+ }
25
+ }
26
+ exports.default = LookbackPlansCancel;
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansCreate extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ 'from-json': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
7
+ agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const prompt_1 = require("../../../lib/prompt");
6
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
7
+ const lookbackPlanHelp_1 = require("../../../lib/lookbackPlanHelp");
8
+ class LookbackPlansCreate extends base_command_1.BaseCommand {
9
+ static description = 'Schedule a bounded plan of 1–10 lookbacks, each free to stay silent\n\n' + lookbackPlanHelp_1.LOOKBACK_PLAN_INPUT_HELP +
10
+ '\n\nCreate also accepts {"agentId":"...","pinnedConversationId":"...","plan":{...}}. Source and delivery destination are separate; pin the original conversation to return there.';
11
+ static examples = ['<%= config.bin %> followups plans create --from-json plan.json --agent agent_1 --json'];
12
+ static flags = {
13
+ 'from-json': core_1.Flags.string({ description: 'Plan or create envelope JSON file; - reads stdin', required: true }),
14
+ agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent or input agentId)' }),
15
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
16
+ };
17
+ async run() {
18
+ this.requireAuth();
19
+ const { flags } = await this.parse(LookbackPlansCreate);
20
+ let body;
21
+ try {
22
+ body = (0, lookbackPlans_1.lookbackCreateBody)(await (0, prompt_1.readJsonBody)(flags['from-json']), flags.agent);
23
+ }
24
+ catch (err) {
25
+ this.failWithCliError((0, lookbackPlans_1.lookbackInputFailure)(err));
26
+ return;
27
+ }
28
+ try {
29
+ const result = await lookbackPlans_1.lookbackPlansApi.create(body);
30
+ this.log(flags.json ? JSON.stringify(result, null, 2) : (0, lookbackPlans_1.lookbackArmingLine)(result));
31
+ }
32
+ catch (err) {
33
+ this.handleApiError(err);
34
+ }
35
+ }
36
+ }
37
+ exports.default = LookbackPlansCreate;
@@ -0,0 +1,6 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlanExample extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ run(): Promise<void>;
6
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const base_command_1 = require("../../../base-command");
4
+ const lookbackPlanHelp_1 = require("../../../lib/lookbackPlanHelp");
5
+ class LookbackPlanExample extends base_command_1.BaseCommand {
6
+ static description = 'Print an editable Plan JSON template without signing in\n\nReplace the source placeholders with a real completed assistant reply before creating a plan. This command schedules nothing.';
7
+ static examples = ['<%= config.bin %> followups plans example > plan.json'];
8
+ async run() {
9
+ this.log(JSON.stringify(lookbackPlanHelp_1.LOOKBACK_PLAN_EXAMPLE, null, 2));
10
+ }
11
+ }
12
+ exports.default = LookbackPlanExample;
@@ -0,0 +1,13 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansList extends BaseCommand {
3
+ static description: string;
4
+ static flags: {
5
+ agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ 'all-agents': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
7
+ state: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ limit: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
9
+ cursor: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ };
12
+ run(): Promise<void>;
13
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const data_provider_1 = require("@skrr-ai/data-provider");
5
+ const base_command_1 = require("../../../base-command");
6
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
7
+ const followups_1 = require("../../../lib/followups");
8
+ const list_output_1 = require("../../../lib/list-output");
9
+ class LookbackPlansList extends base_command_1.BaseCommand {
10
+ static description = 'List lookback plans, active first, with bounded history pagination';
11
+ static flags = {
12
+ agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent)', exclusive: ['all-agents'] }),
13
+ 'all-agents': core_1.Flags.boolean({ description: 'List all agents owned by you', exclusive: ['agent'] }),
14
+ state: core_1.Flags.string({ description: 'Filter plan state', options: [...data_provider_1.LOOKBACK_PLAN_STATES] }),
15
+ limit: core_1.Flags.integer({ description: 'Maximum plans (1..100)', min: 1, max: 100 }),
16
+ cursor: core_1.Flags.string({ description: 'Opaque nextCursor from a previous page; keep the same scope and filters' }),
17
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
18
+ };
19
+ async run() {
20
+ this.requireAuth();
21
+ const { flags } = await this.parse(LookbackPlansList);
22
+ let agentId;
23
+ try {
24
+ agentId = flags['all-agents'] ? undefined : (0, followups_1.resolveFollowUpAgent)(flags.agent).id;
25
+ }
26
+ catch (err) {
27
+ this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'AGENT_CONTEXT_AMBIGUOUS', exit: 2, retryable: false });
28
+ return;
29
+ }
30
+ try {
31
+ const result = await lookbackPlans_1.lookbackPlansApi.list({ agentId, state: flags.state, limit: flags.limit, cursor: flags.cursor });
32
+ if (flags.json) {
33
+ this.printJsonResult((0, list_output_1.listResult)(result, 'plans'));
34
+ return;
35
+ }
36
+ if (!result.plans.length) {
37
+ this.log('No lookback plans.');
38
+ return;
39
+ }
40
+ for (const plan of result.plans)
41
+ this.log((0, lookbackPlans_1.lookbackPlanSummary)(plan));
42
+ if (result.hasMore)
43
+ this.log(`More plans: repeat this command with --cursor ${result.nextCursor}`);
44
+ }
45
+ catch (err) {
46
+ this.handleApiError(err);
47
+ }
48
+ }
49
+ }
50
+ exports.default = LookbackPlansList;
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansObservability extends BaseCommand {
3
+ static description: string;
4
+ static flags: {
5
+ agent: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
6
+ 'all-agents': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
7
+ limit: import("@oclif/core/lib/interfaces").OptionFlag<number | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
8
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
6
+ const followups_1 = require("../../../lib/followups");
7
+ class LookbackPlansObservability extends base_command_1.BaseCommand {
8
+ static description = 'Inspect bounded lookback scheduling health and evaluation outcomes';
9
+ static flags = {
10
+ agent: core_1.Flags.string({ description: 'Agent ID (default: bound session agent)', exclusive: ['all-agents'] }),
11
+ 'all-agents': core_1.Flags.boolean({ description: 'Inspect all owned agents', exclusive: ['agent'] }),
12
+ limit: core_1.Flags.integer({ description: 'Maximum sampled plans (1..100)', min: 1, max: 100 }),
13
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
14
+ };
15
+ async run() {
16
+ this.requireAuth();
17
+ const { flags } = await this.parse(LookbackPlansObservability);
18
+ let agentId;
19
+ try {
20
+ agentId = flags['all-agents'] ? undefined : (0, followups_1.resolveFollowUpAgent)(flags.agent).id;
21
+ }
22
+ catch (err) {
23
+ this.failWithCliError({ message: err instanceof Error ? err.message : String(err), code: 'AGENT_CONTEXT_AMBIGUOUS', exit: 2, retryable: false });
24
+ return;
25
+ }
26
+ try {
27
+ const result = await lookbackPlans_1.lookbackPlansApi.observability({ agentId, limit: flags.limit });
28
+ if (flags.json) {
29
+ this.log(JSON.stringify(result, null, 2));
30
+ return;
31
+ }
32
+ this.log(`${result.sample.plans} plans sampled${result.sample.truncated ? ' (more exist)' : ''}.`);
33
+ for (const group of result.groups) {
34
+ this.log(`${group.agentId}: ${group.evaluations.used}/${group.evaluations.ceiling} evaluations used`);
35
+ for (const [name, count] of Object.entries(group.health)) {
36
+ if (count > 0)
37
+ this.log(` ${name}: ${count}`);
38
+ }
39
+ }
40
+ }
41
+ catch (err) {
42
+ this.handleApiError(err);
43
+ }
44
+ }
45
+ }
46
+ exports.default = LookbackPlansObservability;
@@ -0,0 +1,14 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansRevise extends BaseCommand {
3
+ static description: string;
4
+ static examples: string[];
5
+ static args: {
6
+ id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
7
+ };
8
+ static flags: {
9
+ revision: import("@oclif/core/lib/interfaces").OptionFlag<number, import("@oclif/core/lib/interfaces").CustomOptions>;
10
+ 'from-json': import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces").CustomOptions>;
11
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ };
13
+ run(): Promise<void>;
14
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const prompt_1 = require("../../../lib/prompt");
6
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
7
+ const lookbackPlanHelp_1 = require("../../../lib/lookbackPlanHelp");
8
+ class LookbackPlansRevise extends base_command_1.BaseCommand {
9
+ static description = 'Revise pending lookbacks using the original source and step IDs\n\n' + lookbackPlanHelp_1.LOOKBACK_PLAN_INPUT_HELP +
10
+ '\n\nRevise accepts the plan itself, not a create envelope. Use the current --revision from show; a stale revision returns LOOKBACK_CONFLICT (409).';
11
+ static examples = ['<%= config.bin %> followups plans revise PLAN_ID --revision 1 --from-json revised-plan.json --json'];
12
+ static args = { id: lookbackPlans_1.lookbackPlanIdArg };
13
+ static flags = {
14
+ revision: core_1.Flags.integer({ description: 'Expected current revision; stale edits are refused', min: 1, required: true }),
15
+ 'from-json': core_1.Flags.string({ description: 'Full PlanInput JSON file; - reads stdin', required: true }),
16
+ json: core_1.Flags.boolean({ description: 'Output as JSON' }),
17
+ };
18
+ async run() {
19
+ this.requireAuth();
20
+ const { args, flags } = await this.parse(LookbackPlansRevise);
21
+ let plan;
22
+ try {
23
+ plan = (0, lookbackPlans_1.lookbackInput)(await (0, prompt_1.readJsonBody)(flags['from-json']), true);
24
+ }
25
+ catch (err) {
26
+ this.failWithCliError((0, lookbackPlans_1.lookbackInputFailure)(err));
27
+ return;
28
+ }
29
+ try {
30
+ const result = await lookbackPlans_1.lookbackPlansApi.revise(args.id, { expectedRevision: flags.revision, plan });
31
+ this.log(flags.json ? JSON.stringify(result, null, 2) : (0, lookbackPlans_1.lookbackArmingLine)(result));
32
+ }
33
+ catch (err) {
34
+ this.handleApiError(err);
35
+ }
36
+ }
37
+ }
38
+ exports.default = LookbackPlansRevise;
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from '../../../base-command';
2
+ export default class LookbackPlansShow extends BaseCommand {
3
+ static description: string;
4
+ static args: {
5
+ id: import("@oclif/core/lib/interfaces").Arg<string, Record<string, unknown>>;
6
+ };
7
+ static flags: {
8
+ json: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_1 = require("@oclif/core");
4
+ const base_command_1 = require("../../../base-command");
5
+ const lookbackPlans_1 = require("../../../lib/lookbackPlans");
6
+ class LookbackPlansShow extends base_command_1.BaseCommand {
7
+ static description = 'Show a lookback plan, step outcomes and its current revision';
8
+ static args = { id: lookbackPlans_1.lookbackPlanIdArg };
9
+ static flags = { json: core_1.Flags.boolean({ description: 'Output as JSON' }) };
10
+ async run() {
11
+ this.requireAuth();
12
+ const { args, flags } = await this.parse(LookbackPlansShow);
13
+ try {
14
+ const result = await lookbackPlans_1.lookbackPlansApi.show(args.id);
15
+ if (flags.json) {
16
+ this.log(JSON.stringify(result, null, 2));
17
+ return;
18
+ }
19
+ this.log((0, lookbackPlans_1.lookbackPlanSummary)(result.plan));
20
+ this.log(`Objective: ${result.plan.objective}\nStop when: ${result.plan.stopCondition}`);
21
+ for (const step of result.plan.steps) {
22
+ this.log(` ${step.id} [${step.state}${step.outcome ? `/${step.outcome}` : ''}] ${step.runAt} ${step.label || step.instruction}`);
23
+ if (step.summary)
24
+ this.log(` ${step.summary}`);
25
+ }
26
+ }
27
+ catch (err) {
28
+ this.handleApiError(err);
29
+ }
30
+ }
31
+ }
32
+ exports.default = LookbackPlansShow;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../../base-command");
@@ -36,7 +37,7 @@ class GoalsKeyResultsList extends base_command_1.BaseCommand {
36
37
  this.handleApiError(err);
37
38
  }
38
39
  if (flags.json) {
39
- this.log(JSON.stringify(response, null, 2));
40
+ this.printJsonResult((0, list_output_1.listResult)(response));
40
41
  return;
41
42
  }
42
43
  const items = response?.data ?? [];
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../../base-command");
@@ -29,7 +30,7 @@ class GoalsLabelsList extends base_command_1.BaseCommand {
29
30
  const labelIds = goal.labelIds ?? [];
30
31
  if (labelIds.length === 0) {
31
32
  if (flags.json) {
32
- this.log(JSON.stringify({ data: [] }, null, 2));
33
+ this.printJsonResult((0, list_output_1.listResult)({ data: [] }));
33
34
  return;
34
35
  }
35
36
  this.log('No labels on this goal.');
@@ -47,7 +48,7 @@ class GoalsLabelsList extends base_command_1.BaseCommand {
47
48
  }
48
49
  }));
49
50
  if (flags.json) {
50
- this.log(JSON.stringify({ data: hydrated }, null, 2));
51
+ this.printJsonResult((0, list_output_1.listResult)({ data: hydrated }));
51
52
  return;
52
53
  }
53
54
  const rows = hydrated.map((l) => {
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../base-command");
6
7
  const web_url_1 = require("../../lib/web-url");
7
8
  const format_1 = require("../../lib/format");
8
- const list_output_1 = require("../../lib/list-output");
9
+ const list_output_2 = require("../../lib/list-output");
9
10
  class GoalsList extends base_command_1.BaseCommand {
10
11
  static description = 'List goals';
11
12
  static examples = [
@@ -77,7 +78,7 @@ class GoalsList extends base_command_1.BaseCommand {
77
78
  // a script reads `.data` here exactly as it does for tasks and projects. The
78
79
  // space-scoped endpoint is not paginated and answers a bare `{data}`; filling
79
80
  // the missing fields is additive, so nothing that read `.data` changes.
80
- this.log(JSON.stringify((0, web_url_1.withDataUrls)(this.cliConfig.baseURL, (0, list_output_1.toListEnvelope)(response) ?? response, web_url_1.goalUrlFrom), null, 2));
81
+ this.printJsonResult((0, list_output_1.listResult)((0, web_url_1.withDataUrls)(this.cliConfig.baseURL, (0, list_output_2.toListEnvelope)(response) ?? response, web_url_1.goalUrlFrom)));
81
82
  return;
82
83
  }
83
84
  // Both listGoals and listSpaceGoals return { data: Goal[] }. The general
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../base-command");
5
6
  const grants_1 = require("../../lib/grants");
@@ -32,7 +33,7 @@ class GrantsList extends base_command_1.BaseCommand {
32
33
  provider: flags.provider,
33
34
  }));
34
35
  if (flags.json) {
35
- this.log(JSON.stringify(response.grants, null, 2));
36
+ this.printJsonResult((0, list_output_1.listResult)(response.grants));
36
37
  return;
37
38
  }
38
39
  (0, grants_1.renderGrantList)(response.grants, (line) => this.log(line));
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../../base-command");
5
6
  const format_1 = require("../../../lib/format");
@@ -33,7 +34,7 @@ class HarnessesGrantsList extends base_command_1.BaseCommand {
33
34
  return;
34
35
  }
35
36
  if (flags.json) {
36
- this.log(JSON.stringify(grants, null, 2));
37
+ this.printJsonResult((0, list_output_1.listResult)(grants));
37
38
  return;
38
39
  }
39
40
  if (grants.length === 0) {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  /**
4
5
  * Harness leases — the hosted billing plane.
5
6
  *
@@ -53,7 +54,7 @@ class HarnessesLeasesList extends base_command_1.BaseCommand {
53
54
  }
54
55
  const leases = response?.leases ?? [];
55
56
  if (flags.json) {
56
- this.log(JSON.stringify(leases, null, 2));
57
+ this.printJsonResult((0, list_output_1.listResult)(leases));
57
58
  return;
58
59
  }
59
60
  if (leases.length === 0) {
@@ -11,6 +11,7 @@ exports.selectHarnessRows = selectHarnessRows;
11
11
  exports.buildHarnessesJson = buildHarnessesJson;
12
12
  exports.readinessFootnotes = readinessFootnotes;
13
13
  exports.canonicalHarnessRows = canonicalHarnessRows;
14
+ const list_output_1 = require("../../lib/list-output");
14
15
  const core_1 = require("@oclif/core");
15
16
  const auth_core_1 = require("@skrr-ai/auth-core");
16
17
  const base_command_1 = require("../../base-command");
@@ -288,12 +289,15 @@ function readinessFootnotes(rows, readiness) {
288
289
  let unmanaged = 0;
289
290
  let noAnswer = 0;
290
291
  let unknown = 0;
292
+ let unverified = 0;
291
293
  let notReady = 0;
292
294
  for (const row of rows) {
293
295
  const verdict = readiness.lookup(row);
294
296
  if (verdict) {
295
297
  if (verdict.label === 'unknown')
296
298
  unknown += 1;
299
+ else if (verdict.label === 'unverified')
300
+ unverified += 1;
297
301
  else if (!verdict.ok)
298
302
  notReady += 1;
299
303
  }
@@ -316,6 +320,11 @@ function readinessFootnotes(rows, readiness) {
316
320
  if (unknown > 0) {
317
321
  lines.push(`(READINESS unknown: ${unknown} installed, but the daemon cannot read that provider's sign-in state.)`);
318
322
  }
323
+ if (unverified > 0) {
324
+ // A sign-in is there and nothing the daemon has seen says a model is behind it
325
+ // (OSK-16927). Not counted as not ready: the next step is a check, not a fix.
326
+ lines.push(`(READINESS unverified: ${unverified} with a local sign-in that no session on that machine has confirmed reaches a model — \`skrr harnesses models <id>\` checks, without sending a prompt.)`);
327
+ }
319
328
  if (notReady > 0) {
320
329
  lines.push(`(${notReady} not ready — \`skrr harnesses show <id>\` says what each needs.)`);
321
330
  }
@@ -473,7 +482,7 @@ class HarnessesList extends base_command_1.BaseCommand {
473
482
  daemon: flags.daemon ?? null,
474
483
  limit: flags.limit ?? null,
475
484
  }, res, readiness ? readiness.lookup : () => undefined);
476
- this.log(JSON.stringify(payload, null, 2));
485
+ this.printJsonResult((0, list_output_1.listResult)(payload, 'harnesses'));
477
486
  return;
478
487
  }
479
488
  if (selection.visible.length === 0) {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../base-command");
5
6
  const ingress_1 = require("../../lib/ingress");
@@ -23,7 +24,7 @@ class IngressList extends base_command_1.BaseCommand {
23
24
  const { flags } = await this.parse(IngressList);
24
25
  const response = await ingress_1.ingressApi.list();
25
26
  if (flags.json) {
26
- this.log(JSON.stringify(response.ingresses, null, 2));
27
+ this.printJsonResult((0, list_output_1.listResult)(response.ingresses));
27
28
  return;
28
29
  }
29
30
  (0, ingress_1.renderIngressList)(response.ingresses, (line) => this.log(line));
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const base_command_1 = require("../../base-command");
5
6
  const initiatives_1 = require("../../lib/initiatives");
@@ -48,7 +49,7 @@ class InitiativesList extends base_command_1.BaseCommand {
48
49
  this.handleApiError(err);
49
50
  }
50
51
  if (flags.json) {
51
- this.log(JSON.stringify(response, null, 2));
52
+ this.printJsonResult((0, list_output_1.listResult)(response, 'initiatives'));
52
53
  return;
53
54
  }
54
55
  const rows = response.initiatives ?? [];
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../base-command");
@@ -44,7 +45,7 @@ class InstructionBlocksList extends base_command_1.BaseCommand {
44
45
  ...(flags.official ? [] : catalog.library),
45
46
  ].filter((block) => !flags.category || block.category === flags.category);
46
47
  if (flags.json) {
47
- this.log(JSON.stringify({ blocks: all }, null, 2));
48
+ this.printJsonResult((0, list_output_1.listResult)({ blocks: all }, 'blocks'));
48
49
  return;
49
50
  }
50
51
  if (!all.length) {
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../base-command");
@@ -26,7 +27,7 @@ class InstructionsList extends base_command_1.BaseCommand {
26
27
  this.handleApiError(error);
27
28
  }
28
29
  if (flags.json)
29
- return this.log(JSON.stringify(response, null, 2));
30
+ return this.printJsonResult((0, list_output_1.listResult)(response, 'bundles'));
30
31
  if (!response.bundles.length)
31
32
  return this.log('No managed instruction prompts.');
32
33
  (0, format_1.renderTable)(response.bundles.map((bundle) => ({
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../../base-command");
@@ -41,7 +42,7 @@ class IntegrationsConnectionsList extends base_command_1.BaseCommand {
41
42
  this.handleApiError(err);
42
43
  }
43
44
  if (flags.json) {
44
- this.log(JSON.stringify(resp, null, 2));
45
+ this.printJsonResult((0, list_output_1.listResult)(resp, 'connections'));
45
46
  return;
46
47
  }
47
48
  const connections = resp.connections;
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const list_output_1 = require("../../../lib/list-output");
3
4
  const core_1 = require("@oclif/core");
4
5
  const data_provider_1 = require("@skrr-ai/data-provider");
5
6
  const base_command_1 = require("../../../base-command");
@@ -46,7 +47,7 @@ class IntegrationsToolsList extends base_command_1.BaseCommand {
46
47
  this.handleApiError(err);
47
48
  }
48
49
  if (flags.json) {
49
- this.log(JSON.stringify(resp, null, 2));
50
+ this.printJsonResult((0, list_output_1.listResult)(resp, 'tools'));
50
51
  return;
51
52
  }
52
53
  const tools = resp.tools;