@indigoai-us/hq-cli 5.345.147 → 5.345.149

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 (168) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +2 -0
  3. package/assets/bot-workers/setup/worker.yaml +11 -0
  4. package/dist/command-catalog.generated.d.ts +341 -11
  5. package/dist/command-catalog.generated.js +421 -11
  6. package/dist/command-help.js +2 -1
  7. package/dist/commands/access.d.ts +45 -2
  8. package/dist/commands/access.js +537 -223
  9. package/dist/commands/agent-inbox.js +2 -1
  10. package/dist/commands/billing-usage.d.ts +33 -2
  11. package/dist/commands/billing-usage.js +75 -4
  12. package/dist/commands/bot.js +2 -2
  13. package/dist/commands/channels.d.ts +27 -0
  14. package/dist/commands/channels.js +108 -4
  15. package/dist/commands/cloud.js +31 -1
  16. package/dist/commands/core-refresh-vault-access-native.d.ts +33 -0
  17. package/dist/commands/core-refresh-vault-access-native.js +356 -28
  18. package/dist/commands/core-work-mesh-bind-trusted-native.d.ts +9 -0
  19. package/dist/commands/core-work-mesh-bind-trusted-native.js +26 -19
  20. package/dist/commands/core.js +9 -0
  21. package/dist/commands/daemon.d.ts +7 -0
  22. package/dist/commands/daemon.js +37 -3
  23. package/dist/commands/dm.js +18 -3
  24. package/dist/commands/doctor.d.ts +11 -1
  25. package/dist/commands/doctor.js +56 -1
  26. package/dist/commands/install-global.d.ts +8 -8
  27. package/dist/commands/install-global.js +139 -61
  28. package/dist/commands/lanes-shared.d.ts +3 -1
  29. package/dist/commands/lanes.d.ts +4 -4
  30. package/dist/commands/lanes.js +380 -25
  31. package/dist/commands/library-add.d.ts +31 -1
  32. package/dist/commands/library-add.js +69 -2
  33. package/dist/commands/library.js +37 -3
  34. package/dist/commands/pack-install.d.ts +2 -2
  35. package/dist/commands/pack-install.js +133 -35
  36. package/dist/commands/reindex.js +19 -0
  37. package/dist/commands/sync-manifest.d.ts +2 -9
  38. package/dist/commands/sync-manifest.js +4 -15
  39. package/dist/hook-engine-path.d.ts +4 -0
  40. package/dist/hook-engine-path.js +43 -0
  41. package/dist/hq-cloud-sync-runner/bin/sync-runner.js +2783 -2354
  42. package/dist/hq-cloud-sync-runner/package.json +1 -1
  43. package/dist/index.d.ts +10 -0
  44. package/dist/index.js +76 -5
  45. package/dist/lazy-commands.js +2 -0
  46. package/dist/lib/agent-kit/inbox-redact.d.ts +44 -0
  47. package/dist/lib/agent-kit/inbox-redact.js +361 -0
  48. package/dist/lib/agent-kit/inbox-state.js +11 -2
  49. package/dist/lib/agent-kit/mcp/tools.js +2 -1
  50. package/dist/lib/agent-kit/run/inbox.js +36 -7
  51. package/dist/lib/anywhere-runtime-flag-key.d.ts +3 -0
  52. package/dist/lib/anywhere-runtime-flag-key.js +9 -0
  53. package/dist/lib/billing/usage-cost.d.ts +31 -1
  54. package/dist/lib/billing/usage-cost.js +46 -0
  55. package/dist/lib/company-skill-wrapper.js +6 -4
  56. package/dist/lib/daemon/install.d.ts +47 -1
  57. package/dist/lib/daemon/install.js +181 -15
  58. package/dist/lib/daemon/lock.d.ts +32 -0
  59. package/dist/lib/daemon/lock.js +55 -2
  60. package/dist/lib/db/local.d.ts +2 -2
  61. package/dist/lib/db/local.js +2 -2
  62. package/dist/lib/db/sql.js +2 -2
  63. package/dist/lib/db/sqlite-binding.d.ts +22 -0
  64. package/dist/lib/db/sqlite-binding.js +168 -0
  65. package/dist/lib/doctor/__testing__/run-doctor.js +4 -0
  66. package/dist/lib/doctor/checks/anywhere.d.ts +15 -0
  67. package/dist/lib/doctor/checks/anywhere.js +77 -11
  68. package/dist/lib/doctor/checks/cli-path.d.ts +12 -0
  69. package/dist/lib/doctor/checks/cli-path.js +46 -0
  70. package/dist/lib/doctor/checks/hook-engine.d.ts +4 -0
  71. package/dist/lib/doctor/checks/hook-engine.js +17 -0
  72. package/dist/lib/doctor/checks/sync-health.d.ts +7 -0
  73. package/dist/lib/doctor/checks/sync-health.js +38 -2
  74. package/dist/lib/doctor/checks/temp-homes.d.ts +19 -0
  75. package/dist/lib/doctor/checks/temp-homes.js +54 -0
  76. package/dist/lib/doctor/fix/apply.d.ts +90 -1
  77. package/dist/lib/doctor/fix/apply.js +176 -10
  78. package/dist/lib/doctor/fix/json-output.d.ts +4 -1
  79. package/dist/lib/doctor/fix/json-output.js +6 -0
  80. package/dist/lib/doctor/fix/remediation.d.ts +7 -1
  81. package/dist/lib/doctor/fix/remediation.js +23 -1
  82. package/dist/lib/doctor/registry.js +10 -0
  83. package/dist/lib/doctor/temp-home-sweeper.d.ts +149 -0
  84. package/dist/lib/doctor/temp-home-sweeper.js +418 -0
  85. package/dist/lib/flag-registry-worker-source.generated.d.ts +1 -1
  86. package/dist/lib/flag-registry-worker-source.generated.js +1 -1
  87. package/dist/lib/flag-registry.js +9 -1
  88. package/dist/lib/flag-snapshot-file.js +8 -3
  89. package/dist/lib/hook-engine/reconcile.d.ts +9 -0
  90. package/dist/lib/hook-engine/reconcile.js +134 -0
  91. package/dist/lib/hook-engine/registration.d.ts +17 -0
  92. package/dist/lib/hook-engine/registration.js +50 -0
  93. package/dist/lib/hook-engine/resolve.d.ts +31 -0
  94. package/dist/lib/hook-engine/resolve.js +134 -0
  95. package/dist/lib/install/claude-targets.d.ts +2 -1
  96. package/dist/lib/install/claude-targets.js +8 -3
  97. package/dist/lib/install/codex-targets.d.ts +3 -0
  98. package/dist/lib/install/codex-targets.js +15 -4
  99. package/dist/lib/install/hook-target.d.ts +9 -0
  100. package/dist/lib/install/hook-target.js +39 -0
  101. package/dist/lib/lanes/admission-host.d.ts +1 -0
  102. package/dist/lib/lanes/admission-host.js +8 -1
  103. package/dist/lib/lanes/admission.d.ts +4 -0
  104. package/dist/lib/lanes/admission.js +6 -2
  105. package/dist/lib/lanes/envelope-repair-dispatch.d.ts +5 -0
  106. package/dist/lib/lanes/envelope-repair-dispatch.js +12 -1
  107. package/dist/lib/lanes/index.d.ts +2 -2
  108. package/dist/lib/lanes/index.js +1 -1
  109. package/dist/lib/lanes/keep-alive.js +4 -1
  110. package/dist/lib/lanes/local-host-identity.d.ts +40 -0
  111. package/dist/lib/lanes/local-host-identity.js +314 -0
  112. package/dist/lib/lanes/reaper.d.ts +1 -1
  113. package/dist/lib/lanes/reaper.js +7 -0
  114. package/dist/lib/lanes/reconcile.d.ts +4 -0
  115. package/dist/lib/lanes/reconcile.js +16 -8
  116. package/dist/lib/lanes/spawn.d.ts +20 -0
  117. package/dist/lib/lanes/spawn.js +48 -2
  118. package/dist/lib/lanes/status-fields.js +6 -1
  119. package/dist/lib/lanes/store.js +8 -1
  120. package/dist/lib/lanes/throttle.d.ts +49 -6
  121. package/dist/lib/lanes/throttle.js +154 -17
  122. package/dist/lib/lanes/types.d.ts +22 -1
  123. package/dist/lib/lanes/types.js +27 -3
  124. package/dist/lib/lanes/watcher.js +27 -2
  125. package/dist/lib/lanes/worker-continuity.d.ts +2 -0
  126. package/dist/lib/lanes/worker-continuity.js +18 -11
  127. package/dist/lib/manifest-disabled.d.ts +13 -0
  128. package/dist/lib/manifest-disabled.js +19 -0
  129. package/dist/lib/service-manager/launchd.d.ts +1 -0
  130. package/dist/lib/service-manager/launchd.js +1 -1
  131. package/dist/lib/windows/console-encoding.d.ts +24 -0
  132. package/dist/lib/windows/console-encoding.js +83 -0
  133. package/dist/lib/windows/install-followup.d.ts +35 -0
  134. package/dist/lib/windows/install-followup.js +142 -0
  135. package/dist/lib/windows/user-path.d.ts +125 -0
  136. package/dist/lib/windows/user-path.js +275 -0
  137. package/dist/lib/work-context/auto-bind.d.ts +1 -1
  138. package/dist/lib/work-context/auto-bind.js +22 -3
  139. package/dist/lib/work-context/lane-bind.d.ts +31 -0
  140. package/dist/lib/work-context/lane-bind.js +101 -0
  141. package/dist/lib/work-context/organize.js +1 -0
  142. package/dist/lib/work-context/prd-sync.js +7 -0
  143. package/dist/lib/work-context/project.d.ts +36 -10
  144. package/dist/lib/work-context/project.js +130 -41
  145. package/dist/lib/work-context/reconcile.d.ts +6 -0
  146. package/dist/lib/work-context/reconcile.js +25 -5
  147. package/dist/lib/work-context/state.d.ts +6 -0
  148. package/dist/lib/work-context/state.js +29 -1
  149. package/dist/main.js +2 -1
  150. package/dist/unknown-command.d.ts +18 -0
  151. package/dist/unknown-command.js +88 -0
  152. package/dist/utils/cognito-session.d.ts +8 -0
  153. package/dist/utils/cognito-session.js +14 -2
  154. package/dist/utils/copy-tree.d.ts +61 -0
  155. package/dist/utils/copy-tree.js +249 -0
  156. package/dist/utils/environmental-error.js +7 -3
  157. package/dist/utils/hook-trust.d.ts +9 -0
  158. package/dist/utils/hook-trust.js +30 -2
  159. package/dist/utils/npm-invocation.d.ts +27 -0
  160. package/dist/utils/npm-invocation.js +54 -0
  161. package/dist/utils/qmd-native-binding-error.js +3 -1
  162. package/dist/utils/resolve-executable.d.ts +2 -0
  163. package/dist/utils/resolve-executable.js +6 -2
  164. package/dist/utils/safe-link.d.ts +50 -0
  165. package/dist/utils/safe-link.js +300 -0
  166. package/package.json +17 -5
  167. package/scripts/hook-engine-manifest.mjs +22 -0
  168. package/scripts/install-hook-engine.mjs +10 -0
