@keystrokehq/cli 0.0.29 → 0.0.30

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 (125) hide show
  1. package/dist/{accept.handler-tvT9pleH.mjs → accept.handler-DNfIXPSP.mjs} +1 -1
  2. package/dist/{admin-DsAQ0WWj.mjs → admin-CJp8XksD.mjs} +9 -9
  3. package/dist/{agents-Bc3B9_ms.mjs → agents-G37PM35Z.mjs} +5 -5
  4. package/dist/{api-O5tdGdzc.mjs → api-BK3EhPvs.mjs} +77 -3
  5. package/dist/{api-keys-tle_m3kk.mjs → api-keys-4igNHJ_W.mjs} +5 -5
  6. package/dist/{auth-DLaY5yCZ.mjs → auth-CIOmmV4x.mjs} +4 -4
  7. package/dist/{auth.handler-Dq2fXO3S.mjs → auth.handler-CznN_vfz.mjs} +1 -1
  8. package/dist/{build-agents-DseUtzd4-Cmd-kNNO.mjs → build-agents-DseUtzd4-CSGpNXur.mjs} +2 -2
  9. package/dist/{build-tasks-C09SdfjC-B0F7BZZG.mjs → build-tasks-C09SdfjC-BmAVLTtQ.mjs} +2 -2
  10. package/dist/{build-workflows-BZ_m97Pr-HQZY4xBV.mjs → build-workflows-BZ_m97Pr-BiyptCrn.mjs} +3 -3
  11. package/dist/{build.handler-5CpbMuHx.mjs → build.handler-zHimoO7c.mjs} +5 -5
  12. package/dist/{clear-cache.handler-DpP1VlbR.mjs → clear-cache.handler-BP0K1-uN.mjs} +1 -1
  13. package/dist/{clear.handler-FzohTmpU.mjs → clear.handler-PsA5QKHx.mjs} +2 -2
  14. package/dist/{commander-BTMzBiLq.mjs → commander-BlrSdFcu.mjs} +1 -1
  15. package/dist/{connect-zNUiEjbR.mjs → connect-BbLJhlIA.mjs} +2 -2
  16. package/dist/{connect.handler-D1orna55.mjs → connect.handler-BthE-7Wg.mjs} +3 -3
  17. package/dist/{context-DHOTSgPb.mjs → context-sgKhRc5v.mjs} +3 -3
  18. package/dist/{create.handler-BuxP18uj.mjs → create.handler-BovbO_g0.mjs} +1 -1
  19. package/dist/{credential-env-map-CtmzNkwU.mjs → credential-env-map-CRs0llf0.mjs} +2 -2
  20. package/dist/credentials-LmhgE-Co.mjs +460 -0
  21. package/dist/{current-deployment-workflow-Cm_aU9rQ.mjs → current-deployment-workflow-B1VQCYC-.mjs} +2 -2
  22. package/dist/{current.handler-BXec-Bhy.mjs → current.handler-BaGaCLzB.mjs} +1 -1
  23. package/dist/{delete.handler-CpYOMtsv.mjs → delete.handler-DkAK396w.mjs} +1 -1
  24. package/dist/{deploy-CDY7Qo5L.mjs → deploy-DvPfR9fC.mjs} +2 -2
  25. package/dist/{deploy.handler-CLoYxHOr.mjs → deploy.handler-BW3f2N2G.mjs} +14 -14
  26. package/dist/{diff.handler-Dcli35A1.mjs → diff.handler-BwhsoAg0.mjs} +4 -4
  27. package/dist/{dist-D_KgdxW5.mjs → dist-Dw7gCE7y.mjs} +132 -15
  28. package/dist/{env.handler-DYOsMM-G.mjs → env.handler-Dks6ZQh-.mjs} +5 -5
  29. package/dist/{error-boundary-DVZipk-A.mjs → error-boundary-0veZ_RDS.mjs} +1 -1
  30. package/dist/{init-DonAqdBg.mjs → init-DX08T87c.mjs} +3 -3
  31. package/dist/{init.handler-C60qFTIV.mjs → init.handler-CzlmkNXi.mjs} +3 -3
  32. package/dist/{inspect.handler-Bd4imZI8.mjs → inspect.handler-v9snxDLi.mjs} +4 -4
  33. package/dist/{integration-catalog-Cub_7xCw.mjs → integration-catalog-CiZ62hb_.mjs} +1 -1
  34. package/dist/{integrations-CMg20Q9z.mjs → integrations-MEExmqcg.mjs} +54 -31
  35. package/dist/{invites-RO4Dy-m6.mjs → invites-BuatfJmN.mjs} +4 -4
  36. package/dist/{invites.list.handler-B2RoiFCu.mjs → invites.list.handler-CK6mL10z.mjs} +1 -1
  37. package/dist/{invites.resend.handler-C4rzRkqX.mjs → invites.resend.handler-CKZouK1Z.mjs} +1 -1
  38. package/dist/{invites.revoke.handler-CMf6PpeL.mjs → invites.revoke.handler-H0VI-3sp.mjs} +1 -1
  39. package/dist/keystroke.mjs +31 -23
  40. package/dist/{list-enrichment-6zUKzSyL.mjs → list-enrichment-DP1wEyBZ.mjs} +1 -1
  41. package/dist/{list.handler-DpdVFRYl.mjs → list.handler-BEMj3FyH.mjs} +1 -1
  42. package/dist/list.handler-BKfGLkFu.mjs +30 -0
  43. package/dist/{list.handler-DrY5bgm1.mjs → list.handler-BiY5NFWd.mjs} +1 -1
  44. package/dist/{list.handler-C78XjR-o.mjs → list.handler-Cq_oQY5B.mjs} +3 -3
  45. package/dist/list.handler-DIMWZx78.mjs +24 -0
  46. package/dist/{list.handler-CYChUdMF.mjs → list.handler-DVnFrlis.mjs} +4 -4
  47. package/dist/{list.handler-BjKZ9-QO.mjs → list.handler-Jk_vK66s.mjs} +2 -2
  48. package/dist/{list.handler-ijBH6Ow_.mjs → list.handler-LxZInip2.mjs} +1 -1
  49. package/dist/{list.handler-wYGZhl1g.mjs → list.handler-htR9TeiS.mjs} +1 -1
  50. package/dist/{listen-CEn4PucV.mjs → listen-C_7Rgwkb.mjs} +2 -2
  51. package/dist/{listen.handler-B7s6mz82.mjs → listen.handler-dJgorIzr.mjs} +2 -2
  52. package/dist/{logs-DiH8JXn1.mjs → logs-B9YMhUGt.mjs} +3 -3
  53. package/dist/{logs.handler-D0sNlOz4.mjs → logs.handler-BfjCsAyq.mjs} +2 -2
  54. package/dist/{members.add.handler-Dr9SCjrS.mjs → members.add.handler-DSRCRxsI.mjs} +1 -1
  55. package/dist/{members.invite.handler-8-pTOtw_.mjs → members.invite.handler-BNpHn1dY.mjs} +1 -1
  56. package/dist/{members.list.handler-CUZGd-3B.mjs → members.list.handler-Bn9LJEPG.mjs} +1 -1
  57. package/dist/{members.remove.handler-BCiLt3pa.mjs → members.remove.handler-Dkr2t_tX.mjs} +1 -1
  58. package/dist/{members.update.handler-BAbB9ssa.mjs → members.update.handler-DBtUYuAY.mjs} +1 -1
  59. package/dist/operations-wXS1s3du.mjs +81 -0
  60. package/dist/{org-BD4fj8Yh.mjs → org-DOH7YHk2.mjs} +15 -15
  61. package/dist/{orgs.create.handler-B_7WjV3s.mjs → orgs.create.handler-BO70zIdp.mjs} +1 -1
  62. package/dist/{orgs.get.handler-BgjeDmfl.mjs → orgs.get.handler-BuGg5bc9.mjs} +1 -1
  63. package/dist/{orgs.list.handler-ZRdb-yu5.mjs → orgs.list.handler--5HutMkl.mjs} +1 -1
  64. package/dist/package-manager-DT1EhOkS.mjs +61 -0
  65. package/dist/{paths-JzzFkXQA-CEipIeVl.mjs → paths-DpHfoaXN-CdPimpky.mjs} +2 -2
  66. package/dist/{paused.handler-CzQkBKS6.mjs → paused.handler-DHvxz-cC.mjs} +1 -1
  67. package/dist/{projects-CgtfPFGu.mjs → projects-C5GZ5Jrf.mjs} +4 -4
  68. package/dist/render-credential-Bn15FEUC.mjs +23 -0
  69. package/dist/render-operation-Bc7Wu1sP.mjs +36 -0
  70. package/dist/{requirements.handler-C-5PIRvy.mjs → requirements.handler-B5rqCjMu.mjs} +4 -4
  71. package/dist/{resolve-cli-credentials-B4crOe_y.mjs → resolve-cli-credentials-CAOSVMJP.mjs} +1 -1
  72. package/dist/{resolve-project-DJJZIOmu.mjs → resolve-project-E9mrh_el.mjs} +1 -1
  73. package/dist/{run-polling-cylAR4FL.mjs → run-polling-DawiBus-.mjs} +2 -2
  74. package/dist/{run.handler-CUgLQrsQ.mjs → run.handler-BG7xitEK.mjs} +5 -5
  75. package/dist/{runs-CZRwB58H.mjs → runs-swYYBT6C.mjs} +2 -2
  76. package/dist/{schema-display-XrRCdFL0.mjs → schema-display-FvI8QjOQ.mjs} +28 -1
  77. package/dist/schemas-4Mq_bxob.mjs +39 -0
  78. package/dist/search-BEfy2fG9.mjs +53 -0
  79. package/dist/search.handler-V7ObLGjN.mjs +79 -0
  80. package/dist/show.handler-C_VDYU91.mjs +31 -0
  81. package/dist/show.handler-CsidInW8.mjs +21 -0
  82. package/dist/show.handler-Wmv0tkxx.mjs +35 -0
  83. package/dist/{skills-sync.handler-DsJP_-XZ.mjs → skills-sync.handler-BAATdT6N.mjs} +1 -1
  84. package/dist/{skills.command-B6jly3ew.mjs → skills.command-0-E8mcYE.mjs} +4 -4
  85. package/dist/{src-DNhUmpSl.mjs → src-DI-ybNjR.mjs} +166 -25
  86. package/dist/{switch.handler-B3QBoSSl.mjs → switch.handler-BwYndsP-.mjs} +2 -2
  87. package/dist/{sync-BssJv3Fd.mjs → sync-6fZkIUtn.mjs} +2 -2
  88. package/dist/{sync.handler-Ia7cO3xj.mjs → sync.handler-Ctr-cN9X.mjs} +6 -6
  89. package/dist/{task-target-build-CrPLSXnu.mjs → task-target-build-QllcCfoN.mjs} +5 -5
  90. package/dist/task-target-deploy-runner.mjs +7 -7
  91. package/dist/{test-RFvyK7rK.mjs → test-C8VIZe9V.mjs} +2 -2
  92. package/dist/{test.handler-CLqnDqY6.mjs → test.handler-BCW0YBPd.mjs} +1 -1
  93. package/dist/{test.handler-DBXBhJ59.mjs → test.handler-DLaxrJ9V.mjs} +8 -8
  94. package/dist/{tool.handler-BzyxzKK8.mjs → tool.handler-8qNmgdRe.mjs} +8 -8
  95. package/dist/{trigger-artifacts-BcRScRSp-C-JBJ6y8.mjs → trigger-artifacts-BcRScRSp-BiD2h6do.mjs} +2 -2
  96. package/dist/{upgrade-B6Prb1K-.mjs → upgrade-DgOcc8IT.mjs} +2 -2
  97. package/dist/{upload.handler-Capc50yH.mjs → upload.handler-B7xle1oX.mjs} +6 -6
  98. package/dist/{users.get.handler-DoajzImx.mjs → users.get.handler-C4t1vXwi.mjs} +1 -1
  99. package/dist/{users.list.handler-CRk2J8mi.mjs → users.list.handler-Dvl90grq.mjs} +1 -1
  100. package/dist/{users.set-role.handler-CHYjbx5M.mjs → users.set-role.handler-Djw1_VGf.mjs} +1 -1
  101. package/dist/{validate.handler-DmiJmNA0.mjs → validate.handler-Drf_lssw.mjs} +5 -5
  102. package/dist/{workflow-build-DPqt_edf.mjs → workflow-build-Begvjfq8.mjs} +7 -7
  103. package/dist/{workflow-bundler-BzHk73PM-xQwAF08W.mjs → workflow-bundler-BzHk73PM-muPv1yGG.mjs} +1 -1
  104. package/dist/{workflows-Lz8M15i7.mjs → workflows-DjMlxuBX.mjs} +13 -45
  105. package/package.json +12 -12
  106. package/dist/credentials-DzmutsMa.mjs +0 -176
  107. package/dist/{build-metadata-BB_L45ZS-BtGGjHIV.mjs → build-metadata-BB_L45ZS-DSJL7dTy.mjs} +0 -0
  108. package/dist/{build-progress-O9f-4Z4D.mjs → build-progress-DLM1Bt4T.mjs} +0 -0
  109. package/dist/{clear.handler-BdR56Cok.mjs → clear.handler-T27GpgSu.mjs} +0 -0
  110. package/dist/{credential-schema-mismatch-kfGeiSB1.mjs → credential-schema-mismatch-ClQgEVtO.mjs} +0 -0
  111. package/dist/{credentials-N4L3Vaib.mjs → credentials-DKrSaaLw.mjs} +0 -0
  112. package/dist/{deploy-BURTx92e.mjs → deploy-DhCbYFc7.mjs} +0 -0
  113. package/dist/{deploy-progress-C1Y73QVM.mjs → deploy-progress-BsUH7fGE.mjs} +0 -0
  114. package/dist/{detect-env-access-CwkOYeYM-D4aTZv4R.mjs → detect-env-access-CwkOYeYM-COq4U-4Y.mjs} +0 -0
  115. package/dist/{diff-utils-CXKNQUXO.mjs → diff-utils-Bs--xmoV.mjs} +0 -0
  116. package/dist/{import-module-y0glInUe-BwuOxEY3.mjs → import-module-y0glInUe-DV_3dsU0.mjs} +1 -1
  117. /package/dist/{logs.handler-Bs1DVMaO.mjs → logs.handler-DGGVPMOX.mjs} +0 -0
  118. /package/dist/{read-credential-keys-77a91T8M-aLuQvlIq.mjs → read-credential-keys-77a91T8M-DGK5XTQp.mjs} +0 -0
  119. /package/dist/{register.handler-C_NqMLir.mjs → register.handler-CePNU3sP.mjs} +0 -0
  120. /package/dist/{run-polling-DKWPGLyF.mjs → run-polling-fBouPjJ2.mjs} +0 -0
  121. /package/dist/{skill-installer-AX0X-u1J.mjs → skill-installer-D6j9IA3Z.mjs} +0 -0
  122. /package/dist/{skills.handler-KEUkV5NH.mjs → skills.handler-DYIQK0Vu.mjs} +0 -0
  123. /package/dist/{task-target-deploy-DeUyfi9H.mjs → task-target-deploy-B_3HPSo2.mjs} +0 -0
  124. /package/dist/{types-D1cVpE7_.mjs → types-AlA-ifK9.mjs} +0 -0
  125. /package/dist/{upgrade.handler-C7KvNL0x.mjs → upgrade.handler-DSZuw7-9.mjs} +0 -0
