@hyperdrive.bot/cli 1.0.13 → 1.0.16

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 (157) hide show
  1. package/README.md +1495 -474
  2. package/dist/commands/deploy.d.ts +18 -0
  3. package/dist/commands/deploy.js +239 -0
  4. package/dist/commands/deployment/create.js +10 -2
  5. package/dist/commands/domain/{switch.d.ts → set-production.d.ts} +1 -1
  6. package/dist/commands/domain/set-production.js +27 -0
  7. package/dist/commands/git/list-open-prs.d.ts +12 -0
  8. package/dist/commands/git/list-open-prs.js +87 -0
  9. package/dist/commands/hook/add.d.ts +22 -0
  10. package/dist/commands/hook/add.js +299 -0
  11. package/dist/commands/hook/list.d.ts +11 -0
  12. package/dist/commands/hook/list.js +111 -0
  13. package/dist/commands/hook/logs.d.ts +13 -0
  14. package/dist/commands/hook/logs.js +124 -0
  15. package/dist/commands/hook/remove.d.ts +12 -0
  16. package/dist/commands/hook/remove.js +115 -0
  17. package/dist/commands/hook/toggle.d.ts +12 -0
  18. package/dist/commands/hook/toggle.js +125 -0
  19. package/dist/commands/init.d.ts +1 -1
  20. package/dist/commands/init.js +49 -9
  21. package/dist/commands/module/bindings.d.ts +14 -0
  22. package/dist/commands/module/bindings.js +125 -0
  23. package/dist/commands/module/create.d.ts +3 -0
  24. package/dist/commands/module/create.js +156 -78
  25. package/dist/commands/module/list.d.ts +1 -0
  26. package/dist/commands/module/list.js +22 -1
  27. package/dist/commands/module/sync.d.ts +29 -0
  28. package/dist/commands/module/sync.js +409 -0
  29. package/dist/commands/module/unlink.d.ts +11 -0
  30. package/dist/commands/module/unlink.js +77 -0
  31. package/dist/commands/module/update.d.ts +10 -0
  32. package/dist/commands/module/update.js +168 -5
  33. package/dist/commands/network/discover.d.ts +12 -0
  34. package/dist/commands/network/discover.js +210 -0
  35. package/dist/commands/network/get.d.ts +13 -0
  36. package/dist/commands/network/get.js +90 -0
  37. package/dist/commands/{auth/logout.d.ts → network/list.d.ts} +2 -9
  38. package/dist/commands/network/list.js +71 -0
  39. package/dist/commands/network/register.d.ts +16 -0
  40. package/dist/commands/network/register.js +144 -0
  41. package/dist/commands/parameter/sync.d.ts +13 -0
  42. package/dist/commands/parameter/sync.js +69 -1
  43. package/dist/commands/project/sync.d.ts +5 -11
  44. package/dist/commands/project/sync.js +12 -381
  45. package/dist/commands/seed.d.ts +93 -0
  46. package/dist/commands/seed.js +324 -0
  47. package/dist/commands/service/backup.d.ts +17 -0
  48. package/dist/commands/service/backup.js +156 -0
  49. package/dist/commands/service/backups.d.ts +14 -0
  50. package/dist/commands/service/backups.js +110 -0
  51. package/dist/commands/service/bind.d.ts +16 -0
  52. package/dist/commands/service/bind.js +106 -0
  53. package/dist/commands/service/bindings.d.ts +13 -0
  54. package/dist/commands/service/bindings.js +78 -0
  55. package/dist/commands/service/clone.d.ts +19 -0
  56. package/dist/commands/service/clone.js +153 -0
  57. package/dist/commands/service/create.d.ts +16 -0
  58. package/dist/commands/service/create.js +212 -0
  59. package/dist/commands/service/get.d.ts +13 -0
  60. package/dist/commands/service/get.js +97 -0
  61. package/dist/commands/service/list.d.ts +12 -0
  62. package/dist/commands/service/list.js +86 -0
  63. package/dist/commands/service/register.d.ts +21 -0
  64. package/dist/commands/service/register.js +215 -0
  65. package/dist/commands/service/restore.d.ts +19 -0
  66. package/dist/commands/service/restore.js +158 -0
  67. package/dist/commands/service/seed.d.ts +17 -0
  68. package/dist/commands/service/seed.js +173 -0
  69. package/dist/commands/service/templates.d.ts +10 -0
  70. package/dist/commands/service/templates.js +66 -0
  71. package/dist/commands/service/unbind.d.ts +15 -0
  72. package/dist/commands/service/unbind.js +74 -0
  73. package/dist/commands/stage/create.d.ts +23 -0
  74. package/dist/commands/stage/create.js +145 -6
  75. package/dist/commands/stage/delete.d.ts +11 -0
  76. package/dist/commands/stage/delete.js +85 -0
  77. package/dist/commands/stage/deploy.d.ts +34 -0
  78. package/dist/commands/stage/deploy.js +294 -0
  79. package/dist/commands/stage/ensure-branches.d.ts +23 -0
  80. package/dist/commands/stage/ensure-branches.js +101 -0
  81. package/dist/commands/stage/list.js +4 -0
  82. package/dist/commands/stage/status.d.ts +14 -0
  83. package/dist/commands/stage/status.js +100 -0
  84. package/dist/commands/{jira → tracker}/connect.js +32 -23
  85. package/dist/commands/tracker/hook/add.d.ts +25 -0
  86. package/dist/commands/tracker/hook/add.js +284 -0
  87. package/dist/commands/{jira → tracker}/hook/list.js +20 -11
  88. package/dist/commands/{jira/hook/add.d.ts → tracker/hook/logs.d.ts} +2 -3
  89. package/dist/commands/tracker/hook/logs.js +126 -0
  90. package/dist/commands/{jira → tracker}/hook/remove.js +9 -8
  91. package/dist/commands/{jira → tracker}/hook/toggle.js +14 -12
  92. package/dist/commands/tracker/project/init.d.ts +17 -0
  93. package/dist/commands/tracker/project/init.js +178 -0
  94. package/dist/commands/tracker/project/link-module.d.ts +17 -0
  95. package/dist/commands/tracker/project/link-module.js +287 -0
  96. package/dist/commands/tracker/project/list-modules.d.ts +11 -0
  97. package/dist/commands/tracker/project/list-modules.js +117 -0
  98. package/dist/commands/tracker/project/list.d.ts +10 -0
  99. package/dist/commands/tracker/project/list.js +90 -0
  100. package/dist/commands/tracker/project/status.d.ts +13 -0
  101. package/dist/commands/tracker/project/status.js +168 -0
  102. package/dist/commands/tracker/project/unlink-module.d.ts +13 -0
  103. package/dist/commands/tracker/project/unlink-module.js +251 -0
  104. package/dist/commands/{jira → tracker}/status.js +3 -3
  105. package/dist/lib/ensure-branches.d.ts +53 -0
  106. package/dist/lib/ensure-branches.js +149 -0
  107. package/dist/lib/git-providers/github.d.ts +16 -0
  108. package/dist/lib/git-providers/github.js +157 -0
  109. package/dist/lib/git-providers/gitlab.d.ts +16 -0
  110. package/dist/lib/git-providers/gitlab.js +148 -0
  111. package/dist/lib/git-providers/index.d.ts +67 -0
  112. package/dist/lib/git-providers/index.js +39 -0
  113. package/dist/lib/lambda-warmer.d.ts +106 -0
  114. package/dist/lib/lambda-warmer.js +189 -0
  115. package/dist/services/hyperdrive-sigv4.d.ts +359 -5
  116. package/dist/services/hyperdrive-sigv4.js +177 -12
  117. package/dist/utils/hook-flow.d.ts +60 -3
  118. package/dist/utils/hook-flow.js +437 -2
  119. package/dist/utils/hook-normalize.d.ts +6 -0
  120. package/dist/utils/hook-normalize.js +33 -0
  121. package/dist/utils/lifecycle-poller.d.ts +32 -0
  122. package/dist/utils/lifecycle-poller.js +72 -0
  123. package/dist/utils/retry.d.ts +43 -0
  124. package/dist/utils/retry.js +88 -0
  125. package/dist/utils/summary-display.js +1 -1
  126. package/dist/utils/tracker-project-flow.d.ts +84 -0
  127. package/dist/utils/tracker-project-flow.js +564 -0
  128. package/package.json +35 -7
  129. package/dist/commands/auth/login.d.ts +0 -16
  130. package/dist/commands/auth/login.js +0 -179
  131. package/dist/commands/auth/logout.js +0 -116
  132. package/dist/commands/auth/refresh.d.ts +0 -6
  133. package/dist/commands/auth/refresh.js +0 -66
  134. package/dist/commands/auth/status.d.ts +0 -6
  135. package/dist/commands/auth/status.js +0 -63
  136. package/dist/commands/config/get.d.ts +0 -9
  137. package/dist/commands/config/get.js +0 -37
  138. package/dist/commands/config/set.d.ts +0 -10
  139. package/dist/commands/config/set.js +0 -48
  140. package/dist/commands/config/show.d.ts +0 -6
  141. package/dist/commands/config/show.js +0 -10
  142. package/dist/commands/domain/current.d.ts +0 -6
  143. package/dist/commands/domain/current.js +0 -18
  144. package/dist/commands/domain/list.d.ts +0 -6
  145. package/dist/commands/domain/list.js +0 -42
  146. package/dist/commands/domain/switch.js +0 -40
  147. package/dist/commands/jira/hook/add.js +0 -147
  148. package/dist/services/tenant-service.d.ts +0 -127
  149. package/dist/services/tenant-service.js +0 -396
  150. package/dist/utils/auth-flow.d.ts +0 -147
  151. package/dist/utils/auth-flow.js +0 -479
  152. package/oclif.manifest.json +0 -3519
  153. /package/dist/commands/{jira → tracker}/connect.d.ts +0 -0
  154. /package/dist/commands/{jira → tracker}/hook/list.d.ts +0 -0
  155. /package/dist/commands/{jira → tracker}/hook/remove.d.ts +0 -0
  156. /package/dist/commands/{jira → tracker}/hook/toggle.d.ts +0 -0
  157. /package/dist/commands/{jira → tracker}/status.d.ts +0 -0
package/README.md CHANGED
@@ -20,7 +20,7 @@ $ npm install -g @hyperdrive.bot/cli
20
20
  $ hd COMMAND
21
21
  running command...
22
22
  $ hd (--version)
23
- @hyperdrive.bot/cli/1.0.13 linux-x64 node-v22.22.0
23
+ @hyperdrive.bot/cli/1.0.15 linux-x64 node-v22.22.2
24
24
  $ hd --help [COMMAND]
25
25
  USAGE
26
26
  $ hd COMMAND
