@synap-core/cli 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/README.md +250 -0
  2. package/dist/commands/connect.d.ts +11 -0
  3. package/dist/commands/connect.js +96 -0
  4. package/dist/commands/connect.js.map +1 -0
  5. package/dist/commands/finish.d.ts +16 -0
  6. package/dist/commands/finish.js +82 -0
  7. package/dist/commands/finish.js.map +1 -0
  8. package/dist/commands/init.d.ts +21 -0
  9. package/dist/commands/init.js +865 -0
  10. package/dist/commands/init.js.map +1 -0
  11. package/dist/commands/security-audit.d.ts +12 -0
  12. package/dist/commands/security-audit.js +100 -0
  13. package/dist/commands/security-audit.js.map +1 -0
  14. package/dist/commands/status.d.ts +6 -0
  15. package/dist/commands/status.js +216 -0
  16. package/dist/commands/status.js.map +1 -0
  17. package/dist/commands/update.d.ts +6 -0
  18. package/dist/commands/update.js +34 -0
  19. package/dist/commands/update.js.map +1 -0
  20. package/dist/index.d.ts +16 -0
  21. package/dist/index.js +138 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/lib/auth.d.ts +57 -0
  24. package/dist/lib/auth.js +322 -0
  25. package/dist/lib/auth.js.map +1 -0
  26. package/dist/lib/hardening.d.ts +18 -0
  27. package/dist/lib/hardening.js +203 -0
  28. package/dist/lib/hardening.js.map +1 -0
  29. package/dist/lib/openclaw.d.ts +28 -0
  30. package/dist/lib/openclaw.js +106 -0
  31. package/dist/lib/openclaw.js.map +1 -0
  32. package/dist/lib/pod.d.ts +91 -0
  33. package/dist/lib/pod.js +305 -0
  34. package/dist/lib/pod.js.map +1 -0
  35. package/dist/lib/seed.d.ts +13 -0
  36. package/dist/lib/seed.js +135 -0
  37. package/dist/lib/seed.js.map +1 -0
  38. package/dist/lib/templates.d.ts +11 -0
  39. package/dist/lib/templates.js +13 -0
  40. package/dist/lib/templates.js.map +1 -0
  41. package/dist/templates/agent-os.json +3090 -0
  42. package/dist/utils/logger.d.ts +11 -0
  43. package/dist/utils/logger.js +31 -0
  44. package/dist/utils/logger.js.map +1 -0
  45. package/package.json +45 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * synap security-audit
3
+ *
4
+ * The single most valuable command. Checks OpenClaw config against
5
+ * 9 known vulnerability patterns and security best practices.
6
+ */
7
+ interface AuditOptions {
8
+ fix?: boolean;
9
+ json?: boolean;
10
+ }
11
+ export declare function securityAudit(opts: AuditOptions): Promise<void>;
12
+ export {};
@@ -0,0 +1,100 @@
1
+ /**
2
+ * synap security-audit
3
+ *
4
+ * The single most valuable command. Checks OpenClaw config against
5
+ * 9 known vulnerability patterns and security best practices.
6
+ */
7
+ import { log, banner, scoreColor } from "../utils/logger.js";
8
+ import { detectOpenClaw } from "../lib/openclaw.js";
9
+ import { runSecurityChecks, computeScore } from "../lib/hardening.js";
10
+ import chalk from "chalk";
11
+ export async function securityAudit(opts) {
12
+ if (!opts.json)
13
+ banner();
14
+ // Detect OpenClaw
15
+ const oc = detectOpenClaw();
16
+ if (!oc.found) {
17
+ log.error("OpenClaw not found at ~/.openclaw");
18
+ log.dim("Install OpenClaw first: npm i -g openclaw");
19
+ process.exit(1);
20
+ }
21
+ if (!opts.json) {
22
+ log.heading("Security Audit");
23
+ if (oc.version)
24
+ log.info(`OpenClaw v${oc.version}`);
25
+ log.blank();
26
+ }
27
+ // Run checks
28
+ const checks = runSecurityChecks(oc.version);
29
+ // JSON output
30
+ if (opts.json) {
31
+ console.log(JSON.stringify({
32
+ score: computeScore(checks),
33
+ version: oc.version,
34
+ checks: checks.map((c) => ({
35
+ id: c.id,
36
+ name: c.name,
37
+ severity: c.severity,
38
+ passed: c.passed,
39
+ message: c.message,
40
+ fixable: c.fixable,
41
+ })),
42
+ }, null, 2));
43
+ return;
44
+ }
45
+ // Display results
46
+ const passed = checks.filter((c) => c.passed);
47
+ const failed = checks.filter((c) => !c.passed);
48
+ for (const check of checks) {
49
+ if (check.passed) {
50
+ log.success(check.name);
51
+ }
52
+ else {
53
+ const sev = check.severity === "critical"
54
+ ? chalk.red.bold("CRITICAL")
55
+ : check.severity === "high"
56
+ ? chalk.red("HIGH")
57
+ : check.severity === "medium"
58
+ ? chalk.yellow("MEDIUM")
59
+ : chalk.dim("LOW");
60
+ log.error(`${check.name} [${sev}]`);
61
+ log.dim(check.message);
62
+ }
63
+ }
64
+ // Score
65
+ const score = computeScore(checks);
66
+ log.blank();
67
+ console.log(` Score: ${scoreColor(score)} (${passed.length}/${checks.length} passed)`);
68
+ // Auto-fix
69
+ if (failed.length > 0) {
70
+ const fixable = failed.filter((c) => c.fixable && c.fix);
71
+ if (fixable.length > 0) {
72
+ log.blank();
73
+ if (opts.fix) {
74
+ log.heading("Applying fixes...");
75
+ for (const check of fixable) {
76
+ check.fix();
77
+ log.success(`Fixed: ${check.name}`);
78
+ }
79
+ log.blank();
80
+ log.info("Re-run audit to verify: synap security-audit");
81
+ }
82
+ else {
83
+ log.info(`${fixable.length} issue(s) can be auto-fixed. Run: synap security-audit --fix`);
84
+ }
85
+ }
86
+ const unfixable = failed.filter((c) => !c.fixable);
87
+ if (unfixable.length > 0 && !opts.fix) {
88
+ log.blank();
89
+ log.warn("Manual action required:");
90
+ for (const check of unfixable) {
91
+ log.dim(` ${check.name}: ${check.message}`);
92
+ }
93
+ }
94
+ }
95
+ else {
96
+ log.blank();
97
+ log.success("All checks passed. Your OpenClaw deployment is secure.");
98
+ }
99
+ }
100
+ //# sourceMappingURL=security-audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security-audit.js","sourceRoot":"","sources":["../../src/commands/security-audit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * synap status
3
+ *
4
+ * Show Synap pod + OpenClaw health at a glance.
5
+ */
6
+ export declare function status(): Promise<void>;
@@ -0,0 +1,216 @@
1
+ /**
2
+ * synap status
3
+ *
4
+ * Show Synap pod + OpenClaw health at a glance.
5
+ */
6
+ import chalk from "chalk";
7
+ import { readFileSync } from "fs";
8
+ import { fileURLToPath } from "url";
9
+ import { dirname, join } from "path";
10
+ import { log, banner } from "../utils/logger.js";
11
+ import { detectOpenClaw } from "../lib/openclaw.js";
12
+ import { checkPodHealth, getLocalPodConfig } from "../lib/pod.js";
13
+ import { runSecurityChecks, computeScore } from "../lib/hardening.js";
14
+ import { isLoggedIn, getStoredToken, isTokenLocallyExpired, getOpenClawRemoteStatus } from "../lib/auth.js";
15
+ const __filename = fileURLToPath(import.meta.url);
16
+ const __dirname = dirname(__filename);
17
+ function getCliVersion() {
18
+ try {
19
+ const pkg = JSON.parse(readFileSync(join(__dirname, "..", "..", "package.json"), "utf-8"));
20
+ return pkg.version ?? "0.1.0";
21
+ }
22
+ catch {
23
+ return "0.1.0";
24
+ }
25
+ }
26
+ function timeAgo(isoDate) {
27
+ const diff = Date.now() - new Date(isoDate).getTime();
28
+ const minutes = Math.floor(diff / 60_000);
29
+ if (minutes < 1)
30
+ return "just now";
31
+ if (minutes < 60)
32
+ return `${minutes} minute${minutes === 1 ? "" : "s"} ago`;
33
+ const hours = Math.floor(minutes / 60);
34
+ if (hours < 24)
35
+ return `${hours} hour${hours === 1 ? "" : "s"} ago`;
36
+ const days = Math.floor(hours / 24);
37
+ return `${days} day${days === 1 ? "" : "s"} ago`;
38
+ }
39
+ export async function status() {
40
+ banner();
41
+ // CLI version + update hint
42
+ const cliVersion = getCliVersion();
43
+ log.info(`CLI v${cliVersion} ${chalk.dim("Update: npm update -g @synap/cli")}`);
44
+ // Hoist creds so all sections can use it
45
+ const creds = getStoredToken();
46
+ // Auth status
47
+ log.heading("Account");
48
+ let loggedIn = false;
49
+ if (creds) {
50
+ const authStatus = await isLoggedIn();
51
+ if (authStatus.valid) {
52
+ loggedIn = true;
53
+ log.success(`Logged in as ${authStatus.email}`);
54
+ log.dim(`User ID: ${authStatus.userId}`);
55
+ log.dim(`Token expires: ${new Date(creds.expiresAt).toLocaleDateString()}`);
56
+ }
57
+ else if (isTokenLocallyExpired(creds)) {
58
+ log.warn("Session expired — run: synap login");
59
+ log.dim("On a server? Use: synap login --token <token>");
60
+ }
61
+ else {
62
+ log.warn("Could not reach Synap (network error?)");
63
+ log.dim("Run: synap status (when online)");
64
+ }
65
+ }
66
+ else {
67
+ log.dim("Not logged in. Run: synap login");
68
+ }
69
+ // OpenClaw status
70
+ log.heading("OpenClaw");
71
+ const oc = detectOpenClaw();
72
+ let skillInstalled = false;
73
+ const localConfig = getLocalPodConfig();
74
+ if (oc.found) {
75
+ // Local OpenClaw running
76
+ log.info(`Version: ${oc.version ?? "unknown"}`);
77
+ log.info(`Gateway: ${oc.gatewayRunning ? chalk.green("running") : chalk.dim("stopped")} (port ${oc.gatewayPort ?? 18789})`);
78
+ const checks = runSecurityChecks(oc.version);
79
+ const score = computeScore(checks);
80
+ const passed = checks.filter((c) => c.passed).length;
81
+ log.info(`Security: ${score === "A" ? chalk.green(score) : score === "B" ? chalk.yellow(score) : chalk.red(score)} (${passed}/${checks.length})`);
82
+ }
83
+ else if (localConfig?.podId && creds) {
84
+ // Not local — check if provisioned on pod server
85
+ log.dim("Not running locally — checking pod server...");
86
+ const remoteStatus = await getOpenClawRemoteStatus(creds.token, localConfig.podId);
87
+ if (!remoteStatus || remoteStatus.status === "not_provisioned") {
88
+ log.dim("Not provisioned on pod server");
89
+ log.dim("Enable via: synap init");
90
+ }
91
+ else if (remoteStatus.status === "provisioning") {
92
+ log.info(`Pod server: ${chalk.yellow("provisioning")} — still starting up, check back in a few minutes`);
93
+ log.dim("Run synap status again to check progress");
94
+ }
95
+ else if (remoteStatus.status === "running") {
96
+ log.success(`Pod server: ${chalk.green("running")} — OpenClaw is active on your pod`);
97
+ log.dim("To use locally: npm i -g openclaw && openclaw onboard");
98
+ log.dim(`Then: synap finish --pod-url ${localConfig.podUrl}`);
99
+ }
100
+ else if (remoteStatus.status === "error") {
101
+ log.warn(`Pod server: ${chalk.red("error")} — provisioning failed`);
102
+ log.dim("Re-provision via: synap init");
103
+ }
104
+ }
105
+ else {
106
+ log.dim("Not installed");
107
+ if (!creds)
108
+ log.dim("Login to check pod server status: synap login");
109
+ }
110
+ // Pod status
111
+ log.heading("Synap Pod");
112
+ const ocConfig = oc.found
113
+ ? oc.config?.synap
114
+ : null;
115
+ const podUrl = ocConfig?.podUrl ??
116
+ localConfig?.podUrl ??
117
+ process.env.SYNAP_POD_URL;
118
+ if (!podUrl) {
119
+ log.dim("Not connected. Run: synap init");
120
+ }
121
+ else {
122
+ const pod = await checkPodHealth(podUrl);
123
+ log.info(`URL: ${podUrl}`);
124
+ log.info(`Health: ${pod.healthy ? chalk.green("healthy") : chalk.red("unreachable")}`);
125
+ if (pod.version)
126
+ log.info(`Version: ${pod.version}`);
127
+ if (localConfig?.workspaceId)
128
+ log.dim(`Workspace: ${localConfig.workspaceId}`);
129
+ }
130
+ // Workspace Config section
131
+ log.heading("Workspace Config");
132
+ if (localConfig) {
133
+ log.info(`Workspace ID: ${localConfig.workspaceId}`);
134
+ log.info(`Agent User: ${localConfig.agentUserId}`);
135
+ log.info(`Saved: ${timeAgo(localConfig.savedAt)}`);
136
+ }
137
+ else {
138
+ log.dim("No local config — run: synap init");
139
+ }
140
+ // Intelligence Service
141
+ log.heading("Intelligence Service");
142
+ if (podUrl) {
143
+ try {
144
+ const isRes = await fetch(`${podUrl}/api/provision/status`, {
145
+ signal: AbortSignal.timeout(5000),
146
+ }).catch(() => null);
147
+ if (isRes?.ok) {
148
+ const isData = (await isRes.json());
149
+ const svc = isData?.intelligenceService;
150
+ if (svc?.status === "active") {
151
+ log.success(`Active${svc.url ? ` (${svc.url})` : ""}`);
152
+ if (isData.credentialsValid === false) {
153
+ log.warn("Credentials invalid — reprovision from Browser Settings");
154
+ }
155
+ }
156
+ else if (svc) {
157
+ log.warn(`Status: ${svc.status}`);
158
+ }
159
+ else {
160
+ log.dim("Not provisioned");
161
+ if (creds) {
162
+ log.dim("Run 'synap init' to provision, or enable in Browser Settings > Add-ons");
163
+ }
164
+ else {
165
+ log.dim("Sign in with 'synap login' then run 'synap init' to provision");
166
+ }
167
+ }
168
+ }
169
+ else {
170
+ log.dim("Could not check (pod may not support this endpoint)");
171
+ }
172
+ }
173
+ catch {
174
+ log.dim("Could not check IS status");
175
+ }
176
+ }
177
+ else {
178
+ log.dim("No pod connected");
179
+ }
180
+ // Synap skill
181
+ log.heading("Synap Skill");
182
+ if (oc.found && oc.skillsDir) {
183
+ const { existsSync } = await import("fs");
184
+ const skillPath = join(oc.skillsDir, "synap");
185
+ if (existsSync(skillPath)) {
186
+ skillInstalled = true;
187
+ log.success("Installed");
188
+ }
189
+ else {
190
+ log.dim("Not installed. Run: openclaw skills install synap");
191
+ }
192
+ }
193
+ else {
194
+ log.dim("Cannot check — OpenClaw not detected");
195
+ }
196
+ // Next Steps section
197
+ log.heading("Next Steps");
198
+ if (!loggedIn) {
199
+ log.info("Login: synap login");
200
+ }
201
+ else if (!localConfig) {
202
+ log.info("Connect to a pod: synap init");
203
+ }
204
+ else if (!oc.found) {
205
+ log.info("OpenClaw not detected. Install:");
206
+ log.dim(" npm i -g openclaw OR enable addon via: synap init");
207
+ }
208
+ else if (!skillInstalled) {
209
+ log.info("Install skill: synap finish OR openclaw skills install synap");
210
+ }
211
+ else {
212
+ log.dim("All set. Use synap update to refresh the skill.");
213
+ }
214
+ log.blank();
215
+ }
216
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * synap update
3
+ *
4
+ * Update the synap skill and check for CLI updates.
5
+ */
6
+ export declare function update(): Promise<void>;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * synap update
3
+ *
4
+ * Update the synap skill and check for CLI updates.
5
+ */
6
+ import ora from "ora";
7
+ import { log, banner } from "../utils/logger.js";
8
+ import { detectOpenClaw } from "../lib/openclaw.js";
9
+ import { installSynapSkill } from "../lib/pod.js";
10
+ export async function update() {
11
+ banner();
12
+ log.heading("Update");
13
+ // Update skill
14
+ const oc = detectOpenClaw();
15
+ if (oc.found) {
16
+ const spinner = ora("Updating synap skill...").start();
17
+ try {
18
+ installSynapSkill();
19
+ spinner.succeed("Synap skill updated");
20
+ }
21
+ catch (err) {
22
+ spinner.fail(err instanceof Error ? err.message : "Update failed");
23
+ }
24
+ }
25
+ else {
26
+ log.dim("OpenClaw not detected — skipping skill update");
27
+ }
28
+ // Check CLI version
29
+ log.blank();
30
+ log.info("To update the CLI itself:");
31
+ log.dim(" npm update -g @synap/cli");
32
+ log.blank();
33
+ }
34
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,MAAM,EAAE,CAAC;IACT,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtB,eAAe;IACf,MAAM,EAAE,GAAG,cAAc,EAAE,CAAC;IAC5B,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,iBAAiB,EAAE,CAAC;YACpB,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC3D,CAAC;IAED,oBAAoB;IACpB,GAAG,CAAC,KAAK,EAAE,CAAC;IACZ,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACtC,GAAG,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAEtC,GAAG,CAAC,KAAK,EAAE,CAAC;AACd,CAAC"}
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * @synap/cli — Connect OpenClaw to sovereign knowledge infrastructure
4
+ *
5
+ * Usage:
6
+ * npx @synap/cli init Full setup: detect, harden, connect, install
7
+ * npx @synap/cli connect Connect OpenClaw to an existing Synap pod
8
+ * npx @synap/cli security-audit Check OpenClaw for known vulnerabilities
9
+ * npx @synap/cli status Show pod + OpenClaw health
10
+ * npx @synap/cli update Update skill + check for CLI updates
11
+ *
12
+ * Or install globally:
13
+ * npm i -g @synap/cli
14
+ * synap init
15
+ */
16
+ export {};
package/dist/index.js ADDED
@@ -0,0 +1,138 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * @synap/cli — Connect OpenClaw to sovereign knowledge infrastructure
4
+ *
5
+ * Usage:
6
+ * npx @synap/cli init Full setup: detect, harden, connect, install
7
+ * npx @synap/cli connect Connect OpenClaw to an existing Synap pod
8
+ * npx @synap/cli security-audit Check OpenClaw for known vulnerabilities
9
+ * npx @synap/cli status Show pod + OpenClaw health
10
+ * npx @synap/cli update Update skill + check for CLI updates
11
+ *
12
+ * Or install globally:
13
+ * npm i -g @synap/cli
14
+ * synap init
15
+ */
16
+ import { Command } from "commander";
17
+ import { readFileSync } from "fs";
18
+ import { fileURLToPath } from "url";
19
+ import { dirname, join } from "path";
20
+ const __filename = fileURLToPath(import.meta.url);
21
+ const __dirname = dirname(__filename);
22
+ let version = "0.1.0";
23
+ try {
24
+ const pkg = JSON.parse(readFileSync(join(__dirname, "..", "package.json"), "utf-8"));
25
+ version = pkg.version;
26
+ }
27
+ catch {
28
+ // use default
29
+ }
30
+ const program = new Command();
31
+ program
32
+ .name("synap")
33
+ .description("Synap CLI — connect OpenClaw to sovereign knowledge infrastructure")
34
+ .version(version);
35
+ program
36
+ .command("init")
37
+ .description("Full setup: detect OpenClaw, harden security, connect to Synap pod, install skill")
38
+ .option("--pod-url <url>", "Synap pod URL (skip pod choice prompt)")
39
+ .option("--api-key <key>", "Hub Protocol API key (skip key generation)")
40
+ .option("--skip-security", "Skip security hardening step")
41
+ .option("--skip-is", "Skip Intelligence Service provider setup")
42
+ .action(async (opts) => {
43
+ const { init } = await import("./commands/init.js");
44
+ await init(opts);
45
+ });
46
+ program
47
+ .command("finish")
48
+ .description("Complete setup after OpenClaw finishes provisioning")
49
+ .action(async () => {
50
+ const { finish } = await import("./commands/finish.js");
51
+ await finish();
52
+ });
53
+ program
54
+ .command("connect")
55
+ .description("Connect OpenClaw to an existing Synap pod")
56
+ .option("--pod-url <url>", "Synap pod URL")
57
+ .option("--api-key <key>", "Hub Protocol API key")
58
+ .action(async (opts) => {
59
+ const { connect } = await import("./commands/connect.js");
60
+ await connect(opts);
61
+ });
62
+ program
63
+ .command("security-audit")
64
+ .alias("audit")
65
+ .description("Check OpenClaw configuration for known vulnerabilities")
66
+ .option("--fix", "Auto-fix issues where possible")
67
+ .option("--json", "Output results as JSON")
68
+ .action(async (opts) => {
69
+ const { securityAudit } = await import("./commands/security-audit.js");
70
+ await securityAudit(opts);
71
+ });
72
+ program
73
+ .command("status")
74
+ .description("Show Synap pod and OpenClaw health status")
75
+ .action(async () => {
76
+ const { status } = await import("./commands/status.js");
77
+ await status();
78
+ });
79
+ program
80
+ .command("update")
81
+ .description("Update synap skill and check for CLI updates")
82
+ .action(async () => {
83
+ const { update } = await import("./commands/update.js");
84
+ await update();
85
+ });
86
+ program
87
+ .command("login")
88
+ .description("Sign in to your Synap account via browser")
89
+ .option("--token <token>", "Provide a Synap API token directly (for headless/server use)")
90
+ .action(async (opts) => {
91
+ const chalk = (await import("chalk")).default;
92
+ const ora = (await import("ora")).default;
93
+ const { login, loginWithToken, isLoggedIn } = await import("./lib/auth.js");
94
+ // Headless path: token provided directly
95
+ if (opts.token) {
96
+ const spinner = ora("Validating token...").start();
97
+ const creds = await loginWithToken(opts.token);
98
+ if (creds) {
99
+ spinner.succeed(`Authenticated as ${creds.email}`);
100
+ }
101
+ else {
102
+ spinner.fail("Token is invalid or expired. Get a token at https://synap.live/account/tokens");
103
+ }
104
+ return;
105
+ }
106
+ const status = await isLoggedIn();
107
+ if (status.valid) {
108
+ console.log(chalk.green(` Already logged in as ${status.email}`));
109
+ return;
110
+ }
111
+ console.log(chalk.blue(" Opening browser to sign in..."));
112
+ const spinner = ora("Waiting for authentication...").start();
113
+ const creds = await login();
114
+ if (creds) {
115
+ spinner.succeed(`Authenticated as ${creds.email}`);
116
+ }
117
+ else {
118
+ spinner.fail("Authentication timed out. Try: synap login --token <token>");
119
+ console.log(chalk.dim(" Get a token at: https://synap.live/account/tokens"));
120
+ }
121
+ });
122
+ program
123
+ .command("logout")
124
+ .description("Sign out and remove stored credentials")
125
+ .action(async () => {
126
+ const chalk = (await import("chalk")).default;
127
+ const { logout, getStoredToken } = await import("./lib/auth.js");
128
+ const creds = getStoredToken();
129
+ logout();
130
+ if (creds) {
131
+ console.log(chalk.green(` Logged out (was: ${creds.email})`));
132
+ }
133
+ else {
134
+ console.log(chalk.dim(" Not logged in"));
135
+ }
136
+ });
137
+ program.parse();
138
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}