@@ -7,19 +7,28 @@ const admin = (api) => ({
7
7
  /** Create an organization. Requires system.create_org. */
8
8
  create: (params) => api.post("organizations", { json: params }).json(),
9
9
  /** List all organizations. Requires system.view_orgs. */
10
- list: (params) => api.get("admin/orgs", { searchParams: params }).json(),
10
+ list: (params) => {
11
+ const searchParams = buildSearchParams(params);
12
+ return api.get("admin/orgs", searchParams ? { searchParams } : {}).json();
13
+ },
11
14
  /** Get any organization by ID. Requires system.view_orgs. */
12
15
  get: (id) => api.get(`admin/orgs/${id}`).json()
13
16
  },
14
17
  users: {
15
- list: (params) => api.get("admin/users", { searchParams: params }).json(),
18
+ list: (params) => {
19
+ const searchParams = buildSearchParams(params);
20
+ return api.get("admin/users", searchParams ? { searchParams } : {}).json();
21
+ },
16
22
  get: (id) => api.get(`admin/users/${id}`).json(),
17
23
  setRole: (id, params) => api.patch(`admin/users/${id}/system-role`, { json: params }).json()
18
24
  }
19
25
  });
20
26
  //#endregion
21
27
  //#region ../../packages/workflow-sdk/src/v1/agents.ts
