@getpaseo/cli 0.1.34 → 0.1.37

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 (149) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +9 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/agent/delete.d.ts.map +1 -1
  5. package/dist/commands/agent/delete.js +2 -4
  6. package/dist/commands/agent/delete.js.map +1 -1
  7. package/dist/commands/agent/ls.d.ts.map +1 -1
  8. package/dist/commands/agent/ls.js +2 -5
  9. package/dist/commands/agent/ls.js.map +1 -1
  10. package/dist/commands/agent/stop.d.ts.map +1 -1
  11. package/dist/commands/agent/stop.js +2 -4
  12. package/dist/commands/agent/stop.js.map +1 -1
  13. package/dist/commands/chat/create.d.ts +9 -0
  14. package/dist/commands/chat/create.d.ts.map +1 -0
  15. package/dist/commands/chat/create.js +23 -0
  16. package/dist/commands/chat/create.js.map +1 -0
  17. package/dist/commands/chat/delete.d.ts +6 -0
  18. package/dist/commands/chat/delete.d.ts.map +1 -0
  19. package/dist/commands/chat/delete.js +20 -0
  20. package/dist/commands/chat/delete.js.map +1 -0
  21. package/dist/commands/chat/index.d.ts +3 -0
  22. package/dist/commands/chat/index.d.ts.map +1 -0
  23. package/dist/commands/chat/index.js +47 -0
  24. package/dist/commands/chat/index.js.map +1 -0
  25. package/dist/commands/chat/inspect.d.ts +6 -0
  26. package/dist/commands/chat/inspect.d.ts.map +1 -0
  27. package/dist/commands/chat/inspect.js +20 -0
  28. package/dist/commands/chat/inspect.js.map +1 -0
  29. package/dist/commands/chat/ls.d.ts +6 -0
  30. package/dist/commands/chat/ls.d.ts.map +1 -0
  31. package/dist/commands/chat/ls.js +20 -0
  32. package/dist/commands/chat/ls.js.map +1 -0
  33. package/dist/commands/chat/post.d.ts +9 -0
  34. package/dist/commands/chat/post.d.ts.map +1 -0
  35. package/dist/commands/chat/post.js +26 -0
  36. package/dist/commands/chat/post.js.map +1 -0
  37. package/dist/commands/chat/read.d.ts +11 -0
  38. package/dist/commands/chat/read.d.ts.map +1 -0
  39. package/dist/commands/chat/read.js +40 -0
  40. package/dist/commands/chat/read.js.map +1 -0
  41. package/dist/commands/chat/schema.d.ts +36 -0
  42. package/dist/commands/chat/schema.d.ts.map +1 -0
  43. package/dist/commands/chat/schema.js +79 -0
  44. package/dist/commands/chat/schema.js.map +1 -0
  45. package/dist/commands/chat/shared.d.ts +16 -0
  46. package/dist/commands/chat/shared.d.ts.map +1 -0
  47. package/dist/commands/chat/shared.js +108 -0
  48. package/dist/commands/chat/shared.js.map +1 -0
  49. package/dist/commands/chat/wait.d.ts +9 -0
  50. package/dist/commands/chat/wait.d.ts.map +1 -0
  51. package/dist/commands/chat/wait.js +30 -0
  52. package/dist/commands/chat/wait.js.map +1 -0
  53. package/dist/commands/daemon/local-daemon.d.ts.map +1 -1
  54. package/dist/commands/daemon/local-daemon.js +2 -1
  55. package/dist/commands/daemon/local-daemon.js.map +1 -1
  56. package/dist/commands/daemon/runtime-toolchain.d.ts.map +1 -1
  57. package/dist/commands/daemon/runtime-toolchain.js +67 -9
  58. package/dist/commands/daemon/runtime-toolchain.js.map +1 -1
  59. package/dist/commands/daemon/status.d.ts.map +1 -1
  60. package/dist/commands/daemon/status.js +48 -24
  61. package/dist/commands/daemon/status.js.map +1 -1
  62. package/dist/commands/loop/index.d.ts +3 -0
  63. package/dist/commands/loop/index.d.ts.map +1 -0
  64. package/dist/commands/loop/index.js +18 -0
  65. package/dist/commands/loop/index.js.map +1 -0
  66. package/dist/commands/loop/inspect.d.ts +13 -0
  67. package/dist/commands/loop/inspect.d.ts.map +1 -0
  68. package/dist/commands/loop/inspect.js +94 -0
  69. package/dist/commands/loop/inspect.js.map +1 -0
  70. package/dist/commands/loop/logs.d.ts +8 -0
  71. package/dist/commands/loop/logs.d.ts.map +1 -0
  72. package/dist/commands/loop/logs.js +69 -0
  73. package/dist/commands/loop/logs.js.map +1 -0
  74. package/dist/commands/loop/ls.d.ts +18 -0
  75. package/dist/commands/loop/ls.d.ts.map +1 -0
  76. package/dist/commands/loop/ls.js +62 -0
  77. package/dist/commands/loop/ls.js.map +1 -0
  78. package/dist/commands/loop/run.d.ts +26 -0
  79. package/dist/commands/loop/run.d.ts.map +1 -0
  80. package/dist/commands/loop/run.js +116 -0
  81. package/dist/commands/loop/run.js.map +1 -0
  82. package/dist/commands/loop/stop.d.ts +15 -0
  83. package/dist/commands/loop/stop.d.ts.map +1 -0
  84. package/dist/commands/loop/stop.js +56 -0
  85. package/dist/commands/loop/stop.js.map +1 -0
  86. package/dist/commands/loop/types.d.ts +134 -0
  87. package/dist/commands/loop/types.d.ts.map +1 -0
  88. package/dist/commands/loop/types.js +2 -0
  89. package/dist/commands/loop/types.js.map +1 -0
  90. package/dist/commands/schedule/create.d.ts +13 -0
  91. package/dist/commands/schedule/create.d.ts.map +1 -0
  92. package/dist/commands/schedule/create.js +32 -0
  93. package/dist/commands/schedule/create.js.map +1 -0
  94. package/dist/commands/schedule/delete.d.ts +10 -0
  95. package/dist/commands/schedule/delete.d.ts.map +1 -0
  96. package/dist/commands/schedule/delete.js +32 -0
  97. package/dist/commands/schedule/delete.js.map +1 -0
  98. package/dist/commands/schedule/index.d.ts +3 -0
  99. package/dist/commands/schedule/index.d.ts.map +1 -0
  100. package/dist/commands/schedule/index.js +46 -0
  101. package/dist/commands/schedule/index.js.map +1 -0
  102. package/dist/commands/schedule/inspect.d.ts +6 -0
  103. package/dist/commands/schedule/inspect.d.ts.map +1 -0
  104. package/dist/commands/schedule/inspect.js +24 -0
  105. package/dist/commands/schedule/inspect.js.map +1 -0
  106. package/dist/commands/schedule/logs.d.ts +6 -0
  107. package/dist/commands/schedule/logs.d.ts.map +1 -0
  108. package/dist/commands/schedule/logs.js +23 -0
  109. package/dist/commands/schedule/logs.js.map +1 -0
  110. package/dist/commands/schedule/ls.d.ts +5 -0
  111. package/dist/commands/schedule/ls.d.ts.map +1 -0
  112. package/dist/commands/schedule/ls.js +23 -0
  113. package/dist/commands/schedule/ls.js.map +1 -0
  114. package/dist/commands/schedule/pause.d.ts +5 -0
  115. package/dist/commands/schedule/pause.d.ts.map +1 -0
  116. package/dist/commands/schedule/pause.js +23 -0
  117. package/dist/commands/schedule/pause.js.map +1 -0
  118. package/dist/commands/schedule/resume.d.ts +5 -0
  119. package/dist/commands/schedule/resume.d.ts.map +1 -0
  120. package/dist/commands/schedule/resume.js +23 -0
  121. package/dist/commands/schedule/resume.js.map +1 -0
  122. package/dist/commands/schedule/schema.d.ts +21 -0
  123. package/dist/commands/schedule/schema.d.ts.map +1 -0
  124. package/dist/commands/schedule/schema.js +67 -0
  125. package/dist/commands/schedule/schema.js.map +1 -0
  126. package/dist/commands/schedule/shared.d.ts +33 -0
  127. package/dist/commands/schedule/shared.d.ts.map +1 -0
  128. package/dist/commands/schedule/shared.js +148 -0
  129. package/dist/commands/schedule/shared.js.map +1 -0
  130. package/dist/commands/schedule/types.d.ts +137 -0
  131. package/dist/commands/schedule/types.d.ts.map +1 -0
  132. package/dist/commands/schedule/types.js +2 -0
  133. package/dist/commands/schedule/types.js.map +1 -0
  134. package/dist/commands/worktree/archive.d.ts.map +1 -1
  135. package/dist/commands/worktree/archive.js +3 -2
  136. package/dist/commands/worktree/archive.js.map +1 -1
  137. package/dist/output/render.d.ts.map +1 -1
  138. package/dist/output/render.js +3 -0
  139. package/dist/output/render.js.map +1 -1
  140. package/dist/output/types.d.ts +2 -0
  141. package/dist/output/types.d.ts.map +1 -1
  142. package/dist/utils/client.d.ts.map +1 -1
  143. package/dist/utils/client.js +5 -1
  144. package/dist/utils/client.js.map +1 -1
  145. package/dist/utils/paths.d.ts +12 -0
  146. package/dist/utils/paths.d.ts.map +1 -0
  147. package/dist/utils/paths.js +23 -0
  148. package/dist/utils/paths.js.map +1 -0
  149. package/package.json +3 -3
