@skrr-ai/cli 0.1.94 → 0.1.96

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 (298) hide show
  1. package/README.md +175 -165
  2. package/bin/run.js +32 -0
  3. package/bin/update-npm-runner.cjs +33 -0
  4. package/bin/update-session.cjs +194 -0
  5. package/bin/update-worker.cjs +208 -0
  6. package/dist/base-command.js +0 -15
  7. package/dist/commands/agent/message/send.d.ts +2 -0
  8. package/dist/commands/agent/message/send.js +75 -5
  9. package/dist/commands/agents/chat.js +1 -1
  10. package/dist/commands/agents/create.d.ts +0 -3
  11. package/dist/commands/agents/create.js +0 -26
  12. package/dist/commands/agents/egress.d.ts +17 -0
  13. package/dist/commands/agents/egress.js +84 -0
  14. package/dist/commands/agents/mailbox/messages.d.ts +14 -0
  15. package/dist/commands/agents/mailbox/messages.js +52 -0
  16. package/dist/commands/agents/mailbox/show.d.ts +13 -0
  17. package/dist/commands/agents/mailbox/show.js +52 -0
  18. package/dist/commands/agents/operating-plan.js +8 -0
  19. package/dist/commands/agents/roles/capture.d.ts +16 -0
  20. package/dist/commands/agents/roles/capture.js +53 -0
  21. package/dist/commands/agents/roles/install.d.ts +1 -0
  22. package/dist/commands/agents/roles/install.js +8 -1
  23. package/dist/commands/agents/roles/preview.d.ts +2 -0
  24. package/dist/commands/agents/roles/preview.js +27 -3
  25. package/dist/commands/agents/update.d.ts +0 -3
  26. package/dist/commands/agents/update.js +1 -31
  27. package/dist/commands/agents/usage-cap.d.ts +4 -1
  28. package/dist/commands/agents/usage-cap.js +49 -10
  29. package/dist/commands/code/doctor.d.ts +1 -0
  30. package/dist/commands/code/doctor.js +6 -0
  31. package/dist/commands/code/index.js +4 -0
  32. package/dist/commands/code/install.d.ts +5 -62
  33. package/dist/commands/code/install.js +86 -279
  34. package/dist/commands/code/jobs/show.js +12 -0
  35. package/dist/commands/code/rollback.d.ts +8 -0
  36. package/dist/commands/code/rollback.js +20 -0
  37. package/dist/commands/code/update.d.ts +8 -37
  38. package/dist/commands/code/update.js +134 -213
  39. package/dist/commands/commitments/action-proposals/decide.d.ts +2 -0
  40. package/dist/commands/commitments/action-proposals/decide.js +12 -0
  41. package/dist/commands/commitments/action-proposals.js +7 -0
  42. package/dist/commands/commitments/create.d.ts +1 -0
  43. package/dist/commands/commitments/create.js +17 -1
  44. package/dist/commands/commitments/delivery.d.ts +1 -0
  45. package/dist/commands/commitments/delivery.js +11 -1
  46. package/dist/commands/commitments/doctor.js +4 -0
  47. package/dist/commands/commitments/effective-policy.js +26 -0
  48. package/dist/commands/commitments/endpoints/create.js +5 -2
  49. package/dist/commands/commitments/observations.d.ts +10 -0
  50. package/dist/commands/commitments/observations.js +88 -0
  51. package/dist/commands/commitments/pause.d.ts +1 -1
  52. package/dist/commands/commitments/pause.js +4 -3
  53. package/dist/commands/commitments/preflight.js +2 -1
  54. package/dist/commands/commitments/reports.d.ts +2 -0
  55. package/dist/commands/commitments/reports.js +22 -4
  56. package/dist/commands/commitments/update.d.ts +1 -0
  57. package/dist/commands/commitments/update.js +35 -5
  58. package/dist/commands/daemon/install.js +4 -0
  59. package/dist/commands/generate-recovery-code.d.ts +13 -1
  60. package/dist/commands/generate-recovery-code.js +146 -13
  61. package/dist/commands/grants/create.d.ts +1 -0
  62. package/dist/commands/grants/create.js +8 -0
  63. package/dist/commands/grants/rotate.d.ts +5 -0
  64. package/dist/commands/grants/rotate.js +13 -1
  65. package/dist/commands/grants/update.d.ts +12 -0
  66. package/dist/commands/grants/update.js +27 -0
  67. package/dist/commands/instructions/guide.d.ts +20 -0
  68. package/dist/commands/instructions/guide.js +84 -0
  69. package/dist/commands/instructions/install.js +57 -33
  70. package/dist/commands/instructions/setup.d.ts +14 -0
  71. package/dist/commands/instructions/setup.js +72 -0
  72. package/dist/commands/integrations/execute.js +1 -1
  73. package/dist/commands/login.d.ts +5 -6
  74. package/dist/commands/login.js +27 -11
  75. package/dist/commands/logout.js +7 -7
  76. package/dist/commands/machines/hosted/start.js +7 -1
  77. package/dist/commands/machines/list.js +4 -4
  78. package/dist/commands/measures/confirm.d.ts +1 -7
  79. package/dist/commands/measures/confirm.js +15 -14
  80. package/dist/commands/measures/list.d.ts +1 -7
  81. package/dist/commands/measures/list.js +1 -7
  82. package/dist/commands/measures/record.js +4 -4
  83. package/dist/commands/measures/show.d.ts +11 -0
  84. package/dist/commands/measures/show.js +26 -0
  85. package/dist/commands/northstars/governance/configure.d.ts +1 -0
  86. package/dist/commands/northstars/governance/configure.js +8 -1
  87. package/dist/commands/proposals/discard.d.ts +5 -0
  88. package/dist/commands/proposals/discard.js +8 -0
  89. package/dist/commands/proposals/keep.d.ts +5 -0
  90. package/dist/commands/proposals/keep.js +8 -0
  91. package/dist/commands/proposals/list.d.ts +15 -0
  92. package/dist/commands/proposals/list.js +74 -0
  93. package/dist/commands/proposals/show.d.ts +12 -0
  94. package/dist/commands/proposals/show.js +27 -0
  95. package/dist/commands/proposals/snooze.d.ts +5 -0
  96. package/dist/commands/proposals/snooze.js +8 -0
  97. package/dist/commands/security/overview.d.ts +11 -0
  98. package/dist/commands/security/overview.js +158 -0
  99. package/dist/commands/signals/monitors/create.d.ts +9 -0
  100. package/dist/commands/signals/monitors/create.js +29 -0
  101. package/dist/commands/signals/monitors/list.d.ts +8 -0
  102. package/dist/commands/signals/monitors/list.js +16 -0
  103. package/dist/commands/signals/monitors/pause.d.ts +11 -0
  104. package/dist/commands/signals/monitors/pause.js +17 -0
  105. package/dist/commands/signals/monitors/resume.d.ts +11 -0
  106. package/dist/commands/signals/monitors/resume.js +17 -0
  107. package/dist/commands/signals/monitors/revise.d.ts +12 -0
  108. package/dist/commands/signals/monitors/revise.js +25 -0
  109. package/dist/commands/signals/monitors/show.d.ts +11 -0
  110. package/dist/commands/signals/monitors/show.js +17 -0
  111. package/dist/commands/signals/monitors/test.d.ts +12 -0
  112. package/dist/commands/signals/monitors/test.js +25 -0
  113. package/dist/commands/signals/monitors/transitions.d.ts +11 -0
  114. package/dist/commands/signals/monitors/transitions.js +17 -0
  115. package/dist/commands/signals/monitors/validate.d.ts +9 -0
  116. package/dist/commands/signals/monitors/validate.js +24 -0
  117. package/dist/commands/signals/schemas/list.d.ts +8 -0
  118. package/dist/commands/signals/schemas/list.js +16 -0
  119. package/dist/commands/signals/schemas/show.d.ts +11 -0
  120. package/dist/commands/signals/schemas/show.js +17 -0
  121. package/dist/commands/signals/sources/list.d.ts +8 -0
  122. package/dist/commands/signals/sources/list.js +16 -0
  123. package/dist/commands/signals/sources/receipts.d.ts +11 -0
  124. package/dist/commands/signals/sources/receipts.js +17 -0
  125. package/dist/commands/signals/sources/show.d.ts +11 -0
  126. package/dist/commands/signals/sources/show.js +17 -0
  127. package/dist/commands/spaces/claim.d.ts +12 -0
  128. package/dist/commands/spaces/claim.js +42 -0
  129. package/dist/commands/spaces/ownership.d.ts +12 -0
  130. package/dist/commands/spaces/ownership.js +46 -0
  131. package/dist/commands/spaces/usage.d.ts +12 -0
  132. package/dist/commands/spaces/usage.js +28 -0
  133. package/dist/commands/spaces/workflows/run.js +3 -0
  134. package/dist/commands/spaces/workflows/runs.js +2 -1
  135. package/dist/commands/spaces/workflows/update.d.ts +6 -1
  136. package/dist/commands/spaces/workflows/update.js +34 -2
  137. package/dist/commands/tasks/cancel-cascade.js +1 -1
  138. package/dist/commands/tasks/cascade-status.d.ts +2 -0
  139. package/dist/commands/tasks/cascade-status.js +27 -1
  140. package/dist/commands/tasks/create-tree.d.ts +5 -1
  141. package/dist/commands/tasks/create-tree.js +35 -7
  142. package/dist/commands/tasks/create.d.ts +4 -0
  143. package/dist/commands/tasks/create.js +16 -0
  144. package/dist/commands/tasks/deliverable/add.js +12 -3
  145. package/dist/commands/tasks/economics-compare.d.ts +15 -0
  146. package/dist/commands/tasks/economics-compare.js +60 -0
  147. package/dist/commands/tasks/expectations/evaluate.d.ts +13 -0
  148. package/dist/commands/tasks/expectations/evaluate.js +43 -0
  149. package/dist/commands/tasks/interrupt.js +2 -2
  150. package/dist/commands/tasks/list.d.ts +1 -0
  151. package/dist/commands/tasks/list.js +44 -1
  152. package/dist/commands/tasks/pause-schedule.js +1 -1
  153. package/dist/commands/tasks/show.d.ts +5 -0
  154. package/dist/commands/tasks/show.js +17 -0
  155. package/dist/commands/tasks/update.d.ts +4 -0
  156. package/dist/commands/tasks/update.js +9 -0
  157. package/dist/commands/tasks/workflow-findings.js +2 -2
  158. package/dist/commands/token/list.d.ts +3 -5
  159. package/dist/commands/token/list.js +99 -57
  160. package/dist/commands/triggers/create.d.ts +2 -0
  161. package/dist/commands/triggers/create.js +15 -0
  162. package/dist/commands/update.d.ts +14 -0
  163. package/dist/commands/update.js +61 -0
  164. package/dist/commands/workspaces/grants.d.ts +12 -0
  165. package/dist/commands/workspaces/grants.js +31 -0
  166. package/dist/commands/workspaces/stewardship.d.ts +13 -0
  167. package/dist/commands/workspaces/stewardship.js +34 -0
  168. package/dist/generated/managed-instruction-guides.json +9 -0
  169. package/dist/hooks/init.d.ts +5 -0
  170. package/dist/hooks/init.js +27 -0
  171. package/dist/lib/agent-config.d.ts +0 -12
  172. package/dist/lib/agent-config.js +1 -27
  173. package/dist/lib/agent-mailbox.d.ts +35 -0
  174. package/dist/lib/agent-mailbox.js +55 -0
  175. package/dist/lib/commitment-endpoints.d.ts +2 -1
  176. package/dist/lib/commitment-endpoints.js +2 -5
  177. package/dist/lib/commitment-product.d.ts +3 -1
  178. package/dist/lib/commitment-product.js +10 -0
  179. package/dist/lib/commitment-terms.js +1 -1
  180. package/dist/lib/commitments.d.ts +17 -15
  181. package/dist/lib/commitments.js +173 -137
  182. package/dist/lib/compasses.d.ts +14 -0
  183. package/dist/lib/compasses.js +25 -11
  184. package/dist/lib/daemon-installer.d.ts +2 -0
  185. package/dist/lib/daemon-installer.js +100 -24
  186. package/dist/lib/first-party-harness-doctor.js +31 -1
  187. package/dist/lib/first-party-harness-remote-install.d.ts +71 -0
  188. package/dist/lib/first-party-harness-remote-install.js +310 -0
  189. package/dist/lib/first-party-harness-remote-update.d.ts +46 -0
  190. package/dist/lib/first-party-harness-remote-update.js +242 -0
  191. package/dist/lib/first-party-harness-startup-update.d.ts +26 -0
  192. package/dist/lib/first-party-harness-startup-update.js +166 -0
  193. package/dist/lib/first-party-harness-update.d.ts +46 -0
  194. package/dist/lib/first-party-harness-update.js +289 -0
  195. package/dist/lib/first-party-harness.js +7 -4
  196. package/dist/lib/grants.d.ts +5 -1
  197. package/dist/lib/grants.js +9 -1
  198. package/dist/lib/hosted-machines.d.ts +7 -0
  199. package/dist/lib/mailbox-human-command.d.ts +11 -0
  200. package/dist/lib/mailbox-human-command.js +41 -0
  201. package/dist/lib/managed-instruction-local.d.ts +12 -0
  202. package/dist/lib/managed-instruction-local.js +58 -0
  203. package/dist/lib/managed-instruction-setup.d.ts +35 -0
  204. package/dist/lib/managed-instruction-setup.js +306 -0
  205. package/dist/lib/measures.d.ts +28 -2
  206. package/dist/lib/measures.js +38 -14
  207. package/dist/lib/memory-sync.d.ts +1 -0
  208. package/dist/lib/memory-sync.js +279 -68
  209. package/dist/lib/message-intent.d.ts +6 -2
  210. package/dist/lib/message-intent.js +1 -0
  211. package/dist/lib/northstars.js +2 -1
  212. package/dist/lib/platform-update-local.d.ts +2 -0
  213. package/dist/lib/platform-update-local.js +113 -0
  214. package/dist/lib/platform-update.d.ts +39 -0
  215. package/dist/lib/platform-update.js +84 -0
  216. package/dist/lib/profile-machine-identity-guard.d.ts +2 -0
  217. package/dist/lib/profile-machine-identity-guard.js +13 -0
  218. package/dist/lib/prompt.d.ts +1 -0
  219. package/dist/lib/prompt.js +4 -3
  220. package/dist/lib/proposal-decision-command.d.ts +19 -0
  221. package/dist/lib/proposal-decision-command.js +64 -0
  222. package/dist/lib/proposals.d.ts +8 -0
  223. package/dist/lib/proposals.js +22 -0
  224. package/dist/lib/roles.d.ts +141 -6
  225. package/dist/lib/roles.js +8 -2
  226. package/dist/lib/signals.d.ts +20 -0
  227. package/dist/lib/signals.js +24 -0
  228. package/dist/lib/space-usage.d.ts +3 -0
  229. package/dist/lib/space-usage.js +17 -0
  230. package/dist/lib/stewardship-output.d.ts +4 -0
  231. package/dist/lib/stewardship-output.js +82 -0
  232. package/dist/lib/task-asset-upload.d.ts +3 -1
  233. package/dist/lib/task-asset-upload.js +1 -0
  234. package/dist/lib/task-batch.d.ts +9 -0
  235. package/dist/lib/task-batch.js +94 -17
  236. package/dist/lib/task-economics.d.ts +16 -0
  237. package/dist/lib/task-economics.js +22 -0
  238. package/dist/lib/task-instruction-offer.d.ts +1 -4
  239. package/dist/lib/task-instruction-offer.js +3 -129
  240. package/dist/lib/triggers.d.ts +11 -3
  241. package/dist/lib/triggers.js +58 -1
  242. package/dist/lib/update-check.d.ts +61 -53
  243. package/dist/lib/update-check.js +453 -314
  244. package/dist/lib/usage-discovery.d.ts +10 -0
  245. package/dist/lib/usage-discovery.js +24 -3
  246. package/dist/lib/workflow-run-budget.d.ts +12 -0
  247. package/dist/lib/workflow-run-budget.js +37 -0
  248. package/dist/lib/workspaces.d.ts +48 -0
  249. package/dist/lib/workspaces.js +8 -0
  250. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/cliHandoffWire.d.ts +4 -0
  251. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/cliHandoffWire.js +14 -1
  252. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessChannels.d.ts +3 -4
  253. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessChannels.js +3 -4
  254. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessReleaseKeys.d.ts +82 -0
  255. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessReleaseKeys.js +105 -0
  256. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessUpdater.d.ts +110 -0
  257. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/firstPartyHarnessUpdater.js +945 -0
  258. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/githubPushRefusal.d.ts +9 -0
  259. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/githubPushRefusal.js +49 -0
  260. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/harnessPermissionControls.d.ts +32 -0
  261. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/harnessPermissionControls.js +62 -0
  262. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.d.ts +2 -0
  263. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.js +4 -1
  264. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/machineUuid.js +35 -5
  265. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/releasePolicy.d.ts +63 -0
  266. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/releasePolicy.js +169 -0
  267. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/releaseVersions.d.ts +2 -0
  268. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/releaseVersions.js +44 -0
  269. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/cliHandoffWire.d.ts +4 -0
  270. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/cliHandoffWire.js +12 -0
  271. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessChannels.d.ts +3 -4
  272. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessChannels.js +3 -4
  273. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessReleaseKeys.d.ts +82 -0
  274. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessReleaseKeys.js +102 -0
  275. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessUpdater.d.ts +110 -0
  276. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/firstPartyHarnessUpdater.js +923 -0
  277. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/githubPushRefusal.d.ts +9 -0
  278. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/githubPushRefusal.js +44 -0
  279. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/harnessPermissionControls.d.ts +32 -0
  280. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/harnessPermissionControls.js +59 -0
  281. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.d.ts +2 -0
  282. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.js +2 -0
  283. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/machineUuid.js +35 -5
  284. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/releasePolicy.d.ts +63 -0
  285. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/releasePolicy.js +163 -0
  286. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/releaseVersions.d.ts +2 -0
  287. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/releaseVersions.js +41 -0
  288. package/dist/node_modules/@skrr-ai/auth-core/package.json +41 -1
  289. package/dist/node_modules/@skrr-ai/data-provider/index.js +8069 -7121
  290. package/docs/v1/README.md +28 -0
  291. package/docs/v1/api.md +55 -0
  292. package/docs/v1/changelog.md +16 -0
  293. package/docs/v1/check-examples.mjs +178 -0
  294. package/docs/v1/examples/api-readonly.mjs +144 -0
  295. package/docs/v1/operations.md +87 -0
  296. package/docs/v1/quickstart.md +71 -0
  297. package/oclif.manifest.json +49424 -46174
  298. package/package.json +34 -11
