@digitalpresence/cliclaw 0.4.3 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
 
2
- > @digitalpresence/cliclaw@0.4.2 build /Users/markshteyn/emdash-projects/worktrees/busy-wasps-drop-8lk/packages/cliclaw
2
+ > @digitalpresence/cliclaw@0.5.0 build /Users/markshteyn/emdash-projects/worktrees/lucky-pigs-drum-4um/packages/cliclaw
3
3
  > tsc
4
4
 
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=vercel.integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vercel.integration.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/vercel.integration.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,111 @@
1
+ import { execFile } from "child_process";
2
+ import { promisify } from "util";
3
+ import { join } from "path";
4
+ import { describe, it, expect, afterAll } from "vitest";
5
+ const execFileAsync = promisify(execFile);
6
+ const CLI = join(import.meta.dirname, "../../dist/cli.js");
7
+ async function run(...args) {
8
+ try {
9
+ const { stdout, stderr } = await execFileAsync("node", [CLI, ...args], {
10
+ timeout: 30000,
11
+ });
12
+ return { stdout, stderr, exitCode: 0 };
13
+ }
14
+ catch (err) {
15
+ return {
16
+ stdout: err.stdout ?? "",
17
+ stderr: err.stderr ?? "",
18
+ exitCode: err.code ?? 1,
19
+ };
20
+ }
21
+ }
22
+ function parseJson(result) {
23
+ return JSON.parse(result.stdout);
24
+ }
25
+ describe.sequential("Vercel CLI integration", () => {
26
+ const testProjectName = `cliclaw-test-${Date.now()}`;
27
+ let testProjectId;
28
+ let testEnvId;
29
+ afterAll(async () => {
30
+ if (testProjectId) {
31
+ await run("vercel", "project-delete", "--project", testProjectId);
32
+ }
33
+ });
34
+ it("whoami — returns authenticated user info", async () => {
35
+ const result = await run("vercel", "whoami");
36
+ expect(result.exitCode).toBe(0);
37
+ const data = parseJson(result);
38
+ expect(data).toHaveProperty("user");
39
+ expect(data.user).toHaveProperty("email");
40
+ });
41
+ it("projects — returns a list of projects", async () => {
42
+ const result = await run("vercel", "projects", "--max-results", "5");
43
+ expect(result.exitCode).toBe(0);
44
+ const data = parseJson(result);
45
+ expect(Array.isArray(data)).toBe(true);
46
+ });
47
+ it("project-create — creates a test project", async () => {
48
+ const result = await run("vercel", "project-create", "--name", testProjectName);
49
+ expect(result.exitCode).toBe(0);
50
+ const data = parseJson(result);
51
+ expect(data).toHaveProperty("id");
52
+ expect(data.name).toBe(testProjectName);
53
+ testProjectId = data.id;
54
+ });
55
+ it("project — gets the test project by ID", async () => {
56
+ const result = await run("vercel", "project", "--project", testProjectId);
57
+ expect(result.exitCode).toBe(0);
58
+ const data = parseJson(result);
59
+ expect(data.id).toBe(testProjectId);
60
+ expect(data.name).toBe(testProjectName);
61
+ });
62
+ it("env-create — creates an env var on the test project", async () => {
63
+ const result = await run("vercel", "env-create", "--project", testProjectId, "--key", "CLICLAW_TEST_VAR", "--value", "test-value", "--target", "development,preview", "--type", "plain");
64
+ expect(result.exitCode).toBe(0);
65
+ const data = parseJson(result);
66
+ expect(data).toHaveProperty("id");
67
+ testEnvId = data.id;
68
+ });
69
+ it("envs — lists env vars for the test project", async () => {
70
+ const result = await run("vercel", "envs", "--project", testProjectId);
71
+ expect(result.exitCode).toBe(0);
72
+ const data = parseJson(result);
73
+ expect(Array.isArray(data)).toBe(true);
74
+ const ids = data.map((e) => e.id);
75
+ expect(ids).toContain(testEnvId);
76
+ });
77
+ it("env — gets the created env var", async () => {
78
+ const result = await run("vercel", "env", "--project", testProjectId, "--env-id", testEnvId);
79
+ expect(result.exitCode).toBe(0);
80
+ const data = parseJson(result);
81
+ expect(data.key).toBe("CLICLAW_TEST_VAR");
82
+ });
83
+ it("env-update — updates the env var value", async () => {
84
+ const result = await run("vercel", "env-update", "--project", testProjectId, "--env-id", testEnvId, "--value", "updated-value");
85
+ expect(result.exitCode).toBe(0);
86
+ const data = parseJson(result);
87
+ expect(data).toHaveProperty("id");
88
+ });
89
+ it("env-delete — deletes the env var", async () => {
90
+ const result = await run("vercel", "env-delete", "--project", testProjectId, "--env-id", testEnvId);
91
+ expect(result.exitCode).toBe(0);
92
+ });
93
+ it("deployments — lists deployments", async () => {
94
+ const result = await run("vercel", "deployments", "--max-results", "5");
95
+ expect(result.exitCode).toBe(0);
96
+ const data = parseJson(result);
97
+ expect(Array.isArray(data)).toBe(true);
98
+ });
99
+ it("domains — lists domains", async () => {
100
+ const result = await run("vercel", "domains", "--max-results", "5");
101
+ expect(result.exitCode).toBe(0);
102
+ const data = parseJson(result);
103
+ expect(Array.isArray(data)).toBe(true);
104
+ });
105
+ it("project-delete — deletes the test project", async () => {
106
+ const result = await run("vercel", "project-delete", "--project", testProjectId);
107
+ expect(result.exitCode).toBe(0);
108
+ testProjectId = ""; // prevent afterAll cleanup
109
+ });
110
+ });
111
+ //# sourceMappingURL=vercel.integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vercel.integration.test.js","sourceRoot":"","sources":["../../src/__tests__/vercel.integration.test.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -11,6 +11,7 @@ import { registerFormsCommands } from "./commands/forms.js";
11
11
  import { registerAgentCommands } from "./commands/agent.js";
12
12
  import { registerCronCommands } from "./commands/cron.js";
13
13
  import { registerGithubCommands } from "./commands/github.js";
14
+ import { registerVercelCommands } from "./commands/vercel.js";
14
15
  import { registerInitCommand } from "./commands/init.js";
15
16
  import { outputError } from "./lib/output.js";
16
17
  function getClientManager() {
@@ -23,7 +24,7 @@ function getClientManager() {
23
24
  const program = new Command();
24
25
  program
25
26
  .name("cliclaw")
26
- .description("CLI tool for Gmail, Google Drive, Google Slides, Google Sheets, Google Calendar, Google Forms, and GitHub operations")
27
+ .description("CLI tool for Gmail, Google Drive, Google Slides, Google Sheets, Google Calendar, Google Forms, GitHub, and Vercel operations")
27
28
  .version("0.1.0");
28
29
  registerGmailCommands(program, getClientManager);
29
30
  registerGDriveCommands(program, getClientManager);
@@ -32,6 +33,7 @@ registerSheetsCommands(program, getClientManager);
32
33
  registerCalendarCommands(program, getClientManager);
33
34
  registerFormsCommands(program, getClientManager);
34
35
  registerGithubCommands(program, () => new TokenStore(getTokensPath()));
36
+ registerVercelCommands(program, () => new TokenStore(getTokensPath()));
35
37
  registerAgentCommands(program, () => new AgentStore(getAgentsDir()));
36
38
  registerCronCommands(program, () => new AgentStore(getAgentsDir()));
37
39
  registerInitCommand(program);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzG,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,SAAS,gBAAgB;IACvB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,oBAAoB,MAAM,CAAC,UAAU,iBAAiB,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACjG,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,sHAAsH,CAAC;KACnI,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACjD,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAClD,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAClD,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACpD,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACjD,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;AACvE,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACrE,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACpE,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAE7B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACjC,WAAW,CAAC,WAAW,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACzG,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,SAAS,gBAAgB;IACvB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,oBAAoB,MAAM,CAAC,UAAU,iBAAiB,CAAC;IAC3E,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IACjG,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,8HAA8H,CAAC;KAC3I,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACjD,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAClD,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACnD,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAClD,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACpD,qBAAqB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACjD,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;AACvE,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;AACvE,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACrE,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACpE,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAE7B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACjC,WAAW,CAAC,WAAW,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { Command } from "commander";
2
+ import { TokenStore } from "@digitalpresence/cliclaw-auth";
3
+ type TokenStoreFactory = () => TokenStore;
4
+ export declare function registerVercelCommands(program: Command, getTokenStore: TokenStoreFactory): void;
5
+ export {};
6
+ //# sourceMappingURL=vercel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vercel.d.ts","sourceRoot":"","sources":["../../src/commands/vercel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAS3D,KAAK,iBAAiB,GAAG,MAAM,UAAU,CAAC;AAE1C,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,iBAAiB,GAAG,IAAI,CA+N/F"}
@@ -0,0 +1,200 @@
1
+ import { handleWhoami, handleProjects, handleProject, handleProjectCreate, handleProjectDelete, handleDeployments, handleDeployment, handleRedeploy, handlePromote, handleDeploymentDelete, handleBuildLogs, handleDomains, handleDomain, handleDomainAdd, handleDomainRemove, handleDomainVerify, handleEnvs, handleEnvGet, handleEnvCreate, handleEnvUpdate, handleEnvDelete, } from "../vercel/handlers.js";
2
+ export function registerVercelCommands(program, getTokenStore) {
3
+ let cached = null;
4
+ function resolve() {
5
+ if (!cached)
6
+ cached = getTokenStore();
7
+ return cached;
8
+ }
9
+ const vercel = program.command("vercel").description("Vercel commands");
10
+ // --- Account ---
11
+ vercel
12
+ .command("whoami")
13
+ .description("Show authenticated user info")
14
+ .option("--account <name>", "Account name", "default")
15
+ .action(async (opts) => {
16
+ await handleWhoami(resolve(), opts.account);
17
+ });
18
+ // --- Projects ---
19
+ vercel
20
+ .command("projects")
21
+ .description("List projects")
22
+ .option("--max-results <n>", "Maximum projects to return", "20")
23
+ .option("--account <name>", "Account name", "default")
24
+ .action(async (opts) => {
25
+ await handleProjects(resolve(), opts.account, parseInt(opts.maxResults));
26
+ });
27
+ vercel
28
+ .command("project")
29
+ .description("Get project details")
30
+ .requiredOption("--project <id>", "Project ID")
31
+ .option("--account <name>", "Account name", "default")
32
+ .action(async (opts) => {
33
+ await handleProject(resolve(), opts.account, opts.project);
34
+ });
35
+ vercel
36
+ .command("project-create")
37
+ .description("Create a project")
38
+ .requiredOption("--name <name>", "Project name")
39
+ .option("--framework <framework>", "Framework preset")
40
+ .option("--git-repo <owner/repo>", "Git repository (owner/repo)")
41
+ .option("--account <name>", "Account name", "default")
42
+ .action(async (opts) => {
43
+ await handleProjectCreate(resolve(), opts.account, opts.name, opts.framework, opts.gitRepo);
44
+ });
45
+ vercel
46
+ .command("project-delete")
47
+ .description("Delete a project")
48
+ .requiredOption("--project <id>", "Project ID")
49
+ .option("--account <name>", "Account name", "default")
50
+ .action(async (opts) => {
51
+ await handleProjectDelete(resolve(), opts.account, opts.project);
52
+ });
53
+ // --- Deployments ---
54
+ vercel
55
+ .command("deployments")
56
+ .description("List deployments")
57
+ .option("--project <id>", "Project ID")
58
+ .option("--max-results <n>", "Maximum deployments to return", "20")
59
+ .option("--account <name>", "Account name", "default")
60
+ .action(async (opts) => {
61
+ await handleDeployments(resolve(), opts.account, opts.project, parseInt(opts.maxResults));
62
+ });
63
+ vercel
64
+ .command("deployment")
65
+ .description("Get deployment details")
66
+ .requiredOption("--deployment-id <id>", "Deployment ID")
67
+ .option("--account <name>", "Account name", "default")
68
+ .action(async (opts) => {
69
+ await handleDeployment(resolve(), opts.account, opts.deploymentId);
70
+ });
71
+ vercel
72
+ .command("redeploy")
73
+ .description("Redeploy an existing deployment")
74
+ .requiredOption("--deployment-id <id>", "Deployment ID")
75
+ .option("--target <target>", "Deployment target (production/preview)")
76
+ .option("--account <name>", "Account name", "default")
77
+ .action(async (opts) => {
78
+ await handleRedeploy(resolve(), opts.account, opts.deploymentId, opts.target);
79
+ });
80
+ vercel
81
+ .command("promote")
82
+ .description("Promote deployment to production")
83
+ .requiredOption("--project <id>", "Project ID")
84
+ .requiredOption("--deployment-id <id>", "Deployment ID")
85
+ .option("--account <name>", "Account name", "default")
86
+ .action(async (opts) => {
87
+ await handlePromote(resolve(), opts.account, opts.project, opts.deploymentId);
88
+ });
89
+ vercel
90
+ .command("deployment-delete")
91
+ .description("Delete a deployment")
92
+ .requiredOption("--deployment-id <id>", "Deployment ID")
93
+ .option("--account <name>", "Account name", "default")
94
+ .action(async (opts) => {
95
+ await handleDeploymentDelete(resolve(), opts.account, opts.deploymentId);
96
+ });
97
+ vercel
98
+ .command("build-logs")
99
+ .description("Get build logs for a deployment")
100
+ .requiredOption("--deployment-id <id>", "Deployment ID")
101
+ .option("--account <name>", "Account name", "default")
102
+ .action(async (opts) => {
103
+ await handleBuildLogs(resolve(), opts.account, opts.deploymentId);
104
+ });
105
+ // --- Domains ---
106
+ vercel
107
+ .command("domains")
108
+ .description("List domains")
109
+ .option("--max-results <n>", "Maximum domains to return", "20")
110
+ .option("--account <name>", "Account name", "default")
111
+ .action(async (opts) => {
112
+ await handleDomains(resolve(), opts.account, parseInt(opts.maxResults));
113
+ });
114
+ vercel
115
+ .command("domain")
116
+ .description("Get domain details")
117
+ .requiredOption("--domain <domain>", "Domain name")
118
+ .option("--account <name>", "Account name", "default")
119
+ .action(async (opts) => {
120
+ await handleDomain(resolve(), opts.account, opts.domain);
121
+ });
122
+ vercel
123
+ .command("domain-add")
124
+ .description("Add domain to project")
125
+ .requiredOption("--project <id>", "Project ID")
126
+ .requiredOption("--domain <domain>", "Domain name")
127
+ .option("--account <name>", "Account name", "default")
128
+ .action(async (opts) => {
129
+ await handleDomainAdd(resolve(), opts.account, opts.project, opts.domain);
130
+ });
131
+ vercel
132
+ .command("domain-remove")
133
+ .description("Remove domain from project")
134
+ .requiredOption("--project <id>", "Project ID")
135
+ .requiredOption("--domain <domain>", "Domain name")
136
+ .option("--account <name>", "Account name", "default")
137
+ .action(async (opts) => {
138
+ await handleDomainRemove(resolve(), opts.account, opts.project, opts.domain);
139
+ });
140
+ vercel
141
+ .command("domain-verify")
142
+ .description("Verify domain on project")
143
+ .requiredOption("--project <id>", "Project ID")
144
+ .requiredOption("--domain <domain>", "Domain name")
145
+ .option("--account <name>", "Account name", "default")
146
+ .action(async (opts) => {
147
+ await handleDomainVerify(resolve(), opts.account, opts.project, opts.domain);
148
+ });
149
+ // --- Environment Variables ---
150
+ vercel
151
+ .command("envs")
152
+ .description("List environment variables")
153
+ .requiredOption("--project <id>", "Project ID")
154
+ .option("--account <name>", "Account name", "default")
155
+ .action(async (opts) => {
156
+ await handleEnvs(resolve(), opts.account, opts.project);
157
+ });
158
+ vercel
159
+ .command("env")
160
+ .description("Get environment variable")
161
+ .requiredOption("--project <id>", "Project ID")
162
+ .requiredOption("--env-id <id>", "Environment variable ID")
163
+ .option("--account <name>", "Account name", "default")
164
+ .action(async (opts) => {
165
+ await handleEnvGet(resolve(), opts.account, opts.project, opts.envId);
166
+ });
167
+ vercel
168
+ .command("env-create")
169
+ .description("Create environment variable")
170
+ .requiredOption("--project <id>", "Project ID")
171
+ .requiredOption("--key <key>", "Variable key")
172
+ .requiredOption("--value <value>", "Variable value")
173
+ .requiredOption("--target <targets>", "Comma-separated deployment targets")
174
+ .option("--type <type>", "Variable type", "encrypted")
175
+ .option("--account <name>", "Account name", "default")
176
+ .action(async (opts) => {
177
+ const target = opts.target.split(",").map((t) => t.trim());
178
+ await handleEnvCreate(resolve(), opts.account, opts.project, opts.key, opts.value, target, opts.type);
179
+ });
180
+ vercel
181
+ .command("env-update")
182
+ .description("Update environment variable value")
183
+ .requiredOption("--project <id>", "Project ID")
184
+ .requiredOption("--env-id <id>", "Environment variable ID")
185
+ .requiredOption("--value <value>", "New variable value")
186
+ .option("--account <name>", "Account name", "default")
187
+ .action(async (opts) => {
188
+ await handleEnvUpdate(resolve(), opts.account, opts.project, opts.envId, opts.value);
189
+ });
190
+ vercel
191
+ .command("env-delete")
192
+ .description("Delete environment variable")
193
+ .requiredOption("--project <id>", "Project ID")
194
+ .requiredOption("--env-id <id>", "Environment variable ID")
195
+ .option("--account <name>", "Account name", "default")
196
+ .action(async (opts) => {
197
+ await handleEnvDelete(resolve(), opts.account, opts.project, opts.envId);
198
+ });
199
+ }
200
+ //# sourceMappingURL=vercel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vercel.js","sourceRoot":"","sources":["../../src/commands/vercel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TokenStore } from "@digitalpresence/cliclaw-auth";
2
+ export declare function getToken(tokenStore: TokenStore, account: string): string;
3
+ export declare function vercelFetch(token: string, path: string, options?: RequestInit, teamId?: string): Promise<unknown>;
4
+ export declare function vercelFetchPaginated(token: string, path: string, arrayKey: string, maxResults: number, teamId?: string): Promise<unknown[]>;
5
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/vercel/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAK3D,wBAAgB,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAOxE;AAED,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,WAAgB,EACzB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAqBlB;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,EAAE,CAAC,CAwCpB"}
@@ -0,0 +1,68 @@
1
+ import { outputAuthRequired, outputError } from "../lib/output.js";
2
+ const VERCEL_API = "https://api.vercel.com";
3
+ export function getToken(tokenStore, account) {
4
+ const tokenKey = `vercel:${account}`;
5
+ const creds = tokenStore.get(tokenKey);
6
+ if (!creds?.access_token) {
7
+ outputAuthRequired("vercel");
8
+ }
9
+ return creds.access_token;
10
+ }
11
+ export async function vercelFetch(token, path, options = {}, teamId) {
12
+ let url = path.startsWith("http") ? path : `${VERCEL_API}${path}`;
13
+ if (teamId) {
14
+ const separator = url.includes("?") ? "&" : "?";
15
+ url = `${url}${separator}teamId=${teamId}`;
16
+ }
17
+ const res = await fetch(url, {
18
+ ...options,
19
+ headers: {
20
+ Authorization: `Bearer ${token}`,
21
+ Accept: "application/json",
22
+ ...options.headers,
23
+ },
24
+ });
25
+ if (!res.ok) {
26
+ const body = await res.text().catch(() => "");
27
+ outputError("vercel_api_error", `${res.status} ${res.statusText}: ${body}`);
28
+ }
29
+ return res.json();
30
+ }
31
+ export async function vercelFetchPaginated(token, path, arrayKey, maxResults, teamId) {
32
+ const results = [];
33
+ const separator = path.includes("?") ? "&" : "?";
34
+ let url = `${path}${separator}limit=${Math.min(maxResults, 100)}`;
35
+ while (url && results.length < maxResults) {
36
+ let fullUrl = url.startsWith("http") ? url : `${VERCEL_API}${url}`;
37
+ if (teamId) {
38
+ const sep = fullUrl.includes("?") ? "&" : "?";
39
+ fullUrl = `${fullUrl}${sep}teamId=${teamId}`;
40
+ }
41
+ const res = await fetch(fullUrl, {
42
+ headers: {
43
+ Authorization: `Bearer ${token}`,
44
+ Accept: "application/json",
45
+ },
46
+ });
47
+ if (!res.ok) {
48
+ const body = await res.text().catch(() => "");
49
+ outputError("vercel_api_error", `${res.status} ${res.statusText}: ${body}`);
50
+ }
51
+ const data = (await res.json());
52
+ const items = data[arrayKey];
53
+ results.push(...(Array.isArray(items) ? items : []));
54
+ const pagination = data.pagination;
55
+ if (pagination?.next) {
56
+ const basePath = url.split("?")[0];
57
+ const existingParams = url.includes("?") ? url.split("?")[1] : "";
58
+ const params = new URLSearchParams(existingParams);
59
+ params.set("until", String(pagination.next));
60
+ url = `${basePath}?${params.toString()}`;
61
+ }
62
+ else {
63
+ url = null;
64
+ }
65
+ }
66
+ return results.slice(0, maxResults);
67
+ }
68
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/vercel/api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEnE,MAAM,UAAU,GAAG,wBAAwB,CAAC;AAE5C,MAAM,UAAU,QAAQ,CAAC,UAAsB,EAAE,OAAe;IAC9D,MAAM,QAAQ,GAAG,UAAU,OAAO,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC;QACzB,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,KAAK,CAAC,YAAsB,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAa,EACb,IAAY,EACZ,UAAuB,EAAE,EACzB,MAAe;IAEf,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC;IAClE,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAChD,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,UAAU,MAAM,EAAE,CAAC;IAC7C,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,GAAG,OAAO;QACV,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,KAAK,EAAE;YAChC,MAAM,EAAE,kBAAkB;YAC1B,GAAG,OAAO,CAAC,OAAO;SACnB;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,WAAW,CAAC,kBAAkB,EAAE,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAa,EACb,IAAY,EACZ,QAAgB,EAChB,UAAkB,EAClB,MAAe;IAEf,MAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACjD,IAAI,GAAG,GAAkB,GAAG,IAAI,GAAG,SAAS,SAAS,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC;IAEjF,OAAO,GAAG,IAAI,OAAO,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;QAC1C,IAAI,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,GAAG,EAAE,CAAC;QACnE,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9C,OAAO,GAAG,GAAG,OAAO,GAAG,GAAG,UAAU,MAAM,EAAE,CAAC;QAC/C,CAAC;QACD,MAAM,GAAG,GAAa,MAAM,KAAK,CAAC,OAAO,EAAE;YACzC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;gBAChC,MAAM,EAAE,kBAAkB;aAC3B;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9C,WAAW,CAAC,kBAAkB,EAAE,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAErD,MAAM,UAAU,GAAG,IAAI,CAAC,UAA2C,CAAC;QACpE,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAW,GAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,cAAc,GAAW,GAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,MAAM,MAAM,GAAoB,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;YACpE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,GAAG,GAAG,GAAG,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,IAAI,CAAC;QACb,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { TokenStore } from "@digitalpresence/cliclaw-auth";
2
+ export declare function handleWhoami(tokenStore: TokenStore, account: string): Promise<void>;
3
+ export declare function handleProjects(tokenStore: TokenStore, account: string, maxResults: number): Promise<void>;
4
+ export declare function handleProject(tokenStore: TokenStore, account: string, projectId: string): Promise<void>;
5
+ export declare function handleProjectCreate(tokenStore: TokenStore, account: string, name: string, framework?: string, gitRepo?: string): Promise<void>;
6
+ export declare function handleProjectDelete(tokenStore: TokenStore, account: string, projectId: string): Promise<void>;
7
+ export declare function handleDeployments(tokenStore: TokenStore, account: string, projectId?: string, maxResults?: number): Promise<void>;
8
+ export declare function handleDeployment(tokenStore: TokenStore, account: string, deploymentId: string): Promise<void>;
9
+ export declare function handleRedeploy(tokenStore: TokenStore, account: string, deploymentId: string, target?: string): Promise<void>;
10
+ export declare function handlePromote(tokenStore: TokenStore, account: string, projectId: string, deploymentId: string): Promise<void>;
11
+ export declare function handleDeploymentDelete(tokenStore: TokenStore, account: string, deploymentId: string): Promise<void>;
12
+ export declare function handleBuildLogs(tokenStore: TokenStore, account: string, deploymentId: string): Promise<void>;
13
+ export declare function handleDomains(tokenStore: TokenStore, account: string, maxResults?: number): Promise<void>;
14
+ export declare function handleDomain(tokenStore: TokenStore, account: string, domain: string): Promise<void>;
15
+ export declare function handleDomainAdd(tokenStore: TokenStore, account: string, projectId: string, domain: string): Promise<void>;
16
+ export declare function handleDomainRemove(tokenStore: TokenStore, account: string, projectId: string, domain: string): Promise<void>;
17
+ export declare function handleDomainVerify(tokenStore: TokenStore, account: string, projectId: string, domain: string): Promise<void>;
18
+ export declare function handleEnvs(tokenStore: TokenStore, account: string, projectId: string): Promise<void>;
19
+ export declare function handleEnvGet(tokenStore: TokenStore, account: string, projectId: string, envId: string): Promise<void>;
20
+ export declare function handleEnvCreate(tokenStore: TokenStore, account: string, projectId: string, key: string, value: string, target: string[], type?: string): Promise<void>;
21
+ export declare function handleEnvUpdate(tokenStore: TokenStore, account: string, projectId: string, envId: string, value: string): Promise<void>;
22
+ export declare function handleEnvDelete(tokenStore: TokenStore, account: string, projectId: string, envId: string): Promise<void>;
23
+ //# sourceMappingURL=handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/vercel/handlers.ts"],"names":[],"mappings":"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"}