22
- const agents = (api) => ({ list: (params) => api.get("agents", { searchParams: params }).json() });
28
+ const agents = (api) => ({ list: (params) => {
29
+ const searchParams = buildSearchParams(params);
30
+ return api.get("agents", searchParams ? { searchParams } : {}).json();
31
+ } });
23
32
  //#endregion
24
33
  //#region ../../packages/workflow-sdk/src/v1/api-keys.ts
25
34
  const apiKeys = (api) => ({
@@ -44,6 +53,26 @@ list: (params) => {
44
53
  return api.get("connections", searchParams ? { searchParams } : {}).json();
45
54
  } });
46
55
  //#endregion
56
+ //#region ../../packages/workflow-sdk/src/v1/credential-definitions.ts
57
+ const credentialDefinitions = (api) => {
58
+ function listImpl(params = {}) {
59
+ const searchParams = buildSearchParams(params);
60
+ return api.get("credentials/definitions", searchParams ? { searchParams } : {}).json();
61
+ }
62
+ return {
63
+ /**
64
+ * Lists credential definitions (official + tenant custom) with filters
65
+ * (`integrationId`, `role`, `exposure`, `connectionKind`, `q`).
66
+ * Paginated by cursor; pass `cursor` from `nextCursor` to fetch the next page.
67
+ * Defaults to lean shape; pass `include: 'full'` to get the auth schema JSON.
68
+ */
69
+ list: listImpl,
70
+ get: (id) => {
71
+ return api.get(`credentials/definitions/${encodeURIComponent(id)}`).json();
72
+ }
73
+ };
74
+ };
75
+ //#endregion
47
76
  //#region ../../packages/workflow-sdk/src/v1/credentials.ts
