@vibecodr/cli 1.0.7 → 1.0.9

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 (52) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/README.md +31 -11
  3. package/dist/app/command-registry.d.ts +13 -0
  4. package/dist/app/command-registry.d.ts.map +1 -0
  5. package/dist/app/command-registry.js +54 -0
  6. package/dist/app/command-registry.js.map +1 -0
  7. package/dist/app/help.d.ts +5 -0
  8. package/dist/app/help.d.ts.map +1 -0
  9. package/dist/app/help.js +158 -0
  10. package/dist/app/help.js.map +1 -0
  11. package/dist/bin/vibecodr-mcp.js +82 -89
  12. package/dist/bin/vibecodr-mcp.js.map +1 -1
  13. package/dist/commands/context.d.ts +2 -0
  14. package/dist/commands/context.d.ts.map +1 -1
  15. package/dist/commands/doctor.d.ts.map +1 -1
  16. package/dist/commands/doctor.js +81 -2
  17. package/dist/commands/doctor.js.map +1 -1
  18. package/dist/commands/feedback.d.ts +3 -0
  19. package/dist/commands/feedback.d.ts.map +1 -0
  20. package/dist/commands/feedback.js +92 -0
  21. package/dist/commands/feedback.js.map +1 -0
  22. package/dist/commands/install.d.ts.map +1 -1
  23. package/dist/commands/install.js +14 -0
  24. package/dist/commands/install.js.map +1 -1
  25. package/dist/commands/login.d.ts.map +1 -1
  26. package/dist/commands/login.js +29 -4
  27. package/dist/commands/login.js.map +1 -1
  28. package/dist/commands/logout.d.ts.map +1 -1
  29. package/dist/commands/logout.js +25 -3
  30. package/dist/commands/logout.js.map +1 -1
  31. package/dist/commands/mcp.d.ts +3 -0
  32. package/dist/commands/mcp.d.ts.map +1 -0
  33. package/dist/commands/mcp.js +26 -0
  34. package/dist/commands/mcp.js.map +1 -0
  35. package/dist/commands/status.d.ts.map +1 -1
  36. package/dist/commands/status.js +78 -6
  37. package/dist/commands/status.js.map +1 -1
  38. package/dist/commands/tools.js +2 -2
  39. package/dist/commands/tools.js.map +1 -1
  40. package/dist/legacy/cli/run.js +36 -1
  41. package/dist/legacy/cli/run.js.map +1 -1
  42. package/dist/legacy/core/version.d.ts +2 -2
  43. package/dist/legacy/core/version.js +1 -1
  44. package/docs/API-CONTRACT.md +18 -1
  45. package/docs/RELEASE-CHECKLIST.md +11 -7
  46. package/docs/SECURITY.md +10 -6
  47. package/docs/VALIDATION-MATRIX.md +5 -5
  48. package/docs/architecture.md +9 -6
  49. package/docs/auth.md +15 -7
  50. package/docs/commands.md +44 -18
  51. package/docs/install.md +5 -5
  52. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"vibecodr-mcp.js","sourceRoot":"","sources":["../../src/bin/vibecodr-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vibecodr-mcp.js","sourceRoot":"","sources":["../../src/bin/vibecodr-mcp.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Output } from "../cli/output.js";
2
2
  import { TokenManager } from "../auth/token-manager.js";
3
+ import type { CredentialBroker } from "../auth/credential-broker.js";
3
4
  import { ConfigStore } from "../storage/config-store.js";
4
5
  import { SecretStore } from "../storage/secret-store.js";
5
6
  import { McpRuntimeClient } from "../core/mcp-client.js";
@@ -11,5 +12,6 @@ export interface CommandContext {
11
12
  secretStore: SecretStore;
12
13
  tokenManager: TokenManager;
13
14
  runtimeClient: McpRuntimeClient;
15
+ credentialBroker?: CredentialBroker;
14
16
  }
15
17
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,gBAAgB,CAAC;CACjC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/commands/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;IACzB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,gBAAgB,CAAC;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB7F"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AA2FnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA0B7F"}
@@ -2,18 +2,97 @@ import { parseFlags } from "../cli/parse.js";
2
2
  import { runDoctor } from "../doctor/run.js";
3
3
  import { EXIT_CODES } from "../cli/errors.js";
4
4
  import { showHelpIfRequested } from "./help.js";
5
+ function doctorHelpText() {
6
+ return [
7
+ "Usage: vibecodr doctor [--client <codex|cursor|vscode|windsurf|claude-desktop>]",
8
+ "",
9
+ "Checks the local CLI, secure storage, OAuth setup, MCP Gateway credentials,",
10
+ "Agent Computer credentials, and optional editor/client setup.",
11
+ "",
12
+ "Most people:",
13
+ " vibecodr doctor Find the next setup problem.",
14
+ " vibecodr doctor --client codex",
15
+ " Also check whether Codex is ready to use Vibecodr.",
16
+ "",
17
+ "For scripts:",
18
+ " vibecodr doctor --json --non-interactive"
19
+ ].join("\n");
20
+ }
21
+ async function credentialCheck(context, id, label, endpoint) {
22
+ if (!context.credentialBroker) {
23
+ return {
24
+ id,
25
+ status: "warn",
26
+ summary: `${label} credential broker is unavailable.`
27
+ };
28
+ }
29
+ try {
30
+ const credential = await context.credentialBroker.getCredentialForEndpoint(endpoint);
31
+ return {
32
+ id,
33
+ status: credential ? "pass" : "warn",
34
+ summary: credential
35
+ ? `${label} credential is available via ${credential.kind}.`
36
+ : `${label} credential is not stored.`
37
+ };
38
+ }
39
+ catch (error) {
40
+ return {
41
+ id,
42
+ status: "warn",
43
+ summary: `${label} credential state could not be read: ${error instanceof Error ? error.message : String(error)}`
44
+ };
45
+ }
46
+ }
47
+ function nextStepForCheck(check) {
48
+ if (check.status === "pass")
49
+ return undefined;
50
+ if (check.id === "mcp-gateway-credential") {
51
+ return "Run `vibecodr login` for publishing, uploads, Pulses, and MCP Gateway tools.";
52
+ }
53
+ if (check.id === "agent-computer-credential") {
54
+ return "Run `vibecodr start` when you want hosted browser/computer work.";
55
+ }
56
+ if (check.id === "refresh-token") {
57
+ return "Run `vibecodr login` to refresh this CLI session.";
58
+ }
59
+ if (check.id.includes("client")) {
60
+ return "Run `vibecodr install <client>` for the editor or agent you use.";
61
+ }
62
+ return undefined;
63
+ }
64
+ function doctorHumanLines(checks) {
65
+ const failures = checks.filter((check) => check.status === "fail");
66
+ const warnings = checks.filter((check) => check.status === "warn");
67
+ const firstAction = [...failures, ...warnings].map((check) => nextStepForCheck(check)).find(Boolean);
68
+ const headline = failures.length > 0
69
+ ? "Vibecodr doctor found setup blockers."
70
+ : warnings.length > 0
71
+ ? "Vibecodr doctor found things to check."
72
+ : "Vibecodr doctor passed.";
73
+ return [
74
+ headline,
75
+ `Passed: ${checks.filter((check) => check.status === "pass").length}`,
76
+ `Needs attention: ${failures.length + warnings.length}`,
77
+ firstAction ? `Next: ${firstAction}` : "Next: run `vibecodr status` to see what is connected.",
78
+ "",
79
+ "Details:",
80
+ ...checks.map((check) => `[${check.status.toUpperCase()}] ${check.id}: ${check.summary}`)
81
+ ];
82
+ }
5
83
  export async function runDoctorCommand(args, context) {
6
- if (showHelpIfRequested(args, context, "Usage: vibecodr doctor [--client <codex|cursor|vscode|windsurf|claude-desktop>]"))
84
+ if (showHelpIfRequested(args, context, doctorHelpText()))
7
85
  return;
8
86
  const { flags } = parseFlags(args, {
9
87
  valueFlags: ["client"]
10
88
  });
11
89
  const checks = await runDoctor(context.globalOptions, context.tokenManager, context.secretStore, typeof flags["client"] === "string" ? flags["client"] : undefined);
90
+ checks.push(await credentialCheck(context, "agent-computer-credential", "Agent Computer", "tools.vibecodr.space"), await credentialCheck(context, "mcp-gateway-credential", "MCP Gateway", "openai.vibecodr.space/mcp"));
12
91
  context.output.success({
13
92
  schemaVersion: 1,
14
93
  ok: checks.every((check) => check.status === "pass"),
15
94
  checks
16
- }, checks.map((check) => `[${check.status.toUpperCase()}] ${check.id}: ${check.summary}`));
95
+ }, doctorHumanLines(checks));
17
96
  if (checks.some((check) => check.status === "fail")) {
18
97
  process.exitCode = EXIT_CODES.runtime;
19
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAc,EAAE,OAAuB;IAC5E,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,iFAAiF,CAAC;QAAE,OAAO;IAClI,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE;QACjC,UAAU,EAAE,CAAC,QAAQ,CAAC;KACvB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,WAAW,EACnB,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAClE,CAAC;IACF,OAAO,CAAC,MAAM,CAAC,OAAO,CACpB;QACE,aAAa,EAAE,CAAC;QAChB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;QACpD,MAAM;KACP,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CACvF,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;QACpD,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC;IACxC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CommandContext } from "./context.js";
2
+ export declare function runFeedbackCommand(args: string[], context: CommandContext): Promise<void>;
3
+ //# sourceMappingURL=feedback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAwCnD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiE/F"}
@@ -0,0 +1,92 @@
1
+ import { parseFlags } from "../cli/parse.js";
2
+ import { CliError, EXIT_CODES } from "../cli/errors.js";
3
+ import { promptText } from "../platform/prompt.js";
4
+ import { showHelpIfRequested } from "./help.js";
5
+ import { callToolWithRetry } from "./call.js";
6
+ const FEEDBACK_CATEGORIES = new Set(["feedback", "idea", "bug", "question", "praise", "other"]);
7
+ function stringFlag(value, name) {
8
+ if (value === undefined)
9
+ return undefined;
10
+ if (typeof value !== "string") {
11
+ throw new CliError("usage.invalid_flag", `--${name} must have a text value.`, EXIT_CODES.usage);
12
+ }
13
+ const trimmed = value.trim();
14
+ return trimmed || undefined;
15
+ }
16
+ function parseCategory(value) {
17
+ if (value === undefined)
18
+ return undefined;
19
+ if (FEEDBACK_CATEGORIES.has(value))
20
+ return value;
21
+ throw new CliError("usage.feedback_category_invalid", `Unknown feedback category: ${value}`, EXIT_CODES.usage, { nextStep: "Use one of: feedback, idea, bug, question, praise, other." });
22
+ }
23
+ function feedbackIdFromResult(result) {
24
+ if (!result || typeof result !== "object")
25
+ return undefined;
26
+ const structured = result.structuredContent;
27
+ if (!structured || typeof structured !== "object")
28
+ return undefined;
29
+ const feedbackId = structured["feedbackId"];
30
+ return typeof feedbackId === "string" && feedbackId.trim() ? feedbackId : undefined;
31
+ }
32
+ function founderEmailQueuedFromResult(result) {
33
+ if (!result || typeof result !== "object")
34
+ return undefined;
35
+ const structured = result.structuredContent;
36
+ if (!structured || typeof structured !== "object")
37
+ return undefined;
38
+ const queued = structured["founderEmailQueued"];
39
+ return typeof queued === "boolean" ? queued : undefined;
40
+ }
41
+ export async function runFeedbackCommand(args, context) {
42
+ if (showHelpIfRequested(args, context, [
43
+ "Usage: vibecodr feedback [message] [--message <text>] [--subject <text>] [--category <kind>] [--page-url <url>] [--no-login]",
44
+ "",
45
+ "Send product feedback straight to the Vibecodr dev. The note is saved for review and queues founder notification.",
46
+ "",
47
+ "Examples:",
48
+ " vibecodr feedback \"The publish form wording is confusing\"",
49
+ " vibecodr feedback --category idea --subject \"Better examples\" --message \"Show Codex and Claude install examples side by side\"",
50
+ "",
51
+ "Categories: feedback, idea, bug, question, praise, other"
52
+ ].join("\n")))
53
+ return;
54
+ const { flags, positionals } = parseFlags(args, {
55
+ valueFlags: ["message", "subject", "category", "page-url", "client"],
56
+ booleanFlags: ["no-login"]
57
+ });
58
+ const message = stringFlag(flags["message"], "message") || positionals.join(" ").trim() || (context.globalOptions.nonInteractive
59
+ ? undefined
60
+ : await promptText("What should Braden know? "));
61
+ if (!message) {
62
+ throw new CliError("usage.feedback_message_required", "A feedback message is required.", EXIT_CODES.usage, { nextStep: "Run `vibecodr feedback \"your note\"` or pass `--message <text>`." });
63
+ }
64
+ const category = parseCategory(stringFlag(flags["category"], "category"));
65
+ const subject = stringFlag(flags["subject"], "subject");
66
+ const pageUrl = stringFlag(flags["page-url"], "page-url");
67
+ const client = stringFlag(flags["client"], "client") || "vibecodr-cli";
68
+ const input = {
69
+ message,
70
+ source: "cli",
71
+ client,
72
+ ...(category ? { category } : {}),
73
+ ...(subject ? { subject } : {}),
74
+ ...(pageUrl ? { pageUrl } : {})
75
+ };
76
+ const { result } = await callToolWithRetry(context, "submit_feedback", input, !flags["no-login"]);
77
+ const feedbackId = feedbackIdFromResult(result);
78
+ const founderEmailQueued = founderEmailQueuedFromResult(result);
79
+ context.output.success({
80
+ schemaVersion: 1,
81
+ ok: true,
82
+ ...(feedbackId ? { feedbackId } : {}),
83
+ ...(founderEmailQueued !== undefined ? { founderEmailQueued } : {})
84
+ }, [
85
+ "Sent to Braden.",
86
+ ...(feedbackId ? [`Saved as feedback ${feedbackId}.`] : ["Saved for review."]),
87
+ ...(founderEmailQueued === undefined
88
+ ? []
89
+ : [founderEmailQueued ? "Founder notification was queued." : "Founder email was not queued by the server."])
90
+ ]);
91
+ }
92
+ //# sourceMappingURL=feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/commands/feedback.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAmBnD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA+D9F"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AA8BnD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAsE9F"}
@@ -22,6 +22,17 @@ function clientDisplayName(client) {
22
22
  case "claude-code": return "Claude Code";
23
23
  }
24
24
  }
25
+ function isHostedAgentComputerMcpUrl(value) {
26
+ try {
27
+ const url = new URL(value);
28
+ return url.protocol === "https:"
29
+ && url.hostname === "tools.vibecodr.space"
30
+ && (url.pathname === "/mcp" || url.pathname === "/v1/mcp");
31
+ }
32
+ catch {
33
+ return false;
34
+ }
35
+ }
25
36
  export async function runInstallCommand(args, context) {
26
37
  if (showHelpIfRequested(args, context, "Usage: vibecodr install <codex|cursor|vscode|windsurf|claude-desktop|claude-code> [--scope user|project] [--path <dir>] [--name <server-name>] [--open-client] [--overwrite] [--dry-run]"))
27
38
  return;
@@ -34,6 +45,9 @@ export async function runInstallCommand(args, context) {
34
45
  booleanFlags: ["open-client", "overwrite", "dry-run"]
35
46
  });
36
47
  const { serverUrl } = await context.tokenManager.resolveProfile(context.globalOptions);
48
+ if (isHostedAgentComputerMcpUrl(serverUrl)) {
49
+ throw new CliError("install.agent_computer_remote_auth_unsupported", "This profile points at tools.vibecodr.space/mcp, which uses vc-tools Agent Computer grants. `vibecodr install` only writes OAuth-backed MCP Gateway configs; use a profile pointed at https://openai.vibecodr.space/mcp, or run `vibecodr start` for Agent Computer setup.", EXIT_CODES.usage);
50
+ }
37
51
  const request = {
38
52
  serverUrl,
39
53
  name: typeof flags["name"] === "string" ? flags["name"] : defaultName(serverUrl),
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C5F"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAqBnD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwD5F"}
@@ -1,11 +1,33 @@
1
1
  import { parseFlags } from "../cli/parse.js";
2
+ import { CliError, EXIT_CODES } from "../cli/errors.js";
2
3
  import { showHelpIfRequested } from "./help.js";
4
+ const MCP_GATEWAY_AUTH_SCOPES = new Set(["mcp", "mcp-gateway", "gateway"]);
5
+ function loginHelpText() {
6
+ return [
7
+ "Usage: vibecodr login [mcp] [--scope <oauth-scope>] [--registration auto|preregistered|cimd|dcr|manual] [--browser open|print] [--timeout-sec <n>]",
8
+ " vibecodr login agent [--no-browser] [--credential-file <path> | --credential-stdin]",
9
+ "",
10
+ "Most people:",
11
+ " vibecodr login Sign in for publishing, uploads, Pulses, and MCP Gateway tools.",
12
+ " vibecodr start Sign in and verify the hosted Agent Computer.",
13
+ "",
14
+ "Explicit lanes:",
15
+ " vibecodr login mcp Same as vibecodr login; uses browser OAuth.",
16
+ " vibecodr login agent Uses the hosted Agent Computer approval flow.",
17
+ "",
18
+ "Tip: run `vibecodr status` after login to see what is connected."
19
+ ].join("\n");
20
+ }
3
21
  export async function runLoginCommand(args, context) {
4
- if (showHelpIfRequested(args, context, "Usage: vibecodr login [--scope <oauth-scope>] [--registration auto|preregistered|cimd|dcr|manual] [--browser open|print] [--timeout-sec <n>]"))
22
+ const scopedArgs = MCP_GATEWAY_AUTH_SCOPES.has(args[0] ?? "") ? args.slice(1) : args;
23
+ if (showHelpIfRequested(scopedArgs, context, loginHelpText()))
5
24
  return;
6
- const { flags } = parseFlags(args, {
25
+ const { flags, positionals } = parseFlags(scopedArgs, {
7
26
  valueFlags: ["scope", "registration", "browser", "timeout-sec"]
8
27
  });
28
+ if (positionals.length > 0) {
29
+ throw new CliError("usage.unknown_login_scope", `Unknown login target: ${positionals[0]}`, EXIT_CODES.usage, { nextStep: "Use `vibecodr login` for the usual path, or `vibecodr login agent` for the hosted Agent Computer." });
30
+ }
9
31
  let authorizationUrl;
10
32
  let callbackUrl;
11
33
  const result = await context.tokenManager.login(context.globalOptions, {
@@ -16,13 +38,14 @@ export async function runLoginCommand(args, context) {
16
38
  onLoopbackReady: (url) => {
17
39
  callbackUrl = url;
18
40
  if (!context.globalOptions.json) {
19
- context.output.info(`Waiting for OAuth callback on ${url}`);
41
+ context.output.info(`Waiting for sign-in to finish on ${url}`);
20
42
  context.output.info("Keep this terminal open until login completes.");
21
43
  }
22
44
  },
23
45
  onAuthorizationUrl: (url) => {
24
46
  authorizationUrl = url;
25
47
  if (!context.globalOptions.json) {
48
+ context.output.info("Open this URL to sign in to Vibecodr:");
26
49
  context.output.info(url);
27
50
  }
28
51
  }
@@ -33,13 +56,15 @@ export async function runLoginCommand(args, context) {
33
56
  ...(callbackUrl ? { callbackUrl } : {}),
34
57
  ...(context.globalOptions.json && authorizationUrl ? { authorizationUrl } : {})
35
58
  }, [
59
+ "Signed in to Vibecodr for publishing, uploads, Pulses, and MCP Gateway tools.",
36
60
  `Profile: ${result.profile}`,
37
61
  `Server URL: ${result.serverUrl}`,
38
62
  `Authorization server: ${result.authorizationServerIssuer || "discovered"}`,
39
63
  `Registration mode: ${result.registrationMode}`,
40
64
  `Expires at: ${result.expiresAt || "unknown"}`,
41
65
  `Refresh token: ${result.hasRefreshToken ? "available" : "not issued"}`,
42
- "CLI login does not log Codex, editors, ChatGPT, or other MCP clients into MCP. Each client owns its own OAuth session."
66
+ "Next: run `vibecodr status` to see what is connected.",
67
+ "Note: Codex, Cursor, Claude, VS Code, and Windsurf have their own OAuth sessions. Use `vibecodr install codex` or another supported app name to add Vibecodr there."
43
68
  ]);
44
69
  }
45
70
  //# sourceMappingURL=login.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIhD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAc,EAAE,OAAuB;IAC3E,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,8IAA8I,CAAC;QAAE,OAAO;IAC/L,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE;QACjC,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC;KAChE,CAAC,CAAC;IACH,IAAI,gBAAoC,CAAC;IACzC,IAAI,WAA+B,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE;QACrE,KAAK,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;QACtE,gBAAgB,EAAE,OAAO,KAAK,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAqB,CAAC,CAAC,CAAC,SAAS;QACnH,WAAW,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAgB,CAAC,CAAC,CAAC,SAAS;QAC/F,UAAU,EAAE,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QAC/F,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,WAAW,GAAG,GAAG,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QACD,kBAAkB,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,gBAAgB,GAAG,GAAG,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,MAAM,CAAC,OAAO,CACpB;QACE,aAAa,EAAE,CAAC;QAChB,GAAG,MAAM;QACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChF,EACD;QACE,YAAY,MAAM,CAAC,OAAO,EAAE;QAC5B,eAAe,MAAM,CAAC,SAAS,EAAE;QACjC,yBAAyB,MAAM,CAAC,yBAAyB,IAAI,YAAY,EAAE;QAC3E,sBAAsB,MAAM,CAAC,gBAAgB,EAAE;QAC/C,eAAe,MAAM,CAAC,SAAS,IAAI,SAAS,EAAE;QAC9C,kBAAkB,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE;QACvE,wHAAwH;KACzH,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAIhD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;AAE3E,SAAS,aAAa;IACpB,OAAO;QACL,oJAAoJ;QACpJ,4FAA4F;QAC5F,EAAE;QACF,cAAc;QACd,yFAAyF;QACzF,uEAAuE;QACvE,EAAE;QACF,iBAAiB;QACjB,qEAAqE;QACrE,uEAAuE;QACvE,EAAE;QACF,kEAAkE;KACnE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAc,EAAE,OAAuB;IAC3E,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,IAAI,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QAAE,OAAO;IACtE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE;QACpD,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC;KAChE,CAAC,CAAC;IACH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,QAAQ,CAChB,2BAA2B,EAC3B,yBAAyB,WAAW,CAAC,CAAC,CAAC,EAAE,EACzC,UAAU,CAAC,KAAK,EAChB,EAAE,QAAQ,EAAE,mGAAmG,EAAE,CAClH,CAAC;IACJ,CAAC;IACD,IAAI,gBAAoC,CAAC;IACzC,IAAI,WAA+B,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE;QACrE,KAAK,EAAE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;QACtE,gBAAgB,EAAE,OAAO,KAAK,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAqB,CAAC,CAAC,CAAC,SAAS;QACnH,WAAW,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAgB,CAAC,CAAC,CAAC,SAAS;QAC/F,UAAU,EAAE,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QAC/F,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,WAAW,GAAG,GAAG,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,GAAG,EAAE,CAAC,CAAC;gBAC/D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QACD,kBAAkB,EAAE,CAAC,GAAG,EAAE,EAAE;YAC1B,gBAAgB,GAAG,GAAG,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBAC7D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,MAAM,CAAC,OAAO,CACpB;QACE,aAAa,EAAE,CAAC;QAChB,GAAG,MAAM;QACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChF,EACD;QACE,+EAA+E;QAC/E,YAAY,MAAM,CAAC,OAAO,EAAE;QAC5B,eAAe,MAAM,CAAC,SAAS,EAAE;QACjC,yBAAyB,MAAM,CAAC,yBAAyB,IAAI,YAAY,EAAE;QAC3E,sBAAsB,MAAM,CAAC,gBAAgB,EAAE;QAC/C,eAAe,MAAM,CAAC,SAAS,IAAI,SAAS,EAAE;QAC9C,kBAAkB,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE;QACvE,uDAAuD;QACvD,qKAAqK;KACtK,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B7F"}
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAoBnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwC7F"}
@@ -1,11 +1,32 @@
1
1
  import { parseFlags } from "../cli/parse.js";
2
+ import { CliError, EXIT_CODES } from "../cli/errors.js";
2
3
  import { showHelpIfRequested } from "./help.js";
4
+ const MCP_GATEWAY_AUTH_SCOPES = new Set(["mcp", "mcp-gateway", "gateway"]);
5
+ function logoutHelpText() {
6
+ return [
7
+ "Usage: vibecodr logout [mcp] [--all] [--no-revoke]",
8
+ " vibecodr logout agent --yes",
9
+ "",
10
+ "Most people:",
11
+ " vibecodr logout Sign out this CLI from publishing, uploads, Pulses, and MCP tools.",
12
+ "",
13
+ "Explicit lanes:",
14
+ " vibecodr logout mcp Same as vibecodr logout; clears the MCP Gateway session.",
15
+ " vibecodr logout agent Clears the hosted Agent Computer credential.",
16
+ "",
17
+ "Tip: run `vibecodr status` after logout to confirm what remains connected."
18
+ ].join("\n");
19
+ }
3
20
  export async function runLogoutCommand(args, context) {
4
- if (showHelpIfRequested(args, context, "Usage: vibecodr logout [--all] [--no-revoke]"))
21
+ const scopedArgs = MCP_GATEWAY_AUTH_SCOPES.has(args[0] ?? "") ? args.slice(1) : args;
22
+ if (showHelpIfRequested(scopedArgs, context, logoutHelpText()))
5
23
  return;
6
- const { flags } = parseFlags(args, {
24
+ const { flags, positionals } = parseFlags(scopedArgs, {
7
25
  booleanFlags: ["all", "no-revoke"]
8
26
  });
27
+ if (positionals.length > 0) {
28
+ throw new CliError("usage.unknown_logout_scope", `Unknown logout target: ${positionals[0]}`, EXIT_CODES.usage, { nextStep: "Use `vibecodr logout` for the usual path, or `vibecodr logout agent --yes` for the hosted Agent Computer." });
29
+ }
9
30
  const config = await context.configStore.load();
10
31
  const targetProfiles = flags["all"]
11
32
  ? Object.keys(config.profiles)
@@ -23,8 +44,9 @@ export async function runLogoutCommand(args, context) {
23
44
  schemaVersion: 1,
24
45
  results
25
46
  }, [
47
+ "Signed out of the Vibecodr MCP Gateway session for this CLI.",
26
48
  ...results.map((result) => `${result.profile}: local tokens ${result.localTokensDeleted ? "deleted" : "not present"}, revocation ${result.revocationAttempted ? (result.revocationConfirmed ? "confirmed" : "attempted") : "skipped"}`),
27
- "Editor registrations are unchanged."
49
+ "Editor registrations are unchanged. Agent Computer credentials are unchanged unless you ran `vibecodr logout agent --yes`."
28
50
  ]);
29
51
  }
30
52
  //# sourceMappingURL=logout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGhD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAc,EAAE,OAAuB;IAC5E,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,8CAA8C,CAAC;QAAE,OAAO;IAC/F,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE;QACjC,YAAY,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC;KACnC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7D,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,WAAW;YACpB,GAAG,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE;gBACjD,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;aACtC,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,OAAO,CACpB;QACE,aAAa,EAAE,CAAC;QAChB,OAAO;KACR,EACD;QACE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,kBAAkB,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,gBAAgB,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QACvO,qCAAqC;KACtC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAGhD,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;AAE3E,SAAS,cAAc;IACrB,OAAO;QACL,oDAAoD;QACpD,oCAAoC;QACpC,EAAE;QACF,cAAc;QACd,4FAA4F;QAC5F,EAAE;QACF,iBAAiB;QACjB,kFAAkF;QAClF,sEAAsE;QACtE,EAAE;QACF,4EAA4E;KAC7E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAc,EAAE,OAAuB;IAC5E,MAAM,UAAU,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,IAAI,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAAE,OAAO;IACvE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC,UAAU,EAAE;QACpD,YAAY,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC;KACnC,CAAC,CAAC;IACH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,QAAQ,CAChB,4BAA4B,EAC5B,0BAA0B,WAAW,CAAC,CAAC,CAAC,EAAE,EAC1C,UAAU,CAAC,KAAK,EAChB,EAAE,QAAQ,EAAE,2GAA2G,EAAE,CAC1H,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC9B,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,CAAC,CAAC;IAE7D,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,WAAW;YACpB,GAAG,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE;gBACjD,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;aACtC,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,OAAO,CACpB;QACE,aAAa,EAAE,CAAC;QAChB,OAAO;KACR,EACD;QACE,8DAA8D;QAC9D,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,kBAAkB,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,gBAAgB,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QACvO,4HAA4H;KAC7H,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CommandContext } from "./context.js";
2
+ export declare function runMcpCommand(args: string[], context: CommandContext): Promise<void>;
3
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyB1F"}
@@ -0,0 +1,26 @@
1
+ import { CliError, EXIT_CODES } from "../cli/errors.js";
2
+ import { isHelpToken } from "../cli/parse.js";
3
+ import { mcpCommandSuggestion, mcpHelpText } from "../app/help.js";
4
+ import { runCallCommand } from "./call.js";
5
+ import { runToolsCommand } from "./tools.js";
6
+ export async function runMcpCommand(args, context) {
7
+ const [subcommand, ...rest] = args;
8
+ if (!subcommand || isHelpToken(subcommand)) {
9
+ process.stdout.write(`${mcpHelpText()}\n`);
10
+ return;
11
+ }
12
+ switch (subcommand) {
13
+ case "tools":
14
+ await runToolsCommand(rest, context);
15
+ return;
16
+ case "call":
17
+ await runCallCommand(rest, context);
18
+ return;
19
+ case "help":
20
+ await runMcpCommand(rest, context);
21
+ return;
22
+ default:
23
+ throw new CliError("usage.unknown_mcp_command", `Unknown MCP Gateway command: ${subcommand}`, EXIT_CODES.usage, { nextStep: mcpCommandSuggestion(subcommand) });
24
+ }
25
+ }
26
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAc,EAAE,OAAuB;IACzE,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACnC,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IAED,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,OAAO;YACV,MAAM,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACrC,OAAO;QACT,KAAK,MAAM;YACT,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACpC,OAAO;QACT,KAAK,MAAM;YACT,MAAM,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO;QACT;YACE,MAAM,IAAI,QAAQ,CAChB,2BAA2B,EAC3B,gCAAgC,UAAU,EAAE,EAC5C,UAAU,CAAC,KAAK,EAChB,EAAE,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,EAAE,CAC/C,CAAC;IACN,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AA2BnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA6C7F"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAsGnD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD7F"}