hub-launch 1.8.1 → 1.10.0

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 (48) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +81 -20
  3. package/dist/commands/init.d.ts.map +1 -1
  4. package/dist/commands/init.js +93 -12
  5. package/dist/commands/init.js.map +1 -1
  6. package/dist/commands/launch.d.ts.map +1 -1
  7. package/dist/commands/launch.js +62 -10
  8. package/dist/commands/launch.js.map +1 -1
  9. package/dist/commands/logs.d.ts +27 -2
  10. package/dist/commands/logs.d.ts.map +1 -1
  11. package/dist/commands/logs.js +35 -2
  12. package/dist/commands/logs.js.map +1 -1
  13. package/dist/commands/merge.d.ts.map +1 -1
  14. package/dist/commands/merge.js +25 -8
  15. package/dist/commands/merge.js.map +1 -1
  16. package/dist/commands/schedule.d.ts +7 -0
  17. package/dist/commands/schedule.d.ts.map +1 -0
  18. package/dist/commands/{execute.js → schedule.js} +17 -9
  19. package/dist/commands/schedule.js.map +1 -0
  20. package/dist/commands/upload.js +1 -1
  21. package/dist/commands/upload.js.map +1 -1
  22. package/dist/config/command-names.d.ts +1 -1
  23. package/dist/config/command-names.js +1 -1
  24. package/dist/config/command-names.js.map +1 -1
  25. package/dist/index.js +2 -2
  26. package/dist/index.js.map +1 -1
  27. package/dist/services/api/HulaApiClient.d.ts +7 -0
  28. package/dist/services/api/HulaApiClient.d.ts.map +1 -1
  29. package/dist/services/api/HulaApiClient.js +8 -0
  30. package/dist/services/api/HulaApiClient.js.map +1 -1
  31. package/dist/services/git/FilePublishService.d.ts +1 -1
  32. package/dist/services/git/FilePublishService.js +1 -1
  33. package/dist/templates/scripts/hula-launch-run.sh +14 -7
  34. package/dist/templates/scripts/hula-merge-remote.sh +24 -4
  35. package/dist/templates/scripts/{hula-execute-manage.sh → hula-schedule-manage.sh} +13 -13
  36. package/dist/templates/scripts/{hula-execute-run.sh → hula-schedule-run.sh} +8 -8
  37. package/dist/templates/skill-creation-instructions.md +12 -12
  38. package/dist/templates/skills/hula-launch/SKILL.md +15 -2
  39. package/dist/templates/skills/hula-merge/SKILL.md +35 -3
  40. package/dist/templates/skills/{hula-execute → hula-schedule}/SKILL.md +21 -21
  41. package/dist/types/config.schema.d.ts +6 -3
  42. package/dist/types/config.schema.d.ts.map +1 -1
  43. package/dist/types/config.schema.js +8 -3
  44. package/dist/types/config.schema.js.map +1 -1
  45. package/package.json +5 -2
  46. package/dist/commands/execute.d.ts +0 -7
  47. package/dist/commands/execute.d.ts.map +0 -1
  48. package/dist/commands/execute.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
  name: hula-launch
3
3
  description: Launch a GitHub issue from the current plan. Use when the user asks to launch or assign the plan to a remote agent.
4
4
  disable-model-invocation: true
5
- argument-hint: <branch-name> [<plan-path>]
5
+ argument-hint: <branch-name> [<plan-path>] [--handoff <username>] [--test]
6
6
  allowed-tools: Bash Read
7
7
  ---
8
8
 
@@ -14,10 +14,11 @@ From `$ARGUMENTS`:
14
14
  - **Branch name** (required): the first word (e.g., `feature-auth`).
15
15
  - **Plan path** (optional): the second word, if present (e.g., `.hublaunch/plans/2026-06-10-14:00-feature-auth.md`).
16
16
  - **--handoff** (optional): a `--handoff <username>` flag anywhere in `$ARGUMENTS`.
17
+ - **--test** (optional): the bare flag `--test`, anywhere in `$ARGUMENTS`. Sets test mode (server uses a mock Claude — fast E2E run; a real PR is still created).
17
18
 
18
19
  If no branch name is provided, stop with:
19
20
  ```
20
- ❌ Branch name required. Usage: /hula-launch <branch-name> [<plan-path>] [--handoff <username>]
21
+ ❌ Branch name required. Usage: /hula-launch <branch-name> [<plan-path>] [--handoff <username>] [--test]
21
22
  ```
