@keystrokehq/cli 0.0.3 → 0.0.6

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 (92) hide show
  1. package/README.md +10 -0
  2. package/dist/{accept.handler-DFtM0IuO.mjs → accept.handler-CudtwdDV.mjs} +1 -1
  3. package/dist/{admin-D_7tenRC.mjs → admin-ByNq50FH.mjs} +9 -9
  4. package/dist/{agents-DMEo-6QB.mjs → agents-DbekD_Vx.mjs} +2 -2
  5. package/dist/{api-keys-BThGvtdn.mjs → api-keys-kvwq9Jb4.mjs} +5 -5
  6. package/dist/{auth-CY0Gg9sN.mjs → auth-DS3C07ib.mjs} +3 -3
  7. package/dist/{build-agents-DfbiMZ_e-CRnzruSu.mjs → build-agents-DfbiMZ_e-in-if4_C.mjs} +2 -2
  8. package/dist/{build-tasks-O1jYtlv1-Y65uGWuz.mjs → build-tasks-O1jYtlv1-B2Dm4hFj.mjs} +2 -2
  9. package/dist/{build-workflows-3fdvdHHf-DJ_lH1NH.mjs → build-workflows-3fdvdHHf-Bg5XV7hM.mjs} +2 -2
  10. package/dist/{build.handler-Tb3IpABI.mjs → build.handler-BzQRnkC3.mjs} +1 -1
  11. package/dist/{clear.handler-YS8gPriq.mjs → clear.handler-U9n_V1IM.mjs} +1 -1
  12. package/dist/{commander-DZ3F3CVq.mjs → commander-pxSPDCZ4.mjs} +1 -1
  13. package/dist/{connect-DpQgYg8z.mjs → connect-B_uc0wqI.mjs} +2 -2
  14. package/dist/{connect.handler-DuRr_yyN.mjs → connect.handler-VJgm2ZQG.mjs} +1 -1
  15. package/dist/{context-Y1f1hGYy.mjs → context-D-YKFNxL.mjs} +1 -1
  16. package/dist/{create.handler-uNG3I4wS.mjs → create.handler-d9nfcKfp.mjs} +1 -1
  17. package/dist/{credentials-UpgEcaub.mjs → credentials-CL_PCuhM.mjs} +4 -4
  18. package/dist/{current-deployment-workflow-M8GEIHxv.mjs → current-deployment-workflow-BRYuEubW.mjs} +1 -1
  19. package/dist/{current.handler-BqPUKCvn.mjs → current.handler-vJG2Dohx.mjs} +1 -1
  20. package/dist/{delete.handler-CJTHVZaz.mjs → delete.handler-RsYTkJLV.mjs} +1 -1
  21. package/dist/{deploy-Gw0KPrkf.mjs → deploy-BE3F62Mz.mjs} +2 -2
  22. package/dist/{deploy.handler-zzFAt7pp.mjs → deploy.handler-Dlyd8Zqs.mjs} +8 -8
  23. package/dist/{diff.handler--zdSkUnK.mjs → diff.handler-CH0xP8pk.mjs} +2 -2
  24. package/dist/{env.handler-d4sJ706C.mjs → env.handler-BkCO2vjR.mjs} +2 -2
  25. package/dist/{init-C0sps8R7.mjs → init-BXwx0QA4.mjs} +3 -8
  26. package/dist/{init.handler-DSW6XFZn.mjs → init.handler-Cs5YXM5Z.mjs} +18 -129
  27. package/dist/{inspect.handler-DbN0ZVTh.mjs → inspect.handler-DRMKUJsh.mjs} +2 -2
  28. package/dist/{integration-catalog-DFlytKJS.mjs → integration-catalog-ClP7YGqM.mjs} +1 -1
  29. package/dist/{integrations-Dcadds2b.mjs → integrations-CoBzLNEe.mjs} +3 -3
  30. package/dist/{invites-DvsxTRAb.mjs → invites-BmNy1RHp.mjs} +4 -4
  31. package/dist/{invites.list.handler-B5quln3m.mjs → invites.list.handler-ICP2V3p4.mjs} +1 -1
  32. package/dist/{invites.resend.handler-CSpj7bQ5.mjs → invites.resend.handler-BGaTTMka.mjs} +1 -1
  33. package/dist/{invites.revoke.handler-_hdEkBdO.mjs → invites.revoke.handler-DBwF5Lxc.mjs} +1 -1
  34. package/dist/keystroke.mjs +27 -19
  35. package/dist/{list.handler-08GY-wnx.mjs → list.handler-B2bN8NsQ.mjs} +1 -1
  36. package/dist/{list.handler-BRq-nScx.mjs → list.handler-BXTGPazY.mjs} +1 -1
  37. package/dist/{list.handler-DSPr0OxS.mjs → list.handler-BjihvxHn.mjs} +1 -1
  38. package/dist/{list.handler-CWO6DExh.mjs → list.handler-Vv9KmhB9.mjs} +2 -2
  39. package/dist/{list.handler-DLl8ca6F.mjs → list.handler-b4qYQtwn.mjs} +1 -1
  40. package/dist/{list.handler-20v4uRMk.mjs → list.handler-rnyzLJDy.mjs} +1 -1
  41. package/dist/listen-DVV1fp5c.mjs +25 -0
  42. package/dist/listen.handler-CyFpUSOu.mjs +212 -0
  43. package/dist/{logs-D_48skmi.mjs → logs-BRticZ00.mjs} +3 -3
  44. package/dist/{logs.handler-4ctMVYMj.mjs → logs.handler-CsnG7Bb0.mjs} +2 -2
  45. package/dist/{members.add.handler-Dq_giQ8g.mjs → members.add.handler-CH0RhbgE.mjs} +1 -1
  46. package/dist/{members.invite.handler-v404bUsq.mjs → members.invite.handler-CYB7RQ9A.mjs} +1 -1
  47. package/dist/{members.list.handler-D6TE0yp8.mjs → members.list.handler-DrDtmMei.mjs} +1 -1
  48. package/dist/{members.remove.handler-BhQ3cyeR.mjs → members.remove.handler-uGoZt2Me.mjs} +1 -1
  49. package/dist/{members.update.handler-BVy2cv1K.mjs → members.update.handler-DXCWkzOc.mjs} +1 -1
  50. package/dist/{org-CkRr-f3S.mjs → org-GdHhuSNk.mjs} +15 -15
  51. package/dist/{orgs.create.handler-swGnT2ce.mjs → orgs.create.handler-5AaPgTZV.mjs} +1 -1
  52. package/dist/{orgs.get.handler-ClAqYTH0.mjs → orgs.get.handler-BTfopRVm.mjs} +1 -1
  53. package/dist/{orgs.list.handler-D-ptz8It.mjs → orgs.list.handler-DKJgs6x0.mjs} +1 -1
  54. package/dist/{paused.handler-B3aVqw-m.mjs → paused.handler-BUifVTyQ.mjs} +1 -1
  55. package/dist/{projects-yA9AAaDM.mjs → projects-BjnCG-pc.mjs} +4 -4
  56. package/dist/{runs-B8mW4PqP.mjs → runs-2BdRfql3.mjs} +2 -2
  57. package/dist/{skills-sync.handler-C2faeat-.mjs → skills-sync.handler-CwwnzDiO.mjs} +3 -3
  58. package/dist/{skills.command-DWxcc3Ui.mjs → skills.command-C2NXqc5h.mjs} +5 -5
  59. package/dist/{skills.handler-8KCSF7wp.mjs → skills.handler-BTUhxO37.mjs} +1 -1
  60. package/dist/{src-J09NGJ6Z.mjs → src-CBL7AJ0H.mjs} +11 -0
  61. package/dist/{switch.handler-C4hgbhcH.mjs → switch.handler-DV0wiJP8.mjs} +1 -1
  62. package/dist/{sync-CL6zXiiA.mjs → sync-D098Vbv2.mjs} +2 -2
  63. package/dist/{sync-keystroke-agent-skills-CY9h25_5.mjs → sync-keystroke-agent-skills-CBMQ4fh_.mjs} +8 -12
  64. package/dist/{sync.handler-D1uF8E8I.mjs → sync.handler-BocldSG_.mjs} +2 -2
  65. package/dist/{task-target-build-DTzz4fpG.mjs → task-target-build-Di8gflnj.mjs} +3 -3
  66. package/dist/task-target-deploy-runner.mjs +4 -4
  67. package/dist/{test-BsTLXIPB.mjs → test-BZt0Duhs.mjs} +6 -6
  68. package/dist/{test.handler-D25kziPi.mjs → test.handler-iCUotLes.mjs} +1 -1
  69. package/dist/{trigger-artifacts-B3OCTX9K-DG-FGGJT.mjs → trigger-artifacts-B3OCTX9K-Cgt51KLh.mjs} +2 -2
  70. package/dist/{try-deploy.handler-2aX5TmLk.mjs → try-deploy.handler-YDOirkk1.mjs} +3 -3
  71. package/dist/upgrade-Bdez-X6_.mjs +41 -0
  72. package/dist/upgrade.handler-DhH_Cuza.mjs +80 -0
  73. package/dist/{upload.handler-CqProKVJ.mjs → upload.handler-BmqZAPxZ.mjs} +2 -2
  74. package/dist/{users.get.handler-C_d2GWKX.mjs → users.get.handler-uoEgEwI-.mjs} +1 -1
  75. package/dist/{users.list.handler-DXAsO8Yk.mjs → users.list.handler-DLWPOIHD.mjs} +1 -1
  76. package/dist/{users.set-role.handler-Bn_yV4RI.mjs → users.set-role.handler-BCJhTsyb.mjs} +1 -1
  77. package/dist/{validate.handler-CGD6GttR.mjs → validate.handler-ROzzUI85.mjs} +1 -1
  78. package/dist/{workflow-build-BcaIdRR6.mjs → workflow-build-DD8TLlPu.mjs} +5 -5
  79. package/dist/{workflow-bundler-BzHk73PM-Cde7cKiU.mjs → workflow-bundler-BzHk73PM-Bt-poFqX.mjs} +1 -1
  80. package/dist/{workflows-S-gbfw8f.mjs → workflows-DypSJM0t.mjs} +12 -12
  81. package/package.json +9 -9
  82. /package/dist/{build-metadata-zidV9Cai-RgG4ndIH.mjs → build-metadata-zidV9Cai-BAS0FMxT.mjs} +0 -0
  83. /package/dist/{clear-cache.handler-BEbPz5Ej.mjs → clear-cache.handler-BDV-a3ku.mjs} +0 -0
  84. /package/dist/{clear.handler-CtOZ4aRn.mjs → clear.handler-Dh6QoVO1.mjs} +0 -0
  85. /package/dist/{deploy-CdnaZY3s.mjs → deploy-B_bkUlIL.mjs} +0 -0
  86. /package/dist/{detect-env-access-CwkOYeYM-h2W05D_Q.mjs → detect-env-access-CwkOYeYM-CsrSOCcj.mjs} +0 -0
  87. /package/dist/{list.handler-DAiJtW20.mjs → list.handler-DO0PnyWP.mjs} +0 -0
  88. /package/dist/{logs.handler-C3QnSCaH.mjs → logs.handler-ddQu_MXN.mjs} +0 -0
  89. /package/dist/{options-Dn9t3K4a.mjs → options-BhB9qA5P.mjs} +0 -0
  90. /package/dist/{read-credential-keys-77a91T8M-CAJLnMRi.mjs → read-credential-keys-77a91T8M-aLuQvlIq.mjs} +0 -0
  91. /package/dist/{run-polling-CTzhTgyN.mjs → run-polling-CF9OeLWl.mjs} +0 -0
  92. /package/dist/{task-target-deploy-BPLlP__P.mjs → task-target-deploy-BzGRNDiv.mjs} +0 -0
