@swarmify/agents-cli 1.10.3 → 1.10.4

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 (129) hide show
  1. package/README.md +28 -0
  2. package/dist/commands/__tests__/sessions.test.d.ts +2 -0
  3. package/dist/commands/__tests__/sessions.test.d.ts.map +1 -0
  4. package/dist/commands/__tests__/sessions.test.js +170 -0
  5. package/dist/commands/__tests__/sessions.test.js.map +1 -0
  6. package/dist/commands/commands.d.ts.map +1 -1
  7. package/dist/commands/commands.js +74 -56
  8. package/dist/commands/commands.js.map +1 -1
  9. package/dist/commands/daemon.js +1 -1
  10. package/dist/commands/daemon.js.map +1 -1
  11. package/dist/commands/hooks.d.ts.map +1 -1
  12. package/dist/commands/hooks.js +67 -49
  13. package/dist/commands/hooks.js.map +1 -1
  14. package/dist/commands/mcp.d.ts.map +1 -1
  15. package/dist/commands/mcp.js +29 -18
  16. package/dist/commands/mcp.js.map +1 -1
  17. package/dist/commands/packages.d.ts.map +1 -1
  18. package/dist/commands/packages.js +3 -3
  19. package/dist/commands/packages.js.map +1 -1
  20. package/dist/commands/permissions.d.ts.map +1 -1
  21. package/dist/commands/permissions.js +71 -48
  22. package/dist/commands/permissions.js.map +1 -1
  23. package/dist/commands/plugins.js +8 -8
  24. package/dist/commands/plugins.js.map +1 -1
  25. package/dist/commands/pty.d.ts +20 -0
  26. package/dist/commands/pty.d.ts.map +1 -0
  27. package/dist/commands/pty.js +280 -0
  28. package/dist/commands/pty.js.map +1 -0
  29. package/dist/commands/pull.d.ts.map +1 -1
  30. package/dist/commands/pull.js +15 -14
  31. package/dist/commands/pull.js.map +1 -1
  32. package/dist/commands/push.d.ts.map +1 -1
  33. package/dist/commands/push.js +2 -2
  34. package/dist/commands/push.js.map +1 -1
  35. package/dist/commands/routines.d.ts.map +1 -1
  36. package/dist/commands/routines.js +14 -10
  37. package/dist/commands/routines.js.map +1 -1
  38. package/dist/commands/rules.d.ts.map +1 -1
  39. package/dist/commands/rules.js +65 -50
  40. package/dist/commands/rules.js.map +1 -1
  41. package/dist/commands/sessions.d.ts.map +1 -1
  42. package/dist/commands/sessions.js +219 -21
  43. package/dist/commands/sessions.js.map +1 -1
  44. package/dist/commands/sessions.test.d.ts +2 -0
  45. package/dist/commands/sessions.test.d.ts.map +1 -0
  46. package/dist/commands/sessions.test.js +53 -0
  47. package/dist/commands/sessions.test.js.map +1 -0
  48. package/dist/commands/skills.d.ts.map +1 -1
  49. package/dist/commands/skills.js +70 -46
  50. package/dist/commands/skills.js.map +1 -1
  51. package/dist/commands/subagents.d.ts.map +1 -1
  52. package/dist/commands/subagents.js +10 -4
  53. package/dist/commands/subagents.js.map +1 -1
  54. package/dist/commands/utils.d.ts +16 -0
  55. package/dist/commands/utils.d.ts.map +1 -1
  56. package/dist/commands/utils.js +48 -0
  57. package/dist/commands/utils.js.map +1 -1
  58. package/dist/commands/versions.d.ts.map +1 -1
  59. package/dist/commands/versions.js +144 -43
  60. package/dist/commands/versions.js.map +1 -1
  61. package/dist/commands/view.d.ts.map +1 -1
  62. package/dist/commands/view.js +97 -40
  63. package/dist/commands/view.js.map +1 -1
  64. package/dist/index.js +65 -42
  65. package/dist/index.js.map +1 -1
  66. package/dist/lib/agents.d.ts +4 -0
  67. package/dist/lib/agents.d.ts.map +1 -1
  68. package/dist/lib/agents.js +36 -1
  69. package/dist/lib/agents.js.map +1 -1
  70. package/dist/lib/daemon.d.ts.map +1 -1
  71. package/dist/lib/daemon.js +15 -7
  72. package/dist/lib/daemon.js.map +1 -1
  73. package/dist/lib/git.d.ts.map +1 -1
  74. package/dist/lib/git.js +11 -1
  75. package/dist/lib/git.js.map +1 -1
  76. package/dist/lib/pty-client.d.ts +22 -0
  77. package/dist/lib/pty-client.d.ts.map +1 -0
  78. package/dist/lib/pty-client.js +181 -0
  79. package/dist/lib/pty-client.js.map +1 -0
  80. package/dist/lib/pty-server.d.ts +16 -0
  81. package/dist/lib/pty-server.d.ts.map +1 -0
  82. package/dist/lib/pty-server.js +422 -0
  83. package/dist/lib/pty-server.js.map +1 -0
  84. package/dist/lib/runner.d.ts.map +1 -1
  85. package/dist/lib/runner.js +13 -9
  86. package/dist/lib/runner.js.map +1 -1
  87. package/dist/lib/sandbox.js +1 -1
  88. package/dist/lib/sandbox.js.map +1 -1
  89. package/dist/lib/session/discover.d.ts +18 -0
  90. package/dist/lib/session/discover.d.ts.map +1 -1
  91. package/dist/lib/session/discover.js +78 -67
  92. package/dist/lib/session/discover.js.map +1 -1
  93. package/dist/lib/session/parse.d.ts.map +1 -1
  94. package/dist/lib/session/parse.js +8 -3
  95. package/dist/lib/session/parse.js.map +1 -1
  96. package/dist/lib/shims.d.ts.map +1 -1
  97. package/dist/lib/shims.js +6 -1
  98. package/dist/lib/shims.js.map +1 -1
  99. package/dist/lib/state.d.ts +0 -1
  100. package/dist/lib/state.d.ts.map +1 -1
  101. package/dist/lib/state.js +3 -9
  102. package/dist/lib/state.js.map +1 -1
  103. package/dist/lib/types.d.ts +2 -5
  104. package/dist/lib/types.d.ts.map +1 -1
  105. package/dist/lib/types.js.map +1 -1
  106. package/dist/lib/usage.d.ts +29 -0
  107. package/dist/lib/usage.d.ts.map +1 -0
  108. package/dist/lib/usage.js +416 -0
  109. package/dist/lib/usage.js.map +1 -0
  110. package/dist/lib/versions.d.ts.map +1 -1
  111. package/dist/lib/versions.js +19 -8
  112. package/dist/lib/versions.js.map +1 -1
  113. package/package.json +3 -1
  114. package/dist/commands/cron.d.ts +0 -3
  115. package/dist/commands/cron.d.ts.map +0 -1
  116. package/dist/commands/cron.js +0 -457
  117. package/dist/commands/cron.js.map +0 -1
  118. package/dist/lib/cron.d.ts +0 -70
  119. package/dist/lib/cron.d.ts.map +0 -1
  120. package/dist/lib/cron.js +0 -325
  121. package/dist/lib/cron.js.map +0 -1
  122. package/dist/lib/drive-server.d.ts +0 -9
  123. package/dist/lib/drive-server.d.ts.map +0 -1
  124. package/dist/lib/drive-server.js +0 -217
  125. package/dist/lib/drive-server.js.map +0 -1
  126. package/dist/lib/drives.d.ts +0 -34
  127. package/dist/lib/drives.d.ts.map +0 -1
  128. package/dist/lib/drives.js +0 -267
  129. package/dist/lib/drives.js.map +0 -1