48
77
  const credentials = (api) => ({
49
78
  /** List credential sets, optionally filtered. */
@@ -74,7 +103,12 @@ const credentials = (api) => ({
74
103
  *
75
104
  * @see packages/credential-connection/src/exchange.ts executeCredentialsExchange
76
105
  */
77
- exchange: (params) => api.post("credentials/exchange", { json: params }).json()
106
+ exchange: (params) => api.post("credentials/exchange", { json: params }).json(),
107
+ /**
108
+ * Discovery surface for credential definitions (catalog metadata).
109
+ * Distinct from per-org credential sets at `client.credentials.{list, getById, ...}`.
110
+ */
111
+ definitions: credentialDefinitions(api)
78
112
  });
79
113
  //#endregion
80
114
  //#region ../../packages/workflow-sdk/src/v1/hooks.ts
@@ -86,21 +120,42 @@ const hooks = (api) => ({
86
120
  });
87
121
  //#endregion
88
122
  //#region ../../packages/workflow-sdk/src/v1/integrations.ts
89
- const integrations = (api) => ({
90
- /**
91
- * Returns the Keystroke integration catalog.
92
- *
93
- * Catalog data is effectively static for a given server deploy. Consumers
94
- * should cache the response for the lifetime of a UI session / CLI process
95
- * rather than refetching per command.
96
- *
97
- * @param params Optional query filters. See `ListIntegrationsQuerySchema`
98
- * in `@keystroke/shared-types/connections` for the authoritative schema.
99
- */
100
- list: (params) => {
101
- const searchParams = buildSearchParams(params);
102
- return api.get("integrations", searchParams ? { searchParams } : {}).json();
103
- } });
123
+ const integrations = (api) => ({
124
+ /**
125
+ * Returns the Keystroke integration catalog.
126
+ *
127
+ * Catalog data is effectively static for a given server deploy. Consumers
128
+ * should cache the response for the lifetime of a UI session / CLI process
129
+ * rather than refetching per command.
130
+ *
131
+ * @param params Optional query filters. See `ListIntegrationsQuerySchema`
132
+ * in `@keystroke/shared-types/connections` for the authoritative schema.
133
+ */
134
+ list: (params) => {
135
+ const searchParams = buildSearchParams(params);
136
+ return api.get("integrations", searchParams ? { searchParams } : {}).json();
137
+ },
138
+ /**
139
+ * Returns a single integration by id.
140
+ *
141
+ * @example
142
+ * const { integration } = await client.integrations.get('aws-s3');
143
+ */
144
+ get: (id) => {
145
+ return api.get(`integrations/${encodeURIComponent(id)}`).json();
146
+ },
147
+ /**
148
+ * Returns the operations belonging to an integration. Lean shape; for full
149
+ * schemas, fetch each operation via `client.operations.get(id)` or use
150
+ * `client.operations.list({ integrationId, include: 'full' })`.
151
+ *
152
+ * @example
153
+ * const { operations } = await client.integrations.listOperations('aws-s3');
154
+ */
155
+ listOperations: (id) => {
156
+ return api.get(`integrations/${encodeURIComponent(id)}/operations`).json();
157
+ }
158
+ });
104
159
  //#endregion
105
160
  //#region ../../packages/workflow-sdk/src/v1/listen.ts
106
161
  const listen = (api) => ({
@@ -112,10 +167,45 @@ const listen = (api) => ({
112
167
  cancel: (id) => api.delete(`listen/${id}`).json()
113
168
  });
114
169
  //#endregion
170
+ //#region ../../packages/workflow-sdk/src/v1/operations.ts
171
+ const operations = (api) => {
172
+ function listImpl(params = {}) {
173
+ const searchParams = buildSearchParams(params);
174
+ return api.get("operations", searchParams ? { searchParams } : {}).json();
175
+ }
176
+ return {
177
+ /**
178
+ * Lists operations available to the caller (official + tenant custom).
179
+ * Paginated by cursor; pass `cursor` from `nextCursor` to fetch the next page.
180
+ *
181
+ * Defaults to a lean response (id, integrationId, name, description, tags).
182
+ * Pass `include: 'full'` to additionally receive JSON schemas, safety flags,
183
+ * and lifecycle timestamps in a single round-trip.
184
+ *
185
+ * @example
186
+ * const { items, nextCursor } = await client.operations.list({ integrationId: 'aws-s3' });
187
+ * const { items } = await client.operations.list({ integrationId: 'aws-s3', include: 'full' });
188
+ */
189
+ list: listImpl,
190
+ /**
191
+ * Returns a single operation by id, always with full schemas.
192
+ *
193
+ * @example
194
+ * const { operation } = await client.operations.get('aws-s3.upload-object');
195
+ */
196
+ get: (id) => {
197
+ return api.get(`operations/${encodeURIComponent(id)}`).json();
198
+ }
199
+ };
200
+ };
201
+ //#endregion
115
202
  //#region ../../packages/workflow-sdk/src/v1/organizations.ts
116
203
  const organizations = (api) => ({
117
204
  /** List organizations (paginated). */
118
- list: (params) => api.get("organizations", { searchParams: params }).json(),
205
+ list: (params) => {
206
+ const searchParams = buildSearchParams(params);
207
+ return api.get("organizations", searchParams ? { searchParams } : {}).json();
208
+ },
119
209
  /** Create a new organization. */
120
210
  create: (params) => api.post("organizations", { json: params }).json(),
121
211
  /** Get an organization by ID. */
@@ -132,7 +222,10 @@ const organizations = (api) => ({
132
222
  invite: (params) => api.post("users/invite", { json: params }).json()
133
223
  },
134
224
  invites: {
135
- list: (organizationId, params) => api.get(`organizations/${organizationId}/invites`, { searchParams: params }).json(),
225
+ list: (organizationId, params) => {
226
+ const searchParams = buildSearchParams(params);
227
+ return api.get(`organizations/${organizationId}/invites`, searchParams ? { searchParams } : {}).json();
228
+ },
136
229
  resend: (organizationId, inviteId) => api.post(`organizations/${organizationId}/invites/${inviteId}/resend`).json(),
137
230
  revoke: (organizationId, inviteId) => api.delete(`organizations/${organizationId}/invites/${inviteId}`).json()
138
231
  }
@@ -141,7 +234,10 @@ const organizations = (api) => ({
141
234
  //#region ../../packages/workflow-sdk/src/v1/projects.ts
142
235
  const projects = (api) => ({
143
236
  /** List projects, optionally filtered by organization. */
144
- list: (params) => api.get("projects", { searchParams: params }).json(),
237
+ list: (params) => {
238
+ const searchParams = buildSearchParams(params);
239
+ return api.get("projects", searchParams ? { searchParams } : {}).json();
240
+ },
145
241
  /** Create a new project. */
146
242
  create: (params) => api.post("projects", { json: params }).json(),
147
243
  /** Get a project by ID. */
@@ -203,10 +299,47 @@ const runs = (api) => ({
203
299
  cancelAgent: (runId, correlationId, body) => api.post(`runs/${runId}/agents/${correlationId}/cancel`, { json: body ?? {} }).json()
204
300
  });
205
301
  //#endregion
302
+ //#region ../../packages/workflow-sdk/src/v1/search.ts
303
+ const search = (api) => {
304
+ function searchOperationsImpl(p) {
305
+ const searchParams = buildSearchParams(p);
306
+ return api.get("search/operations", searchParams ? { searchParams } : {}).json();
307
+ }
308
+ function searchIntegrationsImpl(p) {
309
+ const searchParams = buildSearchParams(p);
310
+ return api.get("search/integrations", searchParams ? { searchParams } : {}).json();
311
+ }
312
+ function searchCredentialsImpl(p) {
313
+ const searchParams = buildSearchParams(p);
314
+ return api.get("search/credentials", searchParams ? { searchParams } : {}).json();
315
+ }
316
+ return {
317
+ /**
318
+ * BM25-ranked operation search. Defaults to lean; `include: 'full'` returns
319
+ * schemas + safety flags + denormalized npmPackageName in the same call,
320
+ * eliminating the search → get-per-result round-trip.
321
+ */
322
+ operations: searchOperationsImpl,
323
+ /**
324
+ * BM25-ranked integration search across name, aliases, description.
325
+ * Filters: `connectionKind`.
326
+ */
327
+ integrations: searchIntegrationsImpl,
328
+ /**
329
+ * BM25-ranked credential search across displayName, description.
330
+ * Filters: `integrationId`, `role`, `connectionKind`.
331
+ */
332
+ credentials: searchCredentialsImpl
333
+ };
334
+ };
335
+ //#endregion
206
336
  //#region ../../packages/workflow-sdk/src/v1/steps.ts
207
337
  const steps = (api) => ({
208
338
  /** List steps, optionally filtered by project. */
209
- list: (params) => api.get("steps", { searchParams: params }).json(),
339
+ list: (params) => {
340
+ const searchParams = buildSearchParams(params);
341
+ return api.get("steps", searchParams ? { searchParams } : {}).json();
342
+ },
210
343
  /** Create a new step definition. */
211
344
  create: (params) => api.post("steps", { json: params }).json(),
212
345
  /** Get a step by ID. */
@@ -216,7 +349,10 @@ const steps = (api) => ({
216
349
  /** Delete a step definition. */
217
350
  remove: (id) => api.delete(`steps/${id}`).then(() => void 0),
218
351
  /** List versions of a step. */
219
- listVersions: (id, params) => api.get(`steps/${id}/versions`, { searchParams: params }).json(),
352
+ listVersions: (id, params) => {
353
+ const searchParams = buildSearchParams(params);
354
+ return api.get(`steps/${id}/versions`, searchParams ? { searchParams } : {}).json();
355
+ },
220
356
  /** Create a new version of a step. */
221
357
  createVersion: (id, params) => api.post(`steps/${id}/versions`, { json: params }).json(),
222
358
  /** Get a specific step version. */
@@ -226,7 +362,10 @@ const steps = (api) => ({
226
362
  //#region ../../packages/workflow-sdk/src/v1/user-groups.ts
227
363
  const userGroups = (api) => ({
228
364
  /** List user groups, optionally filtered by organization. */
229
- list: (params) => api.get("user-groups", { searchParams: params }).json(),
365
+ list: (params) => {
366
+ const searchParams = buildSearchParams(params);
367
+ return api.get("user-groups", searchParams ? { searchParams } : {}).json();
368
+ },
230
369
  /** Create a new user group. */
231
370
  create: (params) => api.post("user-groups", { json: params }).json(),
232
371
  /** Get a user group by ID. */
@@ -402,9 +541,11 @@ function createClient(config = {}) {
402
541
  hooks: hooks(v1),
403
542
  integrations: integrations(v1),
404
543
  listen: listen(v1),
544
+ operations: operations(v1),
405
545
  organizations: organizations(v1),
406
546
  projects: projects(v1),
407
547
  runs: runs(v1),
548
+ search: search(v1),
408
549
  steps: steps(v1),
409
550
  userGroups: userGroups(v1),
410
551
  users: users(v1),
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { a as ui, j as throwReportedCliExit } from "./keystroke.mjs";
4
- import { n as credentials } from "./dist-D_KgdxW5.mjs";
5
- import { i as requireClient } from "./context-DHOTSgPb.mjs";
4
+ import { n as credentials } from "./dist-Dw7gCE7y.mjs";
5
+ import { i as requireClient } from "./context-sgKhRc5v.mjs";
6
6
  import { select } from "@clack/prompts";
7
7
  //#region src/commands/org/switch.handler.ts
8
8
  async function handleOrgSwitch(_options, ctx) {
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as createTypedCommand } from "./commander-BTMzBiLq.mjs";
3
+ import { t as createTypedCommand } from "./commander-BlrSdFcu.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/sync/sync.command.ts
6
6
  /**
@@ -32,7 +32,7 @@ function createSyncCommand() {
32
32
  description: "Sync local workflows with Keystroke",
33
33
  schema: SyncOptionsSchema,
34
34
  optionsConfig: SYNC_OPTIONS_CONFIG,
35
- loadHandler: async () => (await import("./sync.handler-Ia7cO3xj.mjs")).handleSync
35
+ loadHandler: async () => (await import("./sync.handler-Ctr-cN9X.mjs")).handleSync
36
36
  });
37
37
  }
38
38
  //#endregion
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { P as logger, a as ui, j as throwReportedCliExit, l as isLocalMode, y as toErrorMessage } from "./keystroke.mjs";
4
- import { i as projects } from "./dist-D_KgdxW5.mjs";
5
- import { a as validateApiKey, i as requireClient } from "./context-DHOTSgPb.mjs";
4
+ import { i as projects } from "./dist-Dw7gCE7y.mjs";
5
+ import { a as validateApiKey, i as requireClient } from "./context-sgKhRc5v.mjs";
6
6
  import { n as deployFromDir } from "./dist-CTEtWDW4.mjs";
7
- import { t as requireWorkflowsDir } from "./resolve-project-DJJZIOmu.mjs";
8
- import { a as runWorkflowBuild, n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-DPqt_edf.mjs";
9
- import { t as createBuildProgress } from "./build-progress-O9f-4Z4D.mjs";
10
- import { t as createDeployProgress } from "./deploy-progress-C1Y73QVM.mjs";
7
+ import { t as requireWorkflowsDir } from "./resolve-project-E9mrh_el.mjs";
8
+ import { a as runWorkflowBuild, n as renderBuildFailure, r as renderBuildHeader } from "./workflow-build-Begvjfq8.mjs";
9
+ import { t as createBuildProgress } from "./build-progress-DLM1Bt4T.mjs";
10
+ import { t as createDeployProgress } from "./deploy-progress-BsUH7fGE.mjs";
11
11
  //#region src/commands/sync/sync.handler.ts
12
12
  async function handleSync(options, ctx) {
13
13
  try {
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { r as getKeystrokeProjectPath } from "./paths-JzzFkXQA-CEipIeVl.mjs";
4
- import "./dist-D_KgdxW5.mjs";
5
- import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-aLuQvlIq.mjs";
3
+ import { r as getKeystrokeProjectPath } from "./paths-DpHfoaXN-CdPimpky.mjs";
4
+ import "./dist-Dw7gCE7y.mjs";
5
+ import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-DGK5XTQp.mjs";
6
6
  import path from "node:path";
7
7
  import { mkdir, writeFile } from "node:fs/promises";
8
8
  import { pathToFileURL } from "node:url";
@@ -111,7 +111,7 @@ async function buildTaskTargetFile(options) {
111
111
  return builtTasks;
112
112
  }
113
113
  async function bundleTaskTargetModule(options) {
114
- const [{ rolldown }, { createEnvAccessPlugin, formatEnvAccessError }] = await Promise.all([import("rolldown"), import("./detect-env-access-CwkOYeYM-D4aTZv4R.mjs").then((n) => n.n).then((n) => n.n)]);
114
+ const [{ rolldown }, { createEnvAccessPlugin, formatEnvAccessError }] = await Promise.all([import("rolldown"), import("./detect-env-access-CwkOYeYM-COq4U-4Y.mjs").then((n) => n.n).then((n) => n.n)]);
115
115
  const entryId = "\0virtual:task-target-entry";
116
116
  const trackedDependencies = /* @__PURE__ */ new Set();
117
117
  const envViolations = [];
@@ -218,7 +218,7 @@ async function attachTaskTargetTriggers(options) {
218
218
  options.artifact.triggers.push(...buildTaskTriggerArtifactsWithoutBundles(options.entry.taskMetadata.triggers, options.artifact.task.taskId, options.artifact.task.taskName));
219
219
  return [];
220
220
  }
221
- const { buildTriggerArtifacts } = await import("./trigger-artifacts-BcRScRSp-C-JBJ6y8.mjs").then((n) => n.n);
221
+ const { buildTriggerArtifacts } = await import("./trigger-artifacts-BcRScRSp-BiD2h6do.mjs").then((n) => n.n);
222
222
  const triggerResult = await buildTriggerArtifacts(options.entry.taskMetadata.triggers, options.artifact.task.taskId, options.artifact.task.taskName, options.projectRoot, {
223
223
  workflowExportName: options.entry.source.localExportName,
224
224
  workflowFilePath: options.entry.runtimeBundlePath
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { r as getKeystrokeProjectPath } from "./paths-JzzFkXQA-CEipIeVl.mjs";
3
+ import { r as getKeystrokeProjectPath } from "./paths-DpHfoaXN-CdPimpky.mjs";
4
4
  import "./default-urls-BoSm4s9C.mjs";
5
- import "./dist-D_KgdxW5.mjs";
5
+ import "./dist-Dw7gCE7y.mjs";
6
6
  import { n as findProjectRoot, t as assertWorkflowProjectRoot } from "./project-config-DudGRFPO.mjs";
7
- import { t as resolveCliCredentials } from "./resolve-cli-credentials-B4crOe_y.mjs";
7
+ import { t as resolveCliCredentials } from "./resolve-cli-credentials-CAOSVMJP.mjs";
8
8
  import path from "node:path";
9
9
  import { mkdir, readFile, writeFile } from "node:fs/promises";
10
10
  import { spawnSync } from "node:child_process";
@@ -119,7 +119,7 @@ function restartStage(options, projectRoot, stage) {
119
119
  }
120
120
  async function runBuildPhase(options, projectRoot) {
121
121
  const projectConfig = await assertWorkflowProjectRoot(projectRoot);
122
- const { buildTaskTargetEntries } = await import("./task-target-build-CrPLSXnu.mjs");
122
+ const { buildTaskTargetEntries } = await import("./task-target-build-QllcCfoN.mjs");
123
123
  await writeBuildDescriptor(projectRoot, {
124
124
  projectRoot,
125
125
  projectConfig,
@@ -132,7 +132,7 @@ async function runBuildPhase(options, projectRoot) {
132
132
  }
133
133
  async function runPreparePhase(projectRoot) {
134
134
  const buildDescriptor = await readBuildDescriptor(projectRoot);
135
- const { prepareTaskTargetBuiltTasks } = await import("./task-target-build-CrPLSXnu.mjs");
135
+ const { prepareTaskTargetBuiltTasks } = await import("./task-target-build-QllcCfoN.mjs");
136
136
  const prepareResult = await prepareTaskTargetBuiltTasks({
137
137
  builtTasks: buildDescriptor.builtTasks,
138
138
  projectRoot
@@ -163,11 +163,11 @@ async function resolveDeployAuthOptions(options) {
163
163
  }
164
164
  async function runDeployPhase(options, projectRoot) {
165
165
  const descriptor = await readDescriptor(projectRoot);
166
- const { createDeployClient } = await import("./deploy-BURTx92e.mjs");
166
+ const { createDeployClient } = await import("./deploy-DhCbYFc7.mjs");
167
167
  const client = createDeployClient(await resolveDeployAuthOptions(options));
168
168
  const auth = await client.public.auth.validate();
169
169
  if (auth.organizationId !== descriptor.projectConfig.organizationId) throw new Error(`Project organization mismatch: config=${descriptor.projectConfig.organizationId} auth=${auth.organizationId}`);
170
- const { deployTaskTargets } = await import("./task-target-deploy-DeUyfi9H.mjs");
170
+ const { deployTaskTargets } = await import("./task-target-deploy-B_3HPSo2.mjs");
171
171
  const result = await deployTaskTargets({
172
172
  preparedTasks: descriptor.preparedTasks,
173
173
  client,
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { a as ui } from "./keystroke.mjs";
4
4
  import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-BWcVRt-T.mjs";
5
- import { t as createTypedCommand } from "./commander-BTMzBiLq.mjs";
5
+ import { t as createTypedCommand } from "./commander-BlrSdFcu.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/test/test.command.ts
8
8
  const TestOptionsSchema = JsonOptionSchema;
@@ -63,7 +63,7 @@ function createTestCommand() {
63
63
  description: "Agent tool name from the built manifest",
64
64
  key: "toolName"
65
65
  },
66
- loadHandler: async () => (await import("./tool.handler-BzyxzKK8.mjs")).handleTestTool
66
+ loadHandler: async () => (await import("./tool.handler-8qNmgdRe.mjs")).handleTestTool
67
67
  })]
68
68
  });
69
69
  cmd.enablePositionalOptions();
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { a as ui } from "./keystroke.mjs";
4
- import { a as validateApiKey, i as requireClient } from "./context-DHOTSgPb.mjs";
4
+ import { a as validateApiKey, i as requireClient } from "./context-sgKhRc5v.mjs";
5
5
  //#region src/commands/auth/test.handler.ts
6
6
  async function handleAuthTest(_options, ctx) {
7
7
  const result = await validateApiKey(requireClient(ctx));
@@ -1,16 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { D as CliExitError, a as ui, l as isLocalMode, y as toErrorMessage } from "./keystroke.mjs";
4
- import { i as projects } from "./dist-D_KgdxW5.mjs";
4
+ import { i as projects } from "./dist-Dw7gCE7y.mjs";
5
5
  import { t as assertWorkflowProjectRoot } from "./project-config-DudGRFPO.mjs";
6
- import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-DHOTSgPb.mjs";
6
+ import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-sgKhRc5v.mjs";
7
7
  import { o as readWorkflowsFromDisk, s as uploadTestBundle } from "./dist-CTEtWDW4.mjs";
8
- import { t as requireWorkflowsDir } from "./resolve-project-DJJZIOmu.mjs";
9
- import { a as runWorkflowBuild, t as WorkflowNotFoundError } from "./workflow-build-DPqt_edf.mjs";
10
- import { r as isUnknownSchema } from "./schema-display-XrRCdFL0.mjs";
11
- import { t as createBuildProgress } from "./build-progress-O9f-4Z4D.mjs";
12
- import { t as withErrorBoundary } from "./error-boundary-DVZipk-A.mjs";
13
- import { a as tryReadExistingInputSchema, n as resolveInput, o as validateInputOrExit, t as pollForCompletion } from "./run-polling-cylAR4FL.mjs";
8
+ import { t as requireWorkflowsDir } from "./resolve-project-E9mrh_el.mjs";
9
+ import { a as runWorkflowBuild, t as WorkflowNotFoundError } from "./workflow-build-Begvjfq8.mjs";
10
+ import { r as isUnknownSchema } from "./schema-display-FvI8QjOQ.mjs";
11
+ import { t as createBuildProgress } from "./build-progress-DLM1Bt4T.mjs";
12
+ import { t as withErrorBoundary } from "./error-boundary-0veZ_RDS.mjs";
13
+ import { a as tryReadExistingInputSchema, n as resolveInput, o as validateInputOrExit, t as pollForCompletion } from "./run-polling-DawiBus-.mjs";
14
14
  //#region src/lib/format.ts
15
15
  function formatBytes(bytes) {
16
16
  if (bytes < 1024) return `${bytes} B`;
@@ -1,19 +1,19 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { D as CliExitError, a as ui, c as getProcessEnv, j as throwReportedCliExit, y as toErrorMessage } from "./keystroke.mjs";
4
- import { t as Credentials } from "./dist-D_KgdxW5.mjs";
4
+ import { t as Credentials } from "./dist-Dw7gCE7y.mjs";
5
5
  import { t as assertWorkflowProjectRoot } from "./project-config-DudGRFPO.mjs";
6
6
  import { i as writeJson } from "./output-BWcVRt-T.mjs";
7
- import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-DHOTSgPb.mjs";
7
+ import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-sgKhRc5v.mjs";
8
8
  import { a as readManifestsFromOutDir } from "./dist-CTEtWDW4.mjs";
9
- import { t as requireWorkflowsDir } from "./resolve-project-DJJZIOmu.mjs";
10
- import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-DPqt_edf.mjs";
11
- import { t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-Cm_aU9rQ.mjs";
12
- import { n as resolveInput, o as validateInputOrExit, t as pollForCompletion } from "./run-polling-cylAR4FL.mjs";
13
- import * as os from "node:os";
14
- import { tmpdir } from "node:os";
9
+ import { t as requireWorkflowsDir } from "./resolve-project-E9mrh_el.mjs";
10
+ import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-Begvjfq8.mjs";
11
+ import { t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-B1VQCYC-.mjs";
12
+ import { n as resolveInput, o as validateInputOrExit, t as pollForCompletion } from "./run-polling-DawiBus-.mjs";
15
13
  import * as path$1 from "node:path";
16
14
  import path from "node:path";
15
+ import * as os from "node:os";
16
+ import { tmpdir } from "node:os";
17
17
  import { mkdtemp, rm, writeFile } from "node:fs/promises";
18
18
  import { pathToFileURL } from "node:url";
19
19
  //#region ../../packages/testing/src/shared/create-mock-hook.ts
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { n as readOptionalJsonSchemaKeys } from "./declared-credential-requirements-B6h4WRv4.mjs";
4
4
  import { t as __exportAll } from "./rolldown-runtime-twds-ZHy-RuJszab7.mjs";
5
- import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-aLuQvlIq.mjs";
6
- import { r as formatEnvAccessError, t as createEnvAccessPlugin } from "./detect-env-access-CwkOYeYM-D4aTZv4R.mjs";
5
+ import { t as readCredentialKeysFromSchemaObject } from "./read-credential-keys-77a91T8M-DGK5XTQp.mjs";
6
+ import { r as formatEnvAccessError, t as createEnvAccessPlugin } from "./detect-env-access-CwkOYeYM-COq4U-4Y.mjs";
7
7
  import { createHash } from "node:crypto";
8
8
  import { rolldown } from "rolldown";
9
9
  //#region ../../packages/workflow-builder/dist/trigger-artifacts-BcRScRSp.mjs
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { t as createTypedCommand } from "./commander-BTMzBiLq.mjs";
3
+ import { t as createTypedCommand } from "./commander-BlrSdFcu.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/upgrade/upgrade.command.ts
6
6
  const PackageManagerSchema = z.enum([
@@ -34,7 +34,7 @@ function createUpgradeCommand() {
34
34
  description: "Upgrade the Keystroke CLI to the latest published version",
35
35
  schema: UpgradeOptionsSchema,
36
36
  optionsConfig: UPGRADE_OPTIONS_CONFIG,
37
- loadHandler: async () => (await import("./upgrade.handler-C7KvNL0x.mjs")).handleUpgrade
37
+ loadHandler: async () => (await import("./upgrade.handler-DSZuw7-9.mjs")).handleUpgrade
38
38
  });
39
39
  }
40
40
  //#endregion
@@ -3,13 +3,13 @@
3
3
  import { a as ui, c as getProcessEnv, j as throwReportedCliExit, y as toErrorMessage } from "./keystroke.mjs";
4
4
  import { t as assertWorkflowProjectRoot } from "./project-config-DudGRFPO.mjs";
5
5
  import { a as writeJsonError, i as writeJson } from "./output-BWcVRt-T.mjs";
6
- import { i as requireClient } from "./context-DHOTSgPb.mjs";
6
+ import { i as requireClient } from "./context-sgKhRc5v.mjs";
7
7
  import { a as readManifestsFromOutDir, t as collectCredentialFingerprintMapFromProjectDist } from "./dist-CTEtWDW4.mjs";
8
- import { t as requireWorkflowsDir } from "./resolve-project-DJJZIOmu.mjs";
9
- import { t as getIntegrationCatalog } from "./integration-catalog-Cub_7xCw.mjs";
10
- import { t as readCredentialEnvMap } from "./credential-env-map-CtmzNkwU.mjs";
11
- import { a as verifyCredentialResolvable, i as validateManualCredentialWithHook, n as resolveCredentialValuesFromEnv, r as uploadCredential, t as groupCredentialRequirements } from "./credentials-N4L3Vaib.mjs";
12
- import { n as renderCredentialSchemaMismatchText, r as writeCredentialSchemaMismatchJson, t as isCredentialSchemaMismatchErrorLike } from "./credential-schema-mismatch-kfGeiSB1.mjs";
8
+ import { t as requireWorkflowsDir } from "./resolve-project-E9mrh_el.mjs";
9
+ import { t as getIntegrationCatalog } from "./integration-catalog-CiZ62hb_.mjs";
10
+ import { t as readCredentialEnvMap } from "./credential-env-map-CRs0llf0.mjs";
11
+ import { a as verifyCredentialResolvable, i as validateManualCredentialWithHook, n as resolveCredentialValuesFromEnv, r as uploadCredential, t as groupCredentialRequirements } from "./credentials-DKrSaaLw.mjs";
12
+ import { n as renderCredentialSchemaMismatchText, r as writeCredentialSchemaMismatchJson, t as isCredentialSchemaMismatchErrorLike } from "./credential-schema-mismatch-ClQgEVtO.mjs";
13
13
  import * as path$1 from "node:path";
14
14
  import { confirm, isCancel } from "@clack/prompts";
15
15
  //#region src/commands/credentials/upload/upload.handler.ts
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { a as ui } from "./keystroke.mjs";
4
4
  import { i as writeJson } from "./output-BWcVRt-T.mjs";
5
- import { i as requireClient } from "./context-DHOTSgPb.mjs";
5
+ import { i as requireClient } from "./context-sgKhRc5v.mjs";
6
6
  import { n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CSZj4XlH.mjs";
7
7
  //#region src/commands/admin/users.get.handler.ts
8
8
  async function handleAdminUsersGet(options, ctx) {
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { a as ui } from "./keystroke.mjs";
4
4
  import { i as writeJson } from "./output-BWcVRt-T.mjs";
5
- import { i as requireClient } from "./context-DHOTSgPb.mjs";
5
+ import { i as requireClient } from "./context-sgKhRc5v.mjs";
6
6
  import { n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CSZj4XlH.mjs";
7
7
  import Table from "cli-table3";
8
8
  //#region src/commands/admin/users.list.handler.ts
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { a as ui } from "./keystroke.mjs";
4
4
  import { i as writeJson } from "./output-BWcVRt-T.mjs";
5
- import { i as requireClient } from "./context-DHOTSgPb.mjs";
5
+ import { i as requireClient } from "./context-sgKhRc5v.mjs";
6
6
  import { n as isIamJsonMode, r as requireConfirmation, t as handleIamError } from "./iam-command-utils-CSZj4XlH.mjs";
7
7
  //#region src/commands/admin/users.set-role.handler.ts
8
8
  async function handleAdminUsersSetRole(options, ctx) {
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import { a as ui, j as throwReportedCliExit, y as toErrorMessage } from "./keystroke.mjs";
4
- import { i as projects } from "./dist-D_KgdxW5.mjs";
4
+ import { i as projects } from "./dist-Dw7gCE7y.mjs";
5
5
  import { i as writeJson } from "./output-BWcVRt-T.mjs";
6
- import { t as requireWorkflowsDir } from "./resolve-project-DJJZIOmu.mjs";
7
- import { s as build, t as WorkflowNotFoundError } from "./workflow-build-DPqt_edf.mjs";
8
- import { t as createBuildProgress } from "./build-progress-O9f-4Z4D.mjs";
9
- import * as os from "node:os";
6
+ import { t as requireWorkflowsDir } from "./resolve-project-E9mrh_el.mjs";
7
+ import { s as build, t as WorkflowNotFoundError } from "./workflow-build-Begvjfq8.mjs";
8
+ import { t as createBuildProgress } from "./build-progress-DLM1Bt4T.mjs";
10
9
  import * as path$1 from "node:path";
10
+ import * as os from "node:os";
11
11
  import { mkdtemp, rm } from "node:fs/promises";
12
12
  //#region src/commands/workflows/validate/workflow-validate.ts
13
13
  /**