@@ -1,31 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RELEASE_INSTALL_CHANNELS = exports.RETIRED_COMMITMENT_PERMISSION_FLAGS = exports.COMMITMENT_PERMISSION_FLAG_RETIRED = exports.REASONING_TOOL_ESCAPES = exports.COMMITMENT_RESPONSIBILITY_LEVELS = void 0;
4
- exports.retiredCommitmentPermissionFlagMessage = retiredCommitmentPermissionFlagMessage;
3
+ exports.RELEASE_INSTALL_CHANNELS = void 0;
5
4
  exports.deprecatedFieldsWarnings = deprecatedFieldsWarnings;
6
5
  exports.deprecatedFieldNames = deprecatedFieldNames;
7
6
  exports.parseWorkingHoursFlag = parseWorkingHoursFlag;
8
7
  exports.mergeAgentConfigFlags = mergeAgentConfigFlags;
9
8
  const prompt_1 = require("./prompt");
10
9
  const agent_visual_refs_1 = require("./agent-visual-refs");
11
- exports.COMMITMENT_RESPONSIBILITY_LEVELS = ['reasoning_only', 'full_ownership'];
12
- exports.REASONING_TOOL_ESCAPES = ['bash', 'browser'];
13
- /** Warning printed by the three retired Commitment permission flags (OSK-11975). */
14
- exports.COMMITMENT_PERMISSION_FLAG_RETIRED = "This setting no longer has any effect: Commitment runs use the agent's own permissions.";
15
- /** The three retired flags themselves: accepted at parse, warned on, never sent. */
16
- exports.RETIRED_COMMITMENT_PERMISSION_FLAGS = [
17
- 'reasoning-tool-escape',
18
- 'commitment-responsibility',
19
- 'commitment-responsibility-ceiling',
20
- ];
21
- /**
22
- * The deprecation warning ONE retired flag prints. oclif prints a
23
- * `deprecated.message` verbatim, so a shared message printed the same line
24
- * once per flag with nothing saying which flag each one was about (OSK-12068).
25
- */
26
- function retiredCommitmentPermissionFlagMessage(flag) {
27
- return `--${flag} is retired and was not sent. ${exports.COMMITMENT_PERMISSION_FLAG_RETIRED}`;
28
- }
29
10
  /**
30
11
  * The fields the server ignored and why, from a write's `deprecatedFields`
31
12
  * notice, one line each. Empty when the response carries none.
@@ -141,13 +122,6 @@ function mergeAgentConfigFlags(body, flags) {
141
122
  if (flags['todo-working-hours'] !== undefined) {
142
123
  parsed.todoWorkingHours = parseWorkingHoursFlag(String(flags['todo-working-hours']));
143
124
  }
144
- // `--reasoning-tool-escape`, `--commitment-responsibility` and
145
- // `--commitment-responsibility-ceiling` are retired (OSK-11975) and are
146
- // deliberately NOT forwarded. The server still accepts and echoes the stored
147
- // fields, so sending them wrote a value nothing reads and handed it back as
148
- // if it were live — and "a ceiling a commitment may not exceed" is a safety
149
- // claim a person then believes (OSK-12068). The flags stay parseable so old
150
- // scripts do not break; oclif prints COMMITMENT_PERMISSION_FLAG_RETIRED.
151
125
  if (flags['tool-resources'] !== undefined) {
152
126
  parsed.tool_resources = JSON.parse(String(flags['tool-resources']));
153
127
  }
@@ -0,0 +1,35 @@
1
+ /** Human operator projections; never expose mail content or provider/storage identifiers. */
2
+ export interface AgentMailboxMetadata {
3
+ id: string;
4
+ agentId: string;
5
+ workspaceId: string;
6
+ handle: string;
7
+ address: string;
8
+ status: string;
9
+ sending: string;
10
+ sendingPausedReason?: string | null;
11
+ version: number;
12
+ }
13
+ export interface AgentMailMessageMetadata {
14
+ id: string;
15
+ messageId: string;
16
+ receivedAt: string;
17
+ classification: string;
18
+ status: string;
19
+ expiresAt?: string | null;
20
+ }
21
+ export interface AgentMailboxStatus {
22
+ mailbox: AgentMailboxMetadata | null;
23
+ receivingRuntime?: {
24
+ status: 'running' | 'starting' | 'unavailable';
25
+ };
26
+ }
27
+ export interface AgentMailboxMessages {
28
+ data: AgentMailMessageMetadata[];
29
+ nextCursor: string | null;
30
+ }
31
+ export declare function getAgentMailboxMetadata(agentId: string): Promise<AgentMailboxStatus>;
32
+ export declare function getAgentMailboxMessageMetadata(agentId: string, options?: {
33
+ limit?: number;
34
+ cursor?: string;
35
+ }): Promise<AgentMailboxMessages>;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAgentMailboxMetadata = getAgentMailboxMetadata;
4
+ exports.getAgentMailboxMessageMetadata = getAgentMailboxMessageMetadata;
5
+ const api_fetch_1 = require("./api-fetch");
6
+ function withMailboxQuery(path, query) {
7
+ return query.size ? `${path}?${query.toString()}` : path;
8
+ }
9
+ async function getAgentMailboxMetadata(agentId) {
10
+ const result = await (0, api_fetch_1.apiFetch)(`/api/agents/${encodeURIComponent(agentId)}/mailbox/metadata`);
11
+ const mailbox = result.mailbox;
12
+ // Also project at the output boundary. A future server field must not
13
+ // accidentally turn the CLI's JSON into a content or credential export.
14
+ return {
15
+ ...(['running', 'starting', 'unavailable'].includes(result.receivingRuntime?.status || '')
16
+ ? { receivingRuntime: { status: result.receivingRuntime.status } }
17
+ : {}),
18
+ mailbox: mailbox
19
+ ? {
20
+ id: mailbox.id,
21
+ agentId: mailbox.agentId,
22
+ workspaceId: mailbox.workspaceId,
23
+ handle: mailbox.handle,
24
+ address: mailbox.address,
25
+ status: mailbox.status,
26
+ sending: mailbox.sending,
27
+ sendingPausedReason: mailbox.sendingPausedReason,
28
+ version: mailbox.version,
29
+ }
30
+ : null,
31
+ };
32
+ }
33
+ async function getAgentMailboxMessageMetadata(agentId, options = {}) {
34
+ if (options.limit !== undefined &&
35
+ (!Number.isInteger(options.limit) || options.limit < 1 || options.limit > 100)) {
36
+ throw new Error('Mailbox message limit must be an integer from 1 to 100.');
37
+ }
38
+ const query = new URLSearchParams();
39
+ if (options.limit !== undefined)
40
+ query.set('limit', String(options.limit));
41
+ if (options.cursor)
42
+ query.set('cursor', options.cursor);
43
+ const result = await (0, api_fetch_1.apiFetch)(withMailboxQuery(`/api/agents/${encodeURIComponent(agentId)}/mailbox/messages/metadata`, query));
44
+ return {
45
+ data: result.data.map((message) => ({
46
+ id: message.id,
47
+ messageId: message.messageId,
48
+ receivedAt: message.receivedAt,
49
+ classification: message.classification,
50
+ status: message.status,
51
+ expiresAt: message.expiresAt,
52
+ })),
53
+ nextCursor: result.nextCursor,
54
+ };
55
+ }
@@ -1,6 +1,7 @@
1
1
  import { withQuery } from './triggers';
