@keystrokehq/cli 0.0.1 → 0.0.3
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.
- package/AGENTS-blurb.md +1 -1
- package/LICENSE +0 -21
- package/README.md +14 -6
- package/dist/accept.handler-DFtM0IuO.mjs +22 -0
- package/dist/admin-D_7tenRC.mjs +208 -0
- package/dist/{agent-manifest-CDnbkR2f.mjs → agent-manifest-Bfa3DBgc.mjs} +4 -4
- package/dist/{agents-CZJGxVqV.mjs → agents-DMEo-6QB.mjs} +8 -8
- package/dist/api-keys-BThGvtdn.mjs +58 -0
- package/dist/{auth-DN2VusyU.mjs → auth-CY0Gg9sN.mjs} +7 -11
- package/dist/{auth.handler-CT1BQUvu.mjs → auth.handler-CbhiLOG1.mjs} +83 -8
- package/dist/{build-agents-BmM_AsSd-BGi9wtzt.mjs → build-agents-DfbiMZ_e-CRnzruSu.mjs} +7 -7
- package/dist/{build-metadata-BWS7uhd_-DR8gJjTX.mjs → build-metadata-zidV9Cai-RgG4ndIH.mjs} +11 -11
- package/dist/{build-progress-DgYKb4hB.mjs → build-progress-Cn2j1LqF.mjs} +1 -1
- package/dist/{build-tasks-CdihpudT-D5r5HUHe.mjs → build-tasks-O1jYtlv1-Y65uGWuz.mjs} +4 -5
- package/dist/{build-workflows-CfxBnIWh-CdYPv8w2.mjs → build-workflows-3fdvdHHf-DJ_lH1NH.mjs} +9 -9
- package/dist/{build.handler-4799CjWH.mjs → build.handler-Tb3IpABI.mjs} +5 -5
- package/dist/{clear-cache.handler-B9tqSoSM.mjs → clear-cache.handler-BEbPz5Ej.mjs} +1 -1
- package/dist/{clear.handler-BydlX-zE.mjs → clear.handler-CtOZ4aRn.mjs} +1 -1
- package/dist/{clear.handler-BTIXXPTJ.mjs → clear.handler-YS8gPriq.mjs} +2 -2
- package/dist/{commander-DfTVqQ-3.mjs → commander-DZ3F3CVq.mjs} +6 -5
- package/dist/common-BrVAdUyD.mjs +20 -0
- package/dist/{connect-BUXkeH0F.mjs → connect-DpQgYg8z.mjs} +3 -3
- package/dist/{connect.handler-CYel9cy6.mjs → connect.handler-DuRr_yyN.mjs} +5 -5
- package/dist/{context-T7HZuB97.mjs → context-Y1f1hGYy.mjs} +7 -7
- package/dist/create.handler-uNG3I4wS.mjs +24 -0
- package/dist/credential-requirements-DjDFthio.mjs +480 -0
- package/dist/{credential-schema-mismatch-BKo5PjcQ.mjs → credential-schema-mismatch-B-wwbCvw.mjs} +2 -2
- package/dist/{credentials-OfVHOtG3.mjs → credentials-DHlK_O4L.mjs} +823 -14
- package/dist/{credentials-CvmjU0lK.mjs → credentials-UpgEcaub.mjs} +7 -7
- package/dist/{current-deployment-workflow-poHt27i3.mjs → current-deployment-workflow-M8GEIHxv.mjs} +5 -5
- package/dist/{current.handler-B8zKzfPp.mjs → current.handler-BqPUKCvn.mjs} +1 -1
- package/dist/declared-credential-requirements-Bwlb-KZE.mjs +132 -0
- package/dist/default-urls-BS4twrsS.mjs +7 -0
- package/dist/{delete.handler-bAu1iXVQ.mjs → delete.handler-CJTHVZaz.mjs} +1 -1
- package/dist/{deploy-7Jjls436.mjs → deploy-CdnaZY3s.mjs} +1 -1
- package/dist/{deploy-BOPIpRWm.mjs → deploy-Gw0KPrkf.mjs} +2 -2
- package/dist/{deploy-progress-BmGUNFKg.mjs → deploy-progress-CZ2rPlOj.mjs} +1 -1
- package/dist/{deploy.handler-BAzgiNhd.mjs → deploy.handler-zzFAt7pp.mjs} +18 -18
- package/dist/{detect-env-access-CwkOYeYM-D_BCZqV6.mjs → detect-env-access-CwkOYeYM-h2W05D_Q.mjs} +1 -1
- package/dist/{diff.handler-Du7SY8K4.mjs → diff.handler--zdSkUnK.mjs} +5 -5
- package/dist/{dist-CUK7yBM0.mjs → dist-BF6r1hfv.mjs} +3 -3
- package/dist/{dist-BkJUoBiG.mjs → dist-C2Dq_nx3.mjs} +12 -12
- package/dist/{env-91KwMKov.mjs → env-YTZGKGIu.mjs} +9 -10
- package/dist/{env.handler-BAzBuMzQ.mjs → env.handler-d4sJ706C.mjs} +8 -8
- package/dist/{error-boundary-VL-JLfIa.mjs → error-boundary-B9PgBkv8.mjs} +2 -2
- package/dist/{file-metadata-D1vm-XY2.mjs → file-metadata-CdFXMMIw.mjs} +1 -1
- package/dist/hosted-action-dispatcher-registry-TOVzMhUR.mjs +126 -0
- package/dist/iam-command-utils-CNC8JfZ5.mjs +72 -0
- package/dist/{import-module-CV84H5fZ-B_CBCmb4.mjs → import-module-DDPnzlJ1-CYJD2n2b.mjs} +395 -10
- package/dist/{init-DpMCotSK.mjs → init-C0sps8R7.mjs} +2 -2
- package/dist/{init.handler-CPRnif52.mjs → init.handler-DSW6XFZn.mjs} +17 -17
- package/dist/{inspect.handler-DT_cD036.mjs → inspect.handler-DbN0ZVTh.mjs} +5 -5
- package/dist/{integration-catalog-Bt-L3GjF.mjs → integration-catalog-DFlytKJS.mjs} +2 -2
- package/dist/{integrations-DlatPK4W.mjs → integrations-Dcadds2b.mjs} +5 -5
- package/dist/invites-DvsxTRAb.mjs +44 -0
- package/dist/invites.list.handler-B5quln3m.mjs +43 -0
- package/dist/invites.resend.handler-CSpj7bQ5.mjs +23 -0
- package/dist/invites.revoke.handler-_hdEkBdO.mjs +28 -0
- package/dist/keystroke.mjs +31 -22
- package/dist/{list-enrichment-y-cwizLr.mjs → list-enrichment-CTqx0Rk_.mjs} +1 -1
- package/dist/{list.handler-CWF_Dj15.mjs → list.handler-08GY-wnx.mjs} +1 -1
- package/dist/{list.handler-DWaQkJaR.mjs → list.handler-20v4uRMk.mjs} +2 -2
- package/dist/{list.handler-BTWvCyjA.mjs → list.handler-BRq-nScx.mjs} +5 -5
- package/dist/{list.handler-lq3ZGAn4.mjs → list.handler-CWO6DExh.mjs} +3 -3
- package/dist/{list.handler-CZ6G2x_G.mjs → list.handler-DAiJtW20.mjs} +3 -3
- package/dist/list.handler-DLl8ca6F.mjs +42 -0
- package/dist/{list.handler-DqbFcBW7.mjs → list.handler-DSPr0OxS.mjs} +7 -7
- package/dist/{logs-BEg9L5l8.mjs → logs-D_48skmi.mjs} +3 -3
- package/dist/{logs.handler-BD_dXiL1.mjs → logs.handler-4ctMVYMj.mjs} +3 -3
- package/dist/{logs.handler-6hoMBzqw.mjs → logs.handler-C3QnSCaH.mjs} +1 -1
- package/dist/members.add.handler-Dq_giQ8g.mjs +31 -0
- package/dist/members.invite.handler-v404bUsq.mjs +32 -0
- package/dist/members.list.handler-D6TE0yp8.mjs +43 -0
- package/dist/members.remove.handler-BhQ3cyeR.mjs +28 -0
- package/dist/members.update.handler-BVy2cv1K.mjs +28 -0
- package/dist/{metadata-layout-GUYIUo0i-_aG2zjue.mjs → metadata-layout-C6ed-9dl-aBmqqvD5.mjs} +2 -2
- package/dist/{normalize-path-CojS-CgQ-DLCOvnD1.mjs → normalize-path-CojS-CgQ-BKRFUzWW.mjs} +1 -1
- package/dist/org-CkRr-f3S.mjs +234 -0
- package/dist/orgs.create.handler-swGnT2ce.mjs +26 -0
- package/dist/orgs.get.handler-ClAqYTH0.mjs +28 -0
- package/dist/orgs.list.handler-D-ptz8It.mjs +41 -0
- package/dist/{paused.handler-BMFm9Cff.mjs → paused.handler-B3aVqw-m.mjs} +2 -2
- package/dist/{project-config-D1qsQlO7.mjs → project-config-opj6DsPF.mjs} +2 -2
- package/dist/{projects-CHkRE9rS.mjs → projects-Bdl6-Z8l.mjs} +2 -2
- package/dist/{projects-Cjb7sovS.mjs → projects-yA9AAaDM.mjs} +5 -5
- package/dist/{register.handler-BPCdor1_.mjs → register.handler-WzpvVXHx.mjs} +1 -1
- package/dist/{requirements.handler-DPXdSks3.mjs → requirements.handler-coArDE8x.mjs} +7 -7
- package/dist/{resolve-project-DDJ29sCF.mjs → resolve-project-DgfftdPm.mjs} +2 -2
- package/dist/{runs-D9hNLb9A.mjs → runs-B8mW4PqP.mjs} +3 -3
- package/dist/schedule-BRN4hzQM.mjs +505 -0
- package/dist/schema-_FQrHcIS.mjs +17 -0
- package/dist/schema-kbMHVnhm.mjs +81 -0
- package/dist/schemas-DsvCZfF0.mjs +42 -0
- package/dist/{skills-sync.handler-DIy8GR16.mjs → skills-sync.handler-C2faeat-.mjs} +2 -2
- package/dist/{skills.command-CrjI2dN9.mjs → skills.command-DWxcc3Ui.mjs} +4 -4
- package/dist/source-analysis-BspLa3E5.mjs +75 -0
- package/dist/{source-analysis-Cj-ADyu--BJQcFPCG.mjs → source-analysis-DEEChuND-eixwPnPP.mjs} +5 -5
- package/dist/{src-eHwu-Gfw.mjs → src-J09NGJ6Z.mjs} +42 -6
- package/dist/{switch.handler-D_9213Vf.mjs → switch.handler-C4hgbhcH.mjs} +2 -2
- package/dist/{sync-BL_Mo5st.mjs → sync-CL6zXiiA.mjs} +2 -2
- package/dist/{sync.handler-BUFPdzWz.mjs → sync.handler-D1uF8E8I.mjs} +8 -8
- package/dist/{schemas-CDib1RhE.mjs → task-DsrXI6XH.mjs} +10 -39
- package/dist/{task-target-build-CBeCKbu2.mjs → task-target-build-DTzz4fpG.mjs} +4 -4
- package/dist/task-target-deploy-BPLlP__P.mjs +4 -0
- package/dist/{task-target-deploy-CA6elFpF-BEr4gkol.mjs → task-target-deploy-Bf5i3ox1-BU16VPsE.mjs} +2 -3
- package/dist/task-target-deploy-runner.mjs +15 -14
- package/dist/{test-BHTgR3UA.mjs → test-BsTLXIPB.mjs} +31 -31
- package/dist/{test.handler-BcPQ8b74.mjs → test.handler-D25kziPi.mjs} +1 -1
- package/dist/{trigger-artifacts-DQPbQNqC-B4yeeFBY.mjs → trigger-artifacts-B3OCTX9K-DG-FGGJT.mjs} +5 -5
- package/dist/{trigger-manifest-CY7brZeg.mjs → trigger-manifest-CXD9I7Rb.mjs} +1 -2
- package/dist/{try-deploy.handler-DqybNhXx.mjs → try-deploy.handler-2aX5TmLk.mjs} +11 -11
- package/dist/{upload.handler-DCtiznQp.mjs → upload.handler-CqProKVJ.mjs} +10 -10
- package/dist/users.get.handler-C_d2GWKX.mjs +24 -0
- package/dist/users.list.handler-DXAsO8Yk.mjs +36 -0
- package/dist/users.set-role.handler-Bn_yV4RI.mjs +27 -0
- package/dist/{utils-CywxCDM7.mjs → utils-DlYHjGg9.mjs} +2 -2
- package/dist/{validate.handler-DOcTaJL0.mjs → validate.handler-CGD6GttR.mjs} +5 -5
- package/dist/{workflow-build-DBQaBfnn.mjs → workflow-build-BcaIdRR6.mjs} +22 -45
- package/dist/{workflow-bundler-BPiqVscj-X1PFFAuP.mjs → workflow-bundler-BzHk73PM-Cde7cKiU.mjs} +4 -4
- package/dist/{_manifest-JSRE3H8k.mjs → workflow-manifest-CAW5FlX0.mjs} +7 -131
- package/dist/{workflows-g9z87AJJ.mjs → workflows-S-gbfw8f.mjs} +16 -15
- package/dist/{writer-BG8poUm3-BbXlU2kI.mjs → writer-CtvttJdP-DrJruQgR.mjs} +8 -8
- package/package.json +9 -11
- package/THIRD_PARTY_NOTICES.md +0 -16
- package/dist/api-keys-D2lgguuY.mjs +0 -40
- package/dist/org-xLzBtt2_.mjs +0 -41
- package/dist/schedule-BXx3uXwr.mjs +0 -1142
- package/dist/src-C0X6u_Mw.mjs +0 -1340
- package/dist/task-B2sZMaZu.mjs +0 -8
- package/dist/task-target-deploy-C5X-USeR.mjs +0 -4
- /package/dist/{agent-bundle-package-DWV6B_5q-BtV7Xycc.mjs → agent-bundle-package-DWV6B_5q-FPT0bJaA.mjs} +0 -0
- /package/dist/{browser-qwFrUH82.mjs → browser-gddMccBQ.mjs} +0 -0
- /package/dist/{concurrency-gXn9Rw8x-DNl2YtrS.mjs → concurrency-gXn9Rw8x-BTlfau8D.mjs} +0 -0
- /package/dist/{constants-CPpPdSNg.mjs → constants-DHdiT5hc.mjs} +0 -0
- /package/dist/{credential-env-map-CI8yWHVy.mjs → credential-env-map-C8P7uTD-.mjs} +0 -0
- /package/dist/{diff-utils-NEfcjqxt.mjs → diff-utils-DWNcRA8g.mjs} +0 -0
- /package/dist/{get-intrinsic-zLxwtrLK.mjs → get-intrinsic-ZMBBjBEr.mjs} +0 -0
- /package/dist/{layout-CbMtQ2tm.mjs → layout-B95Tku8F.mjs} +0 -0
- /package/dist/{options-CeaTcFxP.mjs → options-Dn9t3K4a.mjs} +0 -0
- /package/dist/{output-DM4b7KgY.mjs → output-q4KljAhu.mjs} +0 -0
- /package/dist/{oxc-B3KI3rf_-n9d1hKNq.mjs → oxc-B3KI3rf_-BeimiQ2U.mjs} +0 -0
- /package/dist/{read-credential-keys-77a91T8M-KA0Iw0Z1.mjs → read-credential-keys-77a91T8M-CAJLnMRi.mjs} +0 -0
- /package/dist/{rolldown-runtime-twds-ZHy-BWWzu8VG.mjs → rolldown-runtime-twds-ZHy-8uqgIurC.mjs} +0 -0
- /package/dist/{run-polling-CAgFRdK3.mjs → run-polling-CTzhTgyN.mjs} +0 -0
- /package/dist/{schema-17qMfNyI.mjs → schema-Di90TXoX.mjs} +0 -0
- /package/dist/{schema-display-CgmeKigW.mjs → schema-display-D4A1gQEM.mjs} +0 -0
- /package/dist/{skills.handler-Bz8bJKql.mjs → skills.handler-8KCSF7wp.mjs} +0 -0
- /package/dist/{spinner-progress-DMVwgqO9.mjs → spinner-progress-bvKd1jXc.mjs} +0 -0
- /package/dist/{status.handler-BO4nwvWn.mjs → status.handler-D9GBEmao.mjs} +0 -0
- /package/dist/{sync-keystroke-agent-skills-Kx_H7UTd.mjs → sync-keystroke-agent-skills-CY9h25_5.mjs} +0 -0
- /package/dist/{upload-CkU--iDC.mjs → upload-B8fiWveA.mjs} +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { C as CliExitError, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { d as trackProject } from "./dist-
|
|
5
|
-
import { a as writeProjectConfig, i as readProjectConfig, r as getProjectConfigPath } from "./project-config-
|
|
6
|
-
import { i as requireClient } from "./context-
|
|
7
|
-
import { t as syncKeystrokeAgentSkills } from "./sync-keystroke-agent-skills-
|
|
4
|
+
import { d as trackProject } from "./dist-BF6r1hfv.mjs";
|
|
5
|
+
import { a as writeProjectConfig, i as readProjectConfig, r as getProjectConfigPath } from "./project-config-opj6DsPF.mjs";
|
|
6
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
7
|
+
import { t as syncKeystrokeAgentSkills } from "./sync-keystroke-agent-skills-CY9h25_5.mjs";
|
|
8
8
|
import { createRequire } from "node:module";
|
|
9
9
|
import { accessSync, readFileSync } from "node:fs";
|
|
10
10
|
import { access, mkdir, readFile, writeFile } from "node:fs/promises";
|
|
@@ -29,15 +29,15 @@ function getKeystrokeLocalNpmRegistryUrl() {
|
|
|
29
29
|
function createKeystrokeLocalRegistryNpmrcContent() {
|
|
30
30
|
return `@keystroke:registry=${getKeystrokeLocalNpmRegistryUrl()}\n`;
|
|
31
31
|
}
|
|
32
|
-
/** When the CLI cannot resolve `@
|
|
32
|
+
/** When the CLI cannot resolve `@keystrokehq/core` on disk (e.g. unusual installs). */
|
|
33
33
|
const FALLBACK_WORKFLOW_CORE_VERSION_RANGE = "^0.0.1";
|
|
34
34
|
/**
|
|
35
|
-
* Semver range for scaffold `package.json` — uses the version of `@
|
|
35
|
+
* Semver range for scaffold `package.json` — uses the version of `@keystrokehq/core`
|
|
36
36
|
* installed next to this CLI (same as the Keystroke toolchain the author runs).
|
|
37
37
|
*/
|
|
38
38
|
function workflowCoreScaffoldVersionRange() {
|
|
39
39
|
try {
|
|
40
|
-
const raw = readFileSync(createRequire(import.meta.url).resolve("@
|
|
40
|
+
const raw = readFileSync(createRequire(import.meta.url).resolve("@keystrokehq/core/package.json"), "utf-8");
|
|
41
41
|
const version = JSON.parse(raw).version?.trim();
|
|
42
42
|
if (version) return `^${version}`;
|
|
43
43
|
} catch {}
|
|
@@ -108,7 +108,7 @@ async function ensureAgentsMarkdown(targetDir, blurb) {
|
|
|
108
108
|
//#region src/commands/init/templates/biome-config.ts
|
|
109
109
|
/**
|
|
110
110
|
* Template for generating biome.json for a new Keystroke project.
|
|
111
|
-
* Enables noProcessEnv and loads GritQL rules from @
|
|
111
|
+
* Enables noProcessEnv and loads GritQL rules from @keystrokehq/core.
|
|
112
112
|
*/
|
|
113
113
|
function createBiomeConfigContent() {
|
|
114
114
|
return JSON.stringify({
|
|
@@ -117,7 +117,7 @@ function createBiomeConfigContent() {
|
|
|
117
117
|
enabled: true,
|
|
118
118
|
rules: { style: { noProcessEnv: "error" } }
|
|
119
119
|
},
|
|
120
|
-
plugins: ["./node_modules/@
|
|
120
|
+
plugins: ["./node_modules/@keystrokehq/core/biome/no-env-access.grit"]
|
|
121
121
|
}, null, 2);
|
|
122
122
|
}
|
|
123
123
|
//#endregion
|
|
@@ -170,7 +170,7 @@ const HELLO_WORKFLOW_SCAFFOLD_FILES = {
|
|
|
170
170
|
test: "workflows/hello/hello.test.ts"
|
|
171
171
|
};
|
|
172
172
|
function createGreetStepContent() {
|
|
173
|
-
return `import { Step } from '@
|
|
173
|
+
return `import { Step } from '@keystrokehq/core';
|
|
174
174
|
import { z } from 'zod';
|
|
175
175
|
|
|
176
176
|
export const greet = new Step({
|
|
@@ -186,7 +186,7 @@ export const greet = new Step({
|
|
|
186
186
|
`;
|
|
187
187
|
}
|
|
188
188
|
function createShoutStepContent() {
|
|
189
|
-
return `import { Step } from '@
|
|
189
|
+
return `import { Step } from '@keystrokehq/core';
|
|
190
190
|
import { z } from 'zod';
|
|
191
191
|
|
|
192
192
|
export const shout = new Step({
|
|
@@ -202,7 +202,7 @@ export const shout = new Step({
|
|
|
202
202
|
`;
|
|
203
203
|
}
|
|
204
204
|
function createHelloWorkflowContent() {
|
|
205
|
-
return `import { Workflow } from '@
|
|
205
|
+
return `import { Workflow } from '@keystrokehq/core';
|
|
206
206
|
import { z } from 'zod';
|
|
207
207
|
import { greet } from './greet.step';
|
|
208
208
|
import { shout } from './shout.step';
|
|
@@ -238,7 +238,7 @@ describe('hello workflow', () => {
|
|
|
238
238
|
/**
|
|
239
239
|
* Template for generating a package.json for a new Keystroke project.
|
|
240
240
|
*
|
|
241
|
-
* `@
|
|
241
|
+
* `@keystrokehq/core` uses a semver range; installs resolve via `.npmrc` → local Verdaccio
|
|
242
242
|
* (see `pnpm publish:local` from the Keystroke monorepo).
|
|
243
243
|
*/
|
|
244
244
|
function createPackageJsonContent(projectName, options) {
|
|
@@ -252,7 +252,7 @@ function createPackageJsonContent(projectName, options) {
|
|
|
252
252
|
lint: "biome check ."
|
|
253
253
|
},
|
|
254
254
|
dependencies: {
|
|
255
|
-
"@
|
|
255
|
+
"@keystrokehq/core": options.workflowCoreVersionRange,
|
|
256
256
|
zod: "^4.3.6"
|
|
257
257
|
},
|
|
258
258
|
devDependencies: {
|
|
@@ -295,7 +295,7 @@ function createTsconfigContent() {
|
|
|
295
295
|
*/
|
|
296
296
|
function createVitestConfigContent() {
|
|
297
297
|
return `import { defineConfig } from 'vitest/config';
|
|
298
|
-
import { keystrokeTestPlugin } from '@
|
|
298
|
+
import { keystrokeTestPlugin } from '@keystrokehq/core/vitest';
|
|
299
299
|
|
|
300
300
|
export default defineConfig({
|
|
301
301
|
plugins: [keystrokeTestPlugin()],
|
|
@@ -365,7 +365,7 @@ async function ensureScaffoldPackageJson(targetDir, projectName, ranges) {
|
|
|
365
365
|
const raw = await readFile(pkgPath, "utf-8");
|
|
366
366
|
const pkg = JSON.parse(raw);
|
|
367
367
|
pkg.dependencies = pkg.dependencies ?? {};
|
|
368
|
-
pkg.dependencies["@
|
|
368
|
+
pkg.dependencies["@keystrokehq/core"] = ranges.workflowCore;
|
|
369
369
|
pkg.dependencies.zod = pkg.dependencies.zod ?? "^4.3.6";
|
|
370
370
|
pkg.devDependencies = pkg.devDependencies ?? {};
|
|
371
371
|
pkg.devDependencies["@keystroke/skills"] = ranges.skills;
|
|
@@ -501,7 +501,7 @@ async function scaffoldProject(targetDir, projectName, workflowCoreVersionRange,
|
|
|
501
501
|
workflowCore: workflowCoreVersionRange,
|
|
502
502
|
skills: skillsVersionRange
|
|
503
503
|
});
|
|
504
|
-
ui.success(pkgAction === "created" ? `Created package.json (@
|
|
504
|
+
ui.success(pkgAction === "created" ? `Created package.json (@keystrokehq/core ${workflowCoreVersionRange}, @keystroke/skills ${skillsVersionRange})` : `Updated package.json (Keystroke deps → core ${workflowCoreVersionRange}, skills ${skillsVersionRange})`);
|
|
505
505
|
const registryUrl = getKeystrokeLocalNpmRegistryUrl();
|
|
506
506
|
const npmrcAction = await ensureKeystrokeLocalRegistryNpmrc(targetDir);
|
|
507
507
|
if (npmrcAction === "created") ui.success(`Created .npmrc (@keystroke → local registry ${registryUrl.trim()})`);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { D as throwReportedCliExit, h as toErrorMessage, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { d as trackProject } from "./dist-
|
|
5
|
-
import { i as writeJson } from "./output-
|
|
6
|
-
import { i as
|
|
7
|
-
import { i as
|
|
8
|
-
import { n as resolveLocalWorkflowManifest, r as resolveProjectContext, t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-
|
|
4
|
+
import { d as trackProject } from "./dist-BF6r1hfv.mjs";
|
|
5
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
6
|
+
import { i as requireClient, t as assertProjectConfigMatchesAuthenticatedOrg } from "./context-Y1f1hGYy.mjs";
|
|
7
|
+
import { i as resolveTypeHint } from "./schema-display-D4A1gQEM.mjs";
|
|
8
|
+
import { n as resolveLocalWorkflowManifest, r as resolveProjectContext, t as lookupCurrentDeploymentWorkflow } from "./current-deployment-workflow-M8GEIHxv.mjs";
|
|
9
9
|
import dayjs from "dayjs";
|
|
10
10
|
//#region src/commands/workflows/inspect/inspect-display.ts
|
|
11
11
|
function formatBuildTimestamp(iso) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { C as CliExitError, D as throwReportedCliExit, h as toErrorMessage, m as isNetworkError, p as isAuthError, t as ui, u as REAUTH_HINT } from "./keystroke.mjs";
|
|
4
|
-
import { a as writeJsonError } from "./output-
|
|
5
|
-
import { i as requireClient } from "./context-
|
|
4
|
+
import { a as writeJsonError } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
6
|
//#region src/lib/integration-catalog.ts
|
|
7
7
|
const catalogCache = /* @__PURE__ */ new WeakMap();
|
|
8
8
|
function buildView(entries) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-
|
|
4
|
-
import { t as createTypedCommand } from "./commander-
|
|
3
|
+
import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
|
|
4
|
+
import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
//#region src/commands/integrations/integrations.command.ts
|
|
7
7
|
const IntegrationsListOptionsSchema = JsonOptionSchema.extend({
|
|
@@ -46,20 +46,20 @@ function createIntegrationsCommand() {
|
|
|
46
46
|
description: "List Keystroke integrations available to your organization",
|
|
47
47
|
schema: IntegrationsListOptionsSchema,
|
|
48
48
|
optionsConfig: INTEGRATIONS_LIST_OPTIONS_CONFIG,
|
|
49
|
-
loadHandler: async () => (await import("./list.handler-
|
|
49
|
+
loadHandler: async () => (await import("./list.handler-CWO6DExh.mjs")).handleIntegrationsList,
|
|
50
50
|
subcommands: [createTypedCommand({
|
|
51
51
|
name: "list",
|
|
52
52
|
description: "List Keystroke integrations available to your organization",
|
|
53
53
|
schema: IntegrationsListOptionsSchema,
|
|
54
54
|
optionsConfig: INTEGRATIONS_LIST_OPTIONS_CONFIG,
|
|
55
|
-
loadHandler: async () => (await import("./list.handler-
|
|
55
|
+
loadHandler: async () => (await import("./list.handler-CWO6DExh.mjs")).handleIntegrationsList
|
|
56
56
|
}), createTypedCommand({
|
|
57
57
|
name: "register",
|
|
58
58
|
description: "Register a workspace provider app for future workspace-authored OAuth support",
|
|
59
59
|
schema: IntegrationsRegisterOptionsSchema,
|
|
60
60
|
optionsConfig: INTEGRATIONS_REGISTER_OPTIONS_CONFIG,
|
|
61
61
|
handler: async (opts, ctx) => {
|
|
62
|
-
const { handleIntegrationsRegister } = await import("./register.handler-
|
|
62
|
+
const { handleIntegrationsRegister } = await import("./register.handler-WzpvVXHx.mjs");
|
|
63
63
|
await handleIntegrationsRegister({
|
|
64
64
|
integrationId: opts.integrationId,
|
|
65
65
|
clientAppCredentialSetId: opts.clientApp,
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { n as JsonOptionSchema, t as JSON_OPTION_CONFIG } from "./output-q4KljAhu.mjs";
|
|
4
|
+
import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
//#region src/commands/invites/invites.command.ts
|
|
7
|
+
const InvitesListOptionsSchema = JsonOptionSchema;
|
|
8
|
+
const InvitesAcceptOptionsSchema = JsonOptionSchema.extend({ inviteId: z.string().min(1) });
|
|
9
|
+
const ACCEPT_OPTIONS_CONFIG = {
|
|
10
|
+
...JSON_OPTION_CONFIG,
|
|
11
|
+
inviteId: {
|
|
12
|
+
flag: "",
|
|
13
|
+
description: ""
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
function createInvitesCommand() {
|
|
17
|
+
return createTypedCommand({
|
|
18
|
+
name: "invites",
|
|
19
|
+
description: "Manage invitations for the current user",
|
|
20
|
+
schema: InvitesListOptionsSchema,
|
|
21
|
+
optionsConfig: { ...JSON_OPTION_CONFIG },
|
|
22
|
+
loadHandler: async () => (await import("./list.handler-DLl8ca6F.mjs")).handleInvitesList,
|
|
23
|
+
subcommands: [createTypedCommand({
|
|
24
|
+
name: "list",
|
|
25
|
+
description: "List pending invites for the current user",
|
|
26
|
+
schema: InvitesListOptionsSchema,
|
|
27
|
+
optionsConfig: { ...JSON_OPTION_CONFIG },
|
|
28
|
+
loadHandler: async () => (await import("./list.handler-DLl8ca6F.mjs")).handleInvitesList
|
|
29
|
+
}), createTypedCommand({
|
|
30
|
+
name: "accept",
|
|
31
|
+
description: "Accept a pending invite",
|
|
32
|
+
schema: InvitesAcceptOptionsSchema,
|
|
33
|
+
optionsConfig: ACCEPT_OPTIONS_CONFIG,
|
|
34
|
+
argument: {
|
|
35
|
+
name: "invite-id",
|
|
36
|
+
description: "Invite ID to accept",
|
|
37
|
+
key: "inviteId"
|
|
38
|
+
},
|
|
39
|
+
loadHandler: async () => (await import("./accept.handler-DFtM0IuO.mjs")).handleInvitesAccept
|
|
40
|
+
})]
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { createInvitesCommand };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { t as ui } from "./keystroke.mjs";
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { i as requireOrganizationId, n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CNC8JfZ5.mjs";
|
|
7
|
+
import Table from "cli-table3";
|
|
8
|
+
//#region src/commands/org/invites.list.handler.ts
|
|
9
|
+
async function handleOrgInvitesList(_options, ctx) {
|
|
10
|
+
const client = requireClient(ctx);
|
|
11
|
+
const organizationId = requireOrganizationId(ctx);
|
|
12
|
+
try {
|
|
13
|
+
const result = await client.organizations.invites.list(organizationId);
|
|
14
|
+
if (isIamJsonMode(_options, ctx)) {
|
|
15
|
+
writeJson(result);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (result.invites.length === 0) {
|
|
19
|
+
ui.hint("No invites found.");
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const table = new Table({
|
|
23
|
+
head: [
|
|
24
|
+
"Email",
|
|
25
|
+
"Role",
|
|
26
|
+
"Status",
|
|
27
|
+
"Invite ID"
|
|
28
|
+
],
|
|
29
|
+
style: { head: [] }
|
|
30
|
+
});
|
|
31
|
+
for (const invite of result.invites) table.push([
|
|
32
|
+
invite.email,
|
|
33
|
+
invite.role,
|
|
34
|
+
invite.status,
|
|
35
|
+
invite.id
|
|
36
|
+
]);
|
|
37
|
+
ui.text(table.toString());
|
|
38
|
+
} catch (error) {
|
|
39
|
+
await handleIamError(error, ctx, "Failed to list organization invites");
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
export { handleOrgInvitesList };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { t as ui } from "./keystroke.mjs";
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { i as requireOrganizationId, n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CNC8JfZ5.mjs";
|
|
7
|
+
//#region src/commands/org/invites.resend.handler.ts
|
|
8
|
+
async function handleOrgInvitesResend(options, ctx) {
|
|
9
|
+
const client = requireClient(ctx);
|
|
10
|
+
const organizationId = requireOrganizationId(ctx);
|
|
11
|
+
try {
|
|
12
|
+
const result = await client.organizations.invites.resend(organizationId, options.inviteId);
|
|
13
|
+
if (isIamJsonMode(options, ctx)) {
|
|
14
|
+
writeJson(result);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
ui.success(`Resent invite ${options.inviteId}`);
|
|
18
|
+
} catch (error) {
|
|
19
|
+
await handleIamError(error, ctx, "Failed to resend organization invite");
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//#endregion
|
|
23
|
+
export { handleOrgInvitesResend };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { t as ui } from "./keystroke.mjs";
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { i as requireOrganizationId, n as isIamJsonMode, r as requireConfirmation, t as handleIamError } from "./iam-command-utils-CNC8JfZ5.mjs";
|
|
7
|
+
//#region src/commands/org/invites.revoke.handler.ts
|
|
8
|
+
async function handleOrgInvitesRevoke(options, ctx) {
|
|
9
|
+
const client = requireClient(ctx);
|
|
10
|
+
const organizationId = requireOrganizationId(ctx);
|
|
11
|
+
requireConfirmation({
|
|
12
|
+
confirmed: options.confirm,
|
|
13
|
+
message: "Revoking an invite prevents it from being accepted.",
|
|
14
|
+
ctx
|
|
15
|
+
});
|
|
16
|
+
try {
|
|
17
|
+
const result = await client.organizations.invites.revoke(organizationId, options.inviteId);
|
|
18
|
+
if (isIamJsonMode(options, ctx)) {
|
|
19
|
+
writeJson(result);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
ui.success(`Revoked invite ${options.inviteId}`);
|
|
23
|
+
} catch (error) {
|
|
24
|
+
await handleIamError(error, ctx, "Failed to revoke organization invite");
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { handleOrgInvitesRevoke };
|
package/dist/keystroke.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
+
import { t as DEFAULT_CLI_SERVER_URL } from "./default-urls-BS4twrsS.mjs";
|
|
3
4
|
import { Command, CommanderError, Option } from "commander";
|
|
4
5
|
import * as fs from "node:fs";
|
|
5
6
|
import * as fsPromises from "node:fs/promises";
|
|
@@ -8,80 +9,88 @@ import * as path$1 from "node:path";
|
|
|
8
9
|
import { z } from "zod";
|
|
9
10
|
import { log } from "@clack/prompts";
|
|
10
11
|
//#region package.json
|
|
11
|
-
var version = "0.0.
|
|
12
|
+
var version = "0.0.3";
|
|
12
13
|
//#endregion
|
|
13
14
|
//#region src/command-registry.ts
|
|
14
15
|
const ROOT_OPTIONS_WITH_VALUES = new Set([
|
|
15
16
|
"--api-key",
|
|
16
|
-
"--
|
|
17
|
+
"--server-url",
|
|
17
18
|
"--org"
|
|
18
19
|
]);
|
|
19
20
|
const ROOT_VERSION_FLAGS = new Set(["-V", "--version"]);
|
|
20
21
|
const lazyCommandDefinitions = [
|
|
21
22
|
{
|
|
22
23
|
name: "agents",
|
|
23
|
-
loadCommand: async () => (await import("./agents-
|
|
24
|
+
loadCommand: async () => (await import("./agents-DMEo-6QB.mjs")).createAgentsCommand()
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: "admin",
|
|
28
|
+
loadCommand: async () => (await import("./admin-D_7tenRC.mjs")).createAdminCommand()
|
|
24
29
|
},
|
|
25
30
|
{
|
|
26
31
|
name: "api-keys",
|
|
27
|
-
loadCommand: async () => (await import("./api-keys-
|
|
32
|
+
loadCommand: async () => (await import("./api-keys-BThGvtdn.mjs")).createApiKeysCommand()
|
|
28
33
|
},
|
|
29
34
|
{
|
|
30
35
|
name: "auth",
|
|
31
|
-
loadCommand: async () => (await import("./auth-
|
|
36
|
+
loadCommand: async () => (await import("./auth-CY0Gg9sN.mjs")).createAuthCommand()
|
|
32
37
|
},
|
|
33
38
|
{
|
|
34
39
|
name: "connect",
|
|
35
|
-
loadCommand: async () => (await import("./connect-
|
|
40
|
+
loadCommand: async () => (await import("./connect-DpQgYg8z.mjs")).createConnectCommand()
|
|
36
41
|
},
|
|
37
42
|
{
|
|
38
43
|
name: "credentials",
|
|
39
|
-
loadCommand: async () => (await import("./credentials-
|
|
44
|
+
loadCommand: async () => (await import("./credentials-UpgEcaub.mjs")).createCredentialsCommand(),
|
|
40
45
|
copyInheritedSettings: true
|
|
41
46
|
},
|
|
42
47
|
{
|
|
43
48
|
name: "org",
|
|
44
|
-
loadCommand: async () => (await import("./org-
|
|
49
|
+
loadCommand: async () => (await import("./org-CkRr-f3S.mjs")).createOrgCommand()
|
|
45
50
|
},
|
|
46
51
|
{
|
|
47
52
|
name: "deploy",
|
|
48
|
-
loadCommand: async () => (await import("./deploy-
|
|
53
|
+
loadCommand: async () => (await import("./deploy-Gw0KPrkf.mjs")).createDeployCommand()
|
|
49
54
|
},
|
|
50
55
|
{
|
|
51
56
|
name: "init",
|
|
52
|
-
loadCommand: async () => (await import("./init-
|
|
57
|
+
loadCommand: async () => (await import("./init-C0sps8R7.mjs")).createInitCommand()
|
|
53
58
|
},
|
|
54
59
|
{
|
|
55
60
|
name: "integrations",
|
|
56
|
-
loadCommand: async () => (await import("./integrations-
|
|
61
|
+
loadCommand: async () => (await import("./integrations-Dcadds2b.mjs")).createIntegrationsCommand()
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: "invites",
|
|
65
|
+
loadCommand: async () => (await import("./invites-DvsxTRAb.mjs")).createInvitesCommand()
|
|
57
66
|
},
|
|
58
67
|
{
|
|
59
68
|
name: "logs",
|
|
60
|
-
loadCommand: async () => (await import("./logs-
|
|
69
|
+
loadCommand: async () => (await import("./logs-D_48skmi.mjs")).createLogsCommand()
|
|
61
70
|
},
|
|
62
71
|
{
|
|
63
72
|
name: "projects",
|
|
64
|
-
loadCommand: async () => (await import("./projects-
|
|
73
|
+
loadCommand: async () => (await import("./projects-yA9AAaDM.mjs")).createProjectsCommand()
|
|
65
74
|
},
|
|
66
75
|
{
|
|
67
76
|
name: "runs",
|
|
68
|
-
loadCommand: async () => (await import("./runs-
|
|
77
|
+
loadCommand: async () => (await import("./runs-B8mW4PqP.mjs")).createRunsCommand()
|
|
69
78
|
},
|
|
70
79
|
{
|
|
71
80
|
name: "skills",
|
|
72
|
-
loadCommand: async () => (await import("./skills.command-
|
|
81
|
+
loadCommand: async () => (await import("./skills.command-DWxcc3Ui.mjs")).createSkillsCommand()
|
|
73
82
|
},
|
|
74
83
|
{
|
|
75
84
|
name: "sync",
|
|
76
|
-
loadCommand: async () => (await import("./sync-
|
|
85
|
+
loadCommand: async () => (await import("./sync-CL6zXiiA.mjs")).createSyncCommand()
|
|
77
86
|
},
|
|
78
87
|
{
|
|
79
88
|
name: "test",
|
|
80
|
-
loadCommand: async () => (await import("./test-
|
|
89
|
+
loadCommand: async () => (await import("./test-BsTLXIPB.mjs")).createTestCommand()
|
|
81
90
|
},
|
|
82
91
|
{
|
|
83
92
|
name: "workflows",
|
|
84
|
-
loadCommand: async () => (await import("./workflows-
|
|
93
|
+
loadCommand: async () => (await import("./workflows-S-gbfw8f.mjs")).createWorkflowsCommand()
|
|
85
94
|
}
|
|
86
95
|
];
|
|
87
96
|
function selectCommandRegistration(argv, commandNames = new Set(lazyCommandDefinitions.map((definition) => definition.name))) {
|
|
@@ -568,7 +577,7 @@ async function flushCliTelemetryForExit(exitCode) {
|
|
|
568
577
|
}
|
|
569
578
|
z.object({
|
|
570
579
|
apiKey: z.string().optional(),
|
|
571
|
-
|
|
580
|
+
serverUrl: z.string().optional(),
|
|
572
581
|
debug: z.boolean().optional(),
|
|
573
582
|
org: z.string().optional()
|
|
574
583
|
});
|
|
@@ -577,9 +586,9 @@ const GLOBAL_OPTIONS_CONFIG = {
|
|
|
577
586
|
flag: "--api-key <key>",
|
|
578
587
|
description: "Keystroke API Key (overrides KEYSTROKE_API_KEY env)"
|
|
579
588
|
},
|
|
580
|
-
|
|
581
|
-
flag: "--
|
|
582
|
-
description:
|
|
589
|
+
serverUrl: {
|
|
590
|
+
flag: "--server-url <url>",
|
|
591
|
+
description: `Keystroke API URL (default: SERVER_URL env or ${DEFAULT_CLI_SERVER_URL})`
|
|
583
592
|
},
|
|
584
593
|
debug: {
|
|
585
594
|
flag: "--debug",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { n as resolveCredentialValuesFromEnv, t as groupCredentialRequirements } from "./credentials-
|
|
4
|
+
import { n as resolveCredentialValuesFromEnv, t as groupCredentialRequirements } from "./credentials-DHlK_O4L.mjs";
|
|
5
5
|
import { readFile } from "node:fs/promises";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
import { parse } from "dotenv";
|
|
@@ -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-
|
|
4
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
5
5
|
//#region src/commands/org/list.handler.ts
|
|
6
6
|
async function handleOrgList(_options, ctx) {
|
|
7
7
|
const { user } = await requireClient(ctx).users.getMe();
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { D as throwReportedCliExit, h as toErrorMessage, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { i as writeJson } from "./output-
|
|
5
|
-
import { i as requireClient } from "./context-
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
6
|
import Table from "cli-table3";
|
|
7
7
|
//#region src/commands/api-keys/list.handler.ts
|
|
8
8
|
async function handleApiKeysList(_options, ctx) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { D as throwReportedCliExit, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { d as trackProject } from "./dist-
|
|
5
|
-
import { i as writeJson } from "./output-
|
|
6
|
-
import { t as requireWorkflowsDir } from "./resolve-project-
|
|
7
|
-
import { t as createSpinnerProgress } from "./spinner-progress-
|
|
8
|
-
import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-
|
|
4
|
+
import { d as trackProject } from "./dist-BF6r1hfv.mjs";
|
|
5
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
6
|
+
import { t as requireWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
|
|
7
|
+
import { t as createSpinnerProgress } from "./spinner-progress-bvKd1jXc.mjs";
|
|
8
|
+
import { a as runWorkflowBuild, n as renderBuildFailure } from "./workflow-build-BcaIdRR6.mjs";
|
|
9
9
|
//#region src/commands/workflows/list.handler.ts
|
|
10
10
|
function formatWorkflow(artifact) {
|
|
11
11
|
const name = style(artifact.manifest.name, `${ANSI.bold}${ANSI.cyan}`);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { h as toErrorMessage, m as isNetworkError, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { i as writeJson } from "./output-
|
|
5
|
-
import { i as requireClient } from "./context-
|
|
6
|
-
import { t as getIntegrationCatalog } from "./integration-catalog-
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { t as getIntegrationCatalog } from "./integration-catalog-DFlytKJS.mjs";
|
|
7
7
|
import Table from "cli-table3";
|
|
8
8
|
//#region src/commands/integrations/list.handler.ts
|
|
9
9
|
function summarizeConnections(entry, connections) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { s as readStoredProjects } from "./dist-
|
|
5
|
-
import { i as readProjectConfig } from "./project-config-
|
|
6
|
-
import { i as writeJson } from "./output-
|
|
4
|
+
import { s as readStoredProjects } from "./dist-BF6r1hfv.mjs";
|
|
5
|
+
import { i as readProjectConfig } from "./project-config-opj6DsPF.mjs";
|
|
6
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
7
7
|
import { access } from "node:fs/promises";
|
|
8
8
|
import Table from "cli-table3";
|
|
9
9
|
//#region src/commands/projects/list.handler.ts
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { t as ui } from "./keystroke.mjs";
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { n as isIamJsonMode, t as handleIamError } from "./iam-command-utils-CNC8JfZ5.mjs";
|
|
7
|
+
import Table from "cli-table3";
|
|
8
|
+
//#region src/commands/invites/list.handler.ts
|
|
9
|
+
async function handleInvitesList(_options, ctx) {
|
|
10
|
+
const client = requireClient(ctx);
|
|
11
|
+
try {
|
|
12
|
+
const result = await client.users.invites.listPending();
|
|
13
|
+
if (isIamJsonMode(_options, ctx)) {
|
|
14
|
+
writeJson(result);
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
if (result.invites.length === 0) {
|
|
18
|
+
ui.hint("No pending invites found.");
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const table = new Table({
|
|
22
|
+
head: [
|
|
23
|
+
"Email",
|
|
24
|
+
"Role",
|
|
25
|
+
"Invite ID",
|
|
26
|
+
"Expires"
|
|
27
|
+
],
|
|
28
|
+
style: { head: [] }
|
|
29
|
+
});
|
|
30
|
+
for (const invite of result.invites) table.push([
|
|
31
|
+
invite.email,
|
|
32
|
+
invite.role,
|
|
33
|
+
invite.id,
|
|
34
|
+
invite.expiresAt
|
|
35
|
+
]);
|
|
36
|
+
ui.text(table.toString());
|
|
37
|
+
} catch (error) {
|
|
38
|
+
await handleIamError(error, ctx, "Failed to list invites");
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//#endregion
|
|
42
|
+
export { handleInvitesList };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { D as throwReportedCliExit, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { i as writeJson } from "./output-
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { t as readCredentialEnvMap } from "./credential-env-map-
|
|
10
|
-
import { a as loadProjectDotenvFile, i as enrichServerCredentialRow, l as renderCredentialListBlocks, n as buildSyntheticNotOnServerRows, r as collectMergedManifestGroups, t as buildCredentialWorkflowConsumersByGroup } from "./list-enrichment-
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { n as getProcessEnv } from "./env-YTZGKGIu.mjs";
|
|
6
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
7
|
+
import { a as readManifestsFromOutDir } from "./dist-C2Dq_nx3.mjs";
|
|
8
|
+
import { n as resolveWorkflowsDir } from "./resolve-project-DgfftdPm.mjs";
|
|
9
|
+
import { t as readCredentialEnvMap } from "./credential-env-map-C8P7uTD-.mjs";
|
|
10
|
+
import { a as loadProjectDotenvFile, i as enrichServerCredentialRow, l as renderCredentialListBlocks, n as buildSyntheticNotOnServerRows, r as collectMergedManifestGroups, t as buildCredentialWorkflowConsumersByGroup } from "./list-enrichment-CTqx0Rk_.mjs";
|
|
11
11
|
import dayjs from "dayjs";
|
|
12
12
|
//#region src/commands/credentials/list/fetch-all-credential-sets.ts
|
|
13
13
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { t as createTypedCommand } from "./commander-
|
|
3
|
+
import { t as createTypedCommand } from "./commander-DZ3F3CVq.mjs";
|
|
4
4
|
import { z } from "zod";
|
|
5
5
|
//#region src/commands/logs/logs.command.ts
|
|
6
6
|
const LogsOptionsSchema = z.object({ count: z.coerce.number().int().min(1).max(1e3).default(100).describe("Number of log entries to display") });
|
|
@@ -14,13 +14,13 @@ function createLogsCommand() {
|
|
|
14
14
|
description: "Display recent CLI log entries",
|
|
15
15
|
schema: LogsOptionsSchema,
|
|
16
16
|
optionsConfig: LOGS_OPTIONS_CONFIG,
|
|
17
|
-
loadHandler: async () => (await import("./logs.handler-
|
|
17
|
+
loadHandler: async () => (await import("./logs.handler-C3QnSCaH.mjs")).handleLogs,
|
|
18
18
|
subcommands: [createTypedCommand({
|
|
19
19
|
name: "clear",
|
|
20
20
|
description: "Delete the CLI log file",
|
|
21
21
|
schema: z.object({}),
|
|
22
22
|
optionsConfig: {},
|
|
23
|
-
loadHandler: async () => (await import("./clear.handler-
|
|
23
|
+
loadHandler: async () => (await import("./clear.handler-CtOZ4aRn.mjs")).handleLogsClear
|
|
24
24
|
})]
|
|
25
25
|
});
|
|
26
26
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
import { D as throwReportedCliExit, h as toErrorMessage, o as ANSI, s as style, t as ui } from "./keystroke.mjs";
|
|
4
|
-
import { i as writeJson } from "./output-
|
|
5
|
-
import { i as requireClient } from "./context-
|
|
6
|
-
import { n as sleep, t as TERMINAL_STATUSES } from "./run-polling-
|
|
4
|
+
import { i as writeJson } from "./output-q4KljAhu.mjs";
|
|
5
|
+
import { i as requireClient } from "./context-Y1f1hGYy.mjs";
|
|
6
|
+
import { n as sleep, t as TERMINAL_STATUSES } from "./run-polling-CTzhTgyN.mjs";
|
|
7
7
|
import Table from "cli-table3";
|
|
8
8
|
//#region src/commands/workflows/_shared/run-query.ts
|
|
9
9
|
async function listRunsByWorkflowRef(client, options) {
|