@@ -1,457 +0,0 @@
1
- import chalk from 'chalk';
2
- import ora from 'ora';
3
- import * as fs from 'fs';
4
- import * as path from 'path';
5
- import * as yaml from 'yaml';
6
- import { isDaemonRunning, signalDaemonReload, } from '../lib/daemon.js';
7
- import { listJobs as listAllJobs, deleteJob, readJob, validateJob, writeJob, setJobEnabled, listRuns, getLatestRun, getRunDir, getJobPath, parseAtTime, } from '../lib/cron.js';
8
- import { getCronDir } from '../lib/state.js';
9
- import { executeJob } from '../lib/runner.js';
10
- import { JobScheduler } from '../lib/scheduler.js';
11
- function isPromptCancelled(err) {
12
- return (err instanceof Error &&
13
- (err.message.includes('User force closed') ||
14
- err.name === 'ExitPromptError' ||
15
- err.code === 'ERR_USE_AFTER_CLOSE'));
16
- }
17
- async function pickJob(message, filter) {
18
- let jobs = listAllJobs();
19
- if (filter) {
20
- jobs = jobs.filter(filter);
21
- }
22
- if (jobs.length === 0) {
23
- console.log(chalk.yellow('No jobs available'));
24
- return null;
25
- }
26
- try {
27
- const { select } = await import('@inquirer/prompts');
28
- return await select({
29
- message,
30
- choices: jobs.map((job) => ({
31
- value: job.name,
32
- name: `${job.name} ${chalk.gray(`(${job.agent}, ${job.schedule})`)}`,
33
- })),
34
- });
35
- }
36
- catch (err) {
37
- if (isPromptCancelled(err)) {
38
- console.log(chalk.gray('Cancelled'));
39
- return null;
40
- }
41
- throw err;
42
- }
43
- }
44
- export function registerCronCommands(program) {
45
- const cronCmd = program.command('cron').description('Manage scheduled jobs');
46
- cronCmd
47
- .command('list')
48
- .description('List all jobs')
49
- .action(() => {
50
- const jobs = listAllJobs();
51
- if (jobs.length === 0) {
52
- console.log(chalk.gray('No jobs configured'));
53
- console.log(chalk.gray(' Add a job: agents cron add <path-to-job.yml>'));
54
- return;
55
- }
56
- const scheduler = new JobScheduler(async () => { });
57
- scheduler.loadAll();
58
- console.log(chalk.bold('Scheduled Jobs\n'));
59
- const header = ` ${'Name'.padEnd(24)} ${'Agent'.padEnd(10)} ${'Schedule'.padEnd(20)} ${'Enabled'.padEnd(10)} ${'Next Run'.padEnd(24)} ${'Last Status'}`;
60
- console.log(chalk.gray(header));
61
- console.log(chalk.gray(' ' + '-'.repeat(110)));
62
- for (const job of jobs) {
63
- const nextRun = scheduler.getNextRun(job.name);
64
- const nextStr = nextRun ? nextRun.toLocaleString() : '-';
65
- const latestRun = getLatestRun(job.name);
66
- const lastStatus = latestRun?.status || '-';
67
- const enabledStr = job.enabled ? chalk.green('yes') : chalk.gray('no');
68
- const statusColor = lastStatus === 'completed' ? chalk.green : lastStatus === 'failed' ? chalk.red : lastStatus === 'timeout' ? chalk.yellow : chalk.gray;
69
- console.log(` ${chalk.cyan(job.name.padEnd(24))} ${job.agent.padEnd(10)} ${job.schedule.padEnd(20)} ${enabledStr.padEnd(10 + 10)} ${chalk.gray(nextStr.padEnd(24))} ${statusColor(lastStatus)}`);
70
- }
71
- scheduler.stopAll();
72
- console.log();
73
- });
74
- cronCmd
75
- .command('add [nameOrPath]')
76
- .description('Add a job from YAML file or inline flags')
77
- .option('-s, --schedule <cron>', 'Cron schedule (e.g., "0 9 * * 1-5")')
78
- .option('-a, --agent <agent>', 'Agent to use (claude, codex, gemini, cursor, opencode)')
79
- .option('-p, --prompt <prompt>', 'Prompt for the agent')
80
- .option('-m, --mode <mode>', 'Mode: plan or edit', 'plan')
81
- .option('-e, --effort <effort>', 'Effort level: fast, default, detailed', 'default')
82
- .option('-t, --timeout <timeout>', 'Timeout (e.g., 30m, 2h)', '30m')
83
- .option('--timezone <tz>', 'Timezone (e.g., America/Los_Angeles)')
84
- .option('--at <time>', 'One-shot: run once at time (e.g., "14:30" or "2026-02-24 09:00")')
85
- .option('--disabled', 'Create job in disabled state')
86
- .action(async (nameOrPath, options) => {
87
- // Check if inline mode (has flags) or file mode
88
- const hasInlineFlags = options.schedule || options.agent || options.prompt || options.at;
89
- if (hasInlineFlags) {
90
- // Inline mode: create job from flags
91
- if (!nameOrPath) {
92
- console.log(chalk.red('Job name is required'));
93
- console.log(chalk.gray('Usage: agents cron add <name> --schedule "..." --agent <agent> --prompt "..."'));
94
- process.exit(1);
95
- }
96
- let schedule = options.schedule;
97
- let runOnce = false;
98
- // Handle --at for one-shot jobs
99
- if (options.at) {
100
- const parsed = parseAtTime(options.at);
101
- if (!parsed) {
102
- console.log(chalk.red(`Invalid --at format: ${options.at}`));
103
- console.log(chalk.gray('Supported formats: "14:30" or "2026-02-24 09:00"'));
104
- process.exit(1);
105
- }
106
- schedule = parsed.schedule;
107
- runOnce = parsed.runOnce;
108
- }
109
- if (!schedule) {
110
- console.log(chalk.red('Schedule is required (use --schedule or --at)'));
111
- process.exit(1);
112
- }
113
- if (!options.agent) {
114
- console.log(chalk.red('Agent is required (use --agent)'));
115
- process.exit(1);
116
- }
117
- if (!options.prompt) {
118
- console.log(chalk.red('Prompt is required (use --prompt)'));
119
- process.exit(1);
120
- }
121
- const config = {
122
- name: nameOrPath,
123
- schedule,
124
- agent: options.agent,
125
- mode: options.mode,
126
- effort: options.effort,
127
- timeout: options.timeout,
128
- enabled: !options.disabled,
129
- prompt: options.prompt,
130
- timezone: options.timezone,
131
- ...(runOnce ? { runOnce: true } : {}),
132
- };
133
- const errors = validateJob(config);
134
- if (errors.length > 0) {
135
- console.log(chalk.red('Validation errors:'));
136
- for (const err of errors) {
137
- console.log(chalk.red(` - ${err}`));
138
- }
139
- process.exit(1);
140
- }
141
- writeJob(config);
142
- console.log(chalk.green(`Job '${nameOrPath}' added`));
143
- if (runOnce) {
144
- console.log(chalk.gray(`One-shot job scheduled for: ${options.at}`));
145
- }
146
- if (isDaemonRunning()) {
147
- signalDaemonReload();
148
- console.log(chalk.gray('Daemon reloaded'));
149
- }
150
- }
151
- else {
152
- // File mode: load from YAML file
153
- if (!nameOrPath) {
154
- console.log(chalk.red('File path or job name with flags is required'));
155
- console.log(chalk.gray('Usage: agents cron add <path-to-job.yml>'));
156
- console.log(chalk.gray(' or: agents cron add <name> --schedule "..." --agent <agent> --prompt "..."'));
157
- process.exit(1);
158
- }
159
- const resolved = path.resolve(nameOrPath);
160
- if (!fs.existsSync(resolved)) {
161
- console.log(chalk.red(`File not found: ${resolved}`));
162
- process.exit(1);
163
- }
164
- const content = fs.readFileSync(resolved, 'utf-8');
165
- let parsed;
166
- try {
167
- parsed = yaml.parse(content);
168
- }
169
- catch (err) {
170
- console.log(chalk.red(`Invalid YAML: ${err.message}`));
171
- process.exit(1);
172
- }
173
- const name = parsed.name || path.basename(resolved).replace(/\.ya?ml$/, '');
174
- parsed.name = name;
175
- const errors = validateJob(parsed);
176
- if (errors.length > 0) {
177
- console.log(chalk.red('Validation errors:'));
178
- for (const err of errors) {
179
- console.log(chalk.red(` - ${err}`));
180
- }
181
- process.exit(1);
182
- }
183
- const config = {
184
- mode: 'plan',
185
- effort: 'default',
186
- timeout: '30m',
187
- enabled: true,
188
- ...parsed,
189
- };
190
- writeJob(config);
191
- console.log(chalk.green(`Job '${name}' added`));
192
- if (isDaemonRunning()) {
193
- signalDaemonReload();
194
- console.log(chalk.gray('Daemon reloaded'));
195
- }
196
- }
197
- });
198
- cronCmd
199
- .command('remove [name]')
200
- .description('Remove a cron job')
201
- .action(async (name) => {
202
- if (!name) {
203
- name = await pickJob('Select job to remove') ?? undefined;
204
- if (!name)
205
- return;
206
- }
207
- const deleted = deleteJob(name);
208
- if (deleted) {
209
- console.log(chalk.green(`Job '${name}' removed`));
210
- if (isDaemonRunning()) {
211
- signalDaemonReload();
212
- console.log(chalk.gray('Daemon reloaded'));
213
- }
214
- }
215
- else {
216
- console.log(chalk.red(`Job '${name}' not found`));
217
- process.exit(1);
218
- }
219
- });
220
- cronCmd
221
- .command('view [name]')
222
- .description('Show job configuration')
223
- .action(async (name) => {
224
- if (!name) {
225
- name = await pickJob('Select job to view') ?? undefined;
226
- if (!name)
227
- return;
228
- }
229
- const job = readJob(name);
230
- if (!job) {
231
- console.log(chalk.red(`Job '${name}' not found`));
232
- process.exit(1);
233
- }
234
- console.log(chalk.bold(`Job: ${name}\n`));
235
- console.log(yaml.stringify(job));
236
- });
237
- cronCmd
238
- .command('edit [name]')
239
- .description('Edit job configuration in $EDITOR')
240
- .action(async (name) => {
241
- if (!name) {
242
- name = await pickJob('Select job to edit') ?? undefined;
243
- if (!name)
244
- return;
245
- }
246
- const jobPath = getJobPath(name);
247
- if (!jobPath) {
248
- // Job doesn't exist - create a new one
249
- const cronDir = getCronDir();
250
- const newPath = path.join(cronDir, `${name}.yml`);
251
- // Create template
252
- const template = yaml.stringify({
253
- name,
254
- schedule: '0 9 * * *',
255
- agent: 'claude',
256
- prompt: 'Your prompt here',
257
- });
258
- fs.writeFileSync(newPath, template, 'utf-8');
259
- console.log(chalk.gray(`Created new job file: ${newPath}`));
260
- }
261
- const targetPath = jobPath || path.join(getCronDir(), `${name}.yml`);
262
- const editor = process.env.EDITOR || process.env.VISUAL || 'vi';
263
- const { spawn: spawnSync } = await import('child_process');
264
- const child = spawnSync(editor, [targetPath], {
265
- stdio: 'inherit',
266
- shell: true,
267
- });
268
- child.on('close', (code) => {
269
- if (code === 0) {
270
- // Validate the edited file
271
- const job = readJob(name);
272
- if (job) {
273
- const errors = validateJob(job);
274
- if (errors.length > 0) {
275
- console.log(chalk.yellow('\nWarning: Job has validation errors:'));
276
- for (const err of errors) {
277
- console.log(chalk.yellow(` - ${err}`));
278
- }
279
- }
280
- else {
281
- console.log(chalk.green(`\nJob '${name}' saved`));
282
- if (isDaemonRunning()) {
283
- signalDaemonReload();
284
- console.log(chalk.gray('Daemon reloaded'));
285
- }
286
- }
287
- }
288
- }
289
- });
290
- });
291
- cronCmd
292
- .command('runs [name]')
293
- .description('Show execution history')
294
- .action(async (name) => {
295
- if (!name) {
296
- name = await pickJob('Select job to view runs') ?? undefined;
297
- if (!name)
298
- return;
299
- }
300
- const runs = listRuns(name);
301
- if (runs.length === 0) {
302
- console.log(chalk.yellow(`No runs found for job '${name}'`));
303
- return;
304
- }
305
- console.log(chalk.bold(`Execution History: ${name}\n`));
306
- for (const run of runs.slice(-10)) {
307
- const status = run.status === 'completed'
308
- ? chalk.green(run.status)
309
- : run.status === 'failed'
310
- ? chalk.red(run.status)
311
- : chalk.yellow(run.status);
312
- console.log(` ${run.runId} ${status} ${run.startedAt}`);
313
- }
314
- });
315
- cronCmd
316
- .command('run [name]')
317
- .description('Run a job immediately in the foreground')
318
- .action(async (name) => {
319
- if (!name) {
320
- name = await pickJob('Select job to run') ?? undefined;
321
- if (!name)
322
- return;
323
- }
324
- const job = readJob(name);
325
- if (!job) {
326
- console.log(chalk.red(`Job '${name}' not found`));
327
- process.exit(1);
328
- }
329
- console.log(chalk.bold(`Running job '${name}' (agent: ${job.agent}, mode: ${job.mode})\n`));
330
- const spinner = ora('Executing...').start();
331
- try {
332
- const result = await executeJob(job);
333
- if (result.meta.status === 'completed') {
334
- spinner.succeed(`Job completed (exit code: ${result.meta.exitCode})`);
335
- }
336
- else if (result.meta.status === 'timeout') {
337
- spinner.warn(`Job timed out after ${job.timeout}`);
338
- }
339
- else {
340
- spinner.fail(`Job failed (exit code: ${result.meta.exitCode})`);
341
- }
342
- console.log(chalk.gray(` Run: ${result.meta.runId}`));
343
- console.log(chalk.gray(` Log: ${getRunDir(name, result.meta.runId)}/stdout.log`));
344
- if (result.reportPath) {
345
- console.log(chalk.bold('\nReport:\n'));
346
- console.log(fs.readFileSync(result.reportPath, 'utf-8'));
347
- }
348
- }
349
- catch (err) {
350
- spinner.fail('Execution failed');
351
- console.error(chalk.red(err.message));
352
- process.exit(1);
353
- }
354
- });
355
- cronCmd
356
- .command('logs [name]')
357
- .description('Show stdout from the latest (or specific) run')
358
- .option('-r, --run <runId>', 'Specific run ID')
359
- .action(async (name, options) => {
360
- if (!name) {
361
- name = await pickJob('Select job to view logs') ?? undefined;
362
- if (!name)
363
- return;
364
- }
365
- let runId = options.run;
366
- if (!runId) {
367
- const latest = getLatestRun(name);
368
- if (!latest) {
369
- console.log(chalk.yellow(`No runs found for job '${name}'`));
370
- return;
371
- }
372
- runId = latest.runId;
373
- }
374
- const logPath = path.join(getRunDir(name, runId), 'stdout.log');
375
- if (!fs.existsSync(logPath)) {
376
- console.log(chalk.yellow(`Log not found: ${logPath}`));
377
- return;
378
- }
379
- console.log(chalk.gray(`Run: ${runId}\n`));
380
- console.log(fs.readFileSync(logPath, 'utf-8'));
381
- });
382
- cronCmd
383
- .command('report [name]')
384
- .description('Show report from the latest (or specific) run')
385
- .option('-r, --run <runId>', 'Specific run ID')
386
- .action(async (name, options) => {
387
- if (!name) {
388
- name = await pickJob('Select job to view report') ?? undefined;
389
- if (!name)
390
- return;
391
- }
392
- let runId = options.run;
393
- if (!runId) {
394
- const latest = getLatestRun(name);
395
- if (!latest) {
396
- console.log(chalk.yellow(`No runs found for job '${name}'`));
397
- return;
398
- }
399
- runId = latest.runId;
400
- }
401
- const reportPath = path.join(getRunDir(name, runId), 'report.md');
402
- if (!fs.existsSync(reportPath)) {
403
- console.log(chalk.yellow(`No report found for run ${runId}`));
404
- console.log(chalk.gray(` Reports are extracted from agent output on completion`));
405
- return;
406
- }
407
- console.log(chalk.gray(`Run: ${runId}\n`));
408
- console.log(fs.readFileSync(reportPath, 'utf-8'));
409
- });
410
- cronCmd
411
- .command('resume [name]')
412
- .description('Resume a paused job')
413
- .action(async (name) => {
414
- if (!name) {
415
- // Only show paused jobs
416
- name = await pickJob('Select job to resume', (job) => !job.enabled) ?? undefined;
417
- if (!name)
418
- return;
419
- }
420
- try {
421
- setJobEnabled(name, true);
422
- console.log(chalk.green(`Job '${name}' resumed`));
423
- if (isDaemonRunning()) {
424
- signalDaemonReload();
425
- console.log(chalk.gray('Daemon reloaded'));
426
- }
427
- }
428
- catch (err) {
429
- console.log(chalk.red(err.message));
430
- process.exit(1);
431
- }
432
- });
433
- cronCmd
434
- .command('pause [name]')
435
- .description('Pause a job')
436
- .action(async (name) => {
437
- if (!name) {
438
- // Only show enabled jobs
439
- name = await pickJob('Select job to pause', (job) => job.enabled) ?? undefined;
440
- if (!name)
441
- return;
442
- }
443
- try {
444
- setJobEnabled(name, false);
445
- console.log(chalk.green(`Job '${name}' paused`));
446
- if (isDaemonRunning()) {
447
- signalDaemonReload();
448
- console.log(chalk.gray('Daemon reloaded'));
449
- }
450
- }
451
- catch (err) {
452
- console.log(chalk.red(err.message));
453
- process.exit(1);
454
- }
455
- });
456
- }
457
- //# sourceMappingURL=cron.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/commands/cron.ts"],"names":[],"mappings":"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"}
@@ -1,70 +0,0 @@
1
- import type { AgentId } from './types.js';
2
- export interface JobAllowConfig {
3
- tools?: string[];
4
- sites?: string[];
5
- dirs?: string[];
6
- }
7
- export interface JobConfig {
8
- name: string;
9
- schedule: string;
10
- agent: AgentId;
11
- mode: 'plan' | 'edit' | 'full';
12
- effort: 'fast' | 'default' | 'detailed';
13
- timeout: string;
14
- enabled: boolean;
15
- prompt: string;
16
- timezone?: string;
17
- variables?: Record<string, string>;
18
- sandbox?: boolean;
19
- allow?: JobAllowConfig;
20
- config?: Record<string, unknown>;
21
- version?: string;
22
- runOnce?: boolean;
23
- }
24
- export interface RunMeta {
25
- jobName: string;
26
- runId: string;
27
- agent: AgentId;
28
- pid: number | null;
29
- status: 'running' | 'completed' | 'failed' | 'timeout';
30
- startedAt: string;
31
- completedAt: string | null;
32
- exitCode: number | null;
33
- }
34
- export declare function listJobs(): JobConfig[];
35
- export declare function readJob(name: string): JobConfig | null;
36
- export declare function writeJob(config: JobConfig): void;
37
- export declare function deleteJob(name: string): boolean;
38
- export declare function setJobEnabled(name: string, enabled: boolean): void;
39
- export declare function validateJob(config: Partial<JobConfig>): string[];
40
- export declare function resolveJobPrompt(config: JobConfig): string;
41
- export declare function parseTimeout(timeout: string): number | null;
42
- export declare function listRuns(jobName: string): RunMeta[];
43
- export declare function getLatestRun(jobName: string): RunMeta | null;
44
- export declare function writeRunMeta(meta: RunMeta): void;
45
- export declare function readRunMeta(jobName: string, runId: string): RunMeta | null;
46
- export declare function getRunDir(jobName: string, runId: string): string;
47
- export declare function discoverJobsFromRepo(repoPath: string): Array<{
48
- name: string;
49
- path: string;
50
- }>;
51
- export declare function jobExists(name: string): boolean;
52
- export declare function getJobPath(name: string): string | null;
53
- /**
54
- * Parse an "at" time string into a one-shot cron expression.
55
- * Supports formats like:
56
- * - "9:00" or "09:00" - today at 9:00 AM (or tomorrow if past)
57
- * - "14:30" - today at 2:30 PM
58
- * - "2026-02-24 09:00" - specific date and time
59
- * Returns null if invalid format.
60
- */
61
- export declare function parseAtTime(atTime: string): {
62
- schedule: string;
63
- runOnce: boolean;
64
- } | null;
65
- export declare function jobContentMatches(name: string, sourcePath: string): boolean;
66
- export declare function installJobFromSource(sourcePath: string, name: string): {
67
- success: boolean;
68
- error?: string;
69
- };
70
- //# sourceMappingURL=cron.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../src/lib/cron.ts"],"names":[],"mappings":"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"}