2
2
  export declare const ENDPOINT_CAPABILITIES: readonly ["push", "reply", "structuredAsk"];
3
- export declare const COMMITMENT_ENDPOINT_DESTINATIONS: readonly ["slack_channel", "slack_owner_dm", "app_owner_dm"];
3
+ /** Derived from the one destination registry; never a second list. */
4
+ export declare const COMMITMENT_ENDPOINT_DESTINATIONS: ("email" | "pinned" | "app_owner_dm" | "slack_owner_dm" | "slack_channel" | "main" | "discord_owner_dm" | "user_notify")[];
4
5
  export type EndpointCapability = (typeof ENDPOINT_CAPABILITIES)[number];
5
6
  export interface CommitmentEndpoint {
6
7
  id: string;
@@ -21,11 +21,8 @@ const data_provider_1 = require("@skrr-ai/data-provider");
21
21
  const format_1 = require("./format");
22
22
  const triggers_1 = require("./triggers");
23
23
  exports.ENDPOINT_CAPABILITIES = ['push', 'reply', 'structuredAsk'];
24
- exports.COMMITMENT_ENDPOINT_DESTINATIONS = [
25
- 'slack_channel',
26
- 'slack_owner_dm',
27
- 'app_owner_dm',
28
- ];
24
+ /** Derived from the one destination registry; never a second list. */
25
+ exports.COMMITMENT_ENDPOINT_DESTINATIONS = data_provider_1.COMMITMENT_REGISTRABLE_REPORT_DESTINATIONS;
29
26
  const MOUNT = '/api/commitment-endpoints';
30
27
  const base = (id) => `${MOUNT}/${encodeURIComponent(id)}`;
31
28
  exports.commitmentEndpointApi = {
@@ -1,9 +1,11 @@
1
- import type { CommitmentDeliveryIntent, CommitmentExecutionReceipt, CommitmentExecutionReceiptQuarterlyMetricsResponse } from '@skrr-ai/data-provider';
1
+ import type { CommitmentDeliveryIntent, TaskReviewPolicy, CommitmentExecutionReceipt, CommitmentExecutionReceiptQuarterlyMetricsResponse } from '@skrr-ai/data-provider';
2
2
  export declare const COMMITMENT_DELIVERY_CHOICES: readonly ["report-only", "local-patch", "draft-pr", "push-branch", "direct-branch"];
3
3
  export declare function deliveryLabel(mode?: string): string;
4
+ export declare function normalizeTaskReviewPolicy(value: unknown): TaskReviewPolicy;
4
5
  export declare function deliveryInput(mode: string, options?: {
5
6
  repo?: string;
6
7
  base?: string;
8
+ taskReviewPolicy?: TaskReviewPolicy;
7
9
  }): CommitmentDeliveryIntent;
8
10
  export declare function renderExecutionReceipt(receipt: CommitmentExecutionReceipt, log: (line: string) => void, verbose?: boolean): void;
9
11
  /**
@@ -2,9 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.COMMITMENT_DELIVERY_CHOICES = void 0;
4
4
  exports.deliveryLabel = deliveryLabel;
5
+ exports.normalizeTaskReviewPolicy = normalizeTaskReviewPolicy;
5
6
  exports.deliveryInput = deliveryInput;
6
7
  exports.renderExecutionReceipt = renderExecutionReceipt;
7
8
  exports.renderExecutionReceiptQuarterlyMetrics = renderExecutionReceiptQuarterlyMetrics;
9
+ const data_provider_1 = require("@skrr-ai/data-provider");
8
10
  exports.COMMITMENT_DELIVERY_CHOICES = [
9
11
  'report-only',
10
12
  'local-patch',
@@ -21,6 +23,11 @@ function deliveryLabel(mode) {
21
23
  direct_branch: 'Direct branch',
22
24
  }[mode || ''] || 'Not declared');
23
25
  }
26
+ function normalizeTaskReviewPolicy(value) {
27
+ if (typeof value !== 'string' || !data_provider_1.TASK_REVIEW_POLICIES.includes(value))
28
+ throw new Error('Task review policy must be none or required.');
29
+ return value;
30
+ }
24
31
  function deliveryInput(mode, options = {}) {
25
32
  const normalized = mode.replace(/-/g, '_');
26
33
  if (!exports.COMMITMENT_DELIVERY_CHOICES.some((choice) => choice.replace(/-/g, '_') === normalized)) {
@@ -31,6 +38,9 @@ function deliveryInput(mode, options = {}) {
31
38
  mode: normalized,
32
39
  ...(options.repo ? { repo: options.repo } : {}),
33
40
  ...(options.base ? { baseBranch: options.base } : {}),
41
+ ...(options.taskReviewPolicy !== undefined
42
+ ? { reviewPolicy: normalizeTaskReviewPolicy(options.taskReviewPolicy) }
43
+ : {}),
34
44
  };
35
45
  }
36
46
  function renderExecutionReceipt(receipt, log, verbose = false) {
@@ -94,7 +94,7 @@ function renderCommitmentTerms(commitment, log) {
94
94
  const reports = commitment.reports ?? [];
95
95
  log(`Reports: ${reports.length
96
96
  ? reports
97
- .map((r) => `${r.destination}${r.destinationTarget ? `:${r.destinationTarget}` : ''} on ${r.on ?? 'material_change'}`)
97
+ .map((r) => `${r.destination}${r.destinationTarget ? `:${r.destinationTarget}` : ''} on ${r.on ?? 'material_change'}${r.format ? ` format ${r.format}` : ''}${r.review ? ` · reviewed by ${r.review}` : ''}`)
98
98
  .join(', ')
99
99
  : 'default surface only'}`);
100
100
  }
@@ -1,3 +1,4 @@
1
+ import { type CommitmentObservationsQuery, type CommitmentObservationsResponse } from '@skrr-ai/data-provider';
1
2
  /**
2
3
  * commitments.ts — request-based client for the Commitments subsystem
3
4
  * (`/api/commitments/*`).
@@ -79,6 +80,8 @@ export type CommitmentPreflightReport = {
79
80
  label?: string;
80
81
  available: boolean;
81
82
  reason?: string;
83
+ /** Why a destination cannot deliver, in words (e.g. a stored-only destination). */
84
+ detail?: string;
82
85
  capabilities: string[];
83
86
  }>;
84
87
  attention: {
@@ -201,6 +204,12 @@ export declare const commitmentPackApi: {
201
204
  preflight: (id: string, nextRunCount?: number) => Promise<CommitmentPackPreflightResponse>;
202
205
  activate: (id: string) => Promise<CommitmentPackLifecycleResponse>;
203
206
  };
207
+ export type ObservationWindowQuery = {
208
+ key: string;
209
+ from: string;
210
+ to: string;
211
+ limit?: number;
212
+ };
204
213
  export declare const commitmentApi: {
205
214
  /**
206
215
  * The lib owns every URL in this domain, and the parity spec depends on that:
@@ -287,6 +296,8 @@ export declare const commitmentApi: {
287
296
  decideActionProposal: (id: string, proposalId: string, decision: "approve" | "reject", snapshot?: {
288
297
  snapshotDigest?: string;
289
298
  bundleVersion?: number;
299
+ reason?: string;
300
+ reasonCode?: import("@skrr-ai/data-provider").ProposalDiscardReasonCode;
290
301
  }) => Promise<Record<string, unknown>>;
291
302
  executeActionProposal: (id: string, proposalId: string) => Promise<Record<string, unknown>>;
292
303
  preflight: (id: string, nextRunCount?: number) => Promise<CommitmentPreflightReport>;
@@ -434,13 +445,12 @@ export declare const commitmentApi: {
434
445
  }) => Promise<CommitmentListPage>;
435
446
  createEvaluation: (id: string, body: Record<string, unknown>) => Promise<Record<string, unknown>>;
436
447
  retryEvaluationLearning: (id: string, scheduleId: string) => Promise<Record<string, unknown>>;
437
- observations: (id: string, query?: {
438
- limit?: number;
439
- declaredOnly?: boolean;
440
- changedOnly?: boolean;
441
- since?: string;
442
- cursor?: string;
443
- }) => Promise<CommitmentListPage>;
448
+ observations: (id: string, query?: CommitmentObservationsQuery) => Promise<CommitmentObservationsResponse>;
449
+ observationSeries: (id: string, query: ObservationWindowQuery) => Promise<Record<string, unknown>>;
450
+ observationCompare: (id: string, query: ObservationWindowQuery & {
451
+ baselineFrom: string;
452
+ baselineTo: string;
453
+ }) => Promise<Record<string, unknown>>;
444
454
  /** One-tap feedback on a check — the signal Reflection retunes cadence from. */
445
455
  checkFeedback: (id: string, checkId: string, body: Record<string, unknown>) => Promise<Record<string, unknown>>;
446
456
  /** Bounded, named corrections — never a free-form contract edit. */
@@ -632,14 +642,6 @@ export type EvidenceHealthView = {
632
642
  * is noise in a summary someone reads to find what is wrong.
633
643
  */
634
644
  export declare function describeEvidenceHealth(health?: EvidenceHealthView | null, criteriaCount?: number): string | undefined;
635
- /**
636
- * `stalled` is a verdict, not a reason. Printed bare it reads like `unknown`
637
- * with a harsher word, and the operator's next move is to go and read run
638
- * history to find what the reconciler had already decided. Returns undefined
639
- * for every other health value, including `unknown` — "nobody has judged" has
640
- * no diagnosis to name.
641
- */
642
- export declare function describeStalledHealth(commitment: CommitmentView): string | undefined;
643
645
  /** Render an interval back as a compact human string. */
644
646
  export declare function describeIntervalMs(ms: number | undefined): string;
645
647
  /**