22
23
 
23
24
  If no plan path was given in `$ARGUMENTS`, look in the current chat history for the HTML comment:
@@ -45,6 +46,18 @@ With handoff:
45
46
  bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> --handoff <username>
46
47
  ```
47
48
 
49
+ With test mode:
50
+ ```bash
51
+ bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> --test
52
+ ```
53
+
54
+ With handoff + test mode:
55
+ ```bash
56
+ bash .github/scripts/hula-launch-run.sh <plan-path> <branch-name> --handoff <username> --test
57
+ ```
58
+
59
+ Append `--test` whenever the user passed it; it composes with `--handoff`.
60
+
48
61
  ## Step 3: Show the result
49
62
 
50
63
  Parse the JSON output from the script:
@@ -212,16 +212,42 @@ Run the remote-merge script — it merges the PR directly on GitHub and cleans u
212
212
  bash .github/scripts/hula-merge-remote.sh <issue-number>
213
213
  ```
214
214
 
215
- The script outputs JSON with `status`, `issueNumber`, and `sessionCleaned`.
215
+ The script outputs JSON with `status`, `issueNumber`, `sessionCleaned`, and `localUpdated`.
216
+
217
+ The script captures the `hula merge` CLI output and streams it to your terminal,
218
+ so the **specific reason and remediation** for any skipped local update appears
219
+ above the JSON line. Read it — that's the source of truth for what happened.
216
220
 
217
221
  Parse the JSON output:
218
222
  - If `status` is `"error"`, display the `message` and stop.
219
- - If `status` is `"success"`, proceed to Step B2.
223
+ - If `status` is `"success"`, proceed through the display below, then Step B2a.
220
224
 
221
225
  Display:
222
226
  - If `sessionCleaned` is `true`: `🧹 Cleaned up stale session file`
227
+ - Based on the `localUpdated` field:
228
+ - If `localUpdated` is `true`:
229
+ ```
230
+ ✓ Local main updated to latest origin
231
+ ```
232
+ - If `localUpdated` is `false`:
233
+ ```
234
+ ⚠️ Could not update local main (uncommitted changes, different branch, or git config issue)
235
+ See the output above for the specific reason and how to fix it.
236
+ ```
237
+
238
+ ### Step B2a: About Local Main Update
239
+
240
+ The local main branch may not be fast-forwarded after the remote merge if:
223
241
 
224
- ### Step B2: Delete Local Branch (if applicable)
242
+ - Your project root has uncommitted changes (skipped to avoid disrupting your work)
243
+ - Your project root is checked out on a different branch (not the default)
244
+ - The git repository has a non-standard/multi-worktree configuration
245
+ - `git pull --ff-only` could not fast-forward (e.g. network issue or diverged history)
246
+
247
+ This is non-critical — the PR is already merged on GitHub. When skipped, the CLI
248
+ output above shows the exact reason and the command to run to fix it.
249
+
250
+ ### Step B2b: Delete Local Branch (if applicable)
225
251
 
226
252
  Check whether the branch exists locally:
227
253
 
@@ -252,6 +278,9 @@ Display: `ℹ️ No local branch to clean up`
252
278
 
253
279
  ### Step B3: Success Summary
254
280
 
281
+ Tailor the summary to what actually happened — in particular, the local main
282
+ line depends on the `localUpdated` field from Step B1.
283
+
255
284
  ```
256
285
  ✨ Merge completed successfully!
257
286
 
@@ -259,6 +288,8 @@ Summary:
259
288
  - Merged PR for issue #42 on GitHub ✅
260
289
  - Closed issue #42 ✅
261
290
  - Deleted local branch: <prBranch> ✅ (or: No local branch to clean up)
291
+ - [IF localUpdated == true] Local main updated to latest origin ✅
292
+ - [IF localUpdated == false] ⚠️ Local main was NOT updated — see the reason above.
262
293
 
263
294
  No local worktree was involved — PR was merged directly on GitHub.
264
295
  ```
@@ -381,6 +412,7 @@ On failure, the worktree is preserved so you can:
381
412
  - ✅ Path B: PR merged directly on GitHub without any local branch/worktree operations
382
413
  - ✅ Path B: Stale session files cleaned up if present
383
414
  - ✅ Path B: Local branch deleted if it existed locally