package/README.md CHANGED
@@ -80,6 +80,7 @@ keystroke --api-key sk_... --server-url https://api.example.com workflows list
80
80
  | `keystroke agents inspect` | Inspect built agent manifests and workflow-tool metadata. |
81
81
  | `keystroke test` | Test workflows and agent-callable tools. |
82
82
  | `keystroke connect` | Connect official integrations through OAuth. |
83
+ | `keystroke listen` | Create a temporary URL and print the first captured request body. |
83
84
  | `keystroke integrations` | List available integrations and registration metadata. |
84
85
  | `keystroke credentials` | List credential sets, inspect requirements, and upload credential values. |
85
86
  | `keystroke org` | View and switch organization context. |
@@ -87,9 +88,18 @@ keystroke --api-key sk_... --server-url https://api.example.com workflows list
87
88
  | `keystroke runs inspect` | Inspect workflow and agent runs. |
88
89
  | `keystroke logs` | View or clear local CLI logs. |
89
90
  | `keystroke skills sync` | Sync installed Keystroke agent skills into editor skill folders. |
91
+ | `keystroke upgrade` | Upgrade the installed Keystroke CLI package. |
90
92
 
91
93
  Run `keystroke <command> --help` for exact arguments and flags.
92
94
 
95
+ Capture one incoming webhook or API request body:
96
+
97
+ ```bash
98
+ keystroke listen
99
+ keystroke listen --timeout 60
100
+ keystroke listen --json
101
+ ```
102
+
93
103
  ## Project Workflow
