@indigoai-us/hq-cli 5.345.197 → 5.345.199

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 (118) hide show
  1. package/CHANGELOG.md +111 -0
  2. package/dist/command-catalog.generated.d.ts +393 -12
  3. package/dist/command-catalog.generated.js +482 -12
  4. package/dist/commands/bot-events.d.ts +19 -0
  5. package/dist/commands/bot-events.js +46 -0
  6. package/dist/commands/bot-jobs.d.ts +2 -0
  7. package/dist/commands/bot-jobs.js +43 -2
  8. package/dist/commands/bot.d.ts +5 -0
  9. package/dist/commands/bot.js +33 -1
  10. package/dist/commands/core-resolve-company-native.d.ts +2 -1
  11. package/dist/commands/core-resolve-company-native.js +2 -24
  12. package/dist/commands/deploy-domains.d.ts +14 -2
  13. package/dist/commands/deploy-domains.js +726 -42
  14. package/dist/commands/integrations-connect.js +41 -3
  15. package/dist/commands/lanes-report.d.ts +2 -1
  16. package/dist/commands/lanes-report.js +44 -1
  17. package/dist/commands/lanes.d.ts +9 -0
  18. package/dist/commands/lanes.js +95 -9
  19. package/dist/commands/meetings.js +1 -21
  20. package/dist/commands/secrets.js +27 -6
  21. package/dist/commands/signals-run.d.ts +2 -0
  22. package/dist/commands/signals-run.js +6 -1
  23. package/dist/lanes-drain-hook.js +9 -0
  24. package/dist/lib/bot/api.d.ts +5 -0
  25. package/dist/lib/bot/claude-login.d.ts +31 -0
  26. package/dist/lib/bot/claude-login.js +160 -0
  27. package/dist/lib/bot/company-bind.d.ts +34 -0
  28. package/dist/lib/bot/company-bind.js +112 -0
  29. package/dist/lib/bot/config.js +3 -1
  30. package/dist/lib/bot/events.d.ts +18 -0
  31. package/dist/lib/bot/events.js +160 -0
  32. package/dist/lib/bot/executive-settings.d.ts +10 -0
  33. package/dist/lib/bot/executive-settings.js +43 -0
  34. package/dist/lib/bot/fleet-cron.js +4 -0
  35. package/dist/lib/bot/fleet-local.d.ts +12 -0
  36. package/dist/lib/bot/fleet-local.js +50 -20
  37. package/dist/lib/bot/job-run.js +1 -1
  38. package/dist/lib/bot/jobs/hot-signal-sync.d.ts +8 -0
  39. package/dist/lib/bot/jobs/hot-signal-sync.js +2 -0
  40. package/dist/lib/bot/jobs/meeting-detect.d.ts +28 -0
  41. package/dist/lib/bot/jobs/meeting-detect.js +176 -0
  42. package/dist/lib/bot/jobs/meeting-rider.d.ts +53 -0
  43. package/dist/lib/bot/jobs/meeting-rider.js +284 -0
  44. package/dist/lib/bot/jobs/signal-to-lane.d.ts +32 -0
  45. package/dist/lib/bot/jobs/signal-to-lane.js +169 -0
  46. package/dist/lib/bot/local-jobs.d.ts +15 -2
  47. package/dist/lib/bot/local-jobs.js +24 -7
  48. package/dist/lib/bot/run.d.ts +7 -49
  49. package/dist/lib/bot/run.js +135 -12
  50. package/dist/lib/bot/session.d.ts +19 -1
  51. package/dist/lib/bot/session.js +75 -28
  52. package/dist/lib/bot/status.d.ts +21 -0
  53. package/dist/lib/core-utils/manifest-slugs.d.ts +2 -0
  54. package/dist/lib/core-utils/manifest-slugs.js +26 -0
  55. package/dist/lib/doctor/checks/bots.d.ts +6 -0
  56. package/dist/lib/doctor/checks/bots.js +47 -1
  57. package/dist/lib/hot-channels/adapters/meetings.d.ts +1 -0
  58. package/dist/lib/hot-channels/adapters/meetings.js +3 -1
  59. package/dist/lib/hot-channels/meeting-source-ref.d.ts +3 -0
  60. package/dist/lib/hot-channels/meeting-source-ref.js +7 -0
  61. package/dist/lib/hot-channels/schedule.js +2 -2
  62. package/dist/lib/hot-channels/signals-pass.d.ts +9 -32
  63. package/dist/lib/hot-channels/signals-pass.js +51 -17
  64. package/dist/lib/lanes/admission.d.ts +2 -0
  65. package/dist/lib/lanes/admission.js +4 -0
  66. package/dist/lib/lanes/approval-gate.js +4 -1
  67. package/dist/lib/lanes/links.d.ts +8 -1
  68. package/dist/lib/lanes/links.js +84 -3
  69. package/dist/lib/lanes/outcome.d.ts +154 -0
  70. package/dist/lib/lanes/outcome.js +151 -0
  71. package/dist/lib/lanes/reconcile.js +1 -0
  72. package/dist/lib/lanes/signal-brief-template.d.ts +7 -0
  73. package/dist/lib/lanes/signal-brief-template.js +40 -0
  74. package/dist/lib/lanes/signal-lane.d.ts +24 -0
  75. package/dist/lib/lanes/signal-lane.js +99 -0
  76. package/dist/lib/lanes/source-report.d.ts +37 -0
  77. package/dist/lib/lanes/source-report.js +66 -0
  78. package/dist/lib/lanes/spawn.d.ts +6 -0
  79. package/dist/lib/lanes/spawn.js +21 -0
  80. package/dist/lib/lanes/store.d.ts +3 -0
  81. package/dist/lib/lanes/store.js +64 -0
  82. package/dist/lib/lanes/story-ledger.d.ts +3 -0
  83. package/dist/lib/lanes/story-ledger.js +1 -0
  84. package/dist/lib/lanes/types.d.ts +137 -0
  85. package/dist/lib/lanes/types.js +17 -2
  86. package/dist/lib/lanes/watcher.js +4 -0
  87. package/dist/lib/live-meetings.d.ts +19 -0
  88. package/dist/lib/live-meetings.js +23 -0
  89. package/dist/lib/mesh/live/daemon/doctor.js +6 -7
  90. package/dist/lib/mesh/live/spool.d.ts +8 -0
  91. package/dist/lib/mesh/live/spool.js +59 -40
  92. package/dist/lib/plan-limit-nag.d.ts +30 -4
  93. package/dist/lib/plan-limit-nag.js +68 -17
  94. package/dist/lib/signals/engine.d.ts +4 -0
  95. package/dist/lib/signals/engine.js +25 -5
  96. package/dist/lib/signals/incremental.d.ts +42 -0
  97. package/dist/lib/signals/incremental.js +191 -0
  98. package/dist/lib/signals/prior-signals.d.ts +11 -0
  99. package/dist/lib/signals/prior-signals.js +44 -0
  100. package/dist/lib/signals/reply.js +6 -1
  101. package/dist/lib/signals/settings.d.ts +5 -0
  102. package/dist/lib/signals/settings.js +17 -0
  103. package/dist/lib/signals/steps/extract.d.ts +30 -2
  104. package/dist/lib/signals/steps/extract.js +153 -11
  105. package/dist/lib/signals/steps/types.d.ts +1 -0
  106. package/dist/lib/signals/write-guard.js +7 -0
  107. package/dist/secrets-env-action.d.ts +70 -0
  108. package/dist/secrets-env-action.js +220 -2
  109. package/dist/utils/cognito-callback-port.d.ts +15 -0
  110. package/dist/utils/cognito-callback-port.js +51 -0
  111. package/dist/utils/cognito-config.js +2 -3
  112. package/dist/utils/cognito-session.d.ts +7 -6
  113. package/dist/utils/cognito-session.js +14 -14
  114. package/dist/utils/interactive-caller.d.ts +15 -0
  115. package/dist/utils/interactive-caller.js +70 -0
  116. package/dist/utils/login-browser.js +3 -1
  117. package/dist/utils/resident-package-preload.js +4 -0
  118. package/package.json +9 -7