@@ -0,0 +1,134 @@
1
+ export type LoopStatus = "running" | "succeeded" | "failed" | "stopped";
2
+ export interface LoopLogEntry {
3
+ seq: number;
4
+ timestamp: string;
5
+ iteration: number | null;
6
+ source: "loop" | "worker" | "verifier" | "verify-check";
7
+ level: "info" | "error";
8
+ text: string;
9
+ }
10
+ export interface LoopVerifyCheckResult {
11
+ command: string;
12
+ exitCode: number;
13
+ passed: boolean;
14
+ stdout: string;
15
+ stderr: string;
16
+ startedAt: string;
17
+ completedAt: string;
18
+ }
19
+ export interface LoopVerifyPromptResult {
20
+ passed: boolean;
21
+ reason: string;
22
+ verifierAgentId: string | null;
23
+ startedAt: string;
24
+ completedAt: string;
25
+ }
26
+ export interface LoopIterationRecord {
27
+ index: number;
28
+ workerAgentId: string | null;
29
+ workerStartedAt: string;
30
+ workerCompletedAt: string | null;
31
+ verifierAgentId: string | null;
32
+ status: "running" | "succeeded" | "failed" | "stopped";
33
+ workerOutcome: "completed" | "failed" | "canceled" | null;
34
+ failureReason: string | null;
35
+ verifyChecks: LoopVerifyCheckResult[];
36
+ verifyPrompt: LoopVerifyPromptResult | null;
37
+ }
38
+ export interface LoopRecord {
39
+ id: string;
40
+ name: string | null;
41
+ prompt: string;
42
+ cwd: string;
43
+ provider: "claude" | "codex" | "opencode";
44
+ model: string | null;
45
+ workerProvider: "claude" | "codex" | "opencode" | null;
46
+ workerModel: string | null;
47
+ verifierProvider: "claude" | "codex" | "opencode" | null;
48
+ verifierModel: string | null;
49
+ verifyPrompt: string | null;
50
+ verifyChecks: string[];
51
+ archive: boolean;
52
+ sleepMs: number;
53
+ maxIterations: number | null;
54
+ maxTimeMs: number | null;
55
+ status: LoopStatus;
56
+ createdAt: string;
57
+ updatedAt: string;
58
+ startedAt: string;
59
+ completedAt: string | null;
60
+ stopRequestedAt: string | null;
61
+ iterations: LoopIterationRecord[];
62
+ logs: LoopLogEntry[];
63
+ nextLogSeq: number;
64
+ activeIteration: number | null;
65
+ activeWorkerAgentId: string | null;
66
+ activeVerifierAgentId: string | null;
67
+ }
68
+ export interface LoopListItem {
69
+ id: string;
70
+ name: string | null;
71
+ status: LoopStatus;
72
+ cwd: string;
73
+ createdAt: string;
74
+ updatedAt: string;
75
+ activeIteration: number | null;
76
+ }
77
+ export interface LoopLogsResult {
78
+ loop: LoopRecord;
79
+ entries: LoopLogEntry[];
80
+ nextCursor: number;
81
+ }
82
+ export interface LoopRunPayload {
83
+ requestId: string;
84
+ loop: LoopRecord | null;
85
+ error: string | null;
86
+ }
87
+ export interface LoopListPayload {
88
+ requestId: string;
89
+ loops: LoopListItem[];
90
+ error: string | null;
91
+ }
92
+ export interface LoopInspectPayload {
93
+ requestId: string;
94
+ loop: LoopRecord | null;
95
+ error: string | null;
96
+ }
97
+ export interface LoopLogsPayload {
98
+ requestId: string;
99
+ loop: LoopRecord | null;
100
+ entries: LoopLogEntry[];
101
+ nextCursor: number;
102
+ error: string | null;
103
+ }
104
+ export interface LoopStopPayload {
105
+ requestId: string;
106
+ loop: LoopRecord | null;
107
+ error: string | null;
108
+ }
109
+ export interface LoopRunInput {
110
+ prompt: string;
111
+ cwd: string;
112
+ provider?: "claude" | "codex" | "opencode";
113
+ model?: string;
114
+ workerProvider?: "claude" | "codex" | "opencode";
115
+ workerModel?: string;
116
+ verifierProvider?: "claude" | "codex" | "opencode";
117
+ verifierModel?: string;
118
+ verifyPrompt?: string;
119
+ verifyChecks?: string[];
120
+ archive?: boolean;
121
+ name?: string;
122
+ sleepMs?: number;
123
+ maxIterations?: number;
124
+ maxTimeMs?: number;
125
+ }
126
+ export interface LoopDaemonClient {
127
+ loopRun(input: LoopRunInput): Promise<LoopRunPayload>;
128
+ loopList(): Promise<LoopListPayload>;
129
+ loopInspect(id: string): Promise<LoopInspectPayload>;
130
+ loopLogs(id: string, afterSeq?: number): Promise<LoopLogsPayload>;
131
+ loopStop(id: string): Promise<LoopStopPayload>;
132
+ close(): Promise<void>;
133
+ }
134
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/loop/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;AAExE,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,cAAc,CAAC;IACxD,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,aAAa,EAAE,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC;IAC1D,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,qBAAqB,EAAE,CAAC;IACtC,YAAY,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAC7C;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IAC1C,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,cAAc,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;IACvD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,gBAAgB,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;IACzD,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACtD,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrD,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAClE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/loop/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import type { Command } from "commander";
2
+ import type { SingleResult } from "../../output/index.js";
3
+ import { type ScheduleCommandOptions, type ScheduleRow } from "./shared.js";
4
+ export interface ScheduleCreateOptions extends ScheduleCommandOptions {
5
+ every?: string;
6
+ cron?: string;
7
+ name?: string;
8
+ target?: string;
9
+ maxRuns?: string;
10
+ expiresIn?: string;
11
+ }
12
+ export declare function runCreateCommand(prompt: string, options: ScheduleCreateOptions, _command: Command): Promise<SingleResult<ScheduleRow>>;
13
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/create.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAKL,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,qBAAsB,SAAQ,sBAAsB;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CA0BpC"}
@@ -0,0 +1,32 @@
1
+ import { scheduleSchema } from "./schema.js";
2
+ import { connectScheduleClient, parseScheduleCreateInput, toScheduleCommandError, toScheduleRow, } from "./shared.js";
3
+ export async function runCreateCommand(prompt, options, _command) {
4
+ const input = parseScheduleCreateInput({
5
+ prompt,
6
+ every: options.every,
7
+ cron: options.cron,
8
+ name: options.name,
9
+ target: options.target,
10
+ maxRuns: options.maxRuns,
11
+ expiresIn: options.expiresIn,
12
+ });
13
+ const { client } = await connectScheduleClient(options.host);
14
+ try {
15
+ const payload = await client.scheduleCreate(input);
16
+ if (payload.error || !payload.schedule) {
17
+ throw new Error(payload.error ?? "Schedule creation failed");
18
+ }
19
+ return {
20
+ type: "single",
21
+ data: toScheduleRow(payload.schedule),
22
+ schema: scheduleSchema,
23
+ };
24
+ }
25
+ catch (error) {
26
+ throw toScheduleCommandError("SCHEDULE_CREATE_FAILED", "create schedule", error);
27
+ }
28
+ finally {
29
+ await client.close().catch(() => { });
30
+ }
31
+ }
32
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/commands/schedule/create.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,aAAa,GAGd,MAAM,aAAa,CAAC;AAWrB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,OAA8B,EAC9B,QAAiB;IAEjB,MAAM,KAAK,GAAG,wBAAwB,CAAC;QACrC,MAAM;QACN,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrC,MAAM,EAAE,cAAc;SACvB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,wBAAwB,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;IACnF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Command } from "commander";
2
+ import type { SingleResult } from "../../output/index.js";
3
+ import { type ScheduleCommandOptions } from "./shared.js";
4
+ interface ScheduleDeleteRow {
5
+ id: string;
6
+ status: string;
7
+ }
8
+ export declare function runDeleteCommand(id: string, options: ScheduleCommandOptions, _command: Command): Promise<SingleResult<ScheduleDeleteRow>>;
9
+ export {};
10
+ //# sourceMappingURL=delete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/delete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAiD,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzG,UAAU,iBAAiB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;CAChB;AAUD,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAoB1C"}
@@ -0,0 +1,32 @@
1
+ import { connectScheduleClient, toScheduleCommandError } from "./shared.js";
2
+ const scheduleDeleteSchema = {
3
+ idField: "id",
4
+ columns: [
5
+ { header: "ID", field: "id", width: 10 },
6
+ { header: "STATUS", field: "status", width: 12 },
7
+ ],
8
+ };
9
+ export async function runDeleteCommand(id, options, _command) {
10
+ const { client } = await connectScheduleClient(options.host);
11
+ try {
12
+ const payload = await client.scheduleDelete({ id });
13
+ if (payload.error) {
14
+ throw new Error(payload.error);
15
+ }
16
+ return {
17
+ type: "single",
18
+ data: {
19
+ id: payload.scheduleId,
20
+ status: "deleted",
21
+ },
22
+ schema: scheduleDeleteSchema,
23
+ };
24
+ }
25
+ catch (error) {
26
+ throw toScheduleCommandError("SCHEDULE_DELETE_FAILED", "delete schedule", error);
27
+ }
28
+ finally {
29
+ await client.close().catch(() => { });
30
+ }
31
+ }
32
+ //# sourceMappingURL=delete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/commands/schedule/delete.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAA+B,MAAM,aAAa,CAAC;AAOzG,MAAM,oBAAoB,GAAoC;IAC5D,OAAO,EAAE,IAAI;IACb,OAAO,EAAE;QACP,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE;QACxC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;KACjD;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAU,EACV,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE;gBACJ,EAAE,EAAE,OAAO,CAAC,UAAU;gBACtB,MAAM,EAAE,SAAS;aAClB;YACD,MAAM,EAAE,oBAAoB;SAC7B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,wBAAwB,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;IACnF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from "commander";
2
+ export declare function createScheduleCommand(): Command;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,wBAAgB,qBAAqB,IAAI,OAAO,CAwD/C"}
@@ -0,0 +1,46 @@
1
+ import { Command } from "commander";
2
+ import { withOutput } from "../../output/index.js";
3
+ import { addJsonAndDaemonHostOptions } from "../../utils/command-options.js";
4
+ import { runCreateCommand } from "./create.js";
5
+ import { runLsCommand } from "./ls.js";
6
+ import { runInspectCommand } from "./inspect.js";
7
+ import { runLogsCommand } from "./logs.js";
8
+ import { runPauseCommand } from "./pause.js";
9
+ import { runResumeCommand } from "./resume.js";
10
+ import { runDeleteCommand } from "./delete.js";
11
+ export function createScheduleCommand() {
12
+ const schedule = new Command("schedule").description("Manage recurring schedules");
13
+ addJsonAndDaemonHostOptions(schedule
14
+ .command("create")
15
+ .description("Create a schedule")
16
+ .argument("<prompt>", "Prompt to run on the schedule")
17
+ .option("--every <duration>", "Fixed interval cadence (for example: 5m, 1h)")
18
+ .option("--cron <expr>", "Cron cadence expression")
19
+ .option("--name <name>", "Optional schedule name")
20
+ .option("--target <self|new-agent|agent-id>", "Run target")
21
+ .option("--max-runs <n>", "Maximum number of runs")
22
+ .option("--expires-in <duration>", "Time to live for the schedule")).action(withOutput(runCreateCommand));
23
+ addJsonAndDaemonHostOptions(schedule.command("ls").description("List schedules")).action(withOutput(runLsCommand));
24
+ addJsonAndDaemonHostOptions(schedule
25
+ .command("inspect")
26
+ .description("Inspect a schedule")
27
+ .argument("<id>", "Schedule ID")).action(withOutput(runInspectCommand));
28
+ addJsonAndDaemonHostOptions(schedule
29
+ .command("logs")
30
+ .description("Show recent schedule run logs")
31
+ .argument("<id>", "Schedule ID")).action(withOutput(runLogsCommand));
32
+ addJsonAndDaemonHostOptions(schedule
33
+ .command("pause")
34
+ .description("Pause a schedule")
35
+ .argument("<id>", "Schedule ID")).action(withOutput(runPauseCommand));
36
+ addJsonAndDaemonHostOptions(schedule
37
+ .command("resume")
38
+ .description("Resume a paused schedule")
39
+ .argument("<id>", "Schedule ID")).action(withOutput(runResumeCommand));
40
+ addJsonAndDaemonHostOptions(schedule
41
+ .command("delete")
42
+ .description("Delete a schedule")
43
+ .argument("<id>", "Schedule ID")).action(withOutput(runDeleteCommand));
44
+ return schedule;
45
+ }
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/schedule/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,UAAU,qBAAqB;IACnC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;IAEnF,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,mBAAmB,CAAC;SAChC,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC;SACrD,MAAM,CAAC,oBAAoB,EAAE,8CAA8C,CAAC;SAC5E,MAAM,CAAC,eAAe,EAAE,yBAAyB,CAAC;SAClD,MAAM,CAAC,eAAe,EAAE,wBAAwB,CAAC;SACjD,MAAM,CAAC,oCAAoC,EAAE,YAAY,CAAC;SAC1D,MAAM,CAAC,gBAAgB,EAAE,wBAAwB,CAAC;SAClD,MAAM,CAAC,yBAAyB,EAAE,+BAA+B,CAAC,CACtE,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvC,2BAA2B,CACzB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CACrD,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnC,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,oBAAoB,CAAC;SACjC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CACnC,CAAC,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAExC,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,+BAA+B,CAAC;SAC5C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CACnC,CAAC,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC;IAErC,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,kBAAkB,CAAC;SAC/B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CACnC,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtC,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,0BAA0B,CAAC;SACvC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CACnC,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvC,2BAA2B,CACzB,QAAQ;SACL,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,mBAAmB,CAAC;SAChC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,CACnC,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Command } from "commander";
2
+ import type { ListResult } from "../../output/index.js";
3
+ import { type ScheduleInspectRow } from "./schema.js";
4
+ import { type ScheduleCommandOptions } from "./shared.js";
5
+ export declare function runInspectCommand(id: string, options: ScheduleCommandOptions, _command: Command): Promise<ListResult<ScheduleInspectRow>>;
6
+ //# sourceMappingURL=inspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAiD,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzG,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAkBzC"}
@@ -0,0 +1,24 @@
1
+ import { createScheduleInspectRows, createScheduleInspectSchema, } from "./schema.js";
2
+ import { connectScheduleClient, toScheduleCommandError } from "./shared.js";
3
+ export async function runInspectCommand(id, options, _command) {
4
+ const { client } = await connectScheduleClient(options.host);
5
+ try {
6
+ const payload = await client.scheduleInspect({ id });
7
+ if (payload.error || !payload.schedule) {
8
+ throw new Error(payload.error ?? `Schedule not found: ${id}`);
9
+ }
10
+ const rows = createScheduleInspectRows(payload.schedule);
11
+ return {
12
+ type: "list",
13
+ data: rows,
14
+ schema: createScheduleInspectSchema(payload.schedule),
15
+ };
16
+ }
17
+ catch (error) {
18
+ throw toScheduleCommandError("SCHEDULE_INSPECT_FAILED", "inspect schedule", error);
19
+ }
20
+ finally {
21
+ await client.close().catch(() => { });
22
+ }
23
+ }
24
+ //# sourceMappingURL=inspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../../src/commands/schedule/inspect.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,yBAAyB,EACzB,2BAA2B,GAE5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAA+B,MAAM,aAAa,CAAC;AAEzG,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,EAAU,EACV,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,uBAAuB,EAAE,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,IAAI,GAAG,yBAAyB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,2BAA2B,CAAC,OAAO,CAAC,QAAQ,CAAC;SACtD,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,yBAAyB,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACrF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { Command } from "commander";
2
+ import type { ListResult } from "../../output/index.js";
3
+ import { type ScheduleLogRow } from "./schema.js";
4
+ import { type ScheduleCommandOptions } from "./shared.js";
5
+ export declare function runLogsCommand(id: string, options: ScheduleCommandOptions, _command: Command): Promise<ListResult<ScheduleLogRow>>;
6
+ //# sourceMappingURL=logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAuC,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAiD,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEzG,wBAAsB,cAAc,CAClC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAiBrC"}
@@ -0,0 +1,23 @@
1
+ import { scheduleLogSchema, toScheduleLogRow } from "./schema.js";
2
+ import { connectScheduleClient, toScheduleCommandError } from "./shared.js";
3
+ export async function runLogsCommand(id, options, _command) {
4
+ const { client } = await connectScheduleClient(options.host);
5
+ try {
6
+ const payload = await client.scheduleLogs({ id });
7
+ if (payload.error) {
8
+ throw new Error(payload.error);
9
+ }
10
+ return {
11
+ type: "list",
12
+ data: payload.runs.map(toScheduleLogRow),
13
+ schema: scheduleLogSchema,
14
+ };
15
+ }
16
+ catch (error) {
17
+ throw toScheduleCommandError("SCHEDULE_LOGS_FAILED", "read schedule logs", error);
18
+ }
19
+ finally {
20
+ await client.close().catch(() => { });
21
+ }
22
+ }
23
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../../src/commands/schedule/logs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAuB,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAA+B,MAAM,aAAa,CAAC;AAEzG,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAU,EACV,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxC,MAAM,EAAE,iBAAiB;SAC1B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,KAAK,CAAC,CAAC;IACpF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Command } from "commander";
2
+ import type { ListResult } from "../../output/index.js";
3
+ import { type ScheduleCommandOptions, type ScheduleRow } from "./shared.js";
4
+ export declare function runLsCommand(options: ScheduleCommandOptions, _command: Command): Promise<ListResult<ScheduleRow>>;
5
+ //# sourceMappingURL=ls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ls.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/ls.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,wBAAsB,YAAY,CAChC,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAiBlC"}
@@ -0,0 +1,23 @@
1
+ import { scheduleSchema } from "./schema.js";
2
+ import { connectScheduleClient, toScheduleCommandError, toScheduleRow, } from "./shared.js";
3
+ export async function runLsCommand(options, _command) {
4
+ const { client } = await connectScheduleClient(options.host);
5
+ try {
6
+ const payload = await client.scheduleList();
7
+ if (payload.error) {
8
+ throw new Error(payload.error);
9
+ }
10
+ return {
11
+ type: "list",
12
+ data: payload.schedules.map(toScheduleRow),
13
+ schema: scheduleSchema,
14
+ };
15
+ }
16
+ catch (error) {
17
+ throw toScheduleCommandError("SCHEDULE_LIST_FAILED", "list schedules", error);
18
+ }
19
+ finally {
20
+ await client.close().catch(() => { });
21
+ }
22
+ }
23
+ //# sourceMappingURL=ls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ls.js","sourceRoot":"","sources":["../../../src/commands/schedule/ls.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,GAGd,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;YAC1C,MAAM,EAAE,cAAc;SACvB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,sBAAsB,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Command } from "commander";
2
+ import type { SingleResult } from "../../output/index.js";
3
+ import { type ScheduleCommandOptions, type ScheduleRow } from "./shared.js";
4
+ export declare function runPauseCommand(id: string, options: ScheduleCommandOptions, _command: Command): Promise<SingleResult<ScheduleRow>>;
5
+ //# sourceMappingURL=pause.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pause.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/pause.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,wBAAsB,eAAe,CACnC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAiBpC"}
@@ -0,0 +1,23 @@
1
+ import { scheduleSchema } from "./schema.js";
2
+ import { connectScheduleClient, toScheduleCommandError, toScheduleRow, } from "./shared.js";
3
+ export async function runPauseCommand(id, options, _command) {
4
+ const { client } = await connectScheduleClient(options.host);
5
+ try {
6
+ const payload = await client.schedulePause({ id });
7
+ if (payload.error || !payload.schedule) {
8
+ throw new Error(payload.error ?? `Failed to pause schedule: ${id}`);
9
+ }
10
+ return {
11
+ type: "single",
12
+ data: toScheduleRow(payload.schedule),
13
+ schema: scheduleSchema,
14
+ };
15
+ }
16
+ catch (error) {
17
+ throw toScheduleCommandError("SCHEDULE_PAUSE_FAILED", "pause schedule", error);
18
+ }
19
+ finally {
20
+ await client.close().catch(() => { });
21
+ }
22
+ }
23
+ //# sourceMappingURL=pause.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pause.js","sourceRoot":"","sources":["../../../src/commands/schedule/pause.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,GAGd,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAU,EACV,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACnD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,6BAA6B,EAAE,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrC,MAAM,EAAE,cAAc;SACvB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,uBAAuB,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACjF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Command } from "commander";
2
+ import type { SingleResult } from "../../output/index.js";
3
+ import { type ScheduleCommandOptions, type ScheduleRow } from "./shared.js";
4
+ export declare function runResumeCommand(id: string, options: ScheduleCommandOptions, _command: Command): Promise<SingleResult<ScheduleRow>>;
5
+ //# sourceMappingURL=resume.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/resume.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAIL,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAErB,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAiBpC"}
@@ -0,0 +1,23 @@
1
+ import { scheduleSchema } from "./schema.js";
2
+ import { connectScheduleClient, toScheduleCommandError, toScheduleRow, } from "./shared.js";
3
+ export async function runResumeCommand(id, options, _command) {
4
+ const { client } = await connectScheduleClient(options.host);
5
+ try {
6
+ const payload = await client.scheduleResume({ id });
7
+ if (payload.error || !payload.schedule) {
8
+ throw new Error(payload.error ?? `Failed to resume schedule: ${id}`);
9
+ }
10
+ return {
11
+ type: "single",
12
+ data: toScheduleRow(payload.schedule),
13
+ schema: scheduleSchema,
14
+ };
15
+ }
16
+ catch (error) {
17
+ throw toScheduleCommandError("SCHEDULE_RESUME_FAILED", "resume schedule", error);
18
+ }
19
+ finally {
20
+ await client.close().catch(() => { });
21
+ }
22
+ }
23
+ //# sourceMappingURL=resume.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resume.js","sourceRoot":"","sources":["../../../src/commands/schedule/resume.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,GAGd,MAAM,aAAa,CAAC;AAErB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,EAAU,EACV,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,8BAA8B,EAAE,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrC,MAAM,EAAE,cAAc;SACvB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,wBAAwB,EAAE,iBAAiB,EAAE,KAAK,CAAC,CAAC;IACnF,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
@@ -0,0 +1,21 @@
1
+ import type { OutputSchema } from "../../output/index.js";
2
+ import { type ScheduleRow } from "./shared.js";
3
+ import type { ScheduleRecord, ScheduleRunRecord } from "./types.js";
4
+ export declare const scheduleSchema: OutputSchema<ScheduleRow>;
5
+ export interface ScheduleInspectRow {
6
+ key: string;
7
+ value: string;
8
+ }
9
+ export declare function createScheduleInspectSchema(record: ScheduleRecord): OutputSchema<ScheduleInspectRow>;
10
+ export interface ScheduleLogRow {
11
+ id: string;
12
+ status: string;
13
+ startedAt: string;
14
+ agentId: string | null;
15
+ output: string | null;
16
+ error: string | null;
17
+ }
18
+ export declare const scheduleLogSchema: OutputSchema<ScheduleLogRow>;
19
+ export declare function toScheduleLogRow(run: ScheduleRunRecord): ScheduleLogRow;
20
+ export declare function createScheduleInspectRows(schedule: ScheduleRecord): ScheduleInspectRow[];
21
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpE,eAAO,MAAM,cAAc,EAAE,YAAY,CAAC,WAAW,CAUpD,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,cAAc,GAAG,YAAY,CAAC,kBAAkB,CAAC,CASpG;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAU1D,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,cAAc,CASvE;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,GAAG,kBAAkB,EAAE,CAuBxF"}
@@ -0,0 +1,67 @@
1
+ import { formatTarget } from "./shared.js";
2
+ export const scheduleSchema = {
3
+ idField: "id",
4
+ columns: [
5
+ { header: "ID", field: "id", width: 10 },
6
+ { header: "NAME", field: "name", width: 20 },
7
+ { header: "CADENCE", field: "cadence", width: 20 },
8
+ { header: "TARGET", field: "target", width: 20 },
9
+ { header: "STATUS", field: "status", width: 12 },
10
+ { header: "NEXT RUN", field: "nextRunAt", width: 24 },
11
+ ],
12
+ };
13
+ export function createScheduleInspectSchema(record) {
14
+ return {
15
+ idField: "key",
16
+ columns: [
17
+ { header: "KEY", field: "key", width: 18 },
18
+ { header: "VALUE", field: "value", width: 80 },
19
+ ],
20
+ serialize: () => record,
21
+ };
22
+ }
23
+ export const scheduleLogSchema = {
24
+ idField: "id",
25
+ columns: [
26
+ { header: "RUN ID", field: "id", width: 14 },
27
+ { header: "STATUS", field: "status", width: 12 },
28
+ { header: "STARTED", field: "startedAt", width: 24 },
29
+ { header: "AGENT", field: "agentId", width: 12 },
30
+ { header: "OUTPUT", field: "output", width: 40 },
31
+ { header: "ERROR", field: "error", width: 40 },
32
+ ],
33
+ };
34
+ export function toScheduleLogRow(run) {
35
+ return {
36
+ id: run.id,
37
+ status: run.status,
38
+ startedAt: run.startedAt,
39
+ agentId: run.agentId ? run.agentId.slice(0, 7) : null,
40
+ output: run.output,
41
+ error: run.error,
42
+ };
43
+ }
44
+ export function createScheduleInspectRows(schedule) {
45
+ return [
46
+ { key: "Id", value: schedule.id },
47
+ { key: "Name", value: schedule.name ?? "null" },
48
+ { key: "Prompt", value: schedule.prompt },
49
+ {
50
+ key: "Cadence",
51
+ value: schedule.cadence.type === "cron"
52
+ ? `cron:${schedule.cadence.expression}`
53
+ : `every:${schedule.cadence.everyMs}ms`,
54
+ },
55
+ { key: "Target", value: formatTarget(schedule.target) },
56
+ { key: "Status", value: schedule.status },
57
+ { key: "CreatedAt", value: schedule.createdAt },
58
+ { key: "UpdatedAt", value: schedule.updatedAt },
59
+ { key: "NextRunAt", value: schedule.nextRunAt ?? "null" },
60
+ { key: "LastRunAt", value: schedule.lastRunAt ?? "null" },
61
+ { key: "PausedAt", value: schedule.pausedAt ?? "null" },
62
+ { key: "ExpiresAt", value: schedule.expiresAt ?? "null" },
63
+ { key: "MaxRuns", value: schedule.maxRuns == null ? "null" : `${schedule.maxRuns}` },
64
+ { key: "RunCount", value: `${schedule.runs.length}` },
65
+ ];
66
+ }
67
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/commands/schedule/schema.ts"],"names":[],"mappings":"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"}