@skrr-ai/cli 0.1.127 → 0.1.129

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 (165) hide show
  1. package/dist/base-command.d.ts +35 -0
  2. package/dist/base-command.js +107 -0
  3. package/dist/commands/agenda/trigger/list.d.ts +2 -1
  4. package/dist/commands/agenda/trigger/list.js +55 -6
  5. package/dist/commands/agents/chat.js +7 -0
  6. package/dist/commands/agents/create.js +3 -1
  7. package/dist/commands/browser/persistent-profile.d.ts +22 -0
  8. package/dist/commands/browser/persistent-profile.js +46 -0
  9. package/dist/commands/commitments/action-history.js +1 -1
  10. package/dist/commands/commitments/cases.js +3 -3
  11. package/dist/commands/commitments/check-now.d.ts +10 -2
  12. package/dist/commands/commitments/check-now.js +53 -3
  13. package/dist/commands/commitments/create.d.ts +6 -14
  14. package/dist/commands/commitments/create.js +64 -7
  15. package/dist/commands/commitments/doctor.js +3 -1
  16. package/dist/commands/commitments/effective-policy.d.ts +11 -1
  17. package/dist/commands/commitments/effective-policy.js +90 -4
  18. package/dist/commands/commitments/explain.js +10 -1
  19. package/dist/commands/commitments/hypotheses.js +12 -12
  20. package/dist/commands/commitments/next-tick.js +5 -0
  21. package/dist/commands/commitments/observations.js +18 -17
  22. package/dist/commands/commitments/pack/list.js +2 -1
  23. package/dist/commands/commitments/pack/plan.d.ts +6 -0
  24. package/dist/commands/commitments/pack/plan.js +19 -0
  25. package/dist/commands/commitments/plan.d.ts +14 -0
  26. package/dist/commands/commitments/plan.js +32 -0
  27. package/dist/commands/commitments/preflight.d.ts +20 -1
  28. package/dist/commands/commitments/preflight.js +118 -12
  29. package/dist/commands/commitments/show.d.ts +9 -0
  30. package/dist/commands/commitments/show.js +14 -1
  31. package/dist/commands/commitments/trigger-status.js +8 -0
  32. package/dist/commands/commitments/update.d.ts +1 -0
  33. package/dist/commands/commitments/update.js +45 -4
  34. package/dist/commands/commitments/wake-capabilities.js +13 -0
  35. package/dist/commands/compass/archive.js +4 -0
  36. package/dist/commands/compass/commitments.js +15 -1
  37. package/dist/commands/compass/create.js +11 -3
  38. package/dist/commands/compass/effective-policy.d.ts +1 -0
  39. package/dist/commands/compass/effective-policy.js +8 -7
  40. package/dist/commands/compass/revert.d.ts +8 -0
  41. package/dist/commands/compass/revert.js +25 -1
  42. package/dist/commands/compass/revisions.d.ts +6 -0
  43. package/dist/commands/compass/revisions.js +26 -2
  44. package/dist/commands/compass/tactic.d.ts +10 -3
  45. package/dist/commands/compass/tactic.js +22 -7
  46. package/dist/commands/compass/update.js +19 -3
  47. package/dist/commands/followups/act.js +1 -1
  48. package/dist/commands/followups/cancel.js +13 -0
  49. package/dist/commands/followups/observability.js +20 -1
  50. package/dist/commands/followups/plans/create.js +12 -1
  51. package/dist/commands/followups/show.js +13 -0
  52. package/dist/commands/followups/watch.js +1 -1
  53. package/dist/commands/goals/planner-config.d.ts +11 -0
  54. package/dist/commands/goals/planner-config.js +16 -0
  55. package/dist/commands/harnesses/list.js +1 -1
  56. package/dist/commands/machines/update.d.ts +5 -3
  57. package/dist/commands/machines/update.js +70 -9
  58. package/dist/commands/northstars/create.js +3 -1
  59. package/dist/commands/northstars/governance/configure.d.ts +4 -0
  60. package/dist/commands/northstars/governance/configure.js +76 -10
  61. package/dist/commands/northstars/intents/decide.d.ts +6 -0
  62. package/dist/commands/northstars/intents/decide.js +68 -15
  63. package/dist/commands/northstars/intents/list.d.ts +2 -1
  64. package/dist/commands/northstars/intents/list.js +15 -5
  65. package/dist/commands/northstars/intents.d.ts +26 -0
  66. package/dist/commands/northstars/intents.js +49 -0
  67. package/dist/commands/northstars/list.d.ts +1 -0
  68. package/dist/commands/northstars/list.js +24 -3
  69. package/dist/commands/northstars/recommendations/list.d.ts +1 -1
  70. package/dist/commands/northstars/recommendations/list.js +3 -3
  71. package/dist/commands/northstars/recommendations.d.ts +19 -0
  72. package/dist/commands/northstars/recommendations.js +42 -0
  73. package/dist/commands/northstars/review-now.d.ts +1 -0
  74. package/dist/commands/northstars/review-now.js +15 -4
  75. package/dist/commands/northstars/reviews.d.ts +1 -0
  76. package/dist/commands/northstars/reviews.js +34 -6
  77. package/dist/commands/northstars/update.js +8 -1
  78. package/dist/commands/proposals/list.js +11 -2
  79. package/dist/commands/proposals/show.js +9 -1
  80. package/dist/commands/spaces/auto-executor/preview.d.ts +14 -1
  81. package/dist/commands/spaces/auto-executor/preview.js +35 -1
  82. package/dist/commands/spaces/auto-executor/run.d.ts +17 -0
  83. package/dist/commands/spaces/auto-executor/run.js +60 -2
  84. package/dist/commands/spaces/auto-executor/runs.d.ts +9 -1
  85. package/dist/commands/spaces/auto-executor/runs.js +18 -1
  86. package/dist/commands/spaces/files/upload.js +1 -2
  87. package/dist/commands/spaces/heartbeats/create.js +7 -5
  88. package/dist/commands/spaces/heartbeats/update.js +5 -3
  89. package/dist/commands/spaces/index.js +23 -0
  90. package/dist/commands/store/artifacts/releases.d.ts +20 -0
  91. package/dist/commands/store/artifacts/releases.js +85 -0
  92. package/dist/commands/store/library.d.ts +14 -0
  93. package/dist/commands/store/library.js +71 -0
  94. package/dist/commands/tasks/list.d.ts +48 -0
  95. package/dist/commands/tasks/list.js +141 -9
  96. package/dist/commands/tasks/remind.js +23 -11
  97. package/dist/commands/tasks/retry-schedule.js +6 -3
  98. package/dist/commands/tasks/schedule.js +29 -7
  99. package/dist/commands/tasks/show.js +4 -0
  100. package/dist/generated/agent-guides.json +69 -69
  101. package/dist/lib/agent-trigger-listing.d.ts +26 -0
  102. package/dist/lib/agent-trigger-listing.js +63 -0
  103. package/dist/lib/agentic-stream.d.ts +9 -0
  104. package/dist/lib/agentic-stream.js +152 -41
  105. package/dist/lib/command-miss.js +11 -2
  106. package/dist/lib/commitment-attention-copy.d.ts +96 -0
  107. package/dist/lib/commitment-attention-copy.js +209 -0
  108. package/dist/lib/commitment-ledgers.js +3 -1
  109. package/dist/lib/commitment-loop-status.d.ts +6 -0
  110. package/dist/lib/commitment-loop-status.js +16 -6
  111. package/dist/lib/commitments.d.ts +112 -0
  112. package/dist/lib/commitments.js +250 -2
  113. package/dist/lib/compass-body-help.d.ts +20 -0
  114. package/dist/lib/compass-body-help.js +61 -0
  115. package/dist/lib/compass-refusals.d.ts +35 -0
  116. package/dist/lib/compass-refusals.js +50 -0
  117. package/dist/lib/compasses.d.ts +82 -4
  118. package/dist/lib/compasses.js +232 -12
  119. package/dist/lib/followups.d.ts +22 -1
  120. package/dist/lib/followups.js +21 -1
  121. package/dist/lib/format.d.ts +11 -0
  122. package/dist/lib/format.js +29 -0
  123. package/dist/lib/initiatives.d.ts +9 -2
  124. package/dist/lib/initiatives.js +13 -2
  125. package/dist/lib/iso-instant.d.ts +52 -0
  126. package/dist/lib/iso-instant.js +162 -0
  127. package/dist/lib/machines.d.ts +14 -1
  128. package/dist/lib/machines.js +24 -0
  129. package/dist/lib/northstars.d.ts +201 -24
  130. package/dist/lib/northstars.js +655 -27
  131. package/dist/lib/proposal-decision-command.js +21 -1
  132. package/dist/lib/proposals.d.ts +26 -1
  133. package/dist/lib/proposals.js +167 -0
  134. package/dist/lib/rate-limit-retry.d.ts +5 -0
  135. package/dist/lib/rate-limit-retry.js +19 -0
  136. package/dist/lib/roles.d.ts +1 -1
  137. package/dist/lib/space-charter.js +9 -0
  138. package/dist/lib/store-artifact-releases.d.ts +39 -0
  139. package/dist/lib/store-artifact-releases.js +12 -0
  140. package/dist/lib/store-library.d.ts +37 -0
  141. package/dist/lib/store-library.js +12 -0
  142. package/dist/lib/task-asset-upload.js +1 -2
  143. package/dist/lib/task-calendar.d.ts +19 -0
  144. package/dist/lib/task-calendar.js +72 -0
  145. package/dist/lib/task-recurrence-outcome.js +3 -1
  146. package/dist/lib/task-recurrence-summary.d.ts +15 -0
  147. package/dist/lib/task-recurrence-summary.js +228 -0
  148. package/dist/lib/task-reminder.d.ts +28 -0
  149. package/dist/lib/task-reminder.js +50 -0
  150. package/dist/lib/triggers.d.ts +13 -2
  151. package/dist/lib/triggers.js +31 -13
  152. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/daemonWire.js +11 -1
  153. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/executorStopReceipt.d.ts +123 -0
  154. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/executorStopReceipt.js +160 -0
  155. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.d.ts +1 -0
  156. package/dist/node_modules/@skrr-ai/auth-core/dist/cjs/index.js +17 -0
  157. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/daemonWire.js +11 -1
  158. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/executorStopReceipt.d.ts +123 -0
  159. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/executorStopReceipt.js +173 -0
  160. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.d.ts +1 -0
  161. package/dist/node_modules/@skrr-ai/auth-core/dist/esm/index.js +2 -0
  162. package/dist/node_modules/@skrr-ai/auth-core/package.json +1 -1
  163. package/dist/node_modules/@skrr-ai/data-provider/index.js +6922 -6828
  164. package/oclif.manifest.json +612 -62
  165. package/package.json +4 -4