package/CHANGELOG.md CHANGED
@@ -2,6 +2,117 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [5.345.199] — 2026-11-04
6
+ - `hq bot status <name>` shows the bot's last reported failure: when, the
7
+ failure class, the plain-language cause and fix the owner was sent, the HQ
8
+ report id, and whether the report was uploaded and the owner DM sent. The
9
+ JSON output carries it as `status.lastFailure`. HQ Fleet Runtime bots write
10
+ it when a turn ends in the canned away line.
11
+ - `hq doctor` checks that a Claude bot on the HQ Fleet Runtime can read a
12
+ Claude Code login the way the runtime reads it (ANTHROPIC_TOKEN,
13
+ CLAUDE_CODE_OAUTH_TOKEN, ANTHROPIC_API_KEY, the HQ Fleet login file,
14
+ ~/.claude/.credentials.json, then the macOS Keychain item "Claude
15
+ Code-credentials") and fails with the sources it checked and the fix
16
+ (`claude /login`, then `hq bot restart <name>`). It also fails on a bot's
17
+ last reported failure until a later turn works.
18
+ - `hq bot create` with the Claude provider refuses, before creating any
19
+ identity, when no Claude Code login is readable on this computer, naming
20
+ the sources it checked and the fix.
21
+ - The HQ Fleet profile's bootstrap marker records the hq-cli version that
22
+ installed it, so a bot's failure reports name it.
23
+ - `hq bot create` and `hq bot update` now install HQ Fleet Local 0.4.24 on hq-fleet-runtime d257fdd1, the release that uploads failure reports and DMs the owner.
24
+ - Local CLI bots can run jobs when an event arrives with `hq bot jobs --on` and payload filters. Add `hq bot events emit` and `tail`, durable event queues with journal rotation, and a registry for built-in event handlers that run without a model turn.
25
+ - Lane envelopes can include a structured outcome with gathered facts and next steps. Process and subagent lanes retain it, and `hq lanes status <lane-id> --json` exposes it.
26
+ - The Executive can ride an attended meeting in-process, extract signals every 20 seconds, resume after a bot restart, and emit one meeting-ended event after three terminal polls. The rider respects the desktop opt-out setting.
27
+ - The Executive detects attended live meetings every minute while the desktop is closed, using the same meeting rider setting. Bot status now shows the Executive selection, rider preference, and latest detection source and time.
28
+ - Create an Executive lane directly from an action-item signal with `hq lanes create --company <slug> --signal <id>`. Repeating the command returns the existing lane. Generated briefs include your standing rules, and workers report through your conductor's link.
29
+ - Browser sign-in now refuses a callback port that is not registered with
30
+ Cognito (8765, 3000, 53682). A stray `HQ_COGNITO_CALLBACK_PORT` such as
31
+ 57726 opened a sign-in tab that failed with `redirect_mismatch`; the CLI now
32
+ uses 8765 instead and prints a warning on stderr.
33
+ - Background `hq` processes no longer open a browser sign-in tab on their own.
34
+ When a token refresh failed, any caller (daemon, lane, bot, monitor,
35
+ `hq mcp serve`, the sync runner, or a launchd task) fell back to a browser
36
+ sign-in that nobody had started. The implicit sign-in now runs only when
37
+ stdin and stdout are terminals and none of those markers is present; other
38
+ callers get an error that says to run `hq login`. `hq login` is unchanged.
39
+ - The plan-limit warning now says which account it is about ("your personal
40
+ account" or "the <slug> company"), shows storage in GB instead of raw bytes,
41
+ and no longer claims that new files and new secrets are paused. After
42
+ `hq dm --attach` it used to print "storage 47012700666 of 10737418240. New
43
+ files and new secrets are paused." right after the uploads had succeeded.
44
+ - `hq mesh session status` and `hq mesh daemon doctor` no longer crash when a local work-mesh queue file (usually `dead-letter.jsonl`) is larger than 512 MB. Queue counts are now read line by line.
45
+ - The Morning signals job now carries prior signals from the same source into extraction, refreshes longer final-pass bodies in place, and reports new, updated and skipped counts. Live meeting signal IDs and index rows remain stable through the final pass.
46
+ - `hq signals run --company <slug> --source meeting:<id> --incremental` extracts signals while a meeting transcript grows. Landed documents use `<channel>:<file>`. Each source keeps a cursor and prior signal IDs, so unchanged content costs no model turn. Incremental runs default to 12 turns and $0.40, preserve meeting signal references across transcript revisions, and retain signal events for retry.
47
+ - The personal Executive now opens conductor lanes from newly written action-item signals, with one event job per served company and deferred retries when no conductor is linked.
48
+ - `hq lanes report --company <slug> --source <ref>` reports source-linked lane outcomes, pending decisions, progress, and remaining work in text or JSON. Owner wording can be customized in `personal/settings/executive/report.md`.
49
+
50
+ ## [5.345.198] — 2026-11-04
51
+ - A personal bot that locked itself to its HQ's only company no longer resumes old conversations under that lock after the HQ gains a second company, loses its only company, or switches to a different one. On restart it archives those conversations and starts fresh, as it already did when a bot's company settings changed. A company bot whose bot.json lists "personal" as well as its company now starts normally after this upgrade, including with unfinished work, instead of stopping with "could not isolate previous company conversations". A personal bot no longer treats an extra top-level manifest key such as `version:` or `deployments:` as a company, and it reads a manifest saved with a UTF-8 byte order mark.
52
+ - A local bot no longer asks "Which company is this for?" in every channel when its HQ has only one company. A personal bot (including one created before bot kinds existed) with no company in bot.json now locks its sessions to the HQ's only company, scheduled jobs included. A bot with two or more real companies stays unbound and does not guess. A "personal" entry in a company bot's membership list no longer counts as a second company.
53
+ - `hq deploy domains search` prints whether each name is available, taken, not available because it is already delegated, premium, or unsupported, plus the registrar first-year and renewal prices. When the server is in test mode it prints "Test mode: sandbox prices. Nothing real is registered or charged." Taken and delegated names are not offered for purchase.
54
+ - `hq deploy domains buy` takes `--use app:<app id>`, `base`, or `hold`. The confirmation shows the registrar first-year price, the renewal, the hosting tier, the 60-day transfer lock, and that purchases are final. It sends that use and the consent record. It buys only when the quote has a US dollar first-year price that matches `--price`. A retry with `--idempotency-key` still sends that order when search says the name is missing or taken.
55
+ - `hq deploy domains owned` lists purchased domains. `show` prints one domain with its nameservers, whether the registrar nameservers are set, what it is attached to, and its events. `renew cancel` and `renew resume` turn automatic renewal off and back on.
56
+ - `hq deploy domains records list` prints each record id. `add`, `set`, and `delete` manage DNS records on a purchased domain and mark the records HQ has locked.
57
+ - Require explicit confirmation before changing domain auto-renewal, disclose renewal markup, and show purchase notices before --yes submissions.
58
+ - `hq secrets exec`, `hq secrets env` and `hq secrets get --reveal` work inside
59
+ a company Outpost job (a delegated `HQ_MACHINE_SESSION_FILE` session). They
60
+ used to fail with "Company workload principal is unsupported on this route"
61
+ because they read through the batch route, which hq-pro refuses to a company
62
+ Outpost. Under such a session each requested secret is now read with
63
+ `GET /secrets/{companyUid}/name/{name}`, the company comes from the session
64
+ (no `--company` needed; a different company is refused), no telemetry event
65
+ is sent, and nothing is cached. The Outpost still reads only secrets shared
66
+ with its `out_…` principal (`hq secrets --company <co> share NAME --with
67
+ out_…`). People, API keys and agents keep the batch route.
68
+ - Company Outpost jobs cannot read script-locked secrets. Under an Outpost
69
+ session the secrets commands now say so instead of "Reveal is disabled".
70
+ - Refuse CLI release tags without a fresh, commit-bound local check that all four pinned HQ Fleet Local files are published. `pnpm release:tag` runs the authenticated preflight before pushing a tag; CI needs no new credential.
71
+ - `hq bot restart`, `hq bot restore` and `hq bot create` now say why the HQ Fleet
72
+ Runtime download is unavailable when a machine has no GitHub token: HQ has not
73
+ published that runtime release yet, or the HQ sign-in on the machine could not
74
+ be used. Before, both cases showed the same "Sign in with `hq login`" error
75
+ even for a signed-in customer.
76
+ - `hq-hook`: each `~/.hq/logs/hook-engine.jsonl` line is now written to the file in one piece. Hooks that ran at the same time could mix their lines together, because a line went to the file one JSON token at a time. A test runs eight writers at once and checks every line reads back as whole JSON.
77
+ - macOS hook package notarization now authenticates with an App Store Connect
78
+ API key (`notarytool --key/--key-id/--issuer`), as the desktop app release
79
+ does, instead of an Apple ID and app-specific password. The signing script
80
+ writes the `.p8` key to an owner-only file in the runner temp directory and
81
+ removes it on exit, and it fails before signing with an error naming
82
+ `APPLE_API_KEY_ID`, `APPLE_API_ISSUER_ID` and `APPLE_API_PRIVATE_KEY` when any
83
+ of them is empty. A rejected submission now prints the notary log. The release
84
+ workflow passes the three API key secrets and no longer passes `APPLE_ID` or
85
+ `APPLE_PASSWORD`.
86
+ - macOS hook package signing now adds its temporary keychain to the user
87
+ keychain search list before `codesign`, as the desktop app release does, and
88
+ restores the saved list on exit. Without it `codesign` reported "no identity
89
+ found" even with a valid identity in the keychain. The script also checks the
90
+ keychain before signing and fails with a clear error naming
91
+ `APPLE_SIGNING_IDENTITY` when no valid identity matches it, printing only the
92
+ identity count. Darwin packages still need the `APPLE_CERTIFICATE` secret re-set
93
+ to the current Developer ID Application certificate before they can sign.
94
+ - `hq-hook`: the Linux package check no longer fails a good binary when the
95
+ docker client writes a notice to stderr; only hq-hook's own stderr inside
96
+ the Amazon Linux 2023 container counts. The image is pinned by digest and
97
+ its pull is retried up to three times with backoff.
98
+ - `hq-hook`: the Linux x64 and arm64 hook packages now link against glibc
99
+ 2.28 instead of the build runner's 2.39, so they run on Amazon Linux 2023,
100
+ Debian 11 and Ubuntu 20.04 without the loader writing "weak version
101
+ 'GLIBC_2.39' not found" to stderr on every call. The package build now
102
+ fails if a Linux binary references a newer glibc version or writes to
103
+ stderr on Amazon Linux 2023.
104
+ - `hq integrations connect google` and `hq integrations reconnect google --connect`
105
+ now send you to the HQ console Integrations page, where Google Workspace signs
106
+ in. Before, they posted a name no catalog entry matched and ended with
107
+ "mcpUrl is required" and no link. Connecting any other name the catalog cannot
108
+ resolve now says so and points at `hq integrations catalog` and `--mcp-url`.
109
+ - `hq signals run` no longer fails the extract step with `worklist failed:
110
+ spawnSync bash ETIMEDOUT` on a company with a large meetings backlog. The
111
+ listing call's budget now grows with the item cap (60 seconds plus 10 seconds
112
+ per item, 260 seconds at the default cap of 20) instead of a flat 60 seconds,
113
+ because every item without an audience in its frontmatter costs one `hq files
114
+ acl` lookup over the network.
115
+
5
116
  ## [5.345.197] — 2026-11-03
6
117
  - `hq-hook`: the `block-credential-file-read` port follows the round-7 bash
7
118
  guard (hq-core-staging #1770) and its pin moves to it. A git or npm `://`
@@ -5545,6 +5545,14 @@ export declare const COMMAND_CATALOG: readonly [{
5545
5545
  readonly flags: "--company <slug>";
5546
5546
  readonly description: "Run one company (default: every company listed in the companies manifest)";
5547
5547
  readonly hidden: false;
5548
+ }, {
5549
+ readonly flags: "--source <ref>";
5550
+ readonly description: "Read a growing source: meeting:<id> or <channel>:<file> (needs --incremental and --company)";
5551
+ readonly hidden: false;
5552
+ }, {
5553
+ readonly flags: "--incremental";
5554
+ readonly description: "Extract only new signals from --source, retaining a cursor and prior signal ids";
5555
+ readonly hidden: false;
5548
5556
  }, {
5549
5557
  readonly flags: "--dry-run";
5550
5558
  readonly description: "Print what would run; run no mutating step and write nothing";
@@ -15390,6 +15398,10 @@ export declare const COMMAND_CATALOG: readonly [{
15390
15398
  readonly flags: "--company <slug>";
15391
15399
  readonly description: "Select the company by slug";
15392
15400
  readonly hidden: false;
15401
+ }, {
15402
+ readonly flags: "--source <ref>";
15403
+ readonly description: "Report lanes for a source (requires --company; excludes --since)";
15404
+ readonly hidden: false;
15393
15405
  }, {
15394
15406
  readonly flags: "--since <iso>";
15395
15407
  readonly description: "Report activity from this ISO timestamp";
@@ -15859,7 +15871,23 @@ export declare const COMMAND_CATALOG: readonly [{
15859
15871
  readonly hidden: false;
15860
15872
  }, {
15861
15873
  readonly flags: "--project <slug>";
15862
- readonly description: "HQ project slug";
15874
+ readonly description: "HQ project slug (executive-bot for --signal)";
15875
+ readonly hidden: false;
15876
+ }, {
15877
+ readonly flags: "--signal <id>";
15878
+ readonly description: "Create one lane for a company signal";
15879
+ readonly hidden: false;
15880
+ }, {
15881
+ readonly flags: "--rules-file <path>";
15882
+ readonly description: "Standing rules for a signal lane";
15883
+ readonly hidden: false;
15884
+ }, {
15885
+ readonly flags: "--any-type";
15886
+ readonly description: "Allow signal types other than action_item";
15887
+ readonly hidden: false;
15888
+ }, {
15889
+ readonly flags: "--link <id>";
15890
+ readonly description: "Conductor link for a signal lane";
15863
15891
  readonly hidden: false;
15864
15892
  }, {
15865
15893
  readonly flags: "--story <id>";
@@ -15879,7 +15907,7 @@ export declare const COMMAND_CATALOG: readonly [{
15879
15907
  readonly hidden: false;
15880
15908
  }, {
15881
15909
  readonly flags: "--brief-file <path>";
15882
- readonly description: "Path to the lane brief";
15910
+ readonly description: "Path to the lane brief (generated for --signal)";
15883
15911
  readonly hidden: false;
15884
15912
  }, {
15885
15913
  readonly flags: "--worker <name>";
@@ -16435,17 +16463,22 @@ export declare const COMMAND_CATALOG: readonly [{
16435
16463
  readonly subcommands: readonly [];
16436
16464
  }, {
16437
16465
  readonly name: "status";
16438
- readonly description: "Summarize project stories, lanes, PRs, blockers, and pending questions";
16466
+ readonly description: "Summarize project stories, lanes, PRs, blockers, and pending questions; with a lane id, report that lane's outcome";
16439
16467
  readonly aliases: readonly [];
16440
16468
  readonly hidden: false;
16441
16469
  readonly helpOption: true;
16442
16470
  readonly helpCommand: false;
16443
- readonly usage: "[options]";
16471
+ readonly usage: "[options] [lane-id]";
16444
16472
  readonly helpText: readonly [];
16445
- readonly arguments: readonly [];
16473
+ readonly arguments: readonly [{
16474
+ readonly name: "lane-id";
16475
+ readonly required: false;
16476
+ readonly variadic: false;
16477
+ readonly description: "Report one lane's state and outcome block instead of a project";
16478
+ }];
16446
16479
  readonly options: readonly [{
16447
16480
  readonly flags: "--project <slug>";
16448
- readonly description: "HQ project slug";
16481
+ readonly description: "HQ project slug (required without a lane id)";
16449
16482
  readonly hidden: false;
16450
16483
  }, {
16451
16484
  readonly flags: "--company <slug|uid>";
@@ -19072,6 +19105,15 @@ export declare const COMMAND_CATALOG: readonly [{
19072
19105
  readonly flags: "--cron <expr>";
19073
19106
  readonly description: "How often, as a cron expression (e.g. \"0 9 * * 1-5\")";
19074
19107
  readonly hidden: false;
19108
+ }, {
19109
+ readonly flags: "--on <event>";
19110
+ readonly description: "Run when this event is emitted";
19111
+ readonly hidden: false;
19112
+ }, {
19113
+ readonly flags: "--filter <key=value>";
19114
+ readonly description: "Match an event payload field (repeatable)";
19115
+ readonly hidden: false;
19116
+ readonly defaultValue: readonly [];
19075
19117
  }, {
19076
19118
  readonly flags: "--tz <zone>";
19077
19119
  readonly description: "IANA timezone for the schedule (default: this computer's)";
@@ -19094,6 +19136,64 @@ export declare const COMMAND_CATALOG: readonly [{
19094
19136
  readonly hidden: false;
19095
19137
  }];
19096
19138
  readonly subcommands: readonly [];
19139
+ }, {
19140
+ readonly name: "events";
19141
+ readonly description: "Emit and inspect local bot events";
19142
+ readonly aliases: readonly [];
19143
+ readonly hidden: false;
19144
+ readonly helpOption: true;
19145
+ readonly helpCommand: true;
19146
+ readonly usage: "[options] [command]";
19147
+ readonly helpText: readonly [];
19148
+ readonly arguments: readonly [];
19149
+ readonly options: readonly [];
19150
+ readonly subcommands: readonly [{
19151
+ readonly name: "emit";
19152
+ readonly description: "";
19153
+ readonly aliases: readonly [];
19154
+ readonly hidden: false;
19155
+ readonly helpOption: true;
19156
+ readonly helpCommand: false;
19157
+ readonly usage: "[options] <event>";
19158
+ readonly helpText: readonly [];
19159
+ readonly arguments: readonly [{
19160
+ readonly name: "event";
19161
+ readonly required: true;
19162
+ readonly variadic: false;
19163
+ readonly description: "";
19164
+ }];
19165
+ readonly options: readonly [{
19166
+ readonly flags: "--bot <name>";
19167
+ readonly description: "Bot receiving the event";
19168
+ readonly hidden: false;
19169
+ }, {
19170
+ readonly flags: "--json <payload>";
19171
+ readonly description: "JSON object under 16 KB";
19172
+ readonly hidden: false;
19173
+ }];
19174
+ readonly subcommands: readonly [];
19175
+ }, {
19176
+ readonly name: "tail";
19177
+ readonly description: "";
19178
+ readonly aliases: readonly [];
19179
+ readonly hidden: false;
19180
+ readonly helpOption: true;
19181
+ readonly helpCommand: false;
19182
+ readonly usage: "[options] <name>";
19183
+ readonly helpText: readonly [];
19184
+ readonly arguments: readonly [{
19185
+ readonly name: "name";
19186
+ readonly required: true;
19187
+ readonly variadic: false;
19188
+ readonly description: "";
19189
+ }];
19190
+ readonly options: readonly [{
19191
+ readonly flags: "--json";
19192
+ readonly description: "Print the last 50 events as a JSON array";
19193
+ readonly hidden: false;
19194
+ }];
19195
+ readonly subcommands: readonly [];
19196
+ }];
19097
19197
  }, {
19098
19198
  readonly name: "promote";
19099
19199
  readonly description: "Move this local bot to cloud compute, preserving its identity and private context";
@@ -20189,7 +20289,7 @@ export declare const COMMAND_CATALOG: readonly [{
20189
20289
  }];
20190
20290
  }, {
20191
20291
  readonly name: "domains";
20192
- readonly description: "Manage custom domains on your deployed apps, and buy domains";
20292
+ readonly description: "Manage custom domains on your deployed apps, buy domains, and edit their DNS";
20193
20293
  readonly aliases: readonly [];
20194
20294
  readonly hidden: false;
20195
20295
  readonly helpOption: true;
@@ -20197,7 +20297,7 @@ export declare const COMMAND_CATALOG: readonly [{
20197
20297
  readonly usage: "[options] [command]";
20198
20298
  readonly helpText: readonly [{
20199
20299
  readonly position: "after";
20200
- readonly text: "\nadd, remove and buy ask for approval in an interactive terminal. Without one (a script, CI, or a Windows shell that does not report a terminal, such as Git Bash under mintty), pass --yes.";
20300
+ readonly text: "\nadd, remove and buy ask for approval in an interactive terminal. buy accepts y or --yes. Without a terminal (a script, CI, or a Windows shell that does not report a terminal, such as Git Bash under mintty), pass --yes.";
20201
20301
  }];
20202
20302
  readonly arguments: readonly [];
20203
20303
  readonly options: readonly [];
@@ -20452,7 +20552,7 @@ export declare const COMMAND_CATALOG: readonly [{
20452
20552
  }];
20453
20553
  }, {
20454
20554
  readonly name: "search";
20455
- readonly description: "Check whether a domain can be bought, and its price";
20555
+ readonly description: "Check whether a domain can be bought, with availability and registrar prices";
20456
20556
  readonly aliases: readonly [];
20457
20557
  readonly hidden: false;
20458
20558
  readonly helpOption: true;
@@ -20477,7 +20577,7 @@ export declare const COMMAND_CATALOG: readonly [{
20477
20577
  readonly subcommands: readonly [];
20478
20578
  }, {
20479
20579
  readonly name: "buy";
20480
- readonly description: "Buy a domain for the company (owner or admin)";
20580
+ readonly description: "Buy a domain for the company and say what it is for (owner or admin)";
20481
20581
  readonly aliases: readonly [];
20482
20582
  readonly hidden: false;
20483
20583
  readonly helpOption: true;
@@ -20491,8 +20591,12 @@ export declare const COMMAND_CATALOG: readonly [{
20491
20591
  readonly description: "";
20492
20592
  }];
20493
20593
  readonly options: readonly [{
20594
+ readonly flags: "--use <use>";
20595
+ readonly description: "what the domain is for: app:<app id>, base, or hold";
20596
+ readonly hidden: false;
20597
+ }, {
20494
20598
  readonly flags: "--price <usd>";
20495
- readonly description: "first-year price shown by 'hq deploy domains search'";
20599
+ readonly description: "first-year registrar price shown by 'hq deploy domains search'";
20496
20600
  readonly hidden: false;
20497
20601
  }, {
20498
20602
  readonly flags: "--registrant-file <path>";
@@ -20508,7 +20612,52 @@ export declare const COMMAND_CATALOG: readonly [{
20508
20612
  readonly hidden: false;
20509
20613
  }, {
20510
20614
  readonly flags: "--yes";
20511
- readonly description: "buy without a prompt";
20615
+ readonly description: "buy without a prompt, after you have read the transfer lock and final-purchase notice";
20616
+ readonly hidden: false;
20617
+ }, {
20618
+ readonly flags: "--json";
20619
+ readonly description: "print machine-readable JSON";
20620
+ readonly hidden: false;
20621
+ }];
20622
+ readonly subcommands: readonly [];
20623
+ }, {
20624
+ readonly name: "owned";
20625
+ readonly description: "List domains this company bought";
20626
+ readonly aliases: readonly [];
20627
+ readonly hidden: false;
20628
+ readonly helpOption: true;
20629
+ readonly helpCommand: false;
20630
+ readonly usage: "[options]";
20631
+ readonly helpText: readonly [];
20632
+ readonly arguments: readonly [];
20633
+ readonly options: readonly [{
20634
+ readonly flags: "--company <slug>";
20635
+ readonly description: "use this company instead of the active company";
20636
+ readonly hidden: false;
20637
+ }, {
20638
+ readonly flags: "--json";
20639
+ readonly description: "print machine-readable JSON";
20640
+ readonly hidden: false;
20641
+ }];
20642
+ readonly subcommands: readonly [];
20643
+ }, {
20644
+ readonly name: "show";
20645
+ readonly description: "Show one purchased domain, including nameservers and events";
20646
+ readonly aliases: readonly [];
20647
+ readonly hidden: false;
20648
+ readonly helpOption: true;
20649
+ readonly helpCommand: false;
20650
+ readonly usage: "[options] <domain>";
20651
+ readonly helpText: readonly [];
20652
+ readonly arguments: readonly [{
20653
+ readonly name: "domain";
20654
+ readonly required: true;
20655
+ readonly variadic: false;
20656
+ readonly description: "";
20657
+ }];
20658
+ readonly options: readonly [{
20659
+ readonly flags: "--company <slug>";
20660
+ readonly description: "use this company instead of the active company";
20512
20661
  readonly hidden: false;
20513
20662
  }, {
20514
20663
  readonly flags: "--json";
@@ -20516,6 +20665,238 @@ export declare const COMMAND_CATALOG: readonly [{
20516
20665
  readonly hidden: false;
20517
20666
  }];
20518
20667
  readonly subcommands: readonly [];
20668
+ }, {
20669
+ readonly name: "renew";
20670
+ readonly description: "Turn automatic renewal off or back on for a purchased domain";
20671
+ readonly aliases: readonly [];
20672
+ readonly hidden: false;
20673
+ readonly helpOption: true;
20674
+ readonly helpCommand: true;
20675
+ readonly usage: "[options] [command]";
20676
+ readonly helpText: readonly [];
20677
+ readonly arguments: readonly [];
20678
+ readonly options: readonly [];
20679
+ readonly subcommands: readonly [{
20680
+ readonly name: "cancel";
20681
+ readonly description: "Stop automatic renewal for a purchased domain";
20682
+ readonly aliases: readonly [];
20683
+ readonly hidden: false;
20684
+ readonly helpOption: true;
20685
+ readonly helpCommand: false;
20686
+ readonly usage: "[options] <domain>";
20687
+ readonly helpText: readonly [];
20688
+ readonly arguments: readonly [{
20689
+ readonly name: "domain";
20690
+ readonly required: true;
20691
+ readonly variadic: false;
20692
+ readonly description: "";
20693
+ }];
20694
+ readonly options: readonly [{
20695
+ readonly flags: "--yes";
20696
+ readonly description: "Confirm the billing setting change";
20697
+ readonly hidden: false;
20698
+ }, {
20699
+ readonly flags: "--company <slug>";
20700
+ readonly description: "use this company instead of the active company";
20701
+ readonly hidden: false;
20702
+ }, {
20703
+ readonly flags: "--json";
20704
+ readonly description: "print machine-readable JSON";
20705
+ readonly hidden: false;
20706
+ }];
20707
+ readonly subcommands: readonly [];
20708
+ }, {
20709
+ readonly name: "resume";
20710
+ readonly description: "Turn automatic renewal back on for a purchased domain";
20711
+ readonly aliases: readonly [];
20712
+ readonly hidden: false;
20713
+ readonly helpOption: true;
20714
+ readonly helpCommand: false;
20715
+ readonly usage: "[options] <domain>";
20716
+ readonly helpText: readonly [];
20717
+ readonly arguments: readonly [{
20718
+ readonly name: "domain";
20719
+ readonly required: true;
20720
+ readonly variadic: false;
20721
+ readonly description: "";
20722
+ }];
20723
+ readonly options: readonly [{
20724
+ readonly flags: "--yes";
20725
+ readonly description: "Confirm the billing setting change";
20726
+ readonly hidden: false;
20727
+ }, {
20728
+ readonly flags: "--company <slug>";
20729
+ readonly description: "use this company instead of the active company";
20730
+ readonly hidden: false;
20731
+ }, {
20732
+ readonly flags: "--json";
20733
+ readonly description: "print machine-readable JSON";
20734
+ readonly hidden: false;
20735
+ }];
20736
+ readonly subcommands: readonly [];
20737
+ }];
20738
+ }, {
20739
+ readonly name: "records";
20740
+ readonly description: "Manage DNS records on a domain this company bought";
20741
+ readonly aliases: readonly [];
20742
+ readonly hidden: false;
20743
+ readonly helpOption: true;
20744
+ readonly helpCommand: true;
20745
+ readonly usage: "[options] [command]";
20746
+ readonly helpText: readonly [];
20747
+ readonly arguments: readonly [];
20748
+ readonly options: readonly [];
20749
+ readonly subcommands: readonly [{
20750
+ readonly name: "list";
20751
+ readonly description: "List DNS records, marking the ones HQ has locked";
20752
+ readonly aliases: readonly [];
20753
+ readonly hidden: false;
20754
+ readonly helpOption: true;
20755
+ readonly helpCommand: false;
20756
+ readonly usage: "[options] <domain>";
20757
+ readonly helpText: readonly [];
20758
+ readonly arguments: readonly [{
20759
+ readonly name: "domain";
20760
+ readonly required: true;
20761
+ readonly variadic: false;
20762
+ readonly description: "";
20763
+ }];
20764
+ readonly options: readonly [{
20765
+ readonly flags: "--company <slug>";
20766
+ readonly description: "use this company instead of the active company";
20767
+ readonly hidden: false;
20768
+ }, {
20769
+ readonly flags: "--json";
20770
+ readonly description: "print machine-readable JSON";
20771
+ readonly hidden: false;
20772
+ }];
20773
+ readonly subcommands: readonly [];
20774
+ }, {
20775
+ readonly name: "add";
20776
+ readonly description: "Add a DNS record";
20777
+ readonly aliases: readonly [];
20778
+ readonly hidden: false;
20779
+ readonly helpOption: true;
20780
+ readonly helpCommand: false;
20781
+ readonly usage: "[options] <domain>";
20782
+ readonly helpText: readonly [];
20783
+ readonly arguments: readonly [{
20784
+ readonly name: "domain";
20785
+ readonly required: true;
20786
+ readonly variadic: false;
20787
+ readonly description: "";
20788
+ }];
20789
+ readonly options: readonly [{
20790
+ readonly flags: "--type <type>";
20791
+ readonly description: "A, AAAA, CNAME, MX, TXT, SRV, or CAA";
20792
+ readonly hidden: false;
20793
+ }, {
20794
+ readonly flags: "--name <name>";
20795
+ readonly description: "record name, such as www or the full domain";
20796
+ readonly hidden: false;
20797
+ }, {
20798
+ readonly flags: "--value <value>";
20799
+ readonly description: "record value (repeat for more than one)";
20800
+ readonly hidden: false;
20801
+ readonly defaultValue: readonly [];
20802
+ }, {
20803
+ readonly flags: "--ttl <seconds>";
20804
+ readonly description: "time to live in seconds";
20805
+ readonly hidden: false;
20806
+ }, {
20807
+ readonly flags: "--company <slug>";
20808
+ readonly description: "use this company instead of the active company";
20809
+ readonly hidden: false;
20810
+ }, {
20811
+ readonly flags: "--json";
20812
+ readonly description: "print machine-readable JSON";
20813
+ readonly hidden: false;
20814
+ }];
20815
+ readonly subcommands: readonly [];
20816
+ }, {
20817
+ readonly name: "set";
20818
+ readonly description: "Change a DNS record by id, or by name and type";
20819
+ readonly aliases: readonly [];
20820
+ readonly hidden: false;
20821
+ readonly helpOption: true;
20822
+ readonly helpCommand: false;
20823
+ readonly usage: "[options] <domain>";
20824
+ readonly helpText: readonly [];
20825
+ readonly arguments: readonly [{
20826
+ readonly name: "domain";
20827
+ readonly required: true;
20828
+ readonly variadic: false;
20829
+ readonly description: "";
20830
+ }];
20831
+ readonly options: readonly [{
20832
+ readonly flags: "--record <id>";
20833
+ readonly description: "record id from 'hq deploy domains records list'";
20834
+ readonly hidden: false;
20835
+ }, {
20836
+ readonly flags: "--name <name>";
20837
+ readonly description: "record name, together with --type";
20838
+ readonly hidden: false;
20839
+ }, {
20840
+ readonly flags: "--type <type>";
20841
+ readonly description: "record type, together with --name";
20842
+ readonly hidden: false;
20843
+ }, {
20844
+ readonly flags: "--value <value>";
20845
+ readonly description: "replacement value (repeat for more than one)";
20846
+ readonly hidden: false;
20847
+ readonly defaultValue: readonly [];
20848
+ }, {
20849
+ readonly flags: "--ttl <seconds>";
20850
+ readonly description: "replacement time to live in seconds";
20851
+ readonly hidden: false;
20852
+ }, {
20853
+ readonly flags: "--company <slug>";
20854
+ readonly description: "use this company instead of the active company";
20855
+ readonly hidden: false;
20856
+ }, {
20857
+ readonly flags: "--json";
20858
+ readonly description: "print machine-readable JSON";
20859
+ readonly hidden: false;
20860
+ }];
20861
+ readonly subcommands: readonly [];
20862
+ }, {
20863
+ readonly name: "delete";
20864
+ readonly description: "Delete a DNS record by id, or by name and type";
20865
+ readonly aliases: readonly [];
20866
+ readonly hidden: false;
20867
+ readonly helpOption: true;
20868
+ readonly helpCommand: false;
20869
+ readonly usage: "[options] <domain>";
20870
+ readonly helpText: readonly [];
20871
+ readonly arguments: readonly [{
20872
+ readonly name: "domain";
20873
+ readonly required: true;
20874
+ readonly variadic: false;
20875
+ readonly description: "";
20876
+ }];
20877
+ readonly options: readonly [{
20878
+ readonly flags: "--record <id>";
20879
+ readonly description: "record id from 'hq deploy domains records list'";
20880
+ readonly hidden: false;
20881
+ }, {
20882
+ readonly flags: "--name <name>";
20883
+ readonly description: "record name, together with --type";
20884
+ readonly hidden: false;
20885
+ }, {
20886
+ readonly flags: "--type <type>";
20887
+ readonly description: "record type, together with --name";
20888
+ readonly hidden: false;
20889
+ }, {
20890
+ readonly flags: "--company <slug>";
20891
+ readonly description: "use this company instead of the active company";
20892
+ readonly hidden: false;
20893
+ }, {
20894
+ readonly flags: "--json";
20895
+ readonly description: "print machine-readable JSON";
20896
+ readonly hidden: false;
20897
+ }];
20898
+ readonly subcommands: readonly [];
20899
+ }];
20519
20900
  }];
20520
20901
  }];
20521
20902
  }, {