@indigoai-us/hq-cli 5.345.191 → 5.345.193
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.
- package/CHANGELOG.md +398 -0
- package/assets/bot-workers/setup/worker.yaml +91 -34
- package/dist/command-catalog.generated.d.ts +96 -19
- package/dist/command-catalog.generated.js +124 -21
- package/dist/commands/bot-jobs.d.ts +21 -18
- package/dist/commands/bot-jobs.js +127 -39
- package/dist/commands/bot.d.ts +4 -3
- package/dist/commands/bot.js +265 -140
- package/dist/commands/core-jobs-schedule.js +10 -0
- package/dist/commands/daemon.js +37 -0
- package/dist/commands/files.d.ts +41 -6
- package/dist/commands/files.js +108 -27
- package/dist/commands/pack-start-bot.d.ts +4 -6
- package/dist/commands/pack-start-bot.js +4 -8
- package/dist/commands/signals-run.d.ts +45 -0
- package/dist/commands/signals-run.js +175 -0
- package/dist/commands/signals.d.ts +1 -0
- package/dist/commands/signals.js +3 -0
- package/dist/commands/sources.d.ts +11 -0
- package/dist/commands/sources.js +137 -25
- package/dist/commands/staff/reset-test-account.d.ts +10 -0
- package/dist/commands/staff/reset-test-account.js +18 -2
- package/dist/hq-cloud-sync-runner/bin/sync-runner.js +31171 -52512
- package/dist/hq-cloud-sync-runner/package.json +1 -1
- package/dist/lib/bot/api.d.ts +3 -2
- package/dist/lib/bot/config.d.ts +2 -0
- package/dist/lib/bot/fleet-cron.d.ts +121 -0
- package/dist/lib/bot/fleet-cron.js +319 -0
- package/dist/lib/bot/fleet-local.d.ts +93 -1
- package/dist/lib/bot/fleet-local.js +546 -34
- package/dist/lib/bot/fleet-owner-companies.d.ts +12 -0
- package/dist/lib/bot/fleet-owner-companies.js +30 -0
- package/dist/lib/bot/fleet-watch.d.ts +25 -0
- package/dist/lib/bot/fleet-watch.js +51 -0
- package/dist/lib/bot/index.d.ts +1 -1
- package/dist/lib/bot/index.js +1 -1
- package/dist/lib/bot/job-run.d.ts +5 -4
- package/dist/lib/bot/job-run.js +5 -4
- package/dist/lib/bot/jobs/hot-signal-sync.d.ts +57 -3
- package/dist/lib/bot/jobs/hot-signal-sync.js +163 -4
- package/dist/lib/bot/local-jobs.d.ts +13 -2
- package/dist/lib/bot/local-jobs.js +17 -4
- package/dist/lib/bot/progress.d.ts +14 -0
- package/dist/lib/bot/progress.js +47 -1
- package/dist/lib/bot/run.d.ts +55 -2
- package/dist/lib/bot/run.js +192 -10
- package/dist/lib/bot/setup-tool-offer.d.ts +1 -0
- package/dist/lib/bot/setup-tool-offer.js +16 -0
- package/dist/lib/bot/signals-engine-flag.d.ts +18 -0
- package/dist/lib/bot/signals-engine-flag.js +30 -0
- package/dist/lib/daemon/catalog.d.ts +4 -0
- package/dist/lib/daemon/catalog.js +29 -9
- package/dist/lib/daemon/legacy.d.ts +6 -0
- package/dist/lib/daemon/legacy.js +16 -10
- package/dist/lib/daemon/run.d.ts +1 -0
- package/dist/lib/daemon/run.js +10 -0
- package/dist/lib/flag-registry-worker-source.generated.d.ts +1 -1
- package/dist/lib/flag-registry-worker-source.generated.js +1 -1
- package/dist/lib/flag-registry.d.ts +13 -1
- package/dist/lib/flag-registry.js +46 -0
- package/dist/lib/hot-channels/adapters/attio.d.ts +75 -2
- package/dist/lib/hot-channels/adapters/attio.js +367 -29
- package/dist/lib/hot-channels/adapters/gmail.d.ts +14 -0
- package/dist/lib/hot-channels/adapters/gmail.js +59 -2
- package/dist/lib/hot-channels/adapters/linear.d.ts +24 -0
- package/dist/lib/hot-channels/adapters/linear.js +71 -1
- package/dist/lib/hot-channels/adapters/meetings.js +4 -1
- package/dist/lib/hot-channels/adapters/slack.js +7 -3
- package/dist/lib/hot-channels/alert.js +1 -1
- package/dist/lib/hot-channels/contract.d.ts +11 -0
- package/dist/lib/hot-channels/contract.js +1 -0
- package/dist/lib/hot-channels/cursors.js +1 -1
- package/dist/lib/hot-channels/landing.d.ts +6 -2
- package/dist/lib/hot-channels/landing.js +13 -6
- package/dist/lib/hot-channels/ledger.js +2 -0
- package/dist/lib/hot-channels/loop.js +18 -4
- package/dist/lib/hot-channels/registry.js +9 -1
- package/dist/lib/hot-channels/run.d.ts +18 -0
- package/dist/lib/hot-channels/run.js +15 -4
- package/dist/lib/hot-channels/signals-pass.d.ts +1 -0
- package/dist/lib/hot-channels/signals-pass.js +7 -5
- package/dist/lib/hot-channels/sync-lock.js +22 -6
- package/dist/lib/mesh/live/daemon/install.d.ts +22 -0
- package/dist/lib/mesh/live/daemon/install.js +117 -30
- package/dist/lib/signals/adapters-catalog.d.ts +77 -0
- package/dist/lib/signals/adapters-catalog.js +194 -0
- package/dist/lib/signals/engine.d.ts +196 -0
- package/dist/lib/signals/engine.js +495 -0
- package/dist/lib/signals/failure-alert.d.ts +89 -0
- package/dist/lib/signals/failure-alert.js +175 -0
- package/dist/lib/signals/local-date.d.ts +3 -0
- package/dist/lib/signals/local-date.js +6 -0
- package/dist/lib/signals/projection.d.ts +42 -0
- package/dist/lib/signals/projection.js +67 -0
- package/dist/lib/signals/reply.d.ts +112 -0
- package/dist/lib/signals/reply.js +368 -0
- package/dist/lib/signals/run-lock.d.ts +36 -0
- package/dist/lib/signals/run-lock.js +148 -0
- package/dist/lib/signals/run-record.d.ts +24 -0
- package/dist/lib/signals/run-record.js +82 -0
- package/dist/lib/signals/sanitize.d.ts +105 -0
- package/dist/lib/signals/sanitize.js +439 -0
- package/dist/lib/signals/settings.d.ts +10 -0
- package/dist/lib/signals/settings.js +48 -0
- package/dist/lib/signals/steps/adapters.d.ts +14 -0
- package/dist/lib/signals/steps/adapters.js +156 -0
- package/dist/lib/signals/steps/entity-similarity.d.ts +10 -0
- package/dist/lib/signals/steps/entity-similarity.js +47 -0
- package/dist/lib/signals/steps/extract.d.ts +113 -0
- package/dist/lib/signals/steps/extract.js +765 -0
- package/dist/lib/signals/steps/garden.d.ts +24 -0
- package/dist/lib/signals/steps/garden.js +250 -0
- package/dist/lib/signals/steps/types.d.ts +112 -0
- package/dist/lib/signals/steps/types.js +4 -0
- package/dist/lib/signals/steps/upload.d.ts +43 -0
- package/dist/lib/signals/steps/upload.js +324 -0
- package/dist/lib/signals/write-guard.d.ts +63 -0
- package/dist/lib/signals/write-guard.js +287 -0
- package/dist/utils/resident-package-preload.js +16 -0
- package/package.json +9 -9
- package/dist/lib/bot/fleet-default-flag.d.ts +0 -31
- package/dist/lib/bot/fleet-default-flag.js +0 -127
|
@@ -3245,7 +3245,7 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
3245
3245
|
readonly subcommands: readonly [];
|
|
3246
3246
|
}, {
|
|
3247
3247
|
readonly name: "purge";
|
|
3248
|
-
readonly description: "
|
|
3248
|
+
readonly description: "Schedule permanent deletion of ONE retained (noncurrent) version of an exact vault key, for example a version that held data which must not live in HQ. The version is deleted 7 days later and can be cancelled until then with --cancel. Owner only; audited. Delete the file first if the version is current. Use --personal for your personal vault.";
|
|
3249
3249
|
readonly aliases: readonly [];
|
|
3250
3250
|
readonly hidden: false;
|
|
3251
3251
|
readonly helpOption: true;
|
|
@@ -3266,6 +3266,10 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
3266
3266
|
readonly flags: "--version-id <id>";
|
|
3267
3267
|
readonly description: "Exact version ID to purge (see `hq files versions`)";
|
|
3268
3268
|
readonly hidden: false;
|
|
3269
|
+
}, {
|
|
3270
|
+
readonly flags: "--cancel";
|
|
3271
|
+
readonly description: "Cancel a scheduled purge of this version instead of scheduling one";
|
|
3272
|
+
readonly hidden: false;
|
|
3269
3273
|
}, {
|
|
3270
3274
|
readonly flags: "-y, --yes";
|
|
3271
3275
|
readonly description: "Skip the confirmation prompt (for scripts)";
|
|
@@ -5482,6 +5486,67 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
5482
5486
|
readonly hidden: false;
|
|
5483
5487
|
}];
|
|
5484
5488
|
readonly subcommands: readonly [];
|
|
5489
|
+
}, {
|
|
5490
|
+
readonly name: "run";
|
|
5491
|
+
readonly description: "Run the local signals engine (garden, adapters, extract, garden, upload) for companies with capture on";
|
|
5492
|
+
readonly aliases: readonly [];
|
|
5493
|
+
readonly hidden: false;
|
|
5494
|
+
readonly helpOption: true;
|
|
5495
|
+
readonly helpCommand: false;
|
|
5496
|
+
readonly usage: "[options]";
|
|
5497
|
+
readonly helpText: readonly [];
|
|
5498
|
+
readonly arguments: readonly [];
|
|
5499
|
+
readonly options: readonly [{
|
|
5500
|
+
readonly flags: "--company <slug>";
|
|
5501
|
+
readonly description: "Run one company (default: every company listed in the companies manifest)";
|
|
5502
|
+
readonly hidden: false;
|
|
5503
|
+
}, {
|
|
5504
|
+
readonly flags: "--dry-run";
|
|
5505
|
+
readonly description: "Print what would run; run no mutating step and write nothing";
|
|
5506
|
+
readonly hidden: false;
|
|
5507
|
+
}, {
|
|
5508
|
+
readonly flags: "--step <step>";
|
|
5509
|
+
readonly description: "Run one step";
|
|
5510
|
+
readonly hidden: false;
|
|
5511
|
+
readonly choices: readonly ["garden", "extract", "adapters", "upload", "all"];
|
|
5512
|
+
readonly defaultValue: "all";
|
|
5513
|
+
}, {
|
|
5514
|
+
readonly flags: "--trigger <trigger>";
|
|
5515
|
+
readonly description: "What started the run";
|
|
5516
|
+
readonly hidden: false;
|
|
5517
|
+
readonly choices: readonly ["job", "chat", "manual", "brief"];
|
|
5518
|
+
readonly defaultValue: "manual";
|
|
5519
|
+
}, {
|
|
5520
|
+
readonly flags: "--force";
|
|
5521
|
+
readonly description: "Rerun a job trigger that already ran today";
|
|
5522
|
+
readonly hidden: false;
|
|
5523
|
+
}, {
|
|
5524
|
+
readonly flags: "--catch-up";
|
|
5525
|
+
readonly description: "Mark the run as a catch-up run (also HQ_SIGNALS_CATCH_UP=1)";
|
|
5526
|
+
readonly hidden: false;
|
|
5527
|
+
}, {
|
|
5528
|
+
readonly flags: "--max-turns <n>";
|
|
5529
|
+
readonly description: "Model turn cap for the extract step (default from core/settings/signals.yaml, else 40)";
|
|
5530
|
+
readonly hidden: false;
|
|
5531
|
+
}, {
|
|
5532
|
+
readonly flags: "--max-budget-usd <x>";
|
|
5533
|
+
readonly description: "Spend cap in USD for the extract step (default from core/settings/signals.yaml, else 2.00)";
|
|
5534
|
+
readonly hidden: false;
|
|
5535
|
+
}, {
|
|
5536
|
+
readonly flags: "--json";
|
|
5537
|
+
readonly description: "Print the run record as JSON";
|
|
5538
|
+
readonly hidden: false;
|
|
5539
|
+
}, {
|
|
5540
|
+
readonly flags: "--report-found";
|
|
5541
|
+
readonly description: "Print the owner's run reply only when the run found new signals; print nothing otherwise";
|
|
5542
|
+
readonly hidden: false;
|
|
5543
|
+
}, {
|
|
5544
|
+
readonly flags: "--hq-root <path>";
|
|
5545
|
+
readonly description: "HQ root (default: <runtime-path>)";
|
|
5546
|
+
readonly hidden: false;
|
|
5547
|
+
readonly defaultValue: "<runtime-path>";
|
|
5548
|
+
}];
|
|
5549
|
+
readonly subcommands: readonly [];
|
|
5485
5550
|
}];
|
|
5486
5551
|
}, {
|
|
5487
5552
|
readonly name: "integrations";
|
|
@@ -8277,7 +8342,7 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
8277
8342
|
readonly subcommands: readonly [];
|
|
8278
8343
|
}, {
|
|
8279
8344
|
readonly name: "provision";
|
|
8280
|
-
readonly description: "Provision a new Outpost (
|
|
8345
|
+
readonly description: "Provision a new Outpost (priced by size: small, medium, large or xlarge; requires --yes)";
|
|
8281
8346
|
readonly aliases: readonly ["create"];
|
|
8282
8347
|
readonly hidden: false;
|
|
8283
8348
|
readonly helpOption: true;
|
|
@@ -8286,6 +8351,10 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
8286
8351
|
readonly helpText: readonly [];
|
|
8287
8352
|
readonly arguments: readonly [];
|
|
8288
8353
|
readonly options: readonly [{
|
|
8354
|
+
readonly flags: "--size <size>";
|
|
8355
|
+
readonly description: "Outpost size: small | medium | large | xlarge. Without it, a terminal shows a menu with prices; the default is $100/month";
|
|
8356
|
+
readonly hidden: false;
|
|
8357
|
+
}, {
|
|
8289
8358
|
readonly flags: "--runtime <runtime>";
|
|
8290
8359
|
readonly description: "Agent runtime: claude | codex (default claude). Personal boxes only.";
|
|
8291
8360
|
readonly hidden: false;
|
|
@@ -8307,7 +8376,7 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
8307
8376
|
readonly hidden: false;
|
|
8308
8377
|
}, {
|
|
8309
8378
|
readonly flags: "--yes";
|
|
8310
|
-
readonly description: "Confirm the monthly charge (required to provision or create)";
|
|
8379
|
+
readonly description: "Confirm the monthly charge for the chosen size (required to provision or create)";
|
|
8311
8380
|
readonly hidden: false;
|
|
8312
8381
|
}, {
|
|
8313
8382
|
readonly flags: "--json";
|
|
@@ -18637,6 +18706,18 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
18637
18706
|
readonly arguments: readonly [];
|
|
18638
18707
|
readonly options: readonly [];
|
|
18639
18708
|
readonly subcommands: readonly [];
|
|
18709
|
+
}, {
|
|
18710
|
+
readonly name: "fleet-bots-update";
|
|
18711
|
+
readonly description: "Move each installed HQ Fleet bot to the current runtime release while it is idle, and restart it";
|
|
18712
|
+
readonly aliases: readonly [];
|
|
18713
|
+
readonly hidden: false;
|
|
18714
|
+
readonly helpOption: true;
|
|
18715
|
+
readonly helpCommand: false;
|
|
18716
|
+
readonly usage: "[options]";
|
|
18717
|
+
readonly helpText: readonly [];
|
|
18718
|
+
readonly arguments: readonly [];
|
|
18719
|
+
readonly options: readonly [];
|
|
18720
|
+
readonly subcommands: readonly [];
|
|
18640
18721
|
}, {
|
|
18641
18722
|
readonly name: "sync-core-reconcile";
|
|
18642
18723
|
readonly description: "Read each company's new-sync-engine switch and write this machine's engine homes and legacy off-switches";
|
|
@@ -19015,31 +19096,27 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
19015
19096
|
readonly defaultValue: readonly [];
|
|
19016
19097
|
}, {
|
|
19017
19098
|
readonly flags: "--runtime <runtime>";
|
|
19018
|
-
readonly description: "Model
|
|
19099
|
+
readonly description: "Model provider the bot answers with: claude|codex|grok (same as --provider; default claude)";
|
|
19019
19100
|
readonly hidden: false;
|
|
19020
19101
|
}, {
|
|
19021
19102
|
readonly flags: "--provider <provider>";
|
|
19022
|
-
readonly description: "HQ Fleet provider: claude|codex|grok (
|
|
19103
|
+
readonly description: "HQ Fleet provider: claude|codex|grok (default claude)";
|
|
19023
19104
|
readonly hidden: false;
|
|
19024
19105
|
}, {
|
|
19025
19106
|
readonly flags: "--hq-fleet-runtime";
|
|
19026
|
-
readonly description: "
|
|
19107
|
+
readonly description: "Accepted for compatibility; every new bot runs on the HQ Fleet Runtime";
|
|
19027
19108
|
readonly hidden: false;
|
|
19028
19109
|
}, {
|
|
19029
19110
|
readonly flags: "--legacy-runtime";
|
|
19030
|
-
readonly description: "
|
|
19111
|
+
readonly description: "No longer supported; new bots always run on the HQ Fleet Runtime";
|
|
19031
19112
|
readonly hidden: false;
|
|
19032
19113
|
}, {
|
|
19033
19114
|
readonly flags: "--model <model>";
|
|
19034
|
-
readonly description: "Model
|
|
19115
|
+
readonly description: "Model the bot answers with";
|
|
19035
19116
|
readonly hidden: false;
|
|
19036
19117
|
}, {
|
|
19037
|
-
readonly flags: "--
|
|
19038
|
-
readonly description: "
|
|
19039
|
-
readonly hidden: false;
|
|
19040
|
-
}, {
|
|
19041
|
-
readonly flags: "--no-auto-approve";
|
|
19042
|
-
readonly description: "Keep the runtime's permission gates (default: everything pre-approved; a headless bot cannot answer prompts)";
|
|
19118
|
+
readonly flags: "--auto-approve";
|
|
19119
|
+
readonly description: "Turn the runtime's command approval prompts off for every sender (default: prompts stay on; the owner's own turns are always allowed)";
|
|
19043
19120
|
readonly hidden: false;
|
|
19044
19121
|
}, {
|
|
19045
19122
|
readonly flags: "--worker <workerId>";
|
|
@@ -19062,13 +19139,9 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
19062
19139
|
readonly description: "Where the bot keeps its memory: synced (personal/workers/<name>/memory in HQ) or local (~/.hq/bots/<name>/memory, this computer only)";
|
|
19063
19140
|
readonly hidden: false;
|
|
19064
19141
|
readonly defaultValue: "synced";
|
|
19065
|
-
}, {
|
|
19066
|
-
readonly flags: "--lean";
|
|
19067
|
-
readonly description: "Claude bots: run each turn without this computer's plugins, MCP servers and HQ's session hooks (HQ's tool hooks still run), so replies take seconds";
|
|
19068
|
-
readonly hidden: false;
|
|
19069
19142
|
}, {
|
|
19070
19143
|
readonly flags: "--no-daemon";
|
|
19071
|
-
readonly description: "
|
|
19144
|
+
readonly description: "Accepted for compatibility; HQ Fleet bots run under their own background service";
|
|
19072
19145
|
readonly hidden: false;
|
|
19073
19146
|
}, {
|
|
19074
19147
|
readonly flags: "--no-start";
|
|
@@ -20430,6 +20503,10 @@ export declare const COMMAND_CATALOG: readonly [{
|
|
|
20430
20503
|
readonly flags: "-y, --yes";
|
|
20431
20504
|
readonly description: "Skip the typed-email confirmation prompt (still sends confirmEmail).";
|
|
20432
20505
|
readonly hidden: false;
|
|
20506
|
+
}, {
|
|
20507
|
+
readonly flags: "--handoff-shared-companies";
|
|
20508
|
+
readonly description: "Keep a company with real members and hand it to one, instead of refusing the reset.";
|
|
20509
|
+
readonly hidden: false;
|
|
20433
20510
|
}];
|
|
20434
20511
|
readonly subcommands: readonly [];
|
|
20435
20512
|
}, {
|
|
@@ -3914,7 +3914,7 @@ export const COMMAND_CATALOG = [
|
|
|
3914
3914
|
},
|
|
3915
3915
|
{
|
|
3916
3916
|
"name": "purge",
|
|
3917
|
-
"description": "
|
|
3917
|
+
"description": "Schedule permanent deletion of ONE retained (noncurrent) version of an exact vault key, for example a version that held data which must not live in HQ. The version is deleted 7 days later and can be cancelled until then with --cancel. Owner only; audited. Delete the file first if the version is current. Use --personal for your personal vault.",
|
|
3918
3918
|
"aliases": [],
|
|
3919
3919
|
"hidden": false,
|
|
3920
3920
|
"helpOption": true,
|
|
@@ -3940,6 +3940,11 @@ export const COMMAND_CATALOG = [
|
|
|
3940
3940
|
"description": "Exact version ID to purge (see `hq files versions`)",
|
|
3941
3941
|
"hidden": false
|
|
3942
3942
|
},
|
|
3943
|
+
{
|
|
3944
|
+
"flags": "--cancel",
|
|
3945
|
+
"description": "Cancel a scheduled purge of this version instead of scheduling one",
|
|
3946
|
+
"hidden": false
|
|
3947
|
+
},
|
|
3943
3948
|
{
|
|
3944
3949
|
"flags": "-y, --yes",
|
|
3945
3950
|
"description": "Skip the confirmation prompt (for scripts)",
|
|
@@ -6646,6 +6651,91 @@ export const COMMAND_CATALOG = [
|
|
|
6646
6651
|
}
|
|
6647
6652
|
],
|
|
6648
6653
|
"subcommands": []
|
|
6654
|
+
},
|
|
6655
|
+
{
|
|
6656
|
+
"name": "run",
|
|
6657
|
+
"description": "Run the local signals engine (garden, adapters, extract, garden, upload) for companies with capture on",
|
|
6658
|
+
"aliases": [],
|
|
6659
|
+
"hidden": false,
|
|
6660
|
+
"helpOption": true,
|
|
6661
|
+
"helpCommand": false,
|
|
6662
|
+
"usage": "[options]",
|
|
6663
|
+
"helpText": [],
|
|
6664
|
+
"arguments": [],
|
|
6665
|
+
"options": [
|
|
6666
|
+
{
|
|
6667
|
+
"flags": "--company <slug>",
|
|
6668
|
+
"description": "Run one company (default: every company listed in the companies manifest)",
|
|
6669
|
+
"hidden": false
|
|
6670
|
+
},
|
|
6671
|
+
{
|
|
6672
|
+
"flags": "--dry-run",
|
|
6673
|
+
"description": "Print what would run; run no mutating step and write nothing",
|
|
6674
|
+
"hidden": false
|
|
6675
|
+
},
|
|
6676
|
+
{
|
|
6677
|
+
"flags": "--step <step>",
|
|
6678
|
+
"description": "Run one step",
|
|
6679
|
+
"hidden": false,
|
|
6680
|
+
"choices": [
|
|
6681
|
+
"garden",
|
|
6682
|
+
"extract",
|
|
6683
|
+
"adapters",
|
|
6684
|
+
"upload",
|
|
6685
|
+
"all"
|
|
6686
|
+
],
|
|
6687
|
+
"defaultValue": "all"
|
|
6688
|
+
},
|
|
6689
|
+
{
|
|
6690
|
+
"flags": "--trigger <trigger>",
|
|
6691
|
+
"description": "What started the run",
|
|
6692
|
+
"hidden": false,
|
|
6693
|
+
"choices": [
|
|
6694
|
+
"job",
|
|
6695
|
+
"chat",
|
|
6696
|
+
"manual",
|
|
6697
|
+
"brief"
|
|
6698
|
+
],
|
|
6699
|
+
"defaultValue": "manual"
|
|
6700
|
+
},
|
|
6701
|
+
{
|
|
6702
|
+
"flags": "--force",
|
|
6703
|
+
"description": "Rerun a job trigger that already ran today",
|
|
6704
|
+
"hidden": false
|
|
6705
|
+
},
|
|
6706
|
+
{
|
|
6707
|
+
"flags": "--catch-up",
|
|
6708
|
+
"description": "Mark the run as a catch-up run (also HQ_SIGNALS_CATCH_UP=1)",
|
|
6709
|
+
"hidden": false
|
|
6710
|
+
},
|
|
6711
|
+
{
|
|
6712
|
+
"flags": "--max-turns <n>",
|
|
6713
|
+
"description": "Model turn cap for the extract step (default from core/settings/signals.yaml, else 40)",
|
|
6714
|
+
"hidden": false
|
|
6715
|
+
},
|
|
6716
|
+
{
|
|
6717
|
+
"flags": "--max-budget-usd <x>",
|
|
6718
|
+
"description": "Spend cap in USD for the extract step (default from core/settings/signals.yaml, else 2.00)",
|
|
6719
|
+
"hidden": false
|
|
6720
|
+
},
|
|
6721
|
+
{
|
|
6722
|
+
"flags": "--json",
|
|
6723
|
+
"description": "Print the run record as JSON",
|
|
6724
|
+
"hidden": false
|
|
6725
|
+
},
|
|
6726
|
+
{
|
|
6727
|
+
"flags": "--report-found",
|
|
6728
|
+
"description": "Print the owner's run reply only when the run found new signals; print nothing otherwise",
|
|
6729
|
+
"hidden": false
|
|
6730
|
+
},
|
|
6731
|
+
{
|
|
6732
|
+
"flags": "--hq-root <path>",
|
|
6733
|
+
"description": "HQ root (default: <runtime-path>)",
|
|
6734
|
+
"hidden": false,
|
|
6735
|
+
"defaultValue": "<runtime-path>"
|
|
6736
|
+
}
|
|
6737
|
+
],
|
|
6738
|
+
"subcommands": []
|
|
6649
6739
|
}
|
|
6650
6740
|
]
|
|
6651
6741
|
},
|
|
@@ -10092,7 +10182,7 @@ export const COMMAND_CATALOG = [
|
|
|
10092
10182
|
},
|
|
10093
10183
|
{
|
|
10094
10184
|
"name": "provision",
|
|
10095
|
-
"description": "Provision a new Outpost (
|
|
10185
|
+
"description": "Provision a new Outpost (priced by size: small, medium, large or xlarge; requires --yes)",
|
|
10096
10186
|
"aliases": [
|
|
10097
10187
|
"create"
|
|
10098
10188
|
],
|
|
@@ -10103,6 +10193,11 @@ export const COMMAND_CATALOG = [
|
|
|
10103
10193
|
"helpText": [],
|
|
10104
10194
|
"arguments": [],
|
|
10105
10195
|
"options": [
|
|
10196
|
+
{
|
|
10197
|
+
"flags": "--size <size>",
|
|
10198
|
+
"description": "Outpost size: small | medium | large | xlarge. Without it, a terminal shows a menu with prices; the default is $100/month",
|
|
10199
|
+
"hidden": false
|
|
10200
|
+
},
|
|
10106
10201
|
{
|
|
10107
10202
|
"flags": "--runtime <runtime>",
|
|
10108
10203
|
"description": "Agent runtime: claude | codex (default claude). Personal boxes only.",
|
|
@@ -10130,7 +10225,7 @@ export const COMMAND_CATALOG = [
|
|
|
10130
10225
|
},
|
|
10131
10226
|
{
|
|
10132
10227
|
"flags": "--yes",
|
|
10133
|
-
"description": "Confirm the monthly charge (required to provision or create)",
|
|
10228
|
+
"description": "Confirm the monthly charge for the chosen size (required to provision or create)",
|
|
10134
10229
|
"hidden": false
|
|
10135
10230
|
},
|
|
10136
10231
|
{
|
|
@@ -22712,6 +22807,19 @@ export const COMMAND_CATALOG = [
|
|
|
22712
22807
|
"options": [],
|
|
22713
22808
|
"subcommands": []
|
|
22714
22809
|
},
|
|
22810
|
+
{
|
|
22811
|
+
"name": "fleet-bots-update",
|
|
22812
|
+
"description": "Move each installed HQ Fleet bot to the current runtime release while it is idle, and restart it",
|
|
22813
|
+
"aliases": [],
|
|
22814
|
+
"hidden": false,
|
|
22815
|
+
"helpOption": true,
|
|
22816
|
+
"helpCommand": false,
|
|
22817
|
+
"usage": "[options]",
|
|
22818
|
+
"helpText": [],
|
|
22819
|
+
"arguments": [],
|
|
22820
|
+
"options": [],
|
|
22821
|
+
"subcommands": []
|
|
22822
|
+
},
|
|
22715
22823
|
{
|
|
22716
22824
|
"name": "sync-core-reconcile",
|
|
22717
22825
|
"description": "Read each company's new-sync-engine switch and write this machine's engine homes and legacy off-switches",
|
|
@@ -23171,37 +23279,32 @@ export const COMMAND_CATALOG = [
|
|
|
23171
23279
|
},
|
|
23172
23280
|
{
|
|
23173
23281
|
"flags": "--runtime <runtime>",
|
|
23174
|
-
"description": "Model
|
|
23282
|
+
"description": "Model provider the bot answers with: claude|codex|grok (same as --provider; default claude)",
|
|
23175
23283
|
"hidden": false
|
|
23176
23284
|
},
|
|
23177
23285
|
{
|
|
23178
23286
|
"flags": "--provider <provider>",
|
|
23179
|
-
"description": "HQ Fleet provider: claude|codex|grok (
|
|
23287
|
+
"description": "HQ Fleet provider: claude|codex|grok (default claude)",
|
|
23180
23288
|
"hidden": false
|
|
23181
23289
|
},
|
|
23182
23290
|
{
|
|
23183
23291
|
"flags": "--hq-fleet-runtime",
|
|
23184
|
-
"description": "
|
|
23292
|
+
"description": "Accepted for compatibility; every new bot runs on the HQ Fleet Runtime",
|
|
23185
23293
|
"hidden": false
|
|
23186
23294
|
},
|
|
23187
23295
|
{
|
|
23188
23296
|
"flags": "--legacy-runtime",
|
|
23189
|
-
"description": "
|
|
23297
|
+
"description": "No longer supported; new bots always run on the HQ Fleet Runtime",
|
|
23190
23298
|
"hidden": false
|
|
23191
23299
|
},
|
|
23192
23300
|
{
|
|
23193
23301
|
"flags": "--model <model>",
|
|
23194
|
-
"description": "Model
|
|
23302
|
+
"description": "Model the bot answers with",
|
|
23195
23303
|
"hidden": false
|
|
23196
23304
|
},
|
|
23197
23305
|
{
|
|
23198
|
-
"flags": "--
|
|
23199
|
-
"description": "
|
|
23200
|
-
"hidden": false
|
|
23201
|
-
},
|
|
23202
|
-
{
|
|
23203
|
-
"flags": "--no-auto-approve",
|
|
23204
|
-
"description": "Keep the runtime's permission gates (default: everything pre-approved; a headless bot cannot answer prompts)",
|
|
23306
|
+
"flags": "--auto-approve",
|
|
23307
|
+
"description": "Turn the runtime's command approval prompts off for every sender (default: prompts stay on; the owner's own turns are always allowed)",
|
|
23205
23308
|
"hidden": false
|
|
23206
23309
|
},
|
|
23207
23310
|
{
|
|
@@ -23230,14 +23333,9 @@ export const COMMAND_CATALOG = [
|
|
|
23230
23333
|
"hidden": false,
|
|
23231
23334
|
"defaultValue": "synced"
|
|
23232
23335
|
},
|
|
23233
|
-
{
|
|
23234
|
-
"flags": "--lean",
|
|
23235
|
-
"description": "Claude bots: run each turn without this computer's plugins, MCP servers and HQ's session hooks (HQ's tool hooks still run), so replies take seconds",
|
|
23236
|
-
"hidden": false
|
|
23237
|
-
},
|
|
23238
23336
|
{
|
|
23239
23337
|
"flags": "--no-daemon",
|
|
23240
|
-
"description": "
|
|
23338
|
+
"description": "Accepted for compatibility; HQ Fleet bots run under their own background service",
|
|
23241
23339
|
"hidden": false
|
|
23242
23340
|
},
|
|
23243
23341
|
{
|
|
@@ -24913,6 +25011,11 @@ export const COMMAND_CATALOG = [
|
|
|
24913
25011
|
"flags": "-y, --yes",
|
|
24914
25012
|
"description": "Skip the typed-email confirmation prompt (still sends confirmEmail).",
|
|
24915
25013
|
"hidden": false
|
|
25014
|
+
},
|
|
25015
|
+
{
|
|
25016
|
+
"flags": "--handoff-shared-companies",
|
|
25017
|
+
"description": "Keep a company with real members and hand it to one, instead of refusing the reset.",
|
|
25018
|
+
"hidden": false
|
|
24916
25019
|
}
|
|
24917
25020
|
],
|
|
24918
25021
|
"subcommands": []
|
|
@@ -10,13 +10,16 @@
|
|
|
10
10
|
* The schedule lives with the bot: its jobs sit in the bot's own folder
|
|
11
11
|
* (lib/bot/local-jobs.ts) and the bot's inbox loop fires them while it runs
|
|
12
12
|
* (see lib/bot/job-run.ts). Nothing here writes a crontab, a launchd plist, or
|
|
13
|
-
* a systemd unit — by rule.
|
|
14
|
-
*
|
|
13
|
+
* a systemd unit — by rule. A schedule is stored as a six-field
|
|
14
|
+
* `cron(m h dom mon dow year)` string (Sunday = 1, `?` in one day field), the
|
|
15
|
+
* same string format hosted agent jobs use, and lib/bot/local-jobs.ts reads it
|
|
16
|
+
* back when it checks what is due.
|
|
15
17
|
*/
|
|
16
18
|
import type { Command } from "commander";
|
|
17
19
|
import { type LocalJobsApi } from "../lib/bot/local-jobs.js";
|
|
18
20
|
import { type BotJobRecord, type CreateJobInput } from "../lib/bot/api.js";
|
|
19
21
|
import { type BotConfig, type BotKind } from "../lib/bot/config.js";
|
|
22
|
+
import { type FleetCronJob, type FleetCronOps } from "../lib/bot/fleet-cron.js";
|
|
20
23
|
/** Mirrors hq-pro-agents `MIN_RECURRING_INTERVAL_SECONDS`. */
|
|
21
24
|
export declare const MIN_RECURRING_INTERVAL_SECONDS: number;
|
|
22
25
|
/** Mirrors hq-pro-agents `DEFAULT_MAX_ACTIVE_JOBS_PER_AGENT`. */
|
|
@@ -29,9 +32,11 @@ export declare class BotJobsError extends Error {
|
|
|
29
32
|
/** The machine's own IANA zone, so "9am" means 9am where the owner lives. */
|
|
30
33
|
export declare function machineTimezone(): string;
|
|
31
34
|
/**
|
|
32
|
-
* Standard 5-field cron → the
|
|
35
|
+
* Standard 5-field cron → the six-field `cron(...)` string a job is stored as.
|
|
33
36
|
*
|
|
34
|
-
*
|
|
37
|
+
* The stored form (the six-field cron syntax hosted agent jobs also use, so
|
|
38
|
+
* local and hosted jobs share one format; the function keeps its historical
|
|
39
|
+
* name) has SIX fields (a trailing year), numbers its days of week
|
|
35
40
|
* 1–7 with SUNDAY = 1 (standard cron uses 0–6 with SUNDAY = 0), and refuses
|
|
36
41
|
* `*` in BOTH the day-of-month and day-of-week fields — exactly one must be
|
|
37
42
|
* `?`. An expression that is already `cron(...)` or `rate(...)` is passed
|
|
@@ -45,7 +50,7 @@ export declare function toEventBridgeCron(expr: string): string;
|
|
|
45
50
|
* the server's own reason instead of a round-trip and a raw 400.
|
|
46
51
|
*/
|
|
47
52
|
export declare function recurringIntervalSeconds(expr: string): number | null;
|
|
48
|
-
/** Refuse a schedule
|
|
53
|
+
/** Refuse a schedule that fires more often than the recurring floor (the same floor hosted agent jobs use). */
|
|
49
54
|
export declare function assertScheduleWithinFloor(expr: string): void;
|
|
50
55
|
export interface ParsedSchedule {
|
|
51
56
|
/** Standard 5-field cron, as the HQ helper emits it. */
|
|
@@ -58,7 +63,7 @@ export interface ParsedSchedule {
|
|
|
58
63
|
export declare function parseScheduleText(text: string, opts: {
|
|
59
64
|
timezone: string;
|
|
60
65
|
}): ParsedSchedule;
|
|
61
|
-
/** The create body
|
|
66
|
+
/** The create body for a new job, with the schedule limits enforced first. */
|
|
62
67
|
export declare function buildCreateJobBody(input: {
|
|
63
68
|
prompt: string;
|
|
64
69
|
cron: string;
|
|
@@ -66,27 +71,24 @@ export declare function buildCreateJobBody(input: {
|
|
|
66
71
|
context?: Record<string, unknown>;
|
|
67
72
|
quiet?: boolean;
|
|
68
73
|
}): CreateJobInput;
|
|
74
|
+
export declare function fromEventBridgeCron(expr: string): string;
|
|
75
|
+
export declare function fleetJobRecord(job: FleetCronJob, timezone: string): BotJobRecord;
|
|
76
|
+
export declare function fleetJobsClient(config: Pick<BotConfig, "ownerUid" | "hqRoot">, ops: FleetCronOps, timezone: string): Required<LocalJobsApi>;
|
|
69
77
|
/** A schedule in plain words, falling back to the raw expression. */
|
|
70
78
|
export declare function describeSchedule(job: BotJobRecord): string;
|
|
71
79
|
/** A small humaniser for the shapes `--every` actually produces. */
|
|
72
80
|
export declare function cronInWords(expr: string): string | null;
|
|
81
|
+
export declare function utcMinute(iso: string): string;
|
|
73
82
|
/** "never run yet" / "succeeded 2026-09-15 09:00 UTC". */
|
|
74
83
|
export declare function describeLastRun(job: BotJobRecord): string;
|
|
75
84
|
export declare function formatJobsList(botName: string, jobs: BotJobRecord[], showQuietOption?: boolean): string;
|
|
76
85
|
/**
|
|
77
|
-
* Turn a jobs
|
|
86
|
+
* Turn a jobs failure into one plain line.
|
|
78
87
|
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
* refusal must read as "not available yet for this kind of bot", not as a raw 403.
|
|
84
|
-
* Once the server accepts personal bots the refusal simply stops happening — no
|
|
85
|
-
* client change needed.
|
|
86
|
-
*
|
|
87
|
-
* ONLY that exact code is rewritten. Every other 403, and every 404, keeps its
|
|
88
|
-
* real message: masking them would hide a genuinely missing job or a different
|
|
89
|
-
* permission problem behind copy about the wrong thing.
|
|
88
|
+
* `hq bot jobs` answers from the bot's own jobs.json (localJobsClient), for
|
|
89
|
+
* personal and company bots alike, so there is no cloud refusal to explain
|
|
90
|
+
* here. Only the local client's own errors (quota, unknown job, validation)
|
|
91
|
+
* get rewritten; anything else keeps its real message.
|
|
90
92
|
*/
|
|
91
93
|
export declare function jobsErrorMessage(err: unknown, ctx: {
|
|
92
94
|
botName: string;
|
|
@@ -106,6 +108,7 @@ export interface BotJobsDeps {
|
|
|
106
108
|
out?: (line: string) => void;
|
|
107
109
|
/** Test seam for the default-off quiet-job rollout gate. */
|
|
108
110
|
quietOptionEnabled?: () => boolean | Promise<boolean>;
|
|
111
|
+
fleetCron?: (agentUid: string) => FleetCronOps;
|
|
109
112
|
}
|
|
110
113
|
export interface BotJobsOptions {
|
|
111
114
|
add?: string;
|