@@ -5,6 +5,8 @@ const data_provider_1 = require("@skrr-ai/data-provider");
5
5
  const base_command_1 = require("../../base-command");
6
6
  const web_url_1 = require("../../lib/web-url");
7
7
  const prompt_1 = require("../../lib/prompt");
8
+ const iso_instant_1 = require("../../lib/iso-instant");
9
+ const task_recurrence_summary_1 = require("../../lib/task-recurrence-summary");
8
10
  class TasksSchedule extends base_command_1.BaseCommand {
9
11
  static description = 'Schedule a task to fire at a future time (optionally recurring)';
10
12
  static examples = [
@@ -21,10 +23,11 @@ class TasksSchedule extends base_command_1.BaseCommand {
21
23
  description: 'First fire time as ISO-8601 UTC ending in Z (e.g. 2026-06-01T15:30:00Z); numeric offsets such as +00:00 are not accepted',
22
24
  }),
23
25
  cron: core_1.Flags.string({
24
- description: 'Recurrence cron pattern (UTC unless --timezone is set)',
26
+ description: 'Recurrence cron pattern: minute hour day-of-month month day-of-week (UTC unless --timezone is set). ' +
27
+ 'When both a day of the month and a weekday are set, it fires when EITHER matches',
25
28
  }),
26
29
  timezone: core_1.Flags.string({
27
- description: 'IANA timezone for the cron pattern (e.g. America/Los_Angeles)',
30
+ description: 'IANA zone name for the cron pattern, e.g. Asia/Shanghai or America/Los_Angeles (not an offset such as UTC+8, and not "local")',
28
31
  dependsOn: ['cron'],
29
32
  }),
30
33
  'max-runs': core_1.Flags.integer({
@@ -32,7 +35,7 @@ class TasksSchedule extends base_command_1.BaseCommand {
32
35
  dependsOn: ['cron'],
33
36
  }),
34
37
  'end-date': core_1.Flags.string({
35
- description: 'Stop recurrence after this ISO-8601 date',
38
+ description: 'Last day of the recurrence: YYYY-MM-DD (through the end of that day in --timezone, UTC if omitted) or an ISO-8601 instant with a zone (2026-12-31T17:00:00Z); must be after the first fire',
36
39
  dependsOn: ['cron'],
37
40
  }),
38
41
  'from-json': core_1.Flags.string({
@@ -52,8 +55,10 @@ class TasksSchedule extends base_command_1.BaseCommand {
52
55
  }
53
56
  const recurrence = flags.cron
54
57
  ? (0, prompt_1.mergeDefined)({}, {
55
- pattern: flags.cron,
56
- timezone: flags.timezone,
58
+ // Stored as typed otherwise: a padded pattern came back padded from `show --json`, and a blank
59
+ // `--timezone ""` printed a recurrence with no zone at all (OSK-21531).
60
+ pattern: flags.cron.trim(),
61
+ timezone: flags.timezone?.trim() || undefined,
57
62
  maxRuns: flags['max-runs'],
58
63
  endDate: flags['end-date'],
59
64
  })
@@ -65,6 +70,11 @@ class TasksSchedule extends base_command_1.BaseCommand {
65
70
  if (!payload.scheduledFor || typeof payload.scheduledFor !== 'string') {
66
71
  this.error('A first-fire time is required. Pass --at <ISO-8601 UTC ending in Z> or include scheduledFor in --from-json using the same format.', { exit: 1 });
67
72
  }
73
+ // Said here, in the user's words: the server's zod issue names the REST field (`scheduledFor`) and is the same
74
+ // text for a missing Z, a numeric offset and a day that does not exist (OSK-21507).
75
+ const instant = (0, iso_instant_1.parseUtcInstant)(payload.scheduledFor, flags.at !== undefined ? '--at' : 'scheduledFor');
76
+ if (!instant.ok)
77
+ this.error(instant.message, { exit: 2 });
68
78
  let result;
69
79
  try {
70
80
  result = await data_provider_1.dataService.scheduleTask({
@@ -83,8 +93,20 @@ class TasksSchedule extends base_command_1.BaseCommand {
83
93
  const ref = t.identifier ?? (t.taskNumber ? `#${t.taskNumber}` : '');
84
94
  this.log(`Scheduled task ${t.id ?? t._id ?? taskRef}${ref ? ` (${ref})` : ''} for ${payload.scheduledFor}`);
85
95
  if (t.recurrence?.pattern) {
86
- const tz = t.recurrence.timezone ? ` (${t.recurrence.timezone})` : '';
87
- this.log(`Recurrence: ${t.recurrence.pattern}${tz}`);
96
+ // Always name the zone: the pattern is read in UTC unless one was set, and a rule with no zone beside it
97
+ // is exactly what could not be told apart from a local-time one.
98
+ const tz = t.recurrence.timezone?.trim() || 'UTC';
99
+ this.log(`Recurrence: ${t.recurrence.pattern} (${tz})`);
100
+ const reading = (0, task_recurrence_summary_1.describeCronPattern)(t.recurrence.pattern);
101
+ if (reading) {
102
+ this.log(` ${reading.text}`);
103
+ if (reading.dayOfMonthOrWeekday) {
104
+ this.log(' With both a day of the month and a weekday, it fires when EITHER matches, not only when both do.');
105
+ }
106
+ }
107
+ // The instant the server resolved `--end-date` to, so a calendar date is never a guess.
108
+ if (t.recurrence.endDate)
109
+ this.log(`Ends: ${t.recurrence.endDate}`);
88
110
  }
89
111
  }
90
112
  }
@@ -23,6 +23,7 @@ const principal_display_1 = require("../../lib/principal-display");
23
23
  const task_economics_line_1 = require("../../lib/task-economics-line");
24
24
  const format_1 = require("../../lib/format");
25
25
  const task_recurrence_outcome_1 = require("../../lib/task-recurrence-outcome");
26
+ const task_recurrence_summary_1 = require("../../lib/task-recurrence-summary");
26
27
  const record_output_1 = require("../../lib/record-output");
27
28
  /**
28
29
  * Where to look next — as COMMANDS, not as facts about the task.
@@ -441,6 +442,9 @@ class TasksShow extends base_command_1.BaseCommand {
441
442
  this.log(line);
442
443
  for (const line of recurrenceArmFailureLines(t, this.config.bin))
443
444
  this.log(line);
445
+ // That the Task recurs, by what rule and in which zone (OSK-21531): only `--json` carried it.
446
+ for (const line of (0, task_recurrence_summary_1.recurrenceSummaryLines)(t))
447
+ this.log(line);
444
448
  /*
445
449
  * Closing is the actor's call — a Task may be `done` with work still
446
450
  * outstanding, and `resolution.closure` is where the server recorded what