@@ -3766,23 +3766,23 @@ export const COMMAND_CATALOG = [
3766
3766
  },
3767
3767
  {
3768
3768
  "name": "access",
3769
- "description": "Tell whether a vault file exists and whether you can read it. Never a bare not-found. Exit codes: 0 local/not-synced, 2 never-existed, 3 no-access, 4 ambiguous.",
3769
+ "description": "Tell whether a vault file exists and whether you can read it. Never a bare not-found. Takes one or more paths or queries. Exit codes: 0 local/not-synced, 2 never-existed, 3 no-access, 4 ambiguous.",
3770
3770
  "aliases": [],
3771
3771
  "hidden": false,
3772
3772
  "helpOption": true,
3773
3773
  "helpCommand": false,
3774
- "usage": "[options] <path-or-query>",
3774
+ "usage": "[options] [vault-path...]",
3775
3775
  "helpText": [
3776
3776
  {
3777
3777
  "position": "after",
3778
- "text": "\nExit codes:\n 0 local or not-synced (file exists and you can read it)\n 2 never-existed (the path was never created)\n 3 no-access (the file exists but you cannot read it)\n 4 ambiguous (several keys matched; pick one)\n"
3778
+ "text": "\nExit codes:\n 0 local or not-synced (file exists and you can read it)\n 2 never-existed (the path was never created)\n 3 no-access (the file exists but you cannot read it)\n 4 ambiguous (several keys matched; pick one)\n\nWith several paths, each gets its own result block and the exit code is the\nhighest one across the paths.\n"
3779
3779
  }
3780
3780
  ],
3781
3781
  "arguments": [
3782
3782
  {
3783
- "name": "path-or-query",
3784
- "required": true,
3785
- "variadic": false,
3783
+ "name": "vault-path",
3784
+ "required": false,
3785
+ "variadic": true,
3786
3786
  "description": ""
3787
3787
  }
3788
3788
  ],
@@ -3799,7 +3799,12 @@ export const COMMAND_CATALOG = [
3799
3799
  },
3800
3800
  {
3801
3801
  "flags": "--json",
3802
- "description": "Print a single JSON object",
3802
+ "description": "Print a single JSON object (an array for several paths)",
3803
+ "hidden": false
3804
+ },
3805
+ {
3806
+ "flags": "--stdin",
3807
+ "description": "Read more paths from stdin, one per line",
3803
3808
  "hidden": false
3804
3809
  },
3805
3810
  {
@@ -4872,7 +4877,42 @@ export const COMMAND_CATALOG = [
4872
4877
  "usage": "[options]",
4873
4878
  "helpText": [],
4874
4879
  "arguments": [],
4875
- "options": [],
4880
+ "options": [
4881
+ {
4882
+ "flags": "--json",
4883
+ "description": "Output the channel array as JSON, including activity fields.",
4884
+ "hidden": false
4885
+ },
4886
+ {
4887
+ "flags": "--active-since <when>",
4888
+ "description": "Only channels with activity at or after an ISO time or a duration back from now (30m, 2h, 1d); newest first.",
4889
+ "hidden": false
4890
+ },
4891
+ {
4892
+ "flags": "--sort <order>",
4893
+ "description": "'activity' lists the most recently active channels first.",
4894
+ "hidden": false
4895
+ }
4896
+ ],
4897
+ "subcommands": []
4898
+ },
4899
+ {
4900
+ "name": "changes",
4901
+ "description": "Print the channels that changed since a feed cursor, as JSON (no cursor → full snapshot).",
4902
+ "aliases": [],
4903
+ "hidden": false,
4904
+ "helpOption": true,
4905
+ "helpCommand": false,
4906
+ "usage": "[options]",
4907
+ "helpText": [],
4908
+ "arguments": [],
4909
+ "options": [
4910
+ {
4911
+ "flags": "--cursor <token>",
4912
+ "description": "Cursor from the previous `hq channels changes` response.",
4913
+ "hidden": false
4914
+ }
4915
+ ],
4876
4916
  "subcommands": []
4877
4917
  },
4878
4918
  {
@@ -8942,9 +8982,19 @@ export const COMMAND_CATALOG = [
8942
8982
  "description": "Provision the company's Outpost instead of your personal box",
8943
8983
  "hidden": false
8944
8984
  },
8985
+ {
8986
+ "flags": "--name <name>",
8987
+ "description": "With --company: not sent. This server creates the company's main Outpost and does not take a name yet",
8988
+ "hidden": false
8989
+ },
8945
8990
  {
8946
8991
  "flags": "--yes",
8947
- "description": "Confirm the $80/month charge (required to provision)",
8992
+ "description": "Confirm the monthly charge (required to provision or create)",
8993
+ "hidden": false
8994
+ },
8995
+ {
8996
+ "flags": "--json",
8997
+ "description": "With --company, emit one JSON object. Progress goes to stderr.",
8948
8998
  "hidden": false
8949
8999
  }
8950
9000
  ],
@@ -8952,7 +9002,7 @@ export const COMMAND_CATALOG = [
8952
9002
  },
8953
9003
  {
8954
9004
  "name": "list",
8955
- "description": "List every Outpost you own",
9005
+ "description": "List every Outpost you own, or a company's Outposts with --company",
8956
9006
  "aliases": [],
8957
9007
  "hidden": false,
8958
9008
  "helpOption": true,
@@ -8961,6 +9011,11 @@ export const COMMAND_CATALOG = [
8961
9011
  "helpText": [],
8962
9012
  "arguments": [],
8963
9013
  "options": [
9014
+ {
9015
+ "flags": "--company <slug>",
9016
+ "description": "List the company's Outposts",
9017
+ "hidden": false
9018
+ },
8964
9019
  {
8965
9020
  "flags": "--json",
8966
9021
  "description": "Emit raw JSON",
@@ -8990,6 +9045,11 @@ export const COMMAND_CATALOG = [
8990
9045
  "description": "Show the company Outpost, its jobs, and each job's run status",
8991
9046
  "hidden": false
8992
9047
  },
9048
+ {
9049
+ "flags": "--outpost <name|id>",
9050
+ "description": "Which company Outpost, when the company has more than one",
9051
+ "hidden": false
9052
+ },
8993
9053
  {
8994
9054
  "flags": "--json",
8995
9055
  "description": "Emit raw JSON",
@@ -9000,7 +9060,7 @@ export const COMMAND_CATALOG = [
9000
9060
  },
9001
9061
  {
9002
9062
  "name": "jobs",
9003
- "description": "Register a job on a company Outpost",
9063
+ "description": "Register, edit, pause, resume, delete, or run a job on a company Outpost",
9004
9064
  "aliases": [],
9005
9065
  "hidden": false,
9006
9066
  "helpOption": true,
@@ -9056,6 +9116,11 @@ export const COMMAND_CATALOG = [
9056
9116
  "description": "Optional JSON object stored with the job",
9057
9117
  "hidden": false
9058
9118
  },
9119
+ {
9120
+ "flags": "--outpost <name|id>",
9121
+ "description": "Which company Outpost runs the job, when the company has more than one",
9122
+ "hidden": false
9123
+ },
9059
9124
  {
9060
9125
  "flags": "--json",
9061
9126
  "description": "Emit the job id and accepted revision as JSON",
@@ -9063,6 +9128,256 @@ export const COMMAND_CATALOG = [
9063
9128
  }
9064
9129
  ],
9065
9130
  "subcommands": []
9131
+ },
9132
+ {
9133
+ "name": "edit",
9134
+ "description": "Change a company job. Omitted fields stay as they are. Requires --revision",
9135
+ "aliases": [],
9136
+ "hidden": false,
9137
+ "helpOption": true,
9138
+ "helpCommand": false,
9139
+ "usage": "[options] <jobId>",
9140
+ "helpText": [],
9141
+ "arguments": [
9142
+ {
9143
+ "name": "jobId",
9144
+ "required": true,
9145
+ "variadic": false,
9146
+ "description": "Job id from hq outposts status --company <slug>"
9147
+ }
9148
+ ],
9149
+ "options": [
9150
+ {
9151
+ "flags": "--company <slug>",
9152
+ "description": "Company that owns the Outpost",
9153
+ "hidden": false
9154
+ },
9155
+ {
9156
+ "flags": "--outpost <name|id>",
9157
+ "description": "Which company Outpost, when the company has more than one",
9158
+ "hidden": false
9159
+ },
9160
+ {
9161
+ "flags": "--revision <rev>",
9162
+ "description": "Accepted revision you last saw. Required for edit and delete --yes",
9163
+ "hidden": false
9164
+ },
9165
+ {
9166
+ "flags": "--prompt <text>",
9167
+ "description": "What the job should do. Omit to keep the current prompt",
9168
+ "hidden": false
9169
+ },
9170
+ {
9171
+ "flags": "--timezone <name>",
9172
+ "description": "IANA timezone, such as America/New_York. Omit to keep the current timezone",
9173
+ "hidden": false
9174
+ },
9175
+ {
9176
+ "flags": "--cron <expr>",
9177
+ "description": "Recurring schedule: rate(N minutes|hours|days), a five-field cron with * for day of month and month (such as \"*/15 * * * *\"; translated to the AWS form), or cron(MIN HOUR ? * DOW *). Omit to keep the current schedule",
9178
+ "hidden": false
9179
+ },
9180
+ {
9181
+ "flags": "--at <iso>",
9182
+ "description": "One-time ISO-8601 instant. Do not combine with --cron",
9183
+ "hidden": false
9184
+ },
9185
+ {
9186
+ "flags": "--script <text>",
9187
+ "description": "Precondition script stored with the job. Omit to keep the current script",
9188
+ "hidden": false
9189
+ },
9190
+ {
9191
+ "flags": "--context <json>",
9192
+ "description": "JSON object stored with the job. Omit to keep the current context",
9193
+ "hidden": false
9194
+ },
9195
+ {
9196
+ "flags": "--clear-script",
9197
+ "description": "Remove the job's precondition script",
9198
+ "hidden": false
9199
+ },
9200
+ {
9201
+ "flags": "--clear-context",
9202
+ "description": "Remove the job's stored context",
9203
+ "hidden": false
9204
+ },
9205
+ {
9206
+ "flags": "--json",
9207
+ "description": "Emit the result as JSON",
9208
+ "hidden": false
9209
+ }
9210
+ ],
9211
+ "subcommands": []
9212
+ },
9213
+ {
9214
+ "name": "pause",
9215
+ "description": "Pause a company job",
9216
+ "aliases": [],
9217
+ "hidden": false,
9218
+ "helpOption": true,
9219
+ "helpCommand": false,
9220
+ "usage": "[options] <jobId>",
9221
+ "helpText": [],
9222
+ "arguments": [
9223
+ {
9224
+ "name": "jobId",
9225
+ "required": true,
9226
+ "variadic": false,
9227
+ "description": "Job id from hq outposts status --company <slug>"
9228
+ }
9229
+ ],
9230
+ "options": [
9231
+ {
9232
+ "flags": "--company <slug>",
9233
+ "description": "Company that owns the Outpost",
9234
+ "hidden": false
9235
+ },
9236
+ {
9237
+ "flags": "--outpost <name|id>",
9238
+ "description": "Which company Outpost, when the company has more than one",
9239
+ "hidden": false
9240
+ },
9241
+ {
9242
+ "flags": "--revision <rev>",
9243
+ "description": "Accepted revision you last saw. Required for edit and delete --yes",
9244
+ "hidden": false
9245
+ },
9246
+ {
9247
+ "flags": "--json",
9248
+ "description": "Emit the result as JSON",
9249
+ "hidden": false
9250
+ }
9251
+ ],
9252
+ "subcommands": []
9253
+ },
9254
+ {
9255
+ "name": "resume",
9256
+ "description": "Resume a paused company job",
9257
+ "aliases": [],
9258
+ "hidden": false,
9259
+ "helpOption": true,
9260
+ "helpCommand": false,
9261
+ "usage": "[options] <jobId>",
9262
+ "helpText": [],
9263
+ "arguments": [
9264
+ {
9265
+ "name": "jobId",
9266
+ "required": true,
9267
+ "variadic": false,
9268
+ "description": "Job id from hq outposts status --company <slug>"
9269
+ }
9270
+ ],
9271
+ "options": [
9272
+ {
9273
+ "flags": "--company <slug>",
9274
+ "description": "Company that owns the Outpost",
9275
+ "hidden": false
9276
+ },
9277
+ {
9278
+ "flags": "--outpost <name|id>",
9279
+ "description": "Which company Outpost, when the company has more than one",
9280
+ "hidden": false
9281
+ },
9282
+ {
9283
+ "flags": "--revision <rev>",
9284
+ "description": "Accepted revision you last saw. Required for edit and delete --yes",
9285
+ "hidden": false
9286
+ },
9287
+ {
9288
+ "flags": "--json",
9289
+ "description": "Emit the result as JSON",
9290
+ "hidden": false
9291
+ }
9292
+ ],
9293
+ "subcommands": []
9294
+ },
9295
+ {
9296
+ "name": "delete",
9297
+ "description": "Delete a company job (requires --yes)",
9298
+ "aliases": [],
9299
+ "hidden": false,
9300
+ "helpOption": true,
9301
+ "helpCommand": false,
9302
+ "usage": "[options] <jobId>",
9303
+ "helpText": [],
9304
+ "arguments": [
9305
+ {
9306
+ "name": "jobId",
9307
+ "required": true,
9308
+ "variadic": false,
9309
+ "description": "Job id from hq outposts status --company <slug>"
9310
+ }
9311
+ ],
9312
+ "options": [
9313
+ {
9314
+ "flags": "--company <slug>",
9315
+ "description": "Company that owns the Outpost",
9316
+ "hidden": false
9317
+ },
9318
+ {
9319
+ "flags": "--outpost <name|id>",
9320
+ "description": "Which company Outpost, when the company has more than one",
9321
+ "hidden": false
9322
+ },
9323
+ {
9324
+ "flags": "--revision <rev>",
9325
+ "description": "Accepted revision you last saw. Required for edit and delete --yes",
9326
+ "hidden": false
9327
+ },
9328
+ {
9329
+ "flags": "--yes",
9330
+ "description": "Confirm deletion of this job",
9331
+ "hidden": false
9332
+ },
9333
+ {
9334
+ "flags": "--json",
9335
+ "description": "Emit the result as JSON",
9336
+ "hidden": false
9337
+ }
9338
+ ],
9339
+ "subcommands": []
9340
+ },
9341
+ {
9342
+ "name": "run-now",
9343
+ "description": "Run a company job once now",
9344
+ "aliases": [],
9345
+ "hidden": false,
9346
+ "helpOption": true,
9347
+ "helpCommand": false,
9348
+ "usage": "[options] <jobId>",
9349
+ "helpText": [],
9350
+ "arguments": [
9351
+ {
9352
+ "name": "jobId",
9353
+ "required": true,
9354
+ "variadic": false,
9355
+ "description": "Job id from hq outposts status --company <slug>"
9356
+ }
9357
+ ],
9358
+ "options": [
9359
+ {
9360
+ "flags": "--company <slug>",
9361
+ "description": "Company that owns the Outpost",
9362
+ "hidden": false
9363
+ },
9364
+ {
9365
+ "flags": "--outpost <name|id>",
9366
+ "description": "Which company Outpost, when the company has more than one",
9367
+ "hidden": false
9368
+ },
9369
+ {
9370
+ "flags": "--revision <rev>",
9371
+ "description": "Accepted revision you last saw. Required for edit and delete --yes",
9372
+ "hidden": false
9373
+ },
9374
+ {
9375
+ "flags": "--json",
9376
+ "description": "Emit the result as JSON",
9377
+ "hidden": false
9378
+ }
9379
+ ],
9380
+ "subcommands": []
9066
9381
  }
9067
9382
  ]
9068
9383
  },
@@ -9271,6 +9586,11 @@ export const COMMAND_CATALOG = [
9271
9586
  "description": "Company slug",
9272
9587
  "hidden": false
9273
9588
  },
9589
+ {
9590
+ "flags": "--outpost <name|id>",
9591
+ "description": "Which company Outpost, when the company has more than one",
9592
+ "hidden": false
9593
+ },
9274
9594
  {
9275
9595
  "flags": "--json",
9276
9596
  "description": "Emit raw JSON",
@@ -9324,6 +9644,11 @@ export const COMMAND_CATALOG = [
9324
9644
  "description": "Request a new sign-in link for the company's Outpost (owner or admin)",
9325
9645
  "hidden": false
9326
9646
  },
9647
+ {
9648
+ "flags": "--outpost <name|id>",
9649
+ "description": "Which company Outpost, when the company has more than one",
9650
+ "hidden": false
9651
+ },
9327
9652
  {
9328
9653
  "flags": "--json",
9329
9654
  "description": "Emit raw JSON",
@@ -9360,6 +9685,11 @@ export const COMMAND_CATALOG = [
9360
9685
  "description": "Sign in the company's Outpost (owner or admin)",
9361
9686
  "hidden": false
9362
9687
  },
9688
+ {
9689
+ "flags": "--outpost <name|id>",
9690
+ "description": "Which company Outpost, when the company has more than one",
9691
+ "hidden": false
9692
+ },
9363
9693
  {
9364
9694
  "flags": "--json",
9365
9695
  "description": "Emit raw JSON",
@@ -9936,6 +10266,30 @@ export const COMMAND_CATALOG = [
9936
10266
  ],
9937
10267
  "subcommands": []
9938
10268
  },
10269
+ {
10270
+ "name": "hook-engine-path",
10271
+ "description": "Print the offline, version-pinned native hook engine path",
10272
+ "aliases": [],
10273
+ "hidden": false,
10274
+ "helpOption": true,
10275
+ "helpCommand": false,
10276
+ "usage": "[options]",
10277
+ "helpText": [],
10278
+ "arguments": [],
10279
+ "options": [
10280
+ {
10281
+ "flags": "--repair",
10282
+ "description": "Repair the pinned copy after closing running hook processes",
10283
+ "hidden": false
10284
+ },
10285
+ {
10286
+ "flags": "--for-registration",
10287
+ "description": "Print a path only when the offline launcher flag is enabled",
10288
+ "hidden": false
10289
+ }
10290
+ ],
10291
+ "subcommands": []
10292
+ },
9939
10293
  {
9940
10294
  "name": "ontology",
9941
10295
  "description": "Checkpoint ontology steps run by the checkpoint sibling (gated by checkpoint.ontology)",
@@ -12916,6 +13270,16 @@ export const COMMAND_CATALOG = [
12916
13270
  "description": "Resolve the opt-in hq-flags gate used by the client-health report hook.",
12917
13271
  "hidden": true
12918
13272
  },
13273
+ {
13274
+ "flags": "--sweep-temp-homes",
13275
+ "description": "Delete idle temp homes (90+ minutes untouched, not in use): tmp.* folders holding .rustup or .cargo, and hq-temp-home.* folders left by the wrapper. Reports GB freed.",
13276
+ "hidden": false
13277
+ },
13278
+ {
13279
+ "flags": "--dry-run",
13280
+ "description": "With --sweep-temp-homes, list what would be removed and delete nothing.",
13281
+ "hidden": false
13282
+ },
12919
13283
  {
12920
13284
  "flags": "--yes",
12921
13285
  "description": "Skip the interactive --fix confirmation (non-interactive use).",
@@ -17106,6 +17470,11 @@ export const COMMAND_CATALOG = [
17106
17470
  "description": "claude | codex | grok",
17107
17471
  "hidden": false
17108
17472
  },
17473
+ {
17474
+ "flags": "--runner <kind>",
17475
+ "description": "process (default) | subagent: register a lane an in-session Claude subagent runs; skips admission and starts no process",
17476
+ "hidden": false
17477
+ },
17109
17478
  {
17110
17479
  "flags": "--remote-control",
17111
17480
  "description": "Open a Claude lane in Remote Control using account a for login and the selected account for inference",
@@ -17185,6 +17554,47 @@ export const COMMAND_CATALOG = [
17185
17554
  ],
17186
17555
  "subcommands": []
17187
17556
  },
17557
+ {
17558
+ "name": "progress",
17559
+ "description": "Report on a subagent lane: a progress line, the final envelope, or a failure",
17560
+ "aliases": [],
17561
+ "hidden": false,
17562
+ "helpOption": true,
17563
+ "helpCommand": false,
17564
+ "usage": "[options] <lane-id>",
17565
+ "helpText": [],
17566
+ "arguments": [
17567
+ {
17568
+ "name": "lane-id",
17569
+ "required": true,
17570
+ "variadic": false,
17571
+ "description": "Lane id"
17572
+ }
17573
+ ],
17574
+ "options": [
17575
+ {
17576
+ "flags": "--line <text>",
17577
+ "description": "Progress line shown as the lane's last line",
17578
+ "hidden": false
17579
+ },
17580
+ {
17581
+ "flags": "--envelope <path>",
17582
+ "description": "Final hq-lane-envelope.v1 file; the lane state follows its decision",
17583
+ "hidden": false
17584
+ },
17585
+ {
17586
+ "flags": "--failed <reason>",
17587
+ "description": "Mark the lane failed when the subagent ended without an envelope",
17588
+ "hidden": false
17589
+ },
17590
+ {
17591
+ "flags": "--json",
17592
+ "description": "JSON on stdout (always)",
17593
+ "hidden": false
17594
+ }
17595
+ ],
17596
+ "subcommands": []
17597
+ },
17188
17598
  {
17189
17599
  "name": "approve-target",
17190
17600
  "description": "",
@@ -1,6 +1,7 @@
1
1
  import { Command } from "commander";
2
2
  import { CLI_VERSION } from "./cli-version.js";
3
3
  import { registerCommandCatalog } from "./lazy-commands.js";
4
+ import { argvWithoutHelpOnUnknownCommand } from "./unknown-command.js";
4
5
  export async function runCommandHelp(argv) {
5
6
  const program = new Command()
6
7
  .name("hq")
@@ -10,6 +11,6 @@ export async function runCommandHelp(argv) {
10
11
  registerCommandCatalog(program);
11
12
  const { hideStorageInCatalog } = await import("./lib/storage-feature-flag.js");
12
13
  hideStorageInCatalog(program);
13
- await program.parseAsync([...argv]);
14
+ await program.parseAsync(argvWithoutHelpOnUnknownCommand([...argv]));
14
15
  }
15
16
  //# sourceMappingURL=command-help.js.map
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `hq access <path-or-query>` — existence + ACL probe with a self-healing
2
+ * `hq access <path-or-query...>` — existence + ACL probe with a self-healing
3
3
  * ladder: resolve, list, probe ACL, then (with --fix) download / pin / repair
4
4
  * sync or request access from the grantor.
5
5
  *
@@ -74,10 +74,19 @@ export interface AccessDeps {
74
74
  fetchAclTree: (prefix: string) => Promise<AccessAclTree | null>;
75
75
  /** Active members (owner/admin/member/guest) — used for grantor resolution. */
76
76
  listMembers: () => Promise<AccessMember[]>;
77
+ /** The caller, or a loader for it. A loader runs only when a request is sent. */
77
78
  requester: {
78
79
  email: string;
79
80
  name?: string;
80
- };
81
+ } | (() => Promise<{
82
+ email: string;
83
+ name?: string;
84
+ }>);
85
+ /**
86
+ * Batch POST acl/resolve: permission per company-relative target (null when
87
+ * the resolver grants nothing). Used by batch mode only.
88
+ */
89
+ resolveAcl?: (targets: string[]) => Promise<Map<string, string | null>>;
81
90
  dm?: {
82
91
  send(msg: {
83
92
  recipient: string;
@@ -150,7 +159,34 @@ export declare function outcomeExitCode(outcome: AccessOutcome): 0 | 2 | 3 | 4;
150
159
  export declare function formatAccessOutcome(result: RunAccessResult): string;
151
160
  export declare function resolveGrantor(tree: AccessAclTree | null, members: AccessMember[]): AccessGrantor | null;
152
161
  export declare function runAccess(input: RunAccessInput): Promise<RunAccessResult>;
162
+ export interface RunAccessBatchInput {
163
+ targets: string[];
164
+ fix: boolean;
165
+ json: boolean;
166
+ yes?: boolean;
167
+ deps: AccessDeps;
168
+ /** Parallel existence checks. Default 4. */
169
+ concurrency?: number;
170
+ }
171
+ export interface RunAccessBatchResult {
172
+ results: Array<{
173
+ target: string;
174
+ result: RunAccessResult;
175
+ }>;
176
+ /** Highest exit code across the targets. */
177
+ exitCode: 0 | 2 | 3 | 4;
178
+ }
179
+ /**
180
+ * Several targets in one company: one vend, one bucket lookup, and one
181
+ * acl/resolve call for all of them, then bounded-concurrency existence
182
+ * checks. Requests (DM rung) run one at a time in input order so prompts and
183
+ * grantor lines never interleave. Several fuzzy hits are reported as
184
+ * ambiguous; the interactive picker is single-path only.
185
+ */
186
+ export declare function runAccessBatch(input: RunAccessBatchInput): Promise<RunAccessBatchResult>;
153
187
  export declare function registerAccessCommand(program: Command): void;
188
+ /** One target per non-blank line; surrounding whitespace is ignored. */
189
+ export declare function parseTargetLines(text: string): string[];
154
190
  /**
155
191
  * Resolve the company `hq access` runs against: explicit `company` (the
156
192
  * ladder forwards the slug stamped on a 403), else the slug anchored in the
@@ -173,4 +209,11 @@ export declare function runAccessForPath(path: string, opts?: {
173
209
  yes?: boolean;
174
210
  fix?: boolean;
175
211
  }): Promise<RunAccessResult>;
212
+ export declare function runAccessForPaths(paths: string[], opts?: {
213
+ company?: string;
214
+ hqRoot?: string;
215
+ json?: boolean;
216
+ yes?: boolean;
217
+ fix?: boolean;
218
+ }): Promise<RunAccessBatchResult>;
176
219
  //# sourceMappingURL=access.d.ts.map