94
104
 
95
105
  Create a new project:
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { t as ui } from "./keystroke.mjs";
4
4
  import { i as writeJson } from "./output-q4KljAhu.mjs";
5
- import { i as requireClient } from "./context-Y1f1hGYy.mjs";
5
+ import { i as requireClient } from "./context-D-YKFNxL.mjs";
6
6
  import { n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CNC8JfZ5.mjs";
7
7
  //#region src/commands/invites/accept.handler.ts
8
8
  async function handleInvitesAccept(options, ctx) {
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
4
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
4
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
5
5
  import { t as OrgRoleSchema } from "./schema-_FQrHcIS.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/admin/orgs.command.ts
@@ -28,21 +28,21 @@ function createAdminOrgsCommand() {
28
28
  description: "Manage organizations as a platform admin",
29
29
  schema: AdminOrgsListOptionsSchema,
30
30
  optionsConfig: { ...JSON_OPTION_CONFIG },
31
- loadHandler: async () => (await import("./orgs.list.handler-D-ptz8It.mjs")).handleAdminOrgsList,
31
+ loadHandler: async () => (await import("./orgs.list.handler-DKJgs6x0.mjs")).handleAdminOrgsList,
32
32
  subcommands: [
33
33
  createTypedCommand({
34
34
  name: "create",
35
35
  description: "Create an organization (requires system.create_org)",
36
36
  schema: AdminOrgsCreateOptionsSchema,
37
37
  optionsConfig: CREATE_OPTIONS_CONFIG,
38
- loadHandler: async () => (await import("./orgs.create.handler-swGnT2ce.mjs")).handleAdminOrgsCreate
38
+ loadHandler: async () => (await import("./orgs.create.handler-5AaPgTZV.mjs")).handleAdminOrgsCreate
39
39
  }),
40
40
  createTypedCommand({
41
41
  name: "list",
42
42
  description: "List organizations (requires system.view_orgs)",
43
43
  schema: AdminOrgsListOptionsSchema,
44
44
  optionsConfig: { ...JSON_OPTION_CONFIG },
45
- loadHandler: async () => (await import("./orgs.list.handler-D-ptz8It.mjs")).handleAdminOrgsList
45
+ loadHandler: async () => (await import("./orgs.list.handler-DKJgs6x0.mjs")).handleAdminOrgsList
46
46
  }),
47
47
  createTypedCommand({
48
48
  name: "get",
@@ -54,7 +54,7 @@ function createAdminOrgsCommand() {
54
54
  description: "Organization ID",
55
55
  key: "orgId"
56
56
  },
57
- loadHandler: async () => (await import("./orgs.get.handler-ClAqYTH0.mjs")).handleAdminOrgsGet
57
+ loadHandler: async () => (await import("./orgs.get.handler-BTfopRVm.mjs")).handleAdminOrgsGet
58
58
  })
59
59
  ]
60
60
  });
@@ -157,14 +157,14 @@ function createAdminUsersCommand() {
157
157
  description: "Manage platform users",
158
158
  schema: AdminUsersListOptionsSchema,
159
159
  optionsConfig: { ...JSON_OPTION_CONFIG },
160
- loadHandler: async () => (await import("./users.list.handler-DXAsO8Yk.mjs")).handleAdminUsersList,
160
+ loadHandler: async () => (await import("./users.list.handler-DLWPOIHD.mjs")).handleAdminUsersList,
161
161
  subcommands: [
162
162
  createTypedCommand({
163
163
  name: "list",
164
164
  description: "List platform users",
165
165
  schema: AdminUsersListOptionsSchema,
166
166
  optionsConfig: { ...JSON_OPTION_CONFIG },
167
- loadHandler: async () => (await import("./users.list.handler-DXAsO8Yk.mjs")).handleAdminUsersList
167
+ loadHandler: async () => (await import("./users.list.handler-DLWPOIHD.mjs")).handleAdminUsersList
168
168
  }),
169
169
  createTypedCommand({
170
170
  name: "get",
@@ -176,7 +176,7 @@ function createAdminUsersCommand() {
176
176
  description: "User ID",
177
177
  key: "userId"
178
178
  },
179
- loadHandler: async () => (await import("./users.get.handler-C_d2GWKX.mjs")).handleAdminUsersGet
179
+ loadHandler: async () => (await import("./users.get.handler-uoEgEwI-.mjs")).handleAdminUsersGet
180
180
  }),
181
181
  createTypedCommand({
182
182
  name: "set-role",
@@ -188,7 +188,7 @@ function createAdminUsersCommand() {
188
188
  description: "User ID",
189
189
  key: "userId"
190
190
  },
191
- loadHandler: async () => (await import("./users.set-role.handler-Bn_yV4RI.mjs")).handleAdminUsersSetRole
191
+ loadHandler: async () => (await import("./users.set-role.handler-BCJhTsyb.mjs")).handleAdminUsersSetRole
192
192
  })
193
193
  ]
194
194
  });
@@ -3,11 +3,11 @@
3
3
  import { D as throwReportedCliExit, h as toErrorMessage, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
4
4
  import { d as trackProject } from "./dist-BF6r1hfv.mjs";
5
5
  import { i as writeJson, n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
6
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
6
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
7
7
  import { i as readAgentManifestsFromOutDir } from "./dist-C2Dq_nx3.mjs";
8
8
  import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
9
9
  import { t as createSpinnerProgress } from "./spinner-progress-bvKd1jXc.mjs";
10
- import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-BcaIdRR6.mjs";
10
+ import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-DD8TLlPu.mjs";
11
11
  import { i as resolveTypeHint } from "./schema-display-D4A1gQEM.mjs";
12
12
  import { z } from "zod";
13
13
  //#region src/commands/agents/inspect-display.ts
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
4
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
4
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
5
5
  import { z } from "zod";
6
6
  //#region src/commands/api-keys/api-keys.command.ts
7
7
  const ApiKeysCreateOptionsSchema = JsonOptionSchema.extend({ name: z.string().optional() });
@@ -23,21 +23,21 @@ function createApiKeysCommand() {
23
23
  description: "Manage API keys for your organization",
24
24
  schema: JsonOptionSchema,
25
25
  optionsConfig: { ...JSON_OPTION_CONFIG },
26
- loadHandler: async () => (await import("./list.handler-20v4uRMk.mjs")).handleApiKeysList,
26
+ loadHandler: async () => (await import("./list.handler-rnyzLJDy.mjs")).handleApiKeysList,
27
27
  subcommands: [
28
28
  createTypedCommand({
29
29
  name: "list",
30
30
  description: "List all API keys for your organization",
31
31
  schema: JsonOptionSchema,
32
32
  optionsConfig: { ...JSON_OPTION_CONFIG },
33
- loadHandler: async () => (await import("./list.handler-20v4uRMk.mjs")).handleApiKeysList
33
+ loadHandler: async () => (await import("./list.handler-rnyzLJDy.mjs")).handleApiKeysList
34
34
  }),
35
35
  createTypedCommand({
36
36
  name: "create",
37
37
  description: "Create a new API key (raw key shown once)",
38
38
  schema: ApiKeysCreateOptionsSchema,
39
39
  optionsConfig: CREATE_OPTIONS_CONFIG,
40
- loadHandler: async () => (await import("./create.handler-uNG3I4wS.mjs")).handleApiKeysCreate
40
+ loadHandler: async () => (await import("./create.handler-d9nfcKfp.mjs")).handleApiKeysCreate
41
41
  }),
42
42
  createTypedCommand({
43
43
  name: "delete",
@@ -49,7 +49,7 @@ function createApiKeysCommand() {
49
49
  description: "API key ID to delete",
50
50
  key: "apiKeyId"
51
51
  },
52
- loadHandler: async () => (await import("./delete.handler-CJTHVZaz.mjs")).handleApiKeysDelete
52
+ loadHandler: async () => (await import("./delete.handler-RsYTkJLV.mjs")).handleApiKeysDelete
53
53
  })
54
54
  ]
55
55
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { n as DEFAULT_CLI_WEB_URL } from "./default-urls-BS4twrsS.mjs";
4
4
  import { g as AUTH_TIMEOUT_SECONDS } from "./keystroke.mjs";
5
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
5
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/auth/auth.command.ts
8
8
  const AuthOptionsSchema = z.object({
@@ -32,14 +32,14 @@ function createAuthCommand() {
32
32
  description: "Revoke the saved API key and remove local credentials",
33
33
  schema: z.object({}),
34
34
  optionsConfig: {},
35
- loadHandler: async () => (await import("./clear.handler-YS8gPriq.mjs")).handleAuthClear
35
+ loadHandler: async () => (await import("./clear.handler-U9n_V1IM.mjs")).handleAuthClear
36
36
  }),
37
37
  createTypedCommand({
38
38
  name: "test",
39
39
  description: "Verify that the saved API key is valid",
40
40
  schema: z.object({}),
41
41
  optionsConfig: {},
42
- loadHandler: async () => (await import("./test.handler-D25kziPi.mjs")).handleAuthTest
42
+ loadHandler: async () => (await import("./test.handler-iCUotLes.mjs")).handleAuthTest
43
43
  }),
44
44
  createTypedCommand({
45
45
  name: "status",
@@ -3,8 +3,8 @@
3
3
  import { n as readOptionalJsonSchemaKeys, t as manifestToDeclaredCredentialRequirement } from "./declared-credential-requirements-Bwlb-KZE.mjs";
4
4
  import { t as AgentVersionManifestSchema } from "./agent-manifest-Bfa3DBgc.mjs";
5
5
  import { i as createAgentSandboxPackage, n as AGENT_VM_PI_SKILLS_ROOT, r as AGENT_VM_TOOLS_RUNTIME_RELATIVE_PATH, t as AGENT_VM_HOST_CALL_RELATIVE_PATH } from "./agent-bundle-package-DWV6B_5q-FPT0bJaA.mjs";
6
- import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-CAJLnMRi.mjs";
7
- import { t as bundleSandboxAgentTarget } from "./workflow-bundler-BzHk73PM-Cde7cKiU.mjs";
6
+ import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-aLuQvlIq.mjs";
7
+ import { t as bundleSandboxAgentTarget } from "./workflow-bundler-BzHk73PM-Bt-poFqX.mjs";
8
8
  import { builtinModules } from "node:module";
9
9
  import { lstat, readFile, readdir, realpath } from "node:fs/promises";
10
10
  import path from "node:path";
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { n as TaskBuildManifestSchema } from "./task-DsrXI6XH.mjs";
4
- import { n as bundleWorkflowTarget } from "./workflow-bundler-BzHk73PM-Cde7cKiU.mjs";
5
- import { t as buildTriggerArtifacts } from "./trigger-artifacts-B3OCTX9K-DG-FGGJT.mjs";
4
+ import { n as bundleWorkflowTarget } from "./workflow-bundler-BzHk73PM-Bt-poFqX.mjs";
5
+ import { t as buildTriggerArtifacts } from "./trigger-artifacts-B3OCTX9K-Cgt51KLh.mjs";
6
6
  import { performance } from "node:perf_hooks";
7
7
  //#region ../../packages/workflow-builder/dist/build-tasks-O1jYtlv1.mjs
8
8
  async function buildTaskArtifact(options) {
@@ -6,8 +6,8 @@ import { a as MANIFEST_FILE_NAME, i as FLOW_FILE_NAME, r as BUNDLE_FILE_NAME, s
6
6
  import { t as runWithConcurrency } from "./concurrency-gXn9Rw8x-BTlfau8D.mjs";
7
7
  import { n as WorkflowLoaderProtocolError, r as WorkflowMetadataLoadError, s as createLoaderProtocolFailure } from "./import-module-DDPnzlJ1-CYJD2n2b.mjs";
8
8
  import { r as toRelativeFilePath } from "./normalize-path-CojS-CgQ-BKRFUzWW.mjs";
9
- import { n as bundleWorkflowTarget } from "./workflow-bundler-BzHk73PM-Cde7cKiU.mjs";
10
- import { t as buildTriggerArtifacts } from "./trigger-artifacts-B3OCTX9K-DG-FGGJT.mjs";
9
+ import { n as bundleWorkflowTarget } from "./workflow-bundler-BzHk73PM-Bt-poFqX.mjs";
10
+ import { t as buildTriggerArtifacts } from "./trigger-artifacts-B3OCTX9K-Cgt51KLh.mjs";
11
11
  import { realpathSync } from "node:fs";
12
12
  import { readFile } from "node:fs/promises";
13
13
  import * as path$1 from "node:path";
@@ -3,7 +3,7 @@
3
3
  import { C as CliExitError } from "./keystroke.mjs";
4
4
  import { d as trackProject } from "./dist-BF6r1hfv.mjs";
5
5
  import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
6
- import { a as runWorkflowBuild, i as renderBuildSummary, n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-BcaIdRR6.mjs";
6
+ import { a as runWorkflowBuild, i as renderBuildSummary, n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-DD8TLlPu.mjs";
7
7
  import { t as createBuildProgress } from "./build-progress-Cn2j1LqF.mjs";
8
8
  import { t as withErrorBoundary } from "./error-boundary-B9PgBkv8.mjs";
9
9
  //#region src/commands/workflows/build.handler.ts
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { h as toErrorMessage, i as logger, l as AUTH_HINT, t as ui } from "./keystroke.mjs";
4
4
  import { c as removeOrgCredentials, r as deleteStoredCredentials } from "./dist-BF6r1hfv.mjs";
5
- import { createClient } from "./src-J09NGJ6Z.mjs";
5
+ import { createClient } from "./src-CBL7AJ0H.mjs";
6
6
  //#region src/commands/auth/clear.handler.ts
7
7
  async function tryRevokeKey(apiKey, apiKeyId, baseUrl, organizationId) {
8
8
  try {
@@ -78,7 +78,7 @@ function createTypedCommand(params) {
78
78
  const globalOpts = cmd.optsWithGlobals();
79
79
  if (globalOpts.debug) logger.setDebug(true);
80
80
  const contextMode = params.contextMode ?? "full";
81
- const contextModule = await import("./context-Y1f1hGYy.mjs").then((n) => n.n);
81
+ const contextModule = await import("./context-D-YKFNxL.mjs").then((n) => n.n);
82
82
  const base = contextMode === "auth" ? await contextModule.resolveAuthContext({
83
83
  apiKey: globalOpts.apiKey,
84
84
  serverUrl: globalOpts.serverUrl,
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
4
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
4
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
5
5
  import { z } from "zod";
6
6
  //#region src/commands/connect/connect.command.ts
7
7
  const ConnectOptionsSchema = JsonOptionSchema.extend({
@@ -31,7 +31,7 @@ function createConnectCommand() {
31
31
  description: "Connect an official integration via OAuth (e.g., keystroke connect slack)",
32
32
  schema: ConnectOptionsSchema,
33
33
  optionsConfig: CONNECT_OPTIONS_CONFIG,
34
- loadHandler: async () => (await import("./connect.handler-DuRr_yyN.mjs")).handleConnect,
34
+ loadHandler: async () => (await import("./connect.handler-VJgm2ZQG.mjs")).handleConnect,
35
35
  argument: {
36
36
  name: "integrationId",
37
37
  description: "Integration to connect (e.g., slack, linear)",
@@ -4,7 +4,7 @@ import { D as throwReportedCliExit, h as toErrorMessage, l as AUTH_HINT, m as is
4
4
  import { i as writeJson } from "./output-q4KljAhu.mjs";
5
5
  import { n as CredentialScopeSchema, t as ConnectionStatusSchema } from "./schema-Di90TXoX.mjs";
6
6
  import { t as openBrowser } from "./browser-gddMccBQ.mjs";
7
- import { t as getIntegrationCatalog } from "./integration-catalog-DFlytKJS.mjs";
7
+ import { t as getIntegrationCatalog } from "./integration-catalog-ClP7YGqM.mjs";
8
8
  import { z } from "zod";
9
9
  //#region ../../packages/shared-types/src/connections/api.ts
10
10
  /**
@@ -37,7 +37,7 @@ async function resolveBaseContext(overrides = {}) {
37
37
  const authContext = await resolveAuthContext(overrides);
38
38
  let client = null;
39
39
  if (authContext.apiKey && authContext.baseUrl) try {
40
- const { createClient } = await import("./src-J09NGJ6Z.mjs");
40
+ const { createClient } = await import("./src-CBL7AJ0H.mjs");
41
41
  client = createClient({
42
42
  apiKey: authContext.apiKey,
43
43
  baseUrl: authContext.baseUrl,
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { D as throwReportedCliExit, h as toErrorMessage, t as ui } from "./keystroke.mjs";
4
4
  import { i as writeJson } from "./output-q4KljAhu.mjs";
5
- import { i as requireClient } from "./context-Y1f1hGYy.mjs";
5
+ import { i as requireClient } from "./context-D-YKFNxL.mjs";
6
6
  //#region src/commands/api-keys/create.handler.ts
7
7
  async function handleApiKeysCreate(options, ctx) {
8
8
  const client = requireClient(ctx);
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
4
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
4
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
5
5
  import { n as CredentialScopeSchema, r as CredentialScopeValues } from "./schema-Di90TXoX.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/credentials/list/list.command.ts
@@ -46,7 +46,7 @@ function createCredentialsListCommand() {
46
46
  description: "List credential sets on the server",
47
47
  schema: ListOptionsSchema,
48
48
  optionsConfig: LIST_OPTIONS_CONFIG,
49
- loadHandler: async () => (await import("./list.handler-DSPr0OxS.mjs")).handleCredentialsList
49
+ loadHandler: async () => (await import("./list.handler-BjihvxHn.mjs")).handleCredentialsList
50
50
  });
51
51
  }
52
52
  //#endregion
@@ -121,7 +121,7 @@ function createCredentialsUploadCommand() {
121
121
  description: "Upload credentials from env vars to the server. Default: reads requirements from built workflow manifests. Use --integration for an official integration or --credential-set + --keys for a custom explicit upload.",
122
122
  schema: UploadOptionsSchema,
123
123
  optionsConfig: UPLOAD_OPTIONS_CONFIG,
124
- loadHandler: async () => (await import("./upload.handler-CqProKVJ.mjs")).handleCredentialsUpload
124
+ loadHandler: async () => (await import("./upload.handler-BmqZAPxZ.mjs")).handleCredentialsUpload
125
125
  });
126
126
  }
127
127
  //#endregion
@@ -152,7 +152,7 @@ function createCredentialsCommand() {
152
152
  }
153
153
  },
154
154
  handler: async (opts, ctx) => {
155
- const { handleCredentialsList } = await import("./list.handler-DSPr0OxS.mjs");
155
+ const { handleCredentialsList } = await import("./list.handler-BjihvxHn.mjs");
156
156
  await handleCredentialsList({
157
157
  ...opts,
158
158
  scope: void 0,
@@ -5,7 +5,7 @@ import { t as assertWorkflowProjectRoot } from "./project-config-opj6DsPF.mjs";
5
5
  import { a as readManifestsFromOutDir } from "./dist-C2Dq_nx3.mjs";
6
6
  import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
7
7
  import { t as createSpinnerProgress } from "./spinner-progress-bvKd1jXc.mjs";
8
- import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-BcaIdRR6.mjs";
8
+ import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-DD8TLlPu.mjs";
9
9
  //#region src/commands/workflows/_shared/current-deployment-workflow.ts
10
10
  /**
11
11
  * Lightweight resolution: gets projectId from keystroke.config.ts and authoredWorkflowId
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { t as ui } from "./keystroke.mjs";
4
- import { i as requireClient } from "./context-Y1f1hGYy.mjs";
4
+ import { i as requireClient } from "./context-D-YKFNxL.mjs";
5
5
  //#region src/commands/org/current.handler.ts
6
6
  async function handleOrgCurrent(_options, ctx) {
7
7
  if (!ctx.organizationId) {
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { D as throwReportedCliExit, h as toErrorMessage, t as ui } from "./keystroke.mjs";
4
- import { i as requireClient } from "./context-Y1f1hGYy.mjs";
4
+ import { i as requireClient } from "./context-D-YKFNxL.mjs";
5
5
  //#region src/commands/api-keys/delete.handler.ts
6
6
  async function handleApiKeysDelete(options, ctx) {
7
7
  const client = requireClient(ctx);
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
3
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/deploy/deploy.command.ts
6
6
  /**
@@ -64,7 +64,7 @@ function createDeployCommand() {
64
64
  schema: DeployOptionsSchema,
65
65
  optionsConfig: DEPLOY_OPTIONS_CONFIG,
66
66
  contextMode: "auth",
67
- loadHandler: async () => (await import("./deploy.handler-zzFAt7pp.mjs")).handleDeploy
67
+ loadHandler: async () => (await import("./deploy.handler-Dlyd8Zqs.mjs")).handleDeploy
68
68
  });
69
69
  cmd.enablePositionalOptions();
70
70
  cmd.passThroughOptions();
@@ -4,14 +4,14 @@ import { C as CliExitError, i as logger, o as ANSI, s as style, t as ui } from "
4
4
  import { d as trackProject } from "./dist-BF6r1hfv.mjs";
5
5
  import { t as assertWorkflowProjectRoot } from "./project-config-opj6DsPF.mjs";
6
6
  import { r as isLocalMode } from "./env-YTZGKGIu.mjs";
7
- import { r as requireAuthOptions, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-Y1f1hGYy.mjs";
7
+ import { r as requireAuthOptions, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-D-YKFNxL.mjs";
8
8
  import { i as readAgentManifestsFromOutDir, o as readWorkflowsFromDisk } from "./dist-C2Dq_nx3.mjs";
9
9
  import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
10
- import { n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-BcaIdRR6.mjs";
10
+ import { n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-DD8TLlPu.mjs";
11
11
  import { t as createBuildProgress } from "./build-progress-Cn2j1LqF.mjs";
12
12
  import { t as createDeployProgress } from "./deploy-progress-CZ2rPlOj.mjs";
13
13
  import { t as withErrorBoundary } from "./error-boundary-B9PgBkv8.mjs";
14
- import { t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-M8GEIHxv.mjs";
14
+ import { t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-BRYuEubW.mjs";
15
15
  import { t as computeWorkflowDiff } from "./diff-utils-DWNcRA8g.mjs";
16
16
  import { access } from "node:fs/promises";
17
17
  import path from "node:path";
@@ -199,7 +199,7 @@ async function handleDeploy(options, ctx) {
199
199
  let outDir;
200
200
  let artifactFilter;
201
201
  try {
202
- const { runWorkflowBuild } = await import("./workflow-build-BcaIdRR6.mjs").then((n) => n.o);
202
+ const { runWorkflowBuild } = await import("./workflow-build-DD8TLlPu.mjs").then((n) => n.o);
203
203
  const buildOutcome = await runWorkflowBuild({
204
204
  workflowsDir,
205
205
  verbose: options.verbose,
@@ -261,7 +261,7 @@ async function handleDeploy(options, ctx) {
261
261
  }
262
262
  async function handleTaskTargetDeploy(options) {
263
263
  renderBuildHeader(void 0);
264
- const buildResult = await (deployHandlerDependencies.buildTaskTargets ?? (await import("./task-target-build-DTzz4fpG.mjs")).buildTaskTargets)({
264
+ const buildResult = await (deployHandlerDependencies.buildTaskTargets ?? (await import("./task-target-build-Di8gflnj.mjs")).buildTaskTargets)({
265
265
  projectRoot: options.workflowsDir,
266
266
  targetFiles: options.targetFiles,
267
267
  disableSourcemaps: options.options.disableSourcemaps
@@ -279,7 +279,7 @@ async function handleTaskTargetDeploy(options) {
279
279
  const progress = createDeployProgress();
280
280
  let result;
281
281
  try {
282
- result = await (deployHandlerDependencies.deployTaskTargets ?? (await import("./task-target-deploy-BPLlP__P.mjs")).deployTaskTargets)({
282
+ result = await (deployHandlerDependencies.deployTaskTargets ?? (await import("./task-target-deploy-BzGRNDiv.mjs")).deployTaskTargets)({
283
283
  preparedTasks: buildResult.preparedTasks,
284
284
  client,
285
285
  organizationId: options.projectConfig.organizationId,
@@ -301,7 +301,7 @@ async function handleTaskTargetDeploy(options) {
301
301
  }
302
302
  async function createFullDeployClient(ctx) {
303
303
  const authOptions = requireAuthOptions(ctx);
304
- const { createClient } = await import("./src-J09NGJ6Z.mjs");
304
+ const { createClient } = await import("./src-CBL7AJ0H.mjs");
305
305
  return createClient({
306
306
  ...authOptions,
307
307
  onRequest: (info) => logger.debug(`-> ${info.method} ${info.url}`, {
@@ -316,7 +316,7 @@ async function createFullDeployClient(ctx) {
316
316
  }
317
317
  async function createTaskDeployClient(ctx) {
318
318
  const authOptions = requireAuthOptions(ctx);
319
- return (deployHandlerDependencies.createDeployClient ?? (await import("./deploy-CdnaZY3s.mjs")).createDeployClient)(authOptions);
319
+ return (deployHandlerDependencies.createDeployClient ?? (await import("./deploy-B_bkUlIL.mjs")).createDeployClient)(authOptions);
320
320
  }
321
321
  function renderSuccessSummary(result) {
322
322
  const tasks = result.tasks || [];
@@ -3,8 +3,8 @@
3
3
  import { C as CliExitError, D as throwReportedCliExit, h as toErrorMessage, t as ui } from "./keystroke.mjs";
4
4
  import { d as trackProject } from "./dist-BF6r1hfv.mjs";
5
5
  import { i as writeJson } from "./output-q4KljAhu.mjs";
6
- import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-Y1f1hGYy.mjs";
7
- import { n as resolveLocalWorkflowManifest, t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-M8GEIHxv.mjs";
6
+ import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-D-YKFNxL.mjs";
7
+ import { n as resolveLocalWorkflowManifest, t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-BRYuEubW.mjs";
8
8
  import { n as renderDiff, t as computeWorkflowDiff } from "./diff-utils-DWNcRA8g.mjs";
9
9
  //#region src/commands/workflows/diff/diff.handler.ts
10
10
  async function handleWorkflowsDiff(options, ctx) {
@@ -3,12 +3,12 @@
3
3
  import { C as CliExitError, D as throwReportedCliExit, h as toErrorMessage, m as isNetworkError, o as ANSI, p as isAuthError, s as style, t as ui, u as REAUTH_HINT } from "./keystroke.mjs";
4
4
  import { d as trackProject } from "./dist-BF6r1hfv.mjs";
5
5
  import { i as writeJson } from "./output-q4KljAhu.mjs";
6
- import { i as requireClient } from "./context-Y1f1hGYy.mjs";
6
+ import { i as requireClient } from "./context-D-YKFNxL.mjs";
7
7
  import { n as CredentialScopeSchema, t as ConnectionStatusSchema } from "./schema-Di90TXoX.mjs";
8
8
  import { a as readManifestsFromOutDir } from "./dist-C2Dq_nx3.mjs";
9
9
  import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
10
10
  import { t as groupCredentialRequirements } from "./credentials-DHlK_O4L.mjs";
11
- import { t as getIntegrationCatalog } from "./integration-catalog-DFlytKJS.mjs";
11
+ import { t as getIntegrationCatalog } from "./integration-catalog-ClP7YGqM.mjs";
12
12
  import { z } from "zod";
13
13
  import Table from "cli-table3";
14
14
  //#region ../../packages/shared-types/src/credentials/api/responses.ts
@@ -1,14 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
3
+ import { t as createTypedCommand } from "./commander-pxSPDCZ4.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/init/init.command.ts
6
6
  const InitOptionsSchema = z.object({
7
7
  path: z.string().optional().describe("Directory to initialize (default: current directory)"),
8
8
  name: z.string().optional().describe("Project name (skips prompt; default: directory basename)"),
9
9
  description: z.string().optional().describe("Project description for the API (skips prompt when creating a new project)"),
10
- scaffold: z.boolean().default(true).describe("Scaffold project files (package.json, vitest.config.ts, etc.)"),
11
- install: z.boolean().default(true).describe("Run package manager install after scaffolding (when scaffold is enabled)")
10
+ scaffold: z.boolean().default(true).describe("Scaffold project files (package.json, vitest.config.ts, etc.)")
12
11
  });
13
12
  const INIT_OPTIONS_CONFIG = {
14
13
  path: {
@@ -26,10 +25,6 @@ const INIT_OPTIONS_CONFIG = {
26
25
  scaffold: {
27
26
  flag: "--no-scaffold",
28
27
  description: "Skip scaffolding project files (package.json, vitest.config.ts, etc.)"
29
- },
30
- install: {
31
- flag: "--no-install",
32
- description: "Skip running package manager install after scaffolding"
33
28
  }
34
29
  };
35
30
  function createInitCommand() {
@@ -38,7 +33,7 @@ function createInitCommand() {
38
33
  description: "Initialize a Keystroke project (creates keystroke.config.ts)",
39
34
  schema: InitOptionsSchema,
40
35
  optionsConfig: INIT_OPTIONS_CONFIG,
41
- loadHandler: async () => (await import("./init.handler-DSW6XFZn.mjs")).handleInit
36
+ loadHandler: async () => (await import("./init.handler-Cs5YXM5Z.mjs")).handleInit
42
37
  });
43
38
  }
44
39
  //#endregion