@@ -32,44 +32,43 @@ USAGE
32
32
  * [`hd account add`](#hd-account-add)
33
33
  * [`hd account list`](#hd-account-list)
34
34
  * [`hd account remove`](#hd-account-remove)
35
- * [`hd auth login`](#hd-auth-login)
36
- * [`hd auth logout`](#hd-auth-logout)
37
- * [`hd auth refresh`](#hd-auth-refresh)
38
- * [`hd auth status`](#hd-auth-status)
39
35
  * [`hd ci account create`](#hd-ci-account-create)
40
36
  * [`hd ci account delete [ACCOUNTID]`](#hd-ci-account-delete-accountid)
41
37
  * [`hd ci account list`](#hd-ci-account-list)
42
- * [`hd config get KEY`](#hd-config-get-key)
43
- * [`hd config set KEY VALUE`](#hd-config-set-key-value)
44
- * [`hd config show`](#hd-config-show)
38
+ * [`hd deploy DIRECTORY`](#hd-deploy-directory)
45
39
  * [`hd deployment create`](#hd-deployment-create)
46
40
  * [`hd deployment get`](#hd-deployment-get)
47
41
  * [`hd deployment launch`](#hd-deployment-launch)
48
42
  * [`hd deployment list`](#hd-deployment-list)
49
- * [`hd domain current`](#hd-domain-current)
50
- * [`hd domain list`](#hd-domain-list)
51
- * [`hd domain switch DOMAIN`](#hd-domain-switch-domain)
43
+ * [`hd domain set-production DOMAIN`](#hd-domain-set-production-domain)
52
44
  * [`hd example [FILE]`](#hd-example-file)
53
45
  * [`hd git connect`](#hd-git-connect)
54
46
  * [`hd git disconnect`](#hd-git-disconnect)
55
47
  * [`hd git list`](#hd-git-list)
48
+ * [`hd git list-open-prs`](#hd-git-list-open-prs)
56
49
  * [`hd git sync`](#hd-git-sync)
57
50
  * [`hd help [COMMAND]`](#hd-help-command)
51
+ * [`hd hook add`](#hd-hook-add)
52
+ * [`hd hook list`](#hd-hook-list)
53
+ * [`hd hook logs`](#hd-hook-logs)
54
+ * [`hd hook remove`](#hd-hook-remove)
55
+ * [`hd hook toggle`](#hd-hook-toggle)
58
56
  * [`hd init`](#hd-init)
59
- * [`hd jira connect`](#hd-jira-connect)
60
- * [`hd jira hook add PROJECT`](#hd-jira-hook-add-project)
61
- * [`hd jira hook list PROJECT`](#hd-jira-hook-list-project)
62
- * [`hd jira hook remove PROJECT`](#hd-jira-hook-remove-project)
63
- * [`hd jira hook toggle PROJECT`](#hd-jira-hook-toggle-project)
64
- * [`hd jira status`](#hd-jira-status)
65
57
  * [`hd module analyze`](#hd-module-analyze)
58
+ * [`hd module bindings MODULE`](#hd-module-bindings-module)
66
59
  * [`hd module create`](#hd-module-create)
67
60
  * [`hd module destroy`](#hd-module-destroy)
68
61
  * [`hd module get`](#hd-module-get)
69
62
  * [`hd module link`](#hd-module-link)
70
63
  * [`hd module list`](#hd-module-list)
71
64
  * [`hd module reanalyze`](#hd-module-reanalyze)
65
+ * [`hd module sync [MODULE]`](#hd-module-sync-module)
66
+ * [`hd module unlink`](#hd-module-unlink)
72
67
  * [`hd module update`](#hd-module-update)
68
+ * [`hd network discover`](#hd-network-discover)
69
+ * [`hd network get SLUG`](#hd-network-get-slug)
70
+ * [`hd network list`](#hd-network-list)
71
+ * [`hd network register`](#hd-network-register)
73
72
  * [`hd parameter add`](#hd-parameter-add)
74
73
  * [`hd parameter backfill`](#hd-parameter-backfill)
75
74
  * [`hd parameter clear`](#hd-parameter-clear)
@@ -91,13 +90,43 @@ USAGE
91
90
  * [`hd project init`](#hd-project-init)
92
91
  * [`hd project list`](#hd-project-list)
93
92
  * [`hd project status PROJECT`](#hd-project-status-project)
94
- * [`hd project sync PROJECT`](#hd-project-sync-project)
93
+ * [`hd seed`](#hd-seed)
94
+ * [`hd service backup SLUG`](#hd-service-backup-slug)
95
+ * [`hd service backups SLUG`](#hd-service-backups-slug)
96
+ * [`hd service bind SERVICE MODULE`](#hd-service-bind-service-module)
97
+ * [`hd service bindings SERVICE`](#hd-service-bindings-service)
98
+ * [`hd service clone SOURCE`](#hd-service-clone-source)
99
+ * [`hd service create`](#hd-service-create)
100
+ * [`hd service get SLUG`](#hd-service-get-slug)
101
+ * [`hd service list`](#hd-service-list)
102
+ * [`hd service register`](#hd-service-register)
103
+ * [`hd service restore SLUG`](#hd-service-restore-slug)
104
+ * [`hd service seed SLUG`](#hd-service-seed-slug)
105
+ * [`hd service templates`](#hd-service-templates)
106
+ * [`hd service unbind SERVICE MODULE`](#hd-service-unbind-service-module)
95
107
  * [`hd stage access [STAGE]`](#hd-stage-access-stage)
96
108
  * [`hd stage create`](#hd-stage-create)
109
+ * [`hd stage delete`](#hd-stage-delete)
110
+ * [`hd stage deploy STAGENAME`](#hd-stage-deploy-stagename)
111
+ * [`hd stage ensure-branches STAGENAME`](#hd-stage-ensure-branches-stagename)
97
112
  * [`hd stage list`](#hd-stage-list)
98
113
  * [`hd stage revoke [STAGE]`](#hd-stage-revoke-stage)
99
114
  * [`hd stage share [STAGE]`](#hd-stage-share-stage)
115
+ * [`hd stage status SLUG`](#hd-stage-status-slug)
100
116
  * [`hd test-api`](#hd-test-api)
117
+ * [`hd tracker connect`](#hd-tracker-connect)
118
+ * [`hd tracker hook add PROJECT`](#hd-tracker-hook-add-project)
119
+ * [`hd tracker hook list PROJECT`](#hd-tracker-hook-list-project)
120
+ * [`hd tracker hook logs PROJECT`](#hd-tracker-hook-logs-project)
121
+ * [`hd tracker hook remove PROJECT`](#hd-tracker-hook-remove-project)
122
+ * [`hd tracker hook toggle PROJECT`](#hd-tracker-hook-toggle-project)
123
+ * [`hd tracker project init`](#hd-tracker-project-init)
124
+ * [`hd tracker project link-module`](#hd-tracker-project-link-module)
125
+ * [`hd tracker project list`](#hd-tracker-project-list)
126
+ * [`hd tracker project list-modules`](#hd-tracker-project-list-modules)
127
+ * [`hd tracker project status TRACKER-PROJECT`](#hd-tracker-project-status-tracker-project)
128
+ * [`hd tracker project unlink-module`](#hd-tracker-project-unlink-module)
129
+ * [`hd tracker status`](#hd-tracker-status)
101
130
 
102
131
  ## `hd account add`
103
132
 
@@ -126,7 +155,7 @@ EXAMPLES
126
155
  $ hd account add # Interactive mode
127
156
  ```
128
157
 
129
- _See code: [src/commands/account/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/account/add.ts)_
158
+ _See code: [src/commands/account/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/account/add.ts)_
130
159
 
131
160
  ## `hd account list`
132
161
 
@@ -146,7 +175,7 @@ EXAMPLES
146
175
  $ hd account list
147
176
  ```
148
177
 
149
- _See code: [src/commands/account/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/account/list.ts)_
178
+ _See code: [src/commands/account/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/account/list.ts)_
150
179
 
151
180
  ## `hd account remove`
152
181
 
@@ -170,92 +199,7 @@ EXAMPLES
170
199
  $ hd account remove --accountId 123456789012 --force
171
200
  ```
172
201
 
173
- _See code: [src/commands/account/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/account/remove.ts)_
174
-
175
- ## `hd auth login`
176
-
177
- Authenticate with Hyperdrive using OAuth 2.0 PKCE flow (or CI credentials)
178
-
179
- ```
180
- USAGE
181
- $ hd auth login [--ci] [-d <value>] [-p <value>]
182
-
183
- FLAGS
184
- -d, --domain=<value> Tenant domain (e.g., acme.hyperdrive.bot) - allows multiple installations
185
- -p, --port=<value> [default: 8765] Local callback server port
186
- --ci Use CI authentication (requires HD_CI_USERNAME and HD_CI_PASSWORD env vars)
187
-
188
- DESCRIPTION
189
- Authenticate with Hyperdrive using OAuth 2.0 PKCE flow (or CI credentials)
190
-
191
- EXAMPLES
192
- $ hd auth login
193
-
194
- $ hd auth login --domain acme.hyperdrive.bot
195
-
196
- $ hd auth login --port 9876
197
-
198
- $ hd auth login --ci --domain acme.hyperdrive.bot
199
- ```
200
-
201
- _See code: [src/commands/auth/login.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/auth/login.ts)_
202
-
203
- ## `hd auth logout`
204
-
205
- Remove stored credentials and logout. Use --domain to logout from a single domain. Without flags, removes all credentials and stored configuration.
206
-
207
- ```
208
- USAGE
209
- $ hd auth logout [-d <value>]
210
-
211
- FLAGS
212
- -d, --domain=<value> Logout from a specific domain only (keeps other domains and config intact)
213
-
214
- DESCRIPTION
215
- Remove stored credentials and logout. Use --domain to logout from a single domain. Without flags, removes all
216
- credentials and stored configuration.
217
-
218
- EXAMPLES
219
- $ hd auth logout
220
-
221
- $ hd auth logout --domain acme.hyperdrive.bot
222
- ```
223
-
224
- _See code: [src/commands/auth/logout.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/auth/logout.ts)_
225
-
226
- ## `hd auth refresh`
227
-
228
- Refresh expired AWS credentials using refresh token
229
-
230
- ```
231
- USAGE
232
- $ hd auth refresh
233
-
234
- DESCRIPTION
235
- Refresh expired AWS credentials using refresh token
236
-
237
- EXAMPLES
238
- $ hd auth refresh
239
- ```
240
-
241
- _See code: [src/commands/auth/refresh.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/auth/refresh.ts)_
242
-
243
- ## `hd auth status`
244
-
245
- Show current authentication status
246
-
247
- ```
248
- USAGE
249
- $ hd auth status
250
-
251
- DESCRIPTION
252
- Show current authentication status
253
-
254
- EXAMPLES
255
- $ hd auth status
256
- ```
257
-
258
- _See code: [src/commands/auth/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/auth/status.ts)_
202
+ _See code: [src/commands/account/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/account/remove.ts)_
259
203
 
260
204
  ## `hd ci account create`
261
205
 
@@ -286,7 +230,7 @@ EXAMPLES
286
230
  $ hd ci account create --name="gitlab-staging" --scope=deploy --scope=parameter:read
287
231
  ```
288
232
 
289
- _See code: [src/commands/ci/account/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/ci/account/create.ts)_
233
+ _See code: [src/commands/ci/account/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/ci/account/create.ts)_
290
234
 
291
235
  ## `hd ci account delete [ACCOUNTID]`
292
236
 
@@ -312,7 +256,7 @@ EXAMPLES
312
256
  $ hd ci account delete <account-id> --force
313
257
  ```
314
258
 
315
- _See code: [src/commands/ci/account/delete.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/ci/account/delete.ts)_
259
+ _See code: [src/commands/ci/account/delete.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/ci/account/delete.ts)_
316
260
 
317
261
  ## `hd ci account list`
318
262
 
@@ -335,73 +279,39 @@ EXAMPLES
335
279
  $ hd ci account list --json
336
280
  ```
337
281
 
338
- _See code: [src/commands/ci/account/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/ci/account/list.ts)_
282
+ _See code: [src/commands/ci/account/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/ci/account/list.ts)_
339
283
 
340
- ## `hd config get KEY`
284
+ ## `hd deploy DIRECTORY`
341
285
 
342
- Get CLI configuration value
286
+ Deploy a static site to Hyperdrive (S3 + CloudFront)
343
287
 
344
288
  ```
345
289
  USAGE
346
- $ hd config get KEY
290
+ $ hd deploy DIRECTORY -m <value> -s <value> [-c <value>] [-d <value>] [-n <value>] [--spa] [-t static]
347
291
 
348
292
  ARGUMENTS
349
- KEY (tenant-domain|bootstrap-url|api-url|region) Configuration key
350
-
351
- DESCRIPTION
352
- Get CLI configuration value
353
-
354
- EXAMPLES
355
- $ hd config get tenant-domain
356
-
357
- $ hd config get bootstrap-url
358
- ```
359
-
360
- _See code: [src/commands/config/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/config/get.ts)_
361
-
362
- ## `hd config set KEY VALUE`
363
-
364
- Set CLI configuration values
365
-
366
- ```
367
- USAGE
368
- $ hd config set KEY VALUE
293
+ DIRECTORY Path to the directory to deploy
369
294
 
370
- ARGUMENTS
371
- KEY (tenant-domain|bootstrap-url|api-url|region) Configuration key
372
- VALUE Configuration value
295
+ FLAGS
296
+ -c, --commit=<value> [default: static] Commit reference (default: "static")
297
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
298
+ -m, --moduleSlug=<value> (required) Module slug
299
+ -n, --name=<value> [default: Deployment-2026-05-07-22-26-46] Deployment name (auto-generated if omitted)
300
+ -s, --stage=<value> (required) Target stage
301
+ -t, --type=<option> [default: static] Deployment type
302
+ <options: static>
303
+ --spa Enable SPA routing mode — returns index.html for 404 paths
373
304
 
374
305
  DESCRIPTION
375
- Set CLI configuration values
306
+ Deploy a static site to Hyperdrive (S3 + CloudFront)
376
307
 
377
308
  EXAMPLES
378
- $ hd config set tenant-domain acme.hyperdrive.bot
379
-
380
- $ hd config set bootstrap-url https://custom-api.example.com/tenant/bootstrap
381
-
382
- $ hd config set api-url https://api.us-east-1.hyperdrive.bot
383
-
384
- $ hd config set region us-west-2
385
- ```
386
-
387
- _See code: [src/commands/config/set.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/config/set.ts)_
388
-
389
- ## `hd config show`
390
-
391
- Show all CLI configuration settings
392
-
393
- ```
394
- USAGE
395
- $ hd config show
396
-
397
- DESCRIPTION
398
- Show all CLI configuration settings
309
+ $ hd deploy ./my-site --type static --stage dev --moduleSlug my-demo
399
310
 
400
- EXAMPLES
401
- $ hd config show
311
+ $ hd deploy ./dist --type static --stage dev -m my-app --name "Release v1.0"
402
312
  ```
403
313
 
404
- _See code: [src/commands/config/show.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/config/show.ts)_
314
+ _See code: [src/commands/deploy.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/deploy.ts)_
405
315
 
406
316
  ## `hd deployment create`
407
317
 
@@ -416,7 +326,7 @@ FLAGS
416
326
  -c, --commit=<value> (required) Commit hash
417
327
  -d, --domain=<value> Tenant domain (for multi-domain setups)
418
328
  -m, --moduleSlug=<value> (required) Module slug
419
- -n, --name=<value> [default: Deployment-2026-02-09-20-44-58] The name of the deployment
329
+ -n, --name=<value> [default: Deployment-2026-05-07-22-26-46] The name of the deployment
420
330
  -r, --regions=<value>... [default: ] Regions for the deployment
421
331
  -s, --stage=<value> (required) Stage for the deployment
422
332
  -v, --verbose Show detailed build logs
@@ -435,7 +345,7 @@ EXAMPLES
435
345
  $ hd deployment create --stage="dev" --commit="abc123" --verbose
436
346
  ```
437
347
 
438
- _See code: [src/commands/deployment/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/deployment/create.ts)_
348
+ _See code: [src/commands/deployment/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/deployment/create.ts)_
439
349
 
440
350
  ## `hd deployment get`
441
351
 
@@ -460,7 +370,7 @@ EXAMPLES
460
370
  $ hd deployment get --name="prod-release-v1" --stage="prod"
461
371
  ```
462
372
 
463
- _See code: [src/commands/deployment/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/deployment/get.ts)_
373
+ _See code: [src/commands/deployment/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/deployment/get.ts)_
464
374
 
465
375
  ## `hd deployment launch`
466
376
 
@@ -487,7 +397,7 @@ EXAMPLES
487
397
  $ hd deployment launch --name="prod-release" --stage="prod" --region="us-west-2"
488
398
  ```
489
399
 
490
- _See code: [src/commands/deployment/launch.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/deployment/launch.ts)_
400
+ _See code: [src/commands/deployment/launch.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/deployment/launch.ts)_
491
401
 
492
402
  ## `hd deployment list`
493
403
 
@@ -511,61 +421,27 @@ EXAMPLES
511
421
  $ hd deployment list --stage="prod" --moduleSlug="my-api"
512
422
  ```
513
423
 
514
- _See code: [src/commands/deployment/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/deployment/list.ts)_
515
-
516
- ## `hd domain current`
517
-
518
- Show the current default domain
519
-
520
- ```
521
- USAGE
522
- $ hd domain current
523
-
524
- DESCRIPTION
525
- Show the current default domain
526
-
527
- EXAMPLES
528
- $ hd domain current
529
- ```
530
-
531
- _See code: [src/commands/domain/current.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/domain/current.ts)_
532
-
533
- ## `hd domain list`
534
-
535
- List all configured domains/installations
536
-
537
- ```
538
- USAGE
539
- $ hd domain list
540
-
541
- DESCRIPTION
542
- List all configured domains/installations
543
-
544
- EXAMPLES
545
- $ hd domain list
546
- ```
547
-
548
- _See code: [src/commands/domain/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/domain/list.ts)_
424
+ _See code: [src/commands/deployment/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/deployment/list.ts)_
549
425
 
550
- ## `hd domain switch DOMAIN`
426
+ ## `hd domain set-production DOMAIN`
551
427
 
552
- Switch the default domain for CLI commands
428
+ Set or update the production domain for the current tenant
553
429
 
554
430
  ```
555
431
  USAGE
556
- $ hd domain switch DOMAIN
432
+ $ hd domain set-production DOMAIN
557
433
 
558
434
  ARGUMENTS
559
- DOMAIN The domain to set as default
435
+ DOMAIN The production domain to register (e.g. acme.com)
560
436
 
561
437
  DESCRIPTION
562
- Switch the default domain for CLI commands
438
+ Set or update the production domain for the current tenant
563
439
 
564
440
  EXAMPLES
565
- $ hd domain switch acme.hyperdrive.bot
441
+ $ hd domain set-production acme.com
566
442
  ```
567
443
 
568
- _See code: [src/commands/domain/switch.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/domain/switch.ts)_
444
+ _See code: [src/commands/domain/set-production.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/domain/set-production.ts)_
569
445
 
570
446
  ## `hd example [FILE]`
571
447
 
@@ -589,7 +465,7 @@ EXAMPLES
589
465
  $ hd example
590
466
  ```
591
467
 
592
- _See code: [src/commands/example.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/example.ts)_
468
+ _See code: [src/commands/example.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/example.ts)_
593
469
 
594
470
  ## `hd git connect`
595
471
 
@@ -613,7 +489,7 @@ EXAMPLES
613
489
  $ hd git connect --provider=gitlab
614
490
  ```
615
491
 
616
- _See code: [src/commands/git/connect.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/git/connect.ts)_
492
+ _See code: [src/commands/git/connect.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/git/connect.ts)_
617
493
 
618
494
  ## `hd git disconnect`
619
495
 
@@ -638,7 +514,7 @@ EXAMPLES
638
514
  $ hd git disconnect --provider=github --installation-id=12345
639
515
  ```
640
516
 
641
- _See code: [src/commands/git/disconnect.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/git/disconnect.ts)_
517
+ _See code: [src/commands/git/disconnect.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/git/disconnect.ts)_
642
518
 
643
519
  ## `hd git list`
644
520
 
@@ -662,7 +538,37 @@ EXAMPLES
662
538
  $ hd git list --provider=github
663
539
  ```
664
540
 
665
- _See code: [src/commands/git/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/git/list.ts)_
541
+ _See code: [src/commands/git/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/git/list.ts)_
542
+
543
+ ## `hd git list-open-prs`
544
+
545
+ List open pull requests (GitHub) or merge requests (GitLab) for a repository
546
+
547
+ ```
548
+ USAGE
549
+ $ hd git list-open-prs -p github|gitlab -r <value> [--json] [-t <value>]
550
+
551
+ FLAGS
552
+ -p, --provider=<option> (required) Git provider
553
+ <options: github|gitlab>
554
+ -r, --repo=<value> (required) Repository (owner/repo for GitHub, project path for GitLab)
555
+ -t, --token=<value> API token (overrides GITHUB_TOKEN / GITLAB_TOKEN env var)
556
+ --json Output in JSON format
557
+
558
+ DESCRIPTION
559
+ List open pull requests (GitHub) or merge requests (GitLab) for a repository
560
+
561
+ EXAMPLES
562
+ $ hd git list-open-prs --provider=github --repo=devsquad/super-repo
563
+
564
+ $ hd git list-open-prs --provider=gitlab --repo=dev_squad/repo/web-apps/sign
565
+
566
+ $ hd git list-open-prs --provider=github --repo=devsquad/super-repo --json
567
+
568
+ $ hd git list-open-prs --provider=gitlab --repo=dev_squad/repo/web-apps/sign --token=glpat-xxx
569
+ ```
570
+
571
+ _See code: [src/commands/git/list-open-prs.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/git/list-open-prs.ts)_
666
572
 
667
573
  ## `hd git sync`
668
574
 
@@ -698,7 +604,7 @@ EXAMPLES
698
604
  $ hd git sync --all --remote upstream --merge-strategy no-ff
699
605
  ```
700
606
 
701
- _See code: [src/commands/git/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/git/sync.ts)_
607
+ _See code: [src/commands/git/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/git/sync.ts)_
702
608
 
703
609
  ## `hd help [COMMAND]`
704
610
 
@@ -720,115 +626,101 @@ DESCRIPTION
720
626
 
721
627
  _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v6.0.21/src/commands/help.ts)_
722
628
 
723
- ## `hd init`
724
-
725
- Initialize Hyperdrive CLI with guided setup wizard
726
-
727
- ```
728
- USAGE
729
- $ hd init
730
-
731
- DESCRIPTION
732
- Initialize Hyperdrive CLI with guided setup wizard
733
-
734
- EXAMPLES
735
- $ hd init
736
- ```
737
-
738
- _See code: [src/commands/init.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/init.ts)_
739
-
740
- ## `hd jira connect`
629
+ ## `hd hook add`
741
630
 
742
- Register your Jira instance with Hyperdrive (run BEFORE installing the Forge app)
631
+ Create a tenant lifecycle hook or cron-triggered hook
743
632
 
744
633
  ```
745
634
  USAGE
746
- $ hd jira connect [-d <value>] [-j <value>]
635
+ $ hd hook add [--action-config <value>] [--action-type <value>] [-d <value>] [--flexible-window <value>
636
+ [--cron <value> | --event <value> | --conditions <value>]] [--json] [--order <value>] [--timezone <value> ]
747
637
 
748
638
  FLAGS
749
- -d, --domain=<value> Tenant domain (for multi-domain setups)
750
- -j, --jira-domain=<value> Your Jira domain (e.g., dev-squad.atlassian.net)
639
+ -d, --domain=<value> Hyperdrive tenant domain
640
+ --action-config=<value> Action config as JSON string
641
+ --action-type=<value> Action type (slack-notify, webhook, ci-trigger, etc.)
642
+ --conditions=<value> Trigger conditions as JSON string (lifecycle hooks only)
643
+ --cron=<value> Cron expression or rate expression (e.g. "0 3 * * ? *", "rate(1 hour)"). Minimum
644
+ interval: 5 minutes.
645
+ --event=<value> Lifecycle event (e.g., deploy.completed, stage.provisioned)
646
+ --flexible-window=<value> Flexible time window in minutes for cron hooks (default: 15, max: 1440)
647
+ --json Output raw JSON
648
+ --order=<value> Execution order (lower runs first)
649
+ --timezone=<value> IANA timezone for cron expression (default: UTC). E.g. "America/Sao_Paulo"
751
650
 
752
651
  DESCRIPTION
753
- Register your Jira instance with Hyperdrive (run BEFORE installing the Forge app)
652
+ Create a tenant lifecycle hook or cron-triggered hook
754
653
 
755
654
  EXAMPLES
756
- $ hd jira connect
655
+ $ hd hook add
757
656
 
758
- $ hd jira connect --jira-domain dev-squad.atlassian.net
657
+ $ hd hook add --event deploy.completed --action-type slack-notify --action-config '{"channel":"C0ABC"}'
759
658
 
760
- $ hd jira connect --domain sankhya.hyperdrivebot.dev --jira-domain dev-squad.atlassian.net
659
+ $ hd hook add --cron "0 3 * * ? *" --timezone "America/Sao_Paulo" --action-type webhook --action-config '{"url":"https://example.com/hook","method":"POST"}'
660
+
661
+ $ hd hook add --cron "rate(1 hour)" --action-type slack-notify --action-config '{"channel":"C0ABC"}'
761
662
  ```
762
663
 
763
- _See code: [src/commands/jira/connect.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/connect.ts)_
664
+ _See code: [src/commands/hook/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/hook/add.ts)_
764
665
 
765
- ## `hd jira hook add PROJECT`
666
+ ## `hd hook list`
766
667
 
767
- Add a status transition hook to a Jira-linked project
668
+ List tenant lifecycle hooks
768
669
 
769
670
  ```
770
671
  USAGE
771
- $ hd jira hook add PROJECT [--action <value>] [--config <value>] [-d <value>] [--json] [--status <value>]
772
-
773
- ARGUMENTS
774
- PROJECT Hyperdrive project ID or slug
672
+ $ hd hook list [-d <value>] [--json]
775
673
 
776
674
  FLAGS
777
675
  -d, --domain=<value> Hyperdrive tenant domain
778
- --action=<value> Action type (slack-notify, adhb-enrich, webhook, ci-trigger)
779
- --config=<value> Action config as JSON string
780
676
  --json Output raw JSON
781
- --status=<value> Trigger status (Jira status name or "*" for all)
782
677
 
783
678
  DESCRIPTION
784
- Add a status transition hook to a Jira-linked project
679
+ List tenant lifecycle hooks
785
680
 
786
681
  EXAMPLES
787
- $ hd jira hook add my-project
788
-
789
- $ hd jira hook add my-project --status "In Progress" --action adhb-enrich --config '{"priority":"high"}'
682
+ $ hd hook list
790
683
 
791
- $ hd jira hook add my-project --json
684
+ $ hd hook list --json
792
685
  ```
793
686
 
794
- _See code: [src/commands/jira/hook/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/hook/add.ts)_
687
+ _See code: [src/commands/hook/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/hook/list.ts)_
795
688
 
796
- ## `hd jira hook list PROJECT`
689
+ ## `hd hook logs`
797
690
 
798
- List status transition hooks for a Jira-linked project
691
+ View tenant lifecycle hook execution logs
799
692
 
800
693
  ```
801
694
  USAGE
802
- $ hd jira hook list PROJECT [-d <value>] [--json]
803
-
804
- ARGUMENTS
805
- PROJECT Hyperdrive project ID or slug
695
+ $ hd hook logs [-d <value>] [--json] [--limit <value>] [--status success|failed]
806
696
 
807
697
  FLAGS
808
- -d, --domain=<value> Hyperdrive tenant domain
809
- --json Output raw JSON
698
+ -d, --domain=<value> Hyperdrive tenant domain
699
+ --json Output raw JSON
700
+ --limit=<value> [default: 20] Number of log entries to display
701
+ --status=<option> Filter by execution status
702
+ <options: success|failed>
810
703
 
811
704
  DESCRIPTION
812
- List status transition hooks for a Jira-linked project
705
+ View tenant lifecycle hook execution logs
813
706
 
814
707
  EXAMPLES
815
- $ hd jira hook list my-project
708
+ $ hd hook logs
816
709
 
817
- $ hd jira hook list my-project --json
710
+ $ hd hook logs --status failed --limit 5
711
+
712
+ $ hd hook logs --json
818
713
  ```
819
714
 
820
- _See code: [src/commands/jira/hook/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/hook/list.ts)_
715
+ _See code: [src/commands/hook/logs.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/hook/logs.ts)_
821
716
 
822
- ## `hd jira hook remove PROJECT`
717
+ ## `hd hook remove`
823
718
 
824
- Remove a status transition hook from a Jira-linked project
719
+ Delete a tenant lifecycle hook
825
720
 
826
721
  ```
827
722
  USAGE
828
- $ hd jira hook remove PROJECT [-d <value>] [--hook-id <value>] [--json]
829
-
830
- ARGUMENTS
831
- PROJECT Hyperdrive project ID or slug
723
+ $ hd hook remove [-d <value>] [--hook-id <value>] [--json]
832
724
 
833
725
  FLAGS
834
726
  -d, --domain=<value> Hyperdrive tenant domain
@@ -836,28 +728,25 @@ FLAGS
836
728
  --json Output raw JSON
837
729
 
838
730
  DESCRIPTION
839
- Remove a status transition hook from a Jira-linked project
731
+ Delete a tenant lifecycle hook
840
732
 
841
733
  EXAMPLES
842
- $ hd jira hook remove my-project
734
+ $ hd hook remove
843
735
 
844
- $ hd jira hook remove my-project --hook-id hook-123
736
+ $ hd hook remove --hook-id 01JQXYZ
845
737
 
846
- $ hd jira hook remove my-project --hook-id hook-123 --json
738
+ $ hd hook remove --hook-id 01JQXYZ --json
847
739
  ```
848
740
 
849
- _See code: [src/commands/jira/hook/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/hook/remove.ts)_
741
+ _See code: [src/commands/hook/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/hook/remove.ts)_
850
742
 
851
- ## `hd jira hook toggle PROJECT`
743
+ ## `hd hook toggle`
852
744
 
853
- Toggle the enabled state of a status transition hook
745
+ Enable or disable a tenant lifecycle hook
854
746
 
855
747
  ```
856
748
  USAGE
857
- $ hd jira hook toggle PROJECT [-d <value>] [--hook-id <value>] [--json]
858
-
859
- ARGUMENTS
860
- PROJECT Hyperdrive project ID or slug
749
+ $ hd hook toggle [-d <value>] [--hook-id <value>] [--json]
861
750
 
862
751
  FLAGS
863
752
  -d, --domain=<value> Hyperdrive tenant domain
@@ -865,37 +754,34 @@ FLAGS
865
754
  --json Output raw JSON
866
755
 
867
756
  DESCRIPTION
868
- Toggle the enabled state of a status transition hook
757
+ Enable or disable a tenant lifecycle hook
869
758
 
870
759
  EXAMPLES
871
- $ hd jira hook toggle my-project
760
+ $ hd hook toggle
872
761
 
873
- $ hd jira hook toggle my-project --hook-id hook-123
762
+ $ hd hook toggle --hook-id 01JQXYZ
874
763
 
875
- $ hd jira hook toggle my-project --hook-id hook-123 --json
764
+ $ hd hook toggle --hook-id 01JQXYZ --json
876
765
  ```
877
766
 
878
- _See code: [src/commands/jira/hook/toggle.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/hook/toggle.ts)_
767
+ _See code: [src/commands/hook/toggle.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/hook/toggle.ts)_
879
768
 
880
- ## `hd jira status`
769
+ ## `hd init`
881
770
 
882
- Check the status of your Jira integration
771
+ Initialize Hyperdrive CLI with guided setup wizard
883
772
 
884
773
  ```
885
774
  USAGE
886
- $ hd jira status [-d <value>]
887
-
888
- FLAGS
889
- -d, --domain=<value> Tenant domain (for multi-domain setups)
775
+ $ hd init
890
776
 
891
777
  DESCRIPTION
892
- Check the status of your Jira integration
778
+ Initialize Hyperdrive CLI with guided setup wizard
893
779
 
894
780
  EXAMPLES
895
- $ hd jira status
781
+ $ hd init
896
782
  ```
897
783
 
898
- _See code: [src/commands/jira/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/jira/status.ts)_
784
+ _See code: [src/commands/init.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/init.ts)_
899
785
 
900
786
  ## `hd module analyze`
901
787
 
@@ -923,7 +809,36 @@ EXAMPLES
923
809
  $ hd module analyze --slug="my-module" --verbose
924
810
  ```
925
811
 
926
- _See code: [src/commands/module/analyze.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/analyze.ts)_
812
+ _See code: [src/commands/module/analyze.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/analyze.ts)_
813
+
814
+ ## `hd module bindings MODULE`
815
+
816
+ List all service bindings for a module
817
+
818
+ ```
819
+ USAGE
820
+ $ hd module bindings MODULE [-d <value>] [--json] [--stage <value>]
821
+
822
+ ARGUMENTS
823
+ MODULE Module slug
824
+
825
+ FLAGS
826
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
827
+ --json Output raw JSON response
828
+ --stage=<value> Filter by stage
829
+
830
+ DESCRIPTION
831
+ List all service bindings for a module
832
+
833
+ EXAMPLES
834
+ $ hd module bindings my-api
835
+
836
+ $ hd module bindings my-api --stage live
837
+
838
+ $ hd module bindings my-api --json
839
+ ```
840
+
841
+ _See code: [src/commands/module/bindings.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/bindings.ts)_
927
842
 
928
843
  ## `hd module create`
929
844
 
@@ -935,9 +850,9 @@ USAGE
935
850
  nodejs|python|go|rust|java|dotnet|ruby] [--buildRuntimeVersion <value>] [--ciService
936
851
  github-actions|gitlab-ci|circle-ci|jenkins] [--defaultBranch <value>] [-d <value>] [--framework
937
852
  express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fastapi|gin|actix|spring|aspnet|rails|serverless|se
938
- rverless-express|serverless-nestjs|other] [--installCommand <value>] [--name <value>] [--runCommand <value>] [-r
939
- nodejs|python|go|rust|java|dotnet|ruby] [--runtimeVersion <value>] [--slug <value>] [--sourceDirectory <value>]
940
- [--sourceLocation <value>]
853
+ rverless-express|serverless-nestjs|other] [--installCommand <value>] [--json] [--module-type backend|frontend|cdk]
854
+ [--name <value>] [--runCommand <value>] [-r nodejs|python|go|rust|java|dotnet|ruby] [--runtimeVersion <value>]
855
+ [--slug <value>] [--subdomain <value>] [--sourceDirectory <value>] [--sourceLocation <value>]
941
856
 
942
857
  FLAGS
943
858
  -d, --domain=<value> Tenant domain (for multi-domain setups)
@@ -958,6 +873,10 @@ FLAGS
958
873
  express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fastapi|gin|actix|
959
874
  spring|aspnet|rails|serverless|serverless-express|serverless-nestjs|other>
960
875
  --installCommand=<value> Install command
876
+ --json Output raw JSON response (requires all flags to be provided, skips interactive
877
+ prompts)
878
+ --module-type=<option> Module deployment type (determines API Gateway vs CloudFront vs CDK)
879
+ <options: backend|frontend|cdk>
961
880
  --name=<value> Name of the project
962
881
  --runCommand=<value> Run command
963
882
  --runtimeVersion=<value> Runtime version (e.g., 20, 3.12, 1.21)
@@ -965,6 +884,7 @@ FLAGS
965
884
  --sourceDirectory=<value> Source code directory (e.g., src, lib, . for root) - default: src for Lambda, . for
966
885
  static
967
886
  --sourceLocation=<value> Source location of the project
887
+ --subdomain=<value> Subdomain prefix for custom domain URLs (e.g., "api", "app", "www", "" for apex)
968
888
 
969
889
  DESCRIPTION
970
890
  Create a new project
@@ -975,7 +895,7 @@ EXAMPLES
975
895
  $ hd module create --name="API Service" --framework="Serverless Framework"
976
896
  ```
977
897
 
978
- _See code: [src/commands/module/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/create.ts)_
898
+ _See code: [src/commands/module/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/create.ts)_
979
899
 
980
900
  ## `hd module destroy`
981
901
 
@@ -999,7 +919,7 @@ EXAMPLES
999
919
  $ hd module destroy --slug="old-project" --force
1000
920
  ```
1001
921
 
1002
- _See code: [src/commands/module/destroy.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/destroy.ts)_
922
+ _See code: [src/commands/module/destroy.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/destroy.ts)_
1003
923
 
1004
924
  ## `hd module get`
1005
925
 
@@ -1022,7 +942,7 @@ EXAMPLES
1022
942
  $ hd module get
1023
943
  ```
1024
944
 
1025
- _See code: [src/commands/module/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/get.ts)_
945
+ _See code: [src/commands/module/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/get.ts)_
1026
946
 
1027
947
  ## `hd module link`
1028
948
 
@@ -1045,7 +965,7 @@ EXAMPLES
1045
965
  $ hd module link --originSlug="vixting-integration" --targetSlug="vixting-api" --parameter="VLOW_API_ENDPOINT_PREFIX"
1046
966
  ```
1047
967
 
1048
- _See code: [src/commands/module/link.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/link.ts)_
968
+ _See code: [src/commands/module/link.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/link.ts)_
1049
969
 
1050
970
  ## `hd module list`
1051
971
 
@@ -1053,19 +973,22 @@ List all modules/projects
1053
973
 
1054
974
  ```
1055
975
  USAGE
1056
- $ hd module list [-d <value>]
976
+ $ hd module list [-d <value>] [--json]
1057
977
 
1058
978
  FLAGS
1059
979
  -d, --domain=<value> Tenant domain (for multi-domain setups)
980
+ --json Output raw JSON response
1060
981
 
1061
982
  DESCRIPTION
1062
983
  List all modules/projects
1063
984
 
1064
985
  EXAMPLES
1065
986
  $ hd module list
987
+
988
+ $ hd module list --json
1066
989
  ```
1067
990
 
1068
- _See code: [src/commands/module/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/list.ts)_
991
+ _See code: [src/commands/module/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/list.ts)_
1069
992
 
1070
993
  ## `hd module reanalyze`
1071
994
 
@@ -1094,122 +1017,307 @@ EXAMPLES
1094
1017
  $ hd module reanalyze -s my-module -p "Exclude source maps from S3 upload" --verbose
1095
1018
  ```
1096
1019
 
1097
- _See code: [src/commands/module/reanalyze.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/reanalyze.ts)_
1020
+ _See code: [src/commands/module/reanalyze.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/reanalyze.ts)_
1098
1021
 
1099
- ## `hd module update`
1022
+ ## `hd module sync [MODULE]`
1100
1023
 
1101
- Update a module/project configuration
1024
+ Generate architecture summaries for modules via Claude analysis
1102
1025
 
1103
1026
  ```
1104
1027
  USAGE
1105
- $ hd module update -s <value> [--buildCommand <value>] [--buildDirectory <value>] [--buildFolder <value>]
1106
- [--buildRuntime nodejs|python|go|rust|java|dotnet|ruby] [--buildRuntimeVersion <value>] [--ciService
1107
- github-actions|gitlab-ci|circle-ci|jenkins] [--defaultBranch <value>] [--deploymentStrategy serverless] [-d <value>]
1108
- [--framework
1109
- express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fastapi|gin|actix|spring|aspnet|rails|other]
1110
- [--installCommand <value>] [--name <value>] [--routeDiscovery] [--runCommand <value>] [-r
1111
- nodejs|python|go|rust|java|dotnet|ruby] [-v <value>] [--sourceDirectory <value>] [--sourceLocation <value>]
1028
+ $ hd module sync [MODULE] [--all | ] [-d <value>] [--json]
1029
+
1030
+ ARGUMENTS
1031
+ MODULE Module slug
1112
1032
 
1113
1033
  FLAGS
1114
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1115
- -r, --runtime=<option> Runtime environment
1116
- <options: nodejs|python|go|rust|java|dotnet|ruby>
1117
- -s, --slug=<value> (required) Module slug to update (required)
1118
- -v, --runtimeVersion=<value> Runtime version (e.g., 20, 3.12, 1.21)
1119
- --buildCommand=<value> Build command
1120
- --buildDirectory=<value> Build output directory (e.g., dist, build, .next) - where compiled artifacts are
1121
- output
1122
- --buildFolder=<value> Build folder
1123
- --buildRuntime=<option> Build runtime for Dockerfile template selection
1124
- <options: nodejs|python|go|rust|java|dotnet|ruby>
1125
- --buildRuntimeVersion=<value> Build runtime version (e.g., 20 for Node, 3.12 for Python)
1126
- --ciService=<option> CI service used
1127
- <options: github-actions|gitlab-ci|circle-ci|jenkins>
1128
- --defaultBranch=<value> Default git branch to branch from (e.g., main, master)
1129
- --deploymentStrategy=<option> Deployment strategy: "serverless" for Serverless Framework deployment to Lambda
1130
- <options: serverless>
1131
- --framework=<option> Framework used
1132
- <options: express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fastapi|
1133
- gin|actix|spring|aspnet|rails|other>
1134
- --installCommand=<value> Install command
1135
- --name=<value> Name of the project
1136
- --[no-]routeDiscovery Enable AI-powered route discovery for per-route Lambda functions
1137
- --runCommand=<value> Run command
1138
- --sourceDirectory=<value> Source code directory (e.g., src, lib, . for root) - default: src for Lambda, . for
1139
- static
1140
- --sourceLocation=<value> Source location of the project
1034
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1035
+ --all Sync all modules in the tenant
1036
+ --json Output result as JSON
1141
1037
 
1142
1038
  DESCRIPTION
1143
- Update a module/project configuration
1039
+ Generate architecture summaries for modules via Claude analysis
1144
1040
 
1145
1041
  EXAMPLES
1146
- $ hd module update --slug="my-module" --runtimeVersion="12"
1042
+ $ hd module sync my-module
1147
1043
 
1148
- $ hd module update --slug="my-module" --buildCommand="npm run build:prod"
1044
+ $ hd module sync my-module --json
1149
1045
 
1150
- $ hd module update --slug="my-module" --name="New Name" --framework="React.js"
1046
+ $ hd module sync --all
1047
+
1048
+ $ hd module sync --all --json
1151
1049
  ```
1152
1050
 
1153
- _See code: [src/commands/module/update.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/module/update.ts)_
1051
+ _See code: [src/commands/module/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/sync.ts)_
1154
1052
 
1155
- ## `hd parameter add`
1053
+ ## `hd module unlink`
1156
1054
 
1157
- Add a new parameter to SSM Parameter Store
1055
+ Remove a dependency link between two modules
1158
1056
 
1159
1057
  ```
1160
1058
  USAGE
1161
- $ hd parameter add --accountId <value> -k <value> -m <value> -v <value> [-d <value>] [--specific] [-s <value>]
1059
+ $ hd module unlink --originSlug <value> --targetSlug <value> [-d <value>]
1162
1060
 
1163
1061
  FLAGS
1164
1062
  -d, --domain=<value> Tenant domain (for multi-domain setups)
1165
- -k, --key=<value> (required) Parameter key/name
1166
- -m, --moduleSlug=<value> (required) Module slug
1167
- -s, --stage=<value> [default: all] Stage for the parameter (default: all stages)
1168
- -v, --value=<value> (required) Parameter value
1169
- --accountId=<value> (required) AWS Account ID
1170
- --specific Make parameter specific to this project (default: global)
1063
+ --originSlug=<value> (required) Slug of the module to remove the dependency from
1064
+ --targetSlug=<value> (required) Slug of the dependency to remove
1171
1065
 
1172
1066
  DESCRIPTION
1173
- Add a new parameter to SSM Parameter Store
1067
+ Remove a dependency link between two modules
1174
1068
 
1175
1069
  EXAMPLES
1176
- $ hd parameter add --key="API_URL" --value="https://api.example.com" --stage="dev"
1177
-
1178
- $ hd parameter add --key="DB_HOST" --value="localhost" --specific
1179
-
1180
- $ hd parameter add --key="PORT" --value="3000"
1070
+ $ hd module unlink --originSlug="my-frontend" --targetSlug="my-api"
1181
1071
  ```
1182
1072
 
1183
- _See code: [src/commands/parameter/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/add.ts)_
1073
+ _See code: [src/commands/module/unlink.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/unlink.ts)_
1184
1074
 
1185
- ## `hd parameter backfill`
1075
+ ## `hd module update`
1186
1076
 
1187
- Backfill existing SSM parameters to DynamoDB (one-time migration)
1077
+ Update a module/project configuration
1188
1078
 
1189
1079
  ```
1190
1080
  USAGE
1191
- $ hd parameter backfill --accountId <value> [-d <value>] [--dry-run] [--no-dry-run]
1081
+ $ hd module update -s <value> [--buildCommand <value>] [--buildDirectory <value>] [--buildFolder <value>]
1082
+ [--buildRuntime nodejs|python|go|rust|java|dotnet|ruby] [--buildRuntimeVersion <value>] [--ciService
1083
+ github-actions|gitlab-ci|circle-ci|jenkins] [--defaultBranch <value>] [--dependsOn <value>] [--deploymentStrategy
1084
+ serverless|docker-build] [--dockerBuild <value>] [--deploy-command <value>] [-d <value>] [--framework
1085
+ express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fastapi|gin|actix|spring|aspnet|rails|other]
1086
+ [--installCommand <value>] [--postDeployCommand <value>] [--postDeployFailureMode fail|warn] [--module-type
1087
+ backend|frontend|cdk] [--name <value>] [--routeDiscovery] [--runtime-mode handler|server] [--runCommand <value>] [-r
1088
+ nodejs|python|go|rust|java|dotnet|ruby|static] [--runtime-config <value>] [-v <value>] [--show] [--sourceDirectory
1089
+ <value>] [--sourceLocation <value>] [--subdomain <value>]
1192
1090
 
1193
1091
  FLAGS
1194
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1195
- --accountId=<value> (required) AWS Account ID to backfill from
1196
- --dry-run Preview what would be imported without making changes (default: true)
1197
- --no-dry-run Actually perform the backfill (writes to DynamoDB)
1092
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1093
+ -r, --runtime=<option> Runtime environment
1094
+ <options: nodejs|python|go|rust|java|dotnet|ruby|static>
1095
+ -s, --slug=<value> (required) Module slug to update (required)
1096
+ -v, --runtimeVersion=<value> Runtime version (e.g., 20, 3.12, 1.21)
1097
+ --buildCommand=<value> Build command
1098
+ --buildDirectory=<value> Build output directory (e.g., dist, build, .next) - where compiled artifacts are
1099
+ output
1100
+ --buildFolder=<value> Build folder
1101
+ --buildRuntime=<option> Build runtime for Dockerfile template selection
1102
+ <options: nodejs|python|go|rust|java|dotnet|ruby>
1103
+ --buildRuntimeVersion=<value> Build runtime version (e.g., 20 for Node, 3.12 for Python)
1104
+ --ciService=<option> CI service used
1105
+ <options: github-actions|gitlab-ci|circle-ci|jenkins>
1106
+ --defaultBranch=<value> Default git branch to branch from (e.g., main, master)
1107
+ --dependsOn=<value> JSON array of artifact dependencies:
1108
+ [{"artifactKey":"name","downloadTo":"path/"}]
1109
+ --deploy-command=<value> Custom LAUNCH phase deploy command (default: sls deploy --package .serverless
1110
+ --stage <stage> --region <region>). E.g., "npm run deploy:devsquad". BUILD phase
1111
+ uses buildCommand.
1112
+ --deploymentStrategy=<option> Deployment strategy: "serverless" for SLS deploy, "docker-build" for
1113
+ Docker-based artifact builds
1114
+ <options: serverless|docker-build>
1115
+ --dockerBuild=<value> Docker-build config JSON:
1116
+ {"image","buildCommand","artifactPaths","artifactKey","workdir","cache"}
1117
+ --framework=<option> Framework used
1118
+ <options: express|fastify|koa|nextjs|react|vue|angular|svelte|flask|django|fasta
1119
+ pi|gin|actix|spring|aspnet|rails|other>
1120
+ --installCommand=<value> Install command
1121
+ --module-type=<option> Module deployment type (determines API Gateway vs CloudFront vs CDK)
1122
+ <options: backend|frontend|cdk>
1123
+ --name=<value> Name of the project
1124
+ --postDeployCommand=<value> Command to run after successful deploy
1125
+ --postDeployFailureMode=<option> Post-deploy command failure behavior: fail (default) or warn
1126
+ <options: fail|warn>
1127
+ --[no-]routeDiscovery Enable AI-powered route discovery for per-route Lambda functions
1128
+ --runCommand=<value> Run command
1129
+ --runtime-config=<value> Lambda runtime config JSON: {"timeout":60,"memory":4096}. timeout=1-900s,
1130
+ memory=128-10240MB.
1131
+ --runtime-mode=<option> Runtime mode: "handler" for native Lambda handlers, "server" for HTTP server
1132
+ wrapping
1133
+ <options: handler|server>
1134
+ --show Print current module config (including runtimeConfig) without updating
1135
+ --sourceDirectory=<value> Source code directory (e.g., src, lib, . for root) - default: src for Lambda, .
1136
+ for static
1137
+ --sourceLocation=<value> Source location of the project
1138
+ --subdomain=<value> Subdomain prefix for custom domain URLs (e.g., "api", "app", "www", "" for apex)
1198
1139
 
1199
1140
  DESCRIPTION
1200
- Backfill existing SSM parameters to DynamoDB (one-time migration)
1141
+ Update a module/project configuration
1201
1142
 
1202
1143
  EXAMPLES
1203
- $ hd parameter backfill --accountId="123456789012" --dry-run
1144
+ $ hd module update --slug="my-module" --runtimeVersion="12"
1204
1145
 
1205
- $ hd parameter backfill --accountId="123456789012"
1146
+ $ hd module update --slug="my-module" --buildCommand="npm run build:prod"
1147
+
1148
+ $ hd module update --slug="my-module" --name="New Name" --framework="React.js"
1149
+
1150
+ $ hd module update --slug="my-module" --postDeployCommand="npm run migrate" --postDeployFailureMode="warn"
1151
+
1152
+ $ hd module update --slug="my-module" --runtime-config='{"timeout":60,"memory":4096}'
1153
+
1154
+ $ hd module update --slug="my-module" --show
1206
1155
  ```
1207
1156
 
1208
- _See code: [src/commands/parameter/backfill.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/backfill.ts)_
1157
+ _See code: [src/commands/module/update.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/module/update.ts)_
1209
1158
 
1210
- ## `hd parameter clear`
1159
+ ## `hd network discover`
1211
1160
 
1212
- Clear all parameters for a project and stage (DANGEROUS)
1161
+ Discover VPCs in a connected AWS account
1162
+
1163
+ ```
1164
+ USAGE
1165
+ $ hd network discover [-a <value>] [-d <value>] [--json] [-r <value>]
1166
+
1167
+ FLAGS
1168
+ -a, --account=<value> AWS Account ID to discover VPCs in
1169
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1170
+ -r, --region=<value> AWS region to discover VPCs in
1171
+ --json Output raw JSON response (non-interactive)
1172
+
1173
+ DESCRIPTION
1174
+ Discover VPCs in a connected AWS account
1175
+
1176
+ EXAMPLES
1177
+ $ hd network discover --account 084309335408 --region us-east-1
1178
+
1179
+ $ hd network discover --account 084309335408 --region us-east-1 --json
1180
+ ```
1181
+
1182
+ _See code: [src/commands/network/discover.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/network/discover.ts)_
1183
+
1184
+ ## `hd network get SLUG`
1185
+
1186
+ Get details of a registered network
1187
+
1188
+ ```
1189
+ USAGE
1190
+ $ hd network get SLUG [-d <value>] [--json]
1191
+
1192
+ ARGUMENTS
1193
+ SLUG Network slug
1194
+
1195
+ FLAGS
1196
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1197
+ --json Output raw JSON response
1198
+
1199
+ DESCRIPTION
1200
+ Get details of a registered network
1201
+
1202
+ EXAMPLES
1203
+ $ hd network get prod-us-east-1
1204
+
1205
+ $ hd network get prod-us-east-1 --json
1206
+ ```
1207
+
1208
+ _See code: [src/commands/network/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/network/get.ts)_
1209
+
1210
+ ## `hd network list`
1211
+
1212
+ List all registered networks
1213
+
1214
+ ```
1215
+ USAGE
1216
+ $ hd network list [-d <value>] [--json]
1217
+
1218
+ FLAGS
1219
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1220
+ --json Output raw JSON response
1221
+
1222
+ DESCRIPTION
1223
+ List all registered networks
1224
+
1225
+ EXAMPLES
1226
+ $ hd network list
1227
+
1228
+ $ hd network list --json
1229
+ ```
1230
+
1231
+ _See code: [src/commands/network/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/network/list.ts)_
1232
+
1233
+ ## `hd network register`
1234
+
1235
+ Register a network manually
1236
+
1237
+ ```
1238
+ USAGE
1239
+ $ hd network register [--account-id <value>] [-d <value>] [--private-subnets <value>] [--public-subnets <value>] [-r
1240
+ <value>] [--security-groups <value>] [-s <value>] [--vpc-id <value>]
1241
+
1242
+ FLAGS
1243
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1244
+ -r, --region=<value> AWS region
1245
+ -s, --slug=<value> Network slug
1246
+ --account-id=<value> AWS Account ID
1247
+ --private-subnets=<value> Comma-separated private subnet IDs
1248
+ --public-subnets=<value> Comma-separated public subnet IDs
1249
+ --security-groups=<value> Security groups as JSON (e.g. {"database":"sg-123","lambda":"sg-456"})
1250
+ --vpc-id=<value> VPC ID
1251
+
1252
+ DESCRIPTION
1253
+ Register a network manually
1254
+
1255
+ EXAMPLES
1256
+ $ hd network register
1257
+
1258
+ $ hd network register --slug prod-us-east-1 --account-id 084309335408 --region us-east-1 --vpc-id vpc-abc123
1259
+ ```
1260
+
1261
+ _See code: [src/commands/network/register.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/network/register.ts)_
1262
+
1263
+ ## `hd parameter add`
1264
+
1265
+ Add a new parameter to SSM Parameter Store
1266
+
1267
+ ```
1268
+ USAGE
1269
+ $ hd parameter add --accountId <value> -k <value> -m <value> -v <value> [-d <value>] [--specific] [-s <value>]
1270
+
1271
+ FLAGS
1272
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1273
+ -k, --key=<value> (required) Parameter key/name
1274
+ -m, --moduleSlug=<value> (required) Module slug
1275
+ -s, --stage=<value> [default: all] Stage for the parameter (default: all stages)
1276
+ -v, --value=<value> (required) Parameter value
1277
+ --accountId=<value> (required) AWS Account ID
1278
+ --specific Make parameter specific to this project (default: global)
1279
+
1280
+ DESCRIPTION
1281
+ Add a new parameter to SSM Parameter Store
1282
+
1283
+ EXAMPLES
1284
+ $ hd parameter add --key="API_URL" --value="https://api.example.com" --stage="dev"
1285
+
1286
+ $ hd parameter add --key="DB_HOST" --value="localhost" --specific
1287
+
1288
+ $ hd parameter add --key="PORT" --value="3000"
1289
+ ```
1290
+
1291
+ _See code: [src/commands/parameter/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/add.ts)_
1292
+
1293
+ ## `hd parameter backfill`
1294
+
1295
+ Backfill existing SSM parameters to DynamoDB (one-time migration)
1296
+
1297
+ ```
1298
+ USAGE
1299
+ $ hd parameter backfill --accountId <value> [-d <value>] [--dry-run] [--no-dry-run]
1300
+
1301
+ FLAGS
1302
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1303
+ --accountId=<value> (required) AWS Account ID to backfill from
1304
+ --dry-run Preview what would be imported without making changes (default: true)
1305
+ --no-dry-run Actually perform the backfill (writes to DynamoDB)
1306
+
1307
+ DESCRIPTION
1308
+ Backfill existing SSM parameters to DynamoDB (one-time migration)
1309
+
1310
+ EXAMPLES
1311
+ $ hd parameter backfill --accountId="123456789012" --dry-run
1312
+
1313
+ $ hd parameter backfill --accountId="123456789012"
1314
+ ```
1315
+
1316
+ _See code: [src/commands/parameter/backfill.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/backfill.ts)_
1317
+
1318
+ ## `hd parameter clear`
1319
+
1320
+ Clear all parameters for a project and stage (DANGEROUS)
1213
1321
 
1214
1322
  ```
1215
1323
  USAGE
@@ -1232,7 +1340,7 @@ EXAMPLES
1232
1340
  $ hd parameter clear --stage="prod" --specific --force
1233
1341
  ```
1234
1342
 
1235
- _See code: [src/commands/parameter/clear.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/clear.ts)_
1343
+ _See code: [src/commands/parameter/clear.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/clear.ts)_
1236
1344
 
1237
1345
  ## `hd parameter list`
1238
1346
 
@@ -1261,7 +1369,7 @@ EXAMPLES
1261
1369
  $ hd parameter list --all-stages
1262
1370
  ```
1263
1371
 
1264
- _See code: [src/commands/parameter/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/list.ts)_
1372
+ _See code: [src/commands/parameter/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/list.ts)_
1265
1373
 
1266
1374
  ## `hd parameter pull`
1267
1375
 
@@ -1290,7 +1398,7 @@ EXAMPLES
1290
1398
  $ hd parameter pull --stage="dev" --no-backup
1291
1399
  ```
1292
1400
 
1293
- _See code: [src/commands/parameter/pull.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/pull.ts)_
1401
+ _See code: [src/commands/parameter/pull.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/pull.ts)_
1294
1402
 
1295
1403
  ## `hd parameter remove`
1296
1404
 
@@ -1320,7 +1428,7 @@ EXAMPLES
1320
1428
  $ hd parameter remove --key="PORT" --force
1321
1429
  ```
1322
1430
 
1323
- _See code: [src/commands/parameter/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/remove.ts)_
1431
+ _See code: [src/commands/parameter/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/remove.ts)_
1324
1432
 
1325
1433
  ## `hd parameter sync`
1326
1434
 
@@ -1328,7 +1436,8 @@ Synchronize environment variables from a .env file to Hyperdrive
1328
1436
 
1329
1437
  ```
1330
1438
  USAGE
1331
- $ hd parameter sync --accountId <value> -m <value> [-d <value>] [-f <value>] [-s] [-t <value>]
1439
+ $ hd parameter sync --accountId <value> -m <value> [--apply-to-lambda] [-d <value>] [--dry-run] [-f <value>] [-s]
1440
+ [-t <value>]
1332
1441
 
1333
1442
  FLAGS
1334
1443
  -d, --domain=<value> Tenant domain (for multi-domain setups)
@@ -1337,6 +1446,10 @@ FLAGS
1337
1446
  -s, --[no-]specific Whether the env vars are project-specific (default: true)
1338
1447
  -t, --stage=<value> [default: all] Stage for the env vars (default: all stages)
1339
1448
  --accountId=<value> (required) AWS Account ID
1449
+ --apply-to-lambda After writing to DDB, also update each bound Lambda function's env vars (preserves existing
1450
+ vars; see API-111 AC5)
1451
+ --dry-run Preview env key changes without writing to DDB or Lambda. Best paired with --apply-to-lambda
1452
+ to see Lambda diffs.
1340
1453
 
1341
1454
  DESCRIPTION
1342
1455
  Synchronize environment variables from a .env file to Hyperdrive
@@ -1347,9 +1460,13 @@ EXAMPLES
1347
1460
  $ hd parameter sync --file=".env.production" --stage="prod"
1348
1461
 
1349
1462
  $ hd parameter sync --no-specific --stage="all"
1463
+
1464
+ $ hd parameter sync --apply-to-lambda --stage="dev"
1465
+
1466
+ $ hd parameter sync --apply-to-lambda --dry-run --stage="dev"
1350
1467
  ```
1351
1468
 
1352
- _See code: [src/commands/parameter/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/sync.ts)_
1469
+ _See code: [src/commands/parameter/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/sync.ts)_
1353
1470
 
1354
1471
  ## `hd parameter update`
1355
1472
 
@@ -1377,7 +1494,7 @@ EXAMPLES
1377
1494
  $ hd parameter update --key="DB_HOST" --value="new-host" --specific
1378
1495
  ```
1379
1496
 
1380
- _See code: [src/commands/parameter/update.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/parameter/update.ts)_
1497
+ _See code: [src/commands/parameter/update.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/parameter/update.ts)_
1381
1498
 
1382
1499
  ## `hd plugins`
1383
1500
 
@@ -1697,7 +1814,7 @@ EXAMPLES
1697
1814
  $ hd project init --json --name "My Project" --jira-key PROJ
1698
1815
  ```
1699
1816
 
1700
- _See code: [src/commands/project/init.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/project/init.ts)_
1817
+ _See code: [src/commands/project/init.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/project/init.ts)_
1701
1818
 
1702
1819
  ## `hd project list`
1703
1820
 
@@ -1722,7 +1839,7 @@ EXAMPLES
1722
1839
  $ hd project list --domain custom.hyperdrive.bot
1723
1840
  ```
1724
1841
 
1725
- _See code: [src/commands/project/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/project/list.ts)_
1842
+ _See code: [src/commands/project/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/project/list.ts)_
1726
1843
 
1727
1844
  ## `hd project status PROJECT`
1728
1845
 
@@ -1750,203 +1867,1107 @@ EXAMPLES
1750
1867
  $ hd project status my-project --domain custom.hyperdrive.bot
1751
1868
  ```
1752
1869
 
1753
- _See code: [src/commands/project/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/project/status.ts)_
1870
+ _See code: [src/commands/project/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/project/status.ts)_
1871
+
1872
+ ## `hd seed`
1873
+
1874
+ Per-stage Postgres schema migration + data copy + sequence reset, orchestrating per-app seed scripts
1875
+
1876
+ ```
1877
+ USAGE
1878
+ $ hd seed --stage <value> --apps <value> --from-schema <value> --cf-domain <value> [--to-schema <value>]
1879
+ [--service <value>] [--apps-dir <value>] [--dry-run] [--allow-production] [--json] [--no-wait] [-d <value>]
1880
+
1881
+ FLAGS
1882
+ -d, --domain=<value> Tenant domain (for multi-domain setups).
1883
+ --allow-production Allow seeding against a production-bound service (forwarded to `hd service seed`).
1884
+ --apps=<value> (required) Comma-separated list of apps that own seed scripts (e.g.
1885
+ core,alunos,professores). Order is significant — apps run sequentially.
1886
+ --apps-dir=<value> [default: apps] Root directory containing `apps/<app>/scripts/seed.ts` files. Defaults to
1887
+ ./apps under the current working directory.
1888
+ --cf-domain=<value> (required) Per-stage CloudFront hostname passed to seed scripts as ctx.cfDomain (templated
1889
+ into professores.domain etc.).
1890
+ --dry-run Compute and print SQL + phase summary without executing any seed run.
1891
+ --from-schema=<value> (required) Postgres schema to copy reference rows from (typically `public`).
1892
+ --json Output a structured JSON summary of the orchestration.
1893
+ --no-wait Submit each phase without polling for completion.
1894
+ --service=<value> DB service slug to run SQL against (resolved from the stage if omitted).
1895
+ --stage=<value> (required) Target stage slug (e.g. ss-11, feat-e2e-expansion). Becomes the destination
1896
+ schema name when --to-schema is omitted.
1897
+ --to-schema=<value> Destination Postgres schema. Defaults to the stage name.
1898
+
1899
+ DESCRIPTION
1900
+ Per-stage Postgres schema migration + data copy + sequence reset, orchestrating per-app seed scripts
1901
+
1902
+ EXAMPLES
1903
+ $ hd seed --stage feat-e2e-expansion --apps core,alunos,professores --from-schema public --to-schema feat_e2e_expansion --cf-domain alunos-feat-e2e-expansion.tutory.com.br
1904
+
1905
+ $ hd seed --stage feat-e2e-expansion --apps core --from-schema public --cf-domain alunos.example.com --dry-run
1906
+
1907
+ $ hd seed --stage ss-99 --apps core,alunos --from-schema public --cf-domain alunos.example.com --service rds-postgres-tutory-dev
1908
+ ```
1909
+
1910
+ _See code: [src/commands/seed.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/seed.ts)_
1754
1911
 
1755
- ## `hd project sync PROJECT`
1912
+ ## `hd service backup SLUG`
1756
1913
 
1757
- Generate architecture summaries for project repos via Claude analysis
1914
+ Create a backup (snapshot) of a service, or configure a backup schedule
1758
1915
 
1759
1916
  ```
1760
1917
  USAGE
1761
- $ hd project sync PROJECT [-d <value>] [--json] [--repo <value>]
1918
+ $ hd service backup SLUG [-d <value>] [--json] [--no-wait] [--metadata <value>...] [--schedule daily|weekly]
1762
1919
 
1763
1920
  ARGUMENTS
1764
- PROJECT Project slug or ID
1921
+ SLUG Service slug to back up
1765
1922
 
1766
1923
  FLAGS
1767
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1768
- --json Output result as JSON
1769
- --repo=<value> Sync only a specific repo by name
1924
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1925
+ --json Output raw JSON response
1926
+ --metadata=<value>... Metadata key=value pairs to attach to the backup
1927
+ --no-wait Do not wait for backup to complete; print backup ID and exit
1928
+ --schedule=<option> Configure automatic backup schedule instead of a one-time backup
1929
+ <options: daily|weekly>
1770
1930
 
1771
1931
  DESCRIPTION
1772
- Generate architecture summaries for project repos via Claude analysis
1932
+ Create a backup (snapshot) of a service, or configure a backup schedule
1773
1933
 
1774
1934
  EXAMPLES
1775
- $ hd project sync my-project
1935
+ $ hd service backup rds-postgres-live
1936
+
1937
+ $ hd service backup rds-postgres-live --no-wait
1776
1938
 
1777
- $ hd project sync my-project --repo api
1939
+ $ hd service backup rds-postgres-live --json
1778
1940
 
1779
- $ hd project sync my-project --json
1941
+ $ hd service backup rds-postgres-live --metadata env=staging --metadata reason=migration
1942
+
1943
+ $ hd service backup rds-postgres-live --schedule daily
1780
1944
  ```
1781
1945
 
1782
- _See code: [src/commands/project/sync.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/project/sync.ts)_
1946
+ _See code: [src/commands/service/backup.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/backup.ts)_
1783
1947
 
1784
- ## `hd stage access [STAGE]`
1948
+ ## `hd service backups SLUG`
1785
1949
 
1786
- View who has access to a stage
1950
+ List all backups for a service
1787
1951
 
1788
1952
  ```
1789
1953
  USAGE
1790
- $ hd stage access [STAGE] [-d <value>] [-f table|json]
1954
+ $ hd service backups SLUG [-d <value>] [--json] [--limit <value>]
1791
1955
 
1792
1956
  ARGUMENTS
1793
- STAGE Stage name to view access for
1957
+ SLUG Service slug
1794
1958
 
1795
1959
  FLAGS
1796
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1797
- -f, --format=<option> [default: table] Output format
1798
- <options: table|json>
1960
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1961
+ --json Output raw JSON response
1962
+ --limit=<value> [default: 20] Maximum number of backups to return
1799
1963
 
1800
1964
  DESCRIPTION
1801
- View who has access to a stage
1965
+ List all backups for a service
1802
1966
 
1803
1967
  EXAMPLES
1804
- $ hd stage access
1968
+ $ hd service backups rds-postgres-live
1805
1969
 
1806
- $ hd stage access develop
1970
+ $ hd service backups rds-postgres-live --limit 5
1807
1971
 
1808
- $ hd stage access develop --format json
1972
+ $ hd service backups rds-postgres-live --json
1809
1973
  ```
1810
1974
 
1811
- _See code: [src/commands/stage/access.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/stage/access.ts)_
1975
+ _See code: [src/commands/service/backups.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/backups.ts)_
1812
1976
 
1813
- ## `hd stage create`
1977
+ ## `hd service bind SERVICE MODULE`
1814
1978
 
1815
- Create a new stage
1979
+ Bind a service to a module+stage
1816
1980
 
1817
1981
  ```
1818
1982
  USAGE
1819
- $ hd stage create [-a <value>] [--autoLaunch] [-b <value>] [--defaultStage] [--deletionProtection] [-d <value>]
1820
- [-n <value>] [--production] [-p <value>...] [--provider <value>] [-r <value>...]
1983
+ $ hd service bind SERVICE MODULE --stage <value> [-d <value>] [--env-var-mapping <value>] [--template-vars
1984
+ <value>]
1985
+
1986
+ ARGUMENTS
1987
+ SERVICE Service slug
1988
+ MODULE Module slug
1821
1989
 
1822
1990
  FLAGS
1823
- -a, --accountId=<value> AWS Account ID for deployments
1824
- -b, --branchName=<value> Git branch name
1825
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1826
- -n, --name=<value> Name of the stage (e.g., dev, staging, production)
1827
- -p, --project=<value>... Project slugs to associate with this stage
1828
- -r, --region=<value>... AWS region(s) for deployment
1829
- --autoLaunch Automatically launch deployments for this stage
1830
- --defaultStage Set as default stage for fallback
1831
- --deletionProtection Enable deletion protection
1832
- --production Mark as production stage
1833
- --provider=<value> [default: aws] Cloud provider
1991
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
1992
+ --env-var-mapping=<value> Environment variable mapping overrides as JSON
1993
+ --stage=<value> (required) Deployment stage
1994
+ --template-vars=<value> Template variables as JSON
1834
1995
 
1835
1996
  DESCRIPTION
1836
- Create a new stage
1997
+ Bind a service to a module+stage
1998
+
1999
+ EXAMPLES
2000
+ $ hd service bind rds-postgres-live my-api --stage live
2001
+
2002
+ $ hd service bind rds-postgres-live my-api --stage live --template-vars '{"dbName":"mydb"}'
1837
2003
  ```
1838
2004
 
1839
- _See code: [src/commands/stage/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/stage/create.ts)_
2005
+ _See code: [src/commands/service/bind.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/bind.ts)_
1840
2006
 
1841
- ## `hd stage list`
2007
+ ## `hd service bindings SERVICE`
1842
2008
 
1843
- List all stages
2009
+ List all bindings for a service
1844
2010
 
1845
2011
  ```
1846
2012
  USAGE
1847
- $ hd stage list [-d <value>]
2013
+ $ hd service bindings SERVICE [-d <value>] [--json]
2014
+
2015
+ ARGUMENTS
2016
+ SERVICE Service slug
1848
2017
 
1849
2018
  FLAGS
1850
2019
  -d, --domain=<value> Tenant domain (for multi-domain setups)
2020
+ --json Output raw JSON response
1851
2021
 
1852
2022
  DESCRIPTION
1853
- List all stages
2023
+ List all bindings for a service
1854
2024
 
1855
2025
  EXAMPLES
1856
- $ hd stage list
2026
+ $ hd service bindings rds-postgres-live
2027
+
2028
+ $ hd service bindings rds-postgres-live --json
1857
2029
  ```
1858
2030
 
1859
- _See code: [src/commands/stage/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/stage/list.ts)_
2031
+ _See code: [src/commands/service/bindings.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/bindings.ts)_
1860
2032
 
1861
- ## `hd stage revoke [STAGE]`
2033
+ ## `hd service clone SOURCE`
1862
2034
 
1863
- Revoke access from a stage for a user or CI account
2035
+ Clone a service (snapshot source, restore as new instance in target network)
1864
2036
 
1865
2037
  ```
1866
2038
  USAGE
1867
- $ hd stage revoke [STAGE] [-c <value> | -u <value>] [-d <value>] [-y]
2039
+ $ hd service clone SOURCE --name <value> --network <value> [-d <value>] [--account <value>] [--instance-class
2040
+ <value>] [--json] [--no-wait] [--force]
1868
2041
 
1869
2042
  ARGUMENTS
1870
- STAGE Stage name to revoke access from
2043
+ SOURCE Source service slug to clone
1871
2044
 
1872
2045
  FLAGS
1873
- -c, --ci=<value> CI account name or ID to revoke access from
1874
- -d, --domain=<value> Tenant domain (for multi-domain setups)
1875
- -u, --user=<value> User email to revoke access from
1876
- -y, --yes Skip confirmation
2046
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2047
+ --account=<value> Target AWS account ID (for cross-account clones)
2048
+ --force Skip confirmation prompt
2049
+ --instance-class=<value> RDS instance class override (e.g., db.t3.medium)
2050
+ --json Output raw JSON response
2051
+ --name=<value> (required) Target service slug for the cloned instance
2052
+ --network=<value> (required) Target network slug to place the cloned instance in
2053
+ --no-wait Do not wait for clone to complete
1877
2054
 
1878
2055
  DESCRIPTION
1879
- Revoke access from a stage for a user or CI account
2056
+ Clone a service (snapshot source, restore as new instance in target network)
1880
2057
 
1881
2058
  EXAMPLES
1882
- $ hd stage revoke
2059
+ $ hd service clone rds-postgres-live --name rds-postgres-staging --network staging-us-east-1
1883
2060
 
1884
- $ hd stage revoke develop
2061
+ $ hd service clone rds-postgres-live --name rds-postgres-dr --network dr-us-west-2 --account 123456789012
1885
2062
 
1886
- $ hd stage revoke develop --user maria@company.com
2063
+ $ hd service clone rds-postgres-live --name rds-staging --network staging-vpc --instance-class db.t3.medium
1887
2064
 
1888
- $ hd stage revoke develop --ci github-actions
2065
+ $ hd service clone rds-postgres-live --name rds-staging --network staging-vpc --no-wait --json
2066
+
2067
+ $ hd service clone rds-postgres-live --name rds-staging --network staging-vpc --force
1889
2068
  ```
1890
2069
 
1891
- _See code: [src/commands/stage/revoke.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/stage/revoke.ts)_
2070
+ _See code: [src/commands/service/clone.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/clone.ts)_
1892
2071
 
1893
- ## `hd stage share [STAGE]`
2072
+ ## `hd service create`
1894
2073
 
1895
- Grant access to a stage for users or CI accounts
2074
+ Provision a new service from the template catalog
1896
2075
 
1897
2076
  ```
1898
2077
  USAGE
1899
- $ hd stage share [STAGE...] [-c <value> | -u <value> | -g <value>] [-d <value>] [-r viewer|deployer|manager]
1900
- [-y]
2078
+ $ hd service create -t <value> -s <value> [-d <value>] [-n <value>] [--name <value>] [--slug <value>] [-p
2079
+ <value>...] [--no-interactive]
2080
+
2081
+ FLAGS
2082
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2083
+ -n, --network=<value> Network slug (required for private services)
2084
+ -p, --parameter=<value>... Template parameter as key=value (repeatable, for CI/CD)
2085
+ -s, --stage=<value> (required) Deployment stage
2086
+ -t, --template=<value> (required) Template ID (e.g., rds-postgres-v1)
2087
+ --name=<value> Service display name
2088
+ --no-interactive Skip interactive prompts, use defaults
2089
+ --slug=<value> Service slug (auto-generated if not provided)
2090
+
2091
+ DESCRIPTION
2092
+ Provision a new service from the template catalog
2093
+
2094
+ EXAMPLES
2095
+ $ hd service create --template rds-postgres-v1 --network prod-us-east-1 --stage live
2096
+
2097
+ $ hd service create --template s3-bucket-v1 --stage dev --slug my-bucket --no-interactive
2098
+
2099
+ $ hd service create --template rds-postgres-v1 --stage dev -p dbName=myapp -p instanceClass=db.t3.small --no-interactive
2100
+ ```
2101
+
2102
+ _See code: [src/commands/service/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/create.ts)_
2103
+
2104
+ ## `hd service get SLUG`
2105
+
2106
+ Get details of a registered service
2107
+
2108
+ ```
2109
+ USAGE
2110
+ $ hd service get SLUG [-d <value>] [--json]
1901
2111
 
1902
2112
  ARGUMENTS
1903
- STAGE... Stage name to share access to
2113
+ SLUG Service slug
1904
2114
 
1905
2115
  FLAGS
1906
- -c, --ci=<value> CI account name or ID to grant access to
1907
2116
  -d, --domain=<value> Tenant domain (for multi-domain setups)
1908
- -g, --group=<value> Group ID or name to grant access to
1909
- -r, --role=<option> Role to grant
1910
- <options: viewer|deployer|manager>
1911
- -u, --user=<value> User email to grant access to
1912
- -y, --yes Skip confirmation for production stages
2117
+ --json Output raw JSON response
1913
2118
 
1914
2119
  DESCRIPTION
1915
- Grant access to a stage for users or CI accounts
2120
+ Get details of a registered service
1916
2121
 
1917
2122
  EXAMPLES
1918
- $ hd stage share
2123
+ $ hd service get rds-postgres-live
1919
2124
 
1920
- $ hd stage share develop
2125
+ $ hd service get rds-postgres-live --json
2126
+ ```
1921
2127
 
1922
- $ hd stage share develop --user maria@company.com --role deployer
2128
+ _See code: [src/commands/service/get.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/get.ts)_
1923
2129
 
1924
- $ hd stage share develop --ci github-actions --role deployer
2130
+ ## `hd service list`
1925
2131
 
1926
- $ hd stage share develop --group "CI Accounts" --role deployer
2132
+ List all registered services
1927
2133
 
1928
- $ hd stage share staging production --user dev@company.com --role viewer
1929
2134
  ```
2135
+ USAGE
2136
+ $ hd service list [-d <value>] [--json] [--network <value>] [--type <value>]
1930
2137
 
1931
- _See code: [src/commands/stage/share.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/stage/share.ts)_
2138
+ FLAGS
2139
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2140
+ --json Output raw JSON response
2141
+ --network=<value> Filter by network slug
2142
+ --type=<value> Filter by service type
1932
2143
 
1933
- ## `hd test-api`
2144
+ DESCRIPTION
2145
+ List all registered services
1934
2146
 
1935
- Test API connection with SigV4 authentication
2147
+ EXAMPLES
2148
+ $ hd service list
2149
+
2150
+ $ hd service list --type rds-postgres
2151
+
2152
+ $ hd service list --network prod-us-east-1
2153
+
2154
+ $ hd service list --json
2155
+ ```
2156
+
2157
+ _See code: [src/commands/service/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/list.ts)_
2158
+
2159
+ ## `hd service register`
2160
+
2161
+ Register an external service
1936
2162
 
1937
2163
  ```
1938
2164
  USAGE
1939
- $ hd test-api [-d <value>]
2165
+ $ hd service register [--access private|public] [--account-id <value>] [--credential-secret-arn <value>] [-d
2166
+ <value>] [--endpoint <value>] [--exported-env-vars <value>] [--name <value>] [--network-slug <value>] [--port
2167
+ <value>] [--protocol <value>] [-r <value>] [-s <value>] [--type <value>]
1940
2168
 
1941
2169
  FLAGS
1942
- -d, --domain=<value> Tenant domain (for multi-domain setups)
2170
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2171
+ -r, --region=<value> AWS region
2172
+ -s, --slug=<value> Service slug
2173
+ --access=<option> Access type: private or public
2174
+ <options: private|public>
2175
+ --account-id=<value> AWS Account ID where service lives
2176
+ --credential-secret-arn=<value> Secrets Manager ARN for credentials
2177
+ --endpoint=<value> Service endpoint
2178
+ --exported-env-vars=<value> Exported env vars as JSON string
2179
+ --name=<value> Service display name
2180
+ --network-slug=<value> Network slug (required for private services)
2181
+ --port=<value> Service port
2182
+ --protocol=<value> Protocol (e.g. postgres, redis, https)
2183
+ --type=<value> Service type
1943
2184
 
1944
2185
  DESCRIPTION
1945
- Test API connection with SigV4 authentication
2186
+ Register an external service
1946
2187
 
1947
2188
  EXAMPLES
1948
- $ hd test-api
2189
+ $ hd service register
2190
+
2191
+ $ hd service register --slug rds-postgres-live --name "Production PostgreSQL" --type rds-postgres --access private --endpoint prod-db.abc123.rds.amazonaws.com --port 5432 --account-id 084309335408 --region us-east-1 --network-slug prod-us-east-1
2192
+ ```
2193
+
2194
+ _See code: [src/commands/service/register.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/register.ts)_
2195
+
2196
+ ## `hd service restore SLUG`
2197
+
2198
+ Restore a service from a previously created backup
2199
+
2200
+ ```
2201
+ USAGE
2202
+ $ hd service restore SLUG --from <value> [-d <value>] [--target <value>] [--network <value>] [--instance-class
2203
+ <value>] [--json] [--no-wait] [--force]
2204
+
2205
+ ARGUMENTS
2206
+ SLUG Service slug to restore
2207
+
2208
+ FLAGS
2209
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2210
+ --force Skip confirmation prompt
2211
+ --from=<value> (required) Backup ID to restore from
2212
+ --instance-class=<value> RDS instance class override (e.g., db.t3.medium)
2213
+ --json Output raw JSON response
2214
+ --network=<value> Network slug for the restored instance (for new-target restores)
2215
+ --no-wait Do not wait for restore to complete
2216
+ --target=<value> Target service slug for a new instance (omit for in-place restore)
2217
+
2218
+ DESCRIPTION
2219
+ Restore a service from a previously created backup
2220
+
2221
+ EXAMPLES
2222
+ $ hd service restore rds-postgres-live --from 018d4e7f-af32-7000-8000-000000000001
2223
+
2224
+ $ hd service restore rds-postgres-live --from 018d4e7f --target rds-postgres-staging
2225
+
2226
+ $ hd service restore rds-postgres-live --from 018d4e7f --target rds-new --network prod-us-east-1 --instance-class db.t3.medium
2227
+
2228
+ $ hd service restore rds-postgres-live --from 018d4e7f --no-wait --json
2229
+
2230
+ $ hd service restore rds-postgres-live --from 018d4e7f --force
2231
+ ```
2232
+
2233
+ _See code: [src/commands/service/restore.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/restore.ts)_
2234
+
2235
+ ## `hd service seed SLUG`
2236
+
2237
+ Execute a SQL script against a service database
2238
+
2239
+ ```
2240
+ USAGE
2241
+ $ hd service seed SLUG [-d <value>] [--from <value> | --inline <value>] [--allow-production] [--json] [--no-wait]
2242
+
2243
+ ARGUMENTS
2244
+ SLUG Service slug to seed
2245
+
2246
+ FLAGS
2247
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2248
+ --allow-production Allow seeding production-bound services
2249
+ --from=<value> Path to local SQL script file to upload and execute
2250
+ --inline=<value> Inline SQL string to execute directly
2251
+ --json Output raw JSON response
2252
+ --no-wait Do not wait for seed to complete
2253
+
2254
+ DESCRIPTION
2255
+ Execute a SQL script against a service database
2256
+
2257
+ EXAMPLES
2258
+ $ hd service seed rds-postgres-live --from ./seed.sql
2259
+
2260
+ $ hd service seed rds-postgres-live --inline "INSERT INTO users VALUES (1, 'admin')"
2261
+
2262
+ $ hd service seed rds-postgres-live --from ./seed.sql --allow-production
2263
+
2264
+ $ hd service seed rds-postgres-live --from ./seed.sql --no-wait --json
2265
+ ```
2266
+
2267
+ _See code: [src/commands/service/seed.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/seed.ts)_
2268
+
2269
+ ## `hd service templates`
2270
+
2271
+ List available service provisioning templates
2272
+
2273
+ ```
2274
+ USAGE
2275
+ $ hd service templates [-d <value>] [--json]
2276
+
2277
+ FLAGS
2278
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2279
+ --json Output raw JSON response
2280
+
2281
+ DESCRIPTION
2282
+ List available service provisioning templates
2283
+
2284
+ EXAMPLES
2285
+ $ hd service templates
2286
+
2287
+ $ hd service templates --json
2288
+ ```
2289
+
2290
+ _See code: [src/commands/service/templates.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/templates.ts)_
2291
+
2292
+ ## `hd service unbind SERVICE MODULE`
2293
+
2294
+ Unbind a service from a module+stage
2295
+
2296
+ ```
2297
+ USAGE
2298
+ $ hd service unbind SERVICE MODULE --stage <value> [-d <value>] [-y]
2299
+
2300
+ ARGUMENTS
2301
+ SERVICE Service slug
2302
+ MODULE Module slug
2303
+
2304
+ FLAGS
2305
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2306
+ -y, --yes Skip confirmation prompt
2307
+ --stage=<value> (required) Deployment stage
2308
+
2309
+ DESCRIPTION
2310
+ Unbind a service from a module+stage
2311
+
2312
+ EXAMPLES
2313
+ $ hd service unbind rds-postgres-live my-api --stage live
2314
+
2315
+ $ hd service unbind rds-postgres-live my-api --stage live --yes
2316
+ ```
2317
+
2318
+ _See code: [src/commands/service/unbind.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/service/unbind.ts)_
2319
+
2320
+ ## `hd stage access [STAGE]`
2321
+
2322
+ View who has access to a stage
2323
+
2324
+ ```
2325
+ USAGE
2326
+ $ hd stage access [STAGE] [-d <value>] [-f table|json]
2327
+
2328
+ ARGUMENTS
2329
+ STAGE Stage name to view access for
2330
+
2331
+ FLAGS
2332
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2333
+ -f, --format=<option> [default: table] Output format
2334
+ <options: table|json>
2335
+
2336
+ DESCRIPTION
2337
+ View who has access to a stage
2338
+
2339
+ EXAMPLES
2340
+ $ hd stage access
2341
+
2342
+ $ hd stage access develop
2343
+
2344
+ $ hd stage access develop --format json
2345
+ ```
2346
+
2347
+ _See code: [src/commands/stage/access.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/access.ts)_
2348
+
2349
+ ## `hd stage create`
2350
+
2351
+ Create a new stage
2352
+
2353
+ ```
2354
+ USAGE
2355
+ $ hd stage create [-a <value>] [--autoCreateBranches] [--autoLaunch] [--autoWarm] [-b <value>] [--defaultStage]
2356
+ [--deletionProtection] [-d <value>] [-n <value>] [--production] [-p <value>...] [--provider <value>] [-r <value>...]
2357
+ [--warmConcurrency <value>]
2358
+
2359
+ FLAGS
2360
+ -a, --accountId=<value> AWS Account ID for deployments
2361
+ -b, --branchName=<value> Git branch name
2362
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2363
+ -n, --name=<value> Name of the stage (e.g., dev, staging, production)
2364
+ -p, --project=<value>... Project slugs to associate with this stage
2365
+ -r, --region=<value>... AWS region(s) for deployment
2366
+ --autoCreateBranches Ensure the stage branch exists on all linked project remotes before launching the
2367
+ mission (creates missing branches from each remote's default branch)
2368
+ --autoLaunch Automatically launch deployments for this stage
2369
+ --autoWarm After deployment completes, invoke each module Lambda once to mitigate cold-start.
2370
+ Best-effort — never blocks stage creation. Requires --autoLaunch.
2371
+ --defaultStage Set as default stage for fallback
2372
+ --deletionProtection Enable deletion protection
2373
+ --production Mark as production stage
2374
+ --provider=<value> [default: aws] Cloud provider
2375
+ --warmConcurrency=<value> [default: 10] Max in-flight Lambda warmup invocations (default 10). Only used with
2376
+ --autoWarm.
2377
+
2378
+ DESCRIPTION
2379
+ Create a new stage
2380
+ ```
2381
+
2382
+ _See code: [src/commands/stage/create.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/create.ts)_
2383
+
2384
+ ## `hd stage delete`
2385
+
2386
+ Delete a stage (cleanup runs asynchronously via SQS)
2387
+
2388
+ ```
2389
+ USAGE
2390
+ $ hd stage delete -n <value> [-d <value>]
2391
+
2392
+ FLAGS
2393
+ -d, --domain=<value> Tenant domain
2394
+ -n, --name=<value> (required) Stage name to delete
2395
+
2396
+ DESCRIPTION
2397
+ Delete a stage (cleanup runs asynchronously via SQS)
2398
+
2399
+ EXAMPLES
2400
+ $ hd stage delete --name stress-test-19 -d ds.hyperdrivebot.dev
2401
+ ```
2402
+
2403
+ _See code: [src/commands/stage/delete.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/delete.ts)_
2404
+
2405
+ ## `hd stage deploy STAGENAME`
2406
+
2407
+ Retry or surgically redeploy modules on a per-branch stage
2408
+
2409
+ ```
2410
+ USAGE
2411
+ $ hd stage deploy STAGENAME [-m <value> | -r] [-v] [-y]
2412
+
2413
+ ARGUMENTS
2414
+ STAGENAME Stage slug (e.g., ss-11)
2415
+
2416
+ FLAGS
2417
+ -m, --module=<value> Surgically redeploy a single module after validating prior-wave dependencies
2418
+ -r, --retry Retry failed and pending modules from the last mission
2419
+ -v, --verbose Show verbose log output
2420
+ -y, --yes Skip confirmation prompt
2421
+
2422
+ DESCRIPTION
2423
+ Retry or surgically redeploy modules on a per-branch stage
2424
+ ```
2425
+
2426
+ _See code: [src/commands/stage/deploy.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/deploy.ts)_
2427
+
2428
+ ## `hd stage ensure-branches STAGENAME`
2429
+
2430
+ Ensure the stage branch exists on all linked project remotes (creates if missing)
2431
+
2432
+ ```
2433
+ USAGE
2434
+ $ hd stage ensure-branches STAGENAME [-v] [--dryRun] [-d <value>]
2435
+
2436
+ ARGUMENTS
2437
+ STAGENAME Name of the stage
2438
+
2439
+ FLAGS
2440
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2441
+ -v, --verbose Print per-project status
2442
+ --dryRun Detect missing branches without creating them
2443
+
2444
+ DESCRIPTION
2445
+ Ensure the stage branch exists on all linked project remotes (creates if missing)
2446
+ ```
2447
+
2448
+ _See code: [src/commands/stage/ensure-branches.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/ensure-branches.ts)_
2449
+
2450
+ ## `hd stage list`
2451
+
2452
+ List all stages
2453
+
2454
+ ```
2455
+ USAGE
2456
+ $ hd stage list [-d <value>]
2457
+
2458
+ FLAGS
2459
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2460
+
2461
+ DESCRIPTION
2462
+ List all stages
2463
+
2464
+ EXAMPLES
2465
+ $ hd stage list
2466
+ ```
2467
+
2468
+ _See code: [src/commands/stage/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/list.ts)_
2469
+
2470
+ ## `hd stage revoke [STAGE]`
2471
+
2472
+ Revoke access from a stage for a user or CI account
2473
+
2474
+ ```
2475
+ USAGE
2476
+ $ hd stage revoke [STAGE] [-c <value> | -u <value>] [-d <value>] [-y]
2477
+
2478
+ ARGUMENTS
2479
+ STAGE Stage name to revoke access from
2480
+
2481
+ FLAGS
2482
+ -c, --ci=<value> CI account name or ID to revoke access from
2483
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2484
+ -u, --user=<value> User email to revoke access from
2485
+ -y, --yes Skip confirmation
2486
+
2487
+ DESCRIPTION
2488
+ Revoke access from a stage for a user or CI account
2489
+
2490
+ EXAMPLES
2491
+ $ hd stage revoke
2492
+
2493
+ $ hd stage revoke develop
2494
+
2495
+ $ hd stage revoke develop --user maria@company.com
2496
+
2497
+ $ hd stage revoke develop --ci github-actions
2498
+ ```
2499
+
2500
+ _See code: [src/commands/stage/revoke.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/revoke.ts)_
2501
+
2502
+ ## `hd stage share [STAGE]`
2503
+
2504
+ Grant access to a stage for users or CI accounts
2505
+
2506
+ ```
2507
+ USAGE
2508
+ $ hd stage share [STAGE...] [-c <value> | -u <value> | -g <value>] [-d <value>] [-r viewer|deployer|manager]
2509
+ [-y]
2510
+
2511
+ ARGUMENTS
2512
+ STAGE... Stage name to share access to
2513
+
2514
+ FLAGS
2515
+ -c, --ci=<value> CI account name or ID to grant access to
2516
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2517
+ -g, --group=<value> Group ID or name to grant access to
2518
+ -r, --role=<option> Role to grant
2519
+ <options: viewer|deployer|manager>
2520
+ -u, --user=<value> User email to grant access to
2521
+ -y, --yes Skip confirmation for production stages
2522
+
2523
+ DESCRIPTION
2524
+ Grant access to a stage for users or CI accounts
2525
+
2526
+ EXAMPLES
2527
+ $ hd stage share
2528
+
2529
+ $ hd stage share develop
2530
+
2531
+ $ hd stage share develop --user maria@company.com --role deployer
2532
+
2533
+ $ hd stage share develop --ci github-actions --role deployer
2534
+
2535
+ $ hd stage share develop --group "CI Accounts" --role deployer
2536
+
2537
+ $ hd stage share staging production --user dev@company.com --role viewer
2538
+ ```
2539
+
2540
+ _See code: [src/commands/stage/share.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/share.ts)_
2541
+
2542
+ ## `hd stage status SLUG`
2543
+
2544
+ Show deployment status for a stage
2545
+
2546
+ ```
2547
+ USAGE
2548
+ $ hd stage status SLUG [-d <value>] [-v]
2549
+
2550
+ ARGUMENTS
2551
+ SLUG Stage slug (e.g. ss-11)
2552
+
2553
+ FLAGS
2554
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2555
+ -v, --verbose Show deploymentId and errorType per module
2556
+
2557
+ DESCRIPTION
2558
+ Show deployment status for a stage
2559
+
2560
+ EXAMPLES
2561
+ $ hd stage status ss-11
2562
+
2563
+ $ hd stage status ss-11 --verbose
2564
+ ```
2565
+
2566
+ _See code: [src/commands/stage/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/stage/status.ts)_
2567
+
2568
+ ## `hd test-api`
2569
+
2570
+ Test API connection with SigV4 authentication
2571
+
2572
+ ```
2573
+ USAGE
2574
+ $ hd test-api [-d <value>]
2575
+
2576
+ FLAGS
2577
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2578
+
2579
+ DESCRIPTION
2580
+ Test API connection with SigV4 authentication
2581
+
2582
+ EXAMPLES
2583
+ $ hd test-api
2584
+ ```
2585
+
2586
+ _See code: [src/commands/test-api.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/test-api.ts)_
2587
+
2588
+ ## `hd tracker connect`
2589
+
2590
+ Connect your tenant to a Jira instance via the Hyperdrive Forge app
2591
+
2592
+ ```
2593
+ USAGE
2594
+ $ hd tracker connect [-d <value>] [-j <value>]
2595
+
2596
+ FLAGS
2597
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2598
+ -j, --jira-domain=<value> Your Jira domain (e.g., dev-squad.atlassian.net)
2599
+
2600
+ DESCRIPTION
2601
+ Connect your tenant to a Jira instance via the Hyperdrive Forge app
2602
+
2603
+ EXAMPLES
2604
+ $ hd tracker connect
2605
+
2606
+ $ hd tracker connect --jira-domain dev-squad.atlassian.net
2607
+
2608
+ $ hd tracker connect --domain sankhya.hyperdrivebot.dev --jira-domain dev-squad.atlassian.net
2609
+ ```
2610
+
2611
+ _See code: [src/commands/tracker/connect.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/connect.ts)_
2612
+
2613
+ ## `hd tracker hook add PROJECT`
2614
+
2615
+ Add an automation hook to a tracker project
2616
+
2617
+ ```
2618
+ USAGE
2619
+ $ hd tracker hook add PROJECT [--action-config <value>] [--action-type <value>] [--trigger-conditions <value>]
2620
+ [--trigger-event <value>] [--action <value>] [--config <value>] [-d <value>] [--json] [--order <value>] [--status
2621
+ <value>]
2622
+
2623
+ ARGUMENTS
2624
+ PROJECT Tracker project ID
2625
+
2626
+ FLAGS
2627
+ -d, --domain=<value> Hyperdrive tenant domain
2628
+ --action=<value> [Legacy] Action type (slack-notify, adhb-enrich, webhook, ci-trigger)
2629
+ --action-config=<value> [V2] Action config as JSON string
2630
+ --action-type=<value> [V2] Action type (git-create-branch, git-create-mr, git-delete-branch, slack-notify,
2631
+ adhb-enrich, webhook, ci-trigger)
2632
+ --config=<value> [Legacy] Action config as JSON string
2633
+ --json Output raw JSON
2634
+ --order=<value> Execution order (lower runs first)
2635
+ --status=<value> [Legacy] Trigger status (Jira status name or "*" for all)
2636
+ --trigger-conditions=<value> [V2] Trigger conditions as JSON string
2637
+ --trigger-event=<value> [V2] Trigger event (status_transition, issue_created, issue_assigned, field_changed,
2638
+ comment_added, label_changed)
2639
+
2640
+ DESCRIPTION
2641
+ Add an automation hook to a tracker project
2642
+
2643
+ EXAMPLES
2644
+ $ hd tracker hook add my-project
2645
+
2646
+ $ hd tracker hook add my-project --trigger-event status_transition --trigger-conditions '{"statusTo":"In Progress"}' --action-type git-create-branch --action-config '{"branchPattern":"{issueKey}/{summary-slug}"}'
2647
+
2648
+ $ hd tracker hook add my-project --trigger-event issue_created --action-type slack-notify --action-config '{"channel":"#tickets"}'
2649
+
2650
+ $ hd tracker hook add my-project --trigger-event status_transition --action-type git-create-mr --action-config '{"draft":true}' --order 2
2651
+
2652
+ $ hd tracker hook add my-project --status "In Progress" --action adhb-enrich --config '{"priority":"high"}'
2653
+
2654
+ $ hd tracker hook add my-project --json
2655
+ ```
2656
+
2657
+ _See code: [src/commands/tracker/hook/add.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/hook/add.ts)_
2658
+
2659
+ ## `hd tracker hook list PROJECT`
2660
+
2661
+ List automation hooks for a tracker project
2662
+
2663
+ ```
2664
+ USAGE
2665
+ $ hd tracker hook list PROJECT [-d <value>] [--json]
2666
+
2667
+ ARGUMENTS
2668
+ PROJECT Tracker project ID
2669
+
2670
+ FLAGS
2671
+ -d, --domain=<value> Hyperdrive tenant domain
2672
+ --json Output raw JSON
2673
+
2674
+ DESCRIPTION
2675
+ List automation hooks for a tracker project
2676
+
2677
+ EXAMPLES
2678
+ $ hd tracker hook list my-project
2679
+
2680
+ $ hd tracker hook list my-project --json
2681
+ ```
2682
+
2683
+ _See code: [src/commands/tracker/hook/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/hook/list.ts)_
2684
+
2685
+ ## `hd tracker hook logs PROJECT`
2686
+
2687
+ List recent hook execution logs for a tracker project
2688
+
2689
+ ```
2690
+ USAGE
2691
+ $ hd tracker hook logs PROJECT [-d <value>] [--json] [--limit <value>] [--status success|failed]
2692
+
2693
+ ARGUMENTS
2694
+ PROJECT Tracker project ID
2695
+
2696
+ FLAGS
2697
+ -d, --domain=<value> Hyperdrive tenant domain
2698
+ --json Output raw JSON
2699
+ --limit=<value> [default: 20] Number of log entries to display
2700
+ --status=<option> Filter by execution status
2701
+ <options: success|failed>
2702
+
2703
+ DESCRIPTION
2704
+ List recent hook execution logs for a tracker project
2705
+
2706
+ EXAMPLES
2707
+ $ hd tracker hook logs my-project
2708
+
2709
+ $ hd tracker hook logs my-project --status failed
2710
+
2711
+ $ hd tracker hook logs my-project --limit 50
2712
+
2713
+ $ hd tracker hook logs my-project --json
2714
+ ```
2715
+
2716
+ _See code: [src/commands/tracker/hook/logs.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/hook/logs.ts)_
2717
+
2718
+ ## `hd tracker hook remove PROJECT`
2719
+
2720
+ Remove an automation hook from a tracker project
2721
+
2722
+ ```
2723
+ USAGE
2724
+ $ hd tracker hook remove PROJECT [-d <value>] [--hook-id <value>] [--json]
2725
+
2726
+ ARGUMENTS
2727
+ PROJECT Tracker project ID
2728
+
2729
+ FLAGS
2730
+ -d, --domain=<value> Hyperdrive tenant domain
2731
+ --hook-id=<value> Hook ID to remove (skips interactive selection)
2732
+ --json Output raw JSON
2733
+
2734
+ DESCRIPTION
2735
+ Remove an automation hook from a tracker project
2736
+
2737
+ EXAMPLES
2738
+ $ hd tracker hook remove my-project
2739
+
2740
+ $ hd tracker hook remove my-project --hook-id hook-123
2741
+
2742
+ $ hd tracker hook remove my-project --hook-id hook-123 --json
2743
+ ```
2744
+
2745
+ _See code: [src/commands/tracker/hook/remove.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/hook/remove.ts)_
2746
+
2747
+ ## `hd tracker hook toggle PROJECT`
2748
+
2749
+ Toggle the enabled state of an automation hook
2750
+
2751
+ ```
2752
+ USAGE
2753
+ $ hd tracker hook toggle PROJECT [-d <value>] [--hook-id <value>] [--json]
2754
+
2755
+ ARGUMENTS
2756
+ PROJECT Tracker project ID
2757
+
2758
+ FLAGS
2759
+ -d, --domain=<value> Hyperdrive tenant domain
2760
+ --hook-id=<value> Hook ID to toggle (skips interactive selection)
2761
+ --json Output raw JSON
2762
+
2763
+ DESCRIPTION
2764
+ Toggle the enabled state of an automation hook
2765
+
2766
+ EXAMPLES
2767
+ $ hd tracker hook toggle my-project
2768
+
2769
+ $ hd tracker hook toggle my-project --hook-id hook-123
2770
+
2771
+ $ hd tracker hook toggle my-project --hook-id hook-123 --json
2772
+ ```
2773
+
2774
+ _See code: [src/commands/tracker/hook/toggle.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/hook/toggle.ts)_
2775
+
2776
+ ## `hd tracker project init`
2777
+
2778
+ Initialize a tracker project with module linking, status mapping, and hooks
2779
+
2780
+ ```
2781
+ USAGE
2782
+ $ hd tracker project init [--config <value>] [-d <value>] [--json] [--modules <value>] [--primary-module <value>]
2783
+ [--project-key <value>] [--project-name <value>] [--tracker-id <value>] [-y]
2784
+
2785
+ FLAGS
2786
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2787
+ -y, --yes Skip confirmation prompt
2788
+ --config=<value> Path to JSON config file with statusMapping and hooks
2789
+ --json Output result as JSON
2790
+ --modules=<value> Comma-separated module IDs to link
2791
+ --primary-module=<value> Primary module ID (from --modules list)
2792
+ --project-key=<value> External project key (e.g., PROJ)
2793
+ --project-name=<value> External project name
2794
+ --tracker-id=<value> Tracker connection ID (skips interactive selection)
2795
+
2796
+ DESCRIPTION
2797
+ Initialize a tracker project with module linking, status mapping, and hooks
2798
+
2799
+ EXAMPLES
2800
+ $ hd tracker project init
2801
+
2802
+ $ hd tracker project init --domain my-tenant.hyperdrivebot.dev
2803
+
2804
+ $ hd tracker project init --json
2805
+
2806
+ $ hd tracker project init --tracker-id abc123 --project-key PROJ --project-name "My Project" --modules mod1,mod2 --primary-module mod1 --config ./tracker-init.json --yes
2807
+ ```
2808
+
2809
+ _See code: [src/commands/tracker/project/init.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/init.ts)_
2810
+
2811
+ ## `hd tracker project link-module`
2812
+
2813
+ Link one or more modules to an existing tracker project
2814
+
2815
+ ```
2816
+ USAGE
2817
+ $ hd tracker project link-module [-d <value>] [--json] [--modules <value>] [--primary-module <value>] [--tracker-project-id
2818
+ <value>] [-y]
2819
+
2820
+ FLAGS
2821
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2822
+ -y, --yes Skip confirmation prompt
2823
+ --json Output raw JSON response
2824
+ --modules=<value> Comma-separated module IDs to link (non-interactive)
2825
+ --primary-module=<value> Module ID to designate as primary
2826
+ --tracker-project-id=<value> Tracker project ID (skips interactive selection)
2827
+
2828
+ DESCRIPTION
2829
+ Link one or more modules to an existing tracker project
2830
+
2831
+ EXAMPLES
2832
+ $ hd tracker project link-module
2833
+
2834
+ $ hd tracker project link-module --tracker-project-id abc123
2835
+
2836
+ $ hd tracker project link-module --tracker-project-id abc123 --modules mod1,mod2 --primary-module mod1 --yes
2837
+
2838
+ $ hd tracker project link-module --json
2839
+ ```
2840
+
2841
+ _See code: [src/commands/tracker/project/link-module.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/link-module.ts)_
2842
+
2843
+ ## `hd tracker project list`
2844
+
2845
+ List all configured tracker projects
2846
+
2847
+ ```
2848
+ USAGE
2849
+ $ hd tracker project list [-d <value>] [--json]
2850
+
2851
+ FLAGS
2852
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2853
+ --json Output raw JSON response
2854
+
2855
+ DESCRIPTION
2856
+ List all configured tracker projects
2857
+
2858
+ EXAMPLES
2859
+ $ hd tracker project list
2860
+
2861
+ $ hd tracker project list --json
2862
+
2863
+ $ hd tracker project list --domain my-tenant.hyperdrivebot.dev
2864
+ ```
2865
+
2866
+ _See code: [src/commands/tracker/project/list.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/list.ts)_
2867
+
2868
+ ## `hd tracker project list-modules`
2869
+
2870
+ List modules linked to a tracker project
2871
+
2872
+ ```
2873
+ USAGE
2874
+ $ hd tracker project list-modules [-d <value>] [--json] [--tracker-project-id <value>]
2875
+
2876
+ FLAGS
2877
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2878
+ --json Output raw JSON response
2879
+ --tracker-project-id=<value> Tracker project ID (skips interactive selection)
2880
+
2881
+ DESCRIPTION
2882
+ List modules linked to a tracker project
2883
+
2884
+ EXAMPLES
2885
+ $ hd tracker project list-modules
2886
+
2887
+ $ hd tracker project list-modules --tracker-project-id tp-abc123
2888
+
2889
+ $ hd tracker project list-modules --tracker-project-id tp-abc123 --json
2890
+
2891
+ $ hd tracker project list-modules --domain my-tenant.hyperdrivebot.dev
2892
+ ```
2893
+
2894
+ _See code: [src/commands/tracker/project/list-modules.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/list-modules.ts)_
2895
+
2896
+ ## `hd tracker project status TRACKER-PROJECT`
2897
+
2898
+ Show detailed status of a tracker project
2899
+
2900
+ ```
2901
+ USAGE
2902
+ $ hd tracker project status TRACKER-PROJECT [-d <value>] [--json]
2903
+
2904
+ ARGUMENTS
2905
+ TRACKER-PROJECT Tracker project ID
2906
+
2907
+ FLAGS
2908
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2909
+ --json Output raw JSON response
2910
+
2911
+ DESCRIPTION
2912
+ Show detailed status of a tracker project
2913
+
2914
+ EXAMPLES
2915
+ $ hd tracker project status tp-abc123
2916
+
2917
+ $ hd tracker project status tp-abc123 --json
2918
+
2919
+ $ hd tracker project status tp-abc123 --domain my-tenant.hyperdrivebot.dev
2920
+ ```
2921
+
2922
+ _See code: [src/commands/tracker/project/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/status.ts)_
2923
+
2924
+ ## `hd tracker project unlink-module`
2925
+
2926
+ Unlink one or more modules from an existing tracker project
2927
+
2928
+ ```
2929
+ USAGE
2930
+ $ hd tracker project unlink-module [-d <value>] [--json] [--modules <value>] [--tracker-project-id <value>] [-y]
2931
+
2932
+ FLAGS
2933
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2934
+ -y, --yes Skip confirmation prompt
2935
+ --json Output raw JSON response
2936
+ --modules=<value> Comma-separated module IDs to unlink (non-interactive)
2937
+ --tracker-project-id=<value> Tracker project ID (skips interactive selection)
2938
+
2939
+ DESCRIPTION
2940
+ Unlink one or more modules from an existing tracker project
2941
+
2942
+ EXAMPLES
2943
+ $ hd tracker project unlink-module
2944
+
2945
+ $ hd tracker project unlink-module --tracker-project-id abc123
2946
+
2947
+ $ hd tracker project unlink-module --tracker-project-id abc123 --modules mod1,mod2 --yes
2948
+
2949
+ $ hd tracker project unlink-module --json
2950
+ ```
2951
+
2952
+ _See code: [src/commands/tracker/project/unlink-module.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/project/unlink-module.ts)_
2953
+
2954
+ ## `hd tracker status`
2955
+
2956
+ Check the status of your Jira integration
2957
+
2958
+ ```
2959
+ USAGE
2960
+ $ hd tracker status [-d <value>]
2961
+
2962
+ FLAGS
2963
+ -d, --domain=<value> Tenant domain (for multi-domain setups)
2964
+
2965
+ DESCRIPTION
2966
+ Check the status of your Jira integration
2967
+
2968
+ EXAMPLES
2969
+ $ hd tracker status
1949
2970
  ```
1950
2971
 
1951
- _See code: [src/commands/test-api.ts](https://github.com/hyperdrive/hd/blob/v1.0.13/src/commands/test-api.ts)_
2972
+ _See code: [src/commands/tracker/status.ts](https://github.com/hyperdrive/hd/blob/v1.0.15/src/commands/tracker/status.ts)_
1952
2973
  <!-- commandsstop -->