415
+ - ✅ Path B: Local main update status reported accurately (updated, or skipped with reason)
384
416
  - ✅ PR merged successfully (both paths)
385
417
  - ✅ Issue closed automatically (both paths)
386
418
  - ✅ Main working tree never modified (both paths)
@@ -1,5 +1,5 @@
1
1
  ---
2
- name: hula-execute
2
+ name: hula-schedule
3
3
  description: Run, schedule, create, or manage execute-actions on the hula-project server. Use to run a built-in action (e.g. harden) or custom action file, author a new action from a plain description, or list/show/run-now/cancel/update runs and schedules.
4
4
  disable-model-invocation: true
5
5
  argument-hint: <action | description | list | show <id> | run now <id> | cancel <id> | update ...> [on <entry-point>] [outcome pr|plan|feedback] [schedule <when>] [pr-policy always|skip-if-open|close-previous]
@@ -7,7 +7,7 @@ allowed-tools: Bash Read Write Edit
7
7
  ---
8
8
 
9
9
  You are an expert HubLaunch workflow assistant. You turn the user's free-form
10
- request into the right `hula execute` operation — running or scheduling an
10
+ request into the right `hula schedule` operation — running or scheduling an
11
11
  action, authoring a new action file from a description, or managing existing
12
12
  runs and schedules — running everything through wrapper scripts and confirming
13
13
  any cron expression before sending it.
@@ -66,7 +66,7 @@ guess between "run an existing action" and "create a new one". Likewise, if an
66
66
 
67
67
  - If neither a built-in name nor an action path can be determined, stop with:
68
68
  ```
69
- ❌ Action required. Usage: /hula-execute <built-in name | action path | description | list | show <id> | run now <id> | cancel <id> | update ...>
69
+ ❌ Action required. Usage: /hula-schedule <built-in name | action path | description | list | show <id> | run now <id> | cancel <id> | update ...>
70
70
  ```
71
71
  - If BOTH a built-in name and an action path are detected, stop and ask which
72
72
  one they intend (the CLI rejects both).
@@ -76,13 +76,13 @@ guess between "run an existing action" and "create a new one". Likewise, if an
76
76
  Run exactly one Bash command. Use `--built-in` OR `--action-path`, never both:
77
77
 
78
78
  ```bash
79
- bash .github/scripts/hula-execute-run.sh --built-in <name> [--entry-point <path>] [--outcome-type <type>] [--schedule "<cron>"] [--pr-policy <always|skip-if-open|close-previous>]
79
+ bash .github/scripts/hula-schedule-run.sh --built-in <name> [--entry-point <path>] [--outcome-type <type>] [--schedule "<cron>"] [--pr-policy <always|skip-if-open|close-previous>]
80
80
  ```
81
81
 
82
82
  or, for a custom action file:
83
83
 
84
84
  ```bash
85
- bash .github/scripts/hula-execute-run.sh --action-path <path> [--entry-point <path>] [--outcome-type <type>] [--schedule "<cron>"] [--pr-policy <always|skip-if-open|close-previous>]
85
+ bash .github/scripts/hula-schedule-run.sh --action-path <path> [--entry-point <path>] [--outcome-type <type>] [--schedule "<cron>"] [--pr-policy <always|skip-if-open|close-previous>]
86
86
  ```
87
87
 
88
88
  Pass only the flags you resolved. Quote the cron expression. Only include
@@ -100,9 +100,9 @@ summary it has you: ask clarifying questions first (then STOP), confirm the
100
100
  action name, resolve+confirm any cron, write a free-form instruction markdown
101
101
  file to `.hublaunch/skills/<YYYY-MM-DD-HH:MM-slug>.md`, **publish it to
102
102
  origin/main BEFORE running** via
103
- `bash .github/scripts/hula-execute-manage.sh --publish-skill <path>` (abort if
103
+ `bash .github/scripts/hula-schedule-manage.sh --publish-skill <path>` (abort if
104
104
  that returns `status:"error"`), then run/schedule it with
105
- `bash .github/scripts/hula-execute-run.sh --action-path <path> …`, and report the
105
+ `bash .github/scripts/hula-schedule-run.sh --action-path <path> …`, and report the
106
106
  created file path plus the run/schedule result.
107
107
 
108
108
  ---
@@ -113,8 +113,8 @@ Run via the management wrapper:
113
113
 
114
114
  - `list` (no qualifier) → show **both** recent runs and active schedules:
115
115
  ```bash
116
- bash .github/scripts/hula-execute-manage.sh --list
117
- bash .github/scripts/hula-execute-manage.sh --list-schedules
116
+ bash .github/scripts/hula-schedule-manage.sh --list
117
+ bash .github/scripts/hula-schedule-manage.sh --list-schedules
118
118
  ```
119
119
  - "list runs" → only `--list`. "list schedules" → only `--list-schedules`.
120
120
 
@@ -123,7 +123,7 @@ Display the `cliOutput` from each result.
123
123
  ## Mode: show
124
124
 
125
125
  ```bash
126
- bash .github/scripts/hula-execute-manage.sh --show <runId>
126
+ bash .github/scripts/hula-schedule-manage.sh --show <runId>
127
127
  ```
128
128
 
129
129
  Display the `cliOutput`.
@@ -131,7 +131,7 @@ Display the `cliOutput`.
131
131
  ## Mode: run-now
132
132
 
133
133
  ```bash
134
- bash .github/scripts/hula-execute-manage.sh --run-now <scheduleId>
134
+ bash .github/scripts/hula-schedule-manage.sh --run-now <scheduleId>
135
135
  ```
136
136
 
137
137
  Report the new run id (`runId`) from the JSON, falling back to `cliOutput`.
@@ -140,19 +140,19 @@ Report the new run id (`runId`) from the JSON, falling back to `cliOutput`.
140
140
 
141
141
  1. Cancel the schedule:
142
142
  ```bash
143
- bash .github/scripts/hula-execute-manage.sh --cancel-schedule <scheduleId>
143
+ bash .github/scripts/hula-schedule-manage.sh --cancel-schedule <scheduleId>
144
144
  ```
145
145
  2. If the cancelled schedule referenced an `actionPath` under
146
146
  `.hublaunch/skills/`, **ask the user whether to also delete that file.**
147
147
  3. If they opt in, FIRST verify no other active schedule still uses it:
148
148
  ```bash
149
- bash .github/scripts/hula-execute-manage.sh --list-schedules
149
+ bash .github/scripts/hula-schedule-manage.sh --list-schedules
150
150
  ```
151
151
  - If another active schedule references the same `actionPath`, **refuse** and
152
152
  report which schedule id(s) still use it. Leave the file on the branch.
153
153
  - Otherwise delete it:
154
154
  ```bash
155
- bash .github/scripts/hula-execute-manage.sh --delete-skill <actionPath>
155
+ bash .github/scripts/hula-schedule-manage.sh --delete-skill <actionPath>
156
156
  ```
157
157
 
158
158
  ## Mode: update-skill-file
@@ -167,7 +167,7 @@ schedule.
167
167
  it with `Write` for a large change), keeping the free-form template format.
168
168
  3. Re-publish it:
169
169
  ```bash
170
- bash .github/scripts/hula-execute-manage.sh --publish-skill <actionPath>
170
+ bash .github/scripts/hula-schedule-manage.sh --publish-skill <actionPath>
171
171
  ```
172
172
  4. No schedule change is needed. Inform the user that the **next scheduled run
173
173
  will use the updated content** (the server re-reads the file on every fire).
@@ -180,14 +180,14 @@ update-schedule endpoint, so cancel + recreate on the same action:
180
180
  1. Read the existing schedule's `actionPath` (or `builtIn`), `entryPoint`, and
181
181
  `outcomeType` via:
182
182
  ```bash
183
- bash .github/scripts/hula-execute-manage.sh --list-schedules
183
+ bash .github/scripts/hula-schedule-manage.sh --list-schedules
184
184
  ```
185
185
  2. Resolve the new cron and **confirm the readback** (see Cron table).
186
186
  3. Cancel the old schedule, then recreate with the new cron on the **same**
187
187
  action:
188
188
  ```bash
189
- bash .github/scripts/hula-execute-manage.sh --cancel-schedule <old-id>
190
- bash .github/scripts/hula-execute-run.sh --action-path <same-path> [--entry-point <path>] [--outcome-type <type>] --schedule "<new-cron>"
189
+ bash .github/scripts/hula-schedule-manage.sh --cancel-schedule <old-id>
190
+ bash .github/scripts/hula-schedule-run.sh --action-path <same-path> [--entry-point <path>] [--outcome-type <type>] --schedule "<new-cron>"
191
191
  ```
192
192
  (Use `--built-in <name>` instead of `--action-path` if the schedule used a
193
193
  built-in.)
@@ -241,7 +241,7 @@ display `❌ <message>` and stop.
241
241
  🔖 **Run ID**: <runId>
242
242
  🔗 **PR**: <prUrl> (omit this line if prUrl is empty)
243
243
 
244
- Check status with: /hula-execute show <runId>
244
+ Check status with: /hula-schedule show <runId>
245
245
  ```
246
246
  - schedule (`kind:"schedule"`):
247
247
  ```
@@ -250,7 +250,7 @@ display `❌ <message>` and stop.
250
250
  🔖 **Schedule ID**: <scheduleId>
251
251
  ⏰ **Cron**: <cronExpr>
252
252
 
253
- Manage with: /hula-execute list · /hula-execute run now <scheduleId> · /hula-execute cancel <scheduleId>
253
+ Manage with: /hula-schedule list · /hula-schedule run now <scheduleId> · /hula-schedule cancel <scheduleId>
254
254
  ```
255
255
 
256
256
  If an identifier is empty, fall back to showing the `cliOutput` field.
@@ -263,5 +263,5 @@ If an identifier is empty, fall back to showing the `cliOutput` field.
263
263
  - Do NOT echo secrets.
264
264
  - Generated action files live under `.hublaunch/skills/` and are committed to
265
265
  `origin/main` via a temporary worktree — never on the user's current branch.
266
- - Never run `hula execute` before a `--publish-skill` succeeds.
266
+ - Never run `hula schedule` before a `--publish-skill` succeeds.
267
267
  - Slack/webhook notifications are sent automatically when `updateNotificationUrl` is configured in `.hublaunch/hublaunch.config.js` — no extra flag needed in the skill. The CLI reads it from config on every run and forwards it to the server.
@@ -158,6 +158,7 @@ export declare const ConfigSchema: z.ZodObject<{
158
158
  disk?: number | undefined;
159
159
  }>>;
160
160
  updateNotificationUrl: z.ZodOptional<z.ZodString>;
161
+ updateNotificationNameTag: z.ZodOptional<z.ZodString>;
161
162
  commandAliases: z.ZodOptional<z.ZodObject<{
162
163
  primary: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
163
164
  shortcuts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
@@ -296,7 +297,7 @@ export declare const ConfigSchema: z.ZodObject<{
296
297
  }>>;
297
298
  browserHeadless: z.ZodDefault<z.ZodEnum<["auto", "always", "never"]>>;
298
299
  worktreeBasePath: z.ZodDefault<z.ZodString>;
299
- envVars: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
300
+ envVars: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodLiteral<"all">]>>;
300
301
  }, "strip", z.ZodTypeAny, {
301
302
  planPath: string;
302
303
  editorCommand: "cursor" | "vsCode" | "other";
@@ -328,6 +329,7 @@ export declare const ConfigSchema: z.ZodObject<{
328
329
  disk?: number | undefined;
329
330
  } | undefined;
330
331
  updateNotificationUrl?: string | undefined;
332
+ updateNotificationNameTag?: string | undefined;
331
333
  commandAliases?: {
332
334
  primary: string[];
333
335
  shortcuts?: Record<string, string> | undefined;
@@ -370,7 +372,7 @@ export declare const ConfigSchema: z.ZodObject<{
370
372
  signInButton?: string | undefined;
371
373
  } | undefined;
372
374
  } | undefined;
373
- envVars?: string[] | undefined;
375
+ envVars?: string[] | "all" | undefined;
374
376
  }, {
375
377
  planPath?: string | undefined;
376
378
  projectOwner?: string | undefined;
@@ -400,6 +402,7 @@ export declare const ConfigSchema: z.ZodObject<{
400
402
  disk?: number | undefined;
401
403
  } | undefined;
402
404
  updateNotificationUrl?: string | undefined;
405
+ updateNotificationNameTag?: string | undefined;
403
406
  commandAliases?: {
404
407
  primary?: string[] | undefined;
405
408
  shortcuts?: Record<string, string> | undefined;
@@ -444,7 +447,7 @@ export declare const ConfigSchema: z.ZodObject<{
444
447
  } | undefined;
445
448
  browserHeadless?: "never" | "auto" | "always" | undefined;
446
449
  worktreeBasePath?: string | undefined;
447
- envVars?: string[] | undefined;
450
+ envVars?: string[] | "all" | undefined;
448
451
  }>;
449
452
  export type Config = z.infer<typeof ConfigSchema>;
450
453
  export declare const DEFAULT_CONFIG: Config;
@@ -1 +1 @@
1
- {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../src/types/config.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,QAAA,MAAM,uBAAuB;;;;;;;;;EAK3B,CAAC;AAEH,QAAA,MAAM,iBAAiB;;;;;;;;;EAGrB,CAAC;AAEH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGlB,CAAC;AAEH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;EAOf,CAAC;AAGH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYrB,CAAC;AAGH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAGlE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8FvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAGlD,eAAO,MAAM,cAAc,EAAE,MAe5B,CAAC"}
1
+ {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../../src/types/config.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,QAAA,MAAM,uBAAuB;;;;;;;;;EAK3B,CAAC;AAEH,QAAA,MAAM,iBAAiB;;;;;;;;;EAGrB,CAAC;AAEH,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGlB,CAAC;AAEH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;EAOf,CAAC;AAGH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYrB,CAAC;AAGH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAGlE,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmGvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAGlD,eAAO,MAAM,cAAc,EAAE,MAe5B,CAAC"}
@@ -78,6 +78,7 @@ export const ConfigSchema = z.object({
78
78
  })
79
79
  .optional(),
80
80
  updateNotificationUrl: z.string().optional(),
81
+ updateNotificationNameTag: z.string().optional(),
81
82
  // Command aliases
82
83
  commandAliases: z
83
84
  .object({
@@ -112,9 +113,13 @@ export const ConfigSchema = z.object({
112
113
  // Worktree configuration
113
114
  worktreeBasePath: z.string().default('.hula-worktrees'),
114
115
  // Environment variables to forward to hula-project server.
115
- // Names listed here are read from the project's .env at launch time and sent
116
- // in the ralph-run request body. Empty/undefined = send nothing (backwards compatible).
117
- envVars: z.array(z.string()).optional(), // e.g., ["TEST_USER_EMAIL", "API_KEY"]
116
+ // Can be an array of specific variable names: ["TEST_USER_EMAIL", "API_KEY"]
117
+ // Or the literal string "all" to forward all non-reserved variables from .env.
118
+ // Names are read from the project's .env at launch time and sent in the
119
+ // ralph-run request body. Empty/undefined = send nothing (backwards compatible).
120
+ envVars: z
121
+ .union([z.array(z.string()), z.literal('all')])
122
+ .optional(),
118
123
  });
119
124
  // Default configuration
120
125
  export const DEFAULT_CONFIG = {
@@ -1 +1 @@
1
- {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../src/types/config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../src/types/config.schema.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hub-launch",
3
- "version": "1.8.1",
3
+ "version": "1.10.0",
4
4
  "description": "GitHub Issue and PR automation CLI tool with plugin/hook system for project-specific customizations",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -24,6 +24,8 @@
24
24
  "dev": "tsx src/index.ts",
25
25
  "debug": "tsx --inspect-brk src/index.ts",
26
26
  "typecheck": "tsc --noEmit",
27
+ "test": "vitest run",
28
+ "test:watch": "vitest",
27
29
  "test:scripts": "bats src/templates/scripts/__tests__/*.test.sh",
28
30
  "regression": "tsc --noEmit && tsc && shx chmod +x dist/index.js && npm run copy-templates",
29
31
  "clean": "shx rm -rf dist",
@@ -66,7 +68,8 @@
66
68
  "bats": "^1.11.0",
67
69
  "shx": "^0.4.0",
68
70
  "tsx": "^4.20.6",
69
- "typescript": "^5.3.3"
71
+ "typescript": "^5.3.3",
72
+ "vitest": "^3.2.4"
70
73
  },
71
74
  "engines": {
72
75
  "node": ">=18.0.0"
@@ -1,7 +0,0 @@
1
- import type { Command } from 'commander';
2
- import type { Config } from '../types/index.js';
3
- /**
4
- * Execute command — trigger or manage execute-action runs on hula-project server
5
- */
6
- export declare function executeCommand(program: Command, config: Config): void;
7
- //# sourceMappingURL=execute.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/commands/execute.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAgEhD;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CA+HrE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/commands/execute.ts"],"names":[],"mappings":"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"}