lockin-mcp 1.0.2 → 1.0.4

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 (97) hide show
  1. package/README.md +156 -45
  2. package/dist/blocker.js +2 -2
  3. package/dist/blocker.js.map +1 -1
  4. package/dist/brand.d.ts +2 -1
  5. package/dist/brand.d.ts.map +1 -1
  6. package/dist/brand.js +2 -1
  7. package/dist/brand.js.map +1 -1
  8. package/dist/config.d.ts +1 -1
  9. package/dist/config.d.ts.map +1 -1
  10. package/dist/config.js +2 -2
  11. package/dist/config.js.map +1 -1
  12. package/dist/hosts-manager.d.ts.map +1 -1
  13. package/dist/hosts-manager.js +24 -11
  14. package/dist/hosts-manager.js.map +1 -1
  15. package/dist/hosts-manager.test.js +22 -3
  16. package/dist/hosts-manager.test.js.map +1 -1
  17. package/dist/index.js +37 -12
  18. package/dist/index.js.map +1 -1
  19. package/dist/install.js +3 -3
  20. package/dist/install.js.map +1 -1
  21. package/dist/installer/agent-instructions.d.ts +15 -1
  22. package/dist/installer/agent-instructions.d.ts.map +1 -1
  23. package/dist/installer/agent-instructions.js +29 -7
  24. package/dist/installer/agent-instructions.js.map +1 -1
  25. package/dist/installer/agents.d.ts.map +1 -1
  26. package/dist/installer/agents.js +70 -79
  27. package/dist/installer/agents.js.map +1 -1
  28. package/dist/installer/claude-desktop-config.d.ts +19 -0
  29. package/dist/installer/claude-desktop-config.d.ts.map +1 -0
  30. package/dist/installer/claude-desktop-config.js +70 -0
  31. package/dist/installer/claude-desktop-config.js.map +1 -0
  32. package/dist/installer/claude-desktop-config.test.d.ts +2 -0
  33. package/dist/installer/claude-desktop-config.test.d.ts.map +1 -0
  34. package/dist/installer/claude-desktop-config.test.js +49 -0
  35. package/dist/installer/claude-desktop-config.test.js.map +1 -0
  36. package/dist/installer/data-dir.d.ts +7 -0
  37. package/dist/installer/data-dir.d.ts.map +1 -0
  38. package/dist/installer/data-dir.js +38 -0
  39. package/dist/installer/data-dir.js.map +1 -0
  40. package/dist/installer/data-dir.test.d.ts +2 -0
  41. package/dist/installer/data-dir.test.d.ts.map +1 -0
  42. package/dist/installer/data-dir.test.js +59 -0
  43. package/dist/installer/data-dir.test.js.map +1 -0
  44. package/dist/installer/install-log.d.ts +14 -0
  45. package/dist/installer/install-log.d.ts.map +1 -0
  46. package/dist/installer/install-log.js +100 -0
  47. package/dist/installer/install-log.js.map +1 -0
  48. package/dist/installer/platform.d.ts.map +1 -1
  49. package/dist/installer/platform.js +2 -2
  50. package/dist/installer/platform.js.map +1 -1
  51. package/dist/installer/poke.d.ts.map +1 -1
  52. package/dist/installer/poke.js +5 -13
  53. package/dist/installer/poke.js.map +1 -1
  54. package/dist/installer/port.d.ts.map +1 -1
  55. package/dist/installer/port.js +5 -4
  56. package/dist/installer/port.js.map +1 -1
  57. package/dist/installer/relay-provision.d.ts.map +1 -1
  58. package/dist/installer/relay-provision.js +62 -25
  59. package/dist/installer/relay-provision.js.map +1 -1
  60. package/dist/installer/run.d.ts.map +1 -1
  61. package/dist/installer/run.js +37 -34
  62. package/dist/installer/run.js.map +1 -1
  63. package/dist/installer/tui.d.ts.map +1 -1
  64. package/dist/installer/tui.js +5 -3
  65. package/dist/installer/tui.js.map +1 -1
  66. package/dist/installer/tunnel.d.ts.map +1 -1
  67. package/dist/installer/tunnel.js +7 -2
  68. package/dist/installer/tunnel.js.map +1 -1
  69. package/dist/installer/user-errors.d.ts +8 -0
  70. package/dist/installer/user-errors.d.ts.map +1 -0
  71. package/dist/installer/user-errors.js +61 -0
  72. package/dist/installer/user-errors.js.map +1 -0
  73. package/dist/installer/user-errors.test.d.ts +2 -0
  74. package/dist/installer/user-errors.test.d.ts.map +1 -0
  75. package/dist/installer/user-errors.test.js +15 -0
  76. package/dist/installer/user-errors.test.js.map +1 -0
  77. package/dist/local-http.d.ts +32 -0
  78. package/dist/local-http.d.ts.map +1 -0
  79. package/dist/local-http.js +140 -0
  80. package/dist/local-http.js.map +1 -0
  81. package/dist/local-http.test.d.ts +2 -0
  82. package/dist/local-http.test.d.ts.map +1 -0
  83. package/dist/local-http.test.js +13 -0
  84. package/dist/local-http.test.js.map +1 -0
  85. package/dist/relay-client.d.ts.map +1 -1
  86. package/dist/relay-client.js +26 -23
  87. package/dist/relay-client.js.map +1 -1
  88. package/dist/state.d.ts.map +1 -1
  89. package/dist/state.js +4 -4
  90. package/dist/state.js.map +1 -1
  91. package/dist/types.d.ts +5 -2
  92. package/dist/types.d.ts.map +1 -1
  93. package/dist/types.js +5 -2
  94. package/dist/types.js.map +1 -1
  95. package/install.ps1 +1 -1
  96. package/install.sh +1 -1
  97. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hosts-manager.js","sourceRoot":"","sources":["../src/hosts-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hosts-manager.js","sourceRoot":"","sources":["../src/hosts-manager.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,32 @@ describe("hosts-manager", () => {
7
7
  const managed = buildManagedSection(["youtube.com"]);
8
8
  expect(managed).toContain(MARKER);
9
9
  expect(managed).toContain("youtube.com");
10
+ expect(managed).toContain("# youtube.com");
10
11
  const composed = composeHostsFile(base, ["youtube.com"]);
11
12
  const stripped = stripManagedEntries(composed);
12
13
  expect(stripped.trim()).toBe(base.trim());
13
14
  });
14
- it("leaves content unchanged when domains empty", () => {
15
- const base = "127.0.0.1 localhost\n";
16
- expect(composeHostsFile(base, [])).toBe(`${base}`);
15
+ it("dedupes logical sites when building managed section", () => {
16
+ const managed = buildManagedSection([
17
+ "youtube.com",
18
+ "www.youtube.com",
19
+ "HTTPS://YouTube.com/",
20
+ ]);
21
+ expect(managed.match(/# youtube\.com/g)?.length).toBe(1);
22
+ expect(managed).toContain("127.0.0.1 youtube.com");
23
+ expect(managed).toContain("127.0.0.1 www.youtube.com");
24
+ });
25
+ it("strips legacy managed section markers", () => {
26
+ const legacy = [
27
+ "127.0.0.1 localhost",
28
+ "# mac-distraction-blocker-mcp BEGIN",
29
+ "127.0.0.1 youtube.com",
30
+ "# mac-distraction-blocker-mcp END",
31
+ "",
32
+ ].join("\n");
33
+ const stripped = stripManagedEntries(legacy);
34
+ expect(stripped).not.toContain("youtube.com");
35
+ expect(stripped).toContain("localhost");
17
36
  });
18
37
  });
19
38
  //# sourceMappingURL=hosts-manager.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hosts-manager.test.js","sourceRoot":"","sources":["../src/hosts-manager.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,IAAI,GAAG,uBAAuB,CAAC;QACrC,MAAM,OAAO,GAAG,mBAAmB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,IAAI,GAAG,uBAAuB,CAAC;QACrC,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"hosts-manager.test.js","sourceRoot":"","sources":["../src/hosts-manager.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,IAAI,GAAG,uBAAuB,CAAC;QACrC,MAAM,OAAO,GAAG,mBAAmB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAE3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,OAAO,GAAG,mBAAmB,CAAC;YAClC,aAAa;YACb,iBAAiB;YACjB,sBAAsB;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,MAAM,GAAG;YACb,qBAAqB;YACrB,qCAAqC;YACrC,uBAAuB;YACvB,mCAAmC;YACnC,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,QAAQ,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC9C,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env node
2
+ import { installHarmlessSocketErrorHandler } from "./local-http.js";
3
+ installHarmlessSocketErrorHandler();
2
4
  import { randomUUID } from "node:crypto";
3
5
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
6
  import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
@@ -13,6 +15,7 @@ import { loadCachedLicense } from "./installer/license.js";
13
15
  import { readMcpAuthTokenFromManifest } from "./installer/setup-manifest.js";
14
16
  import { reconcileHostsOnStartup } from "./hosts-manager.js";
15
17
  import { bearerTokenMatches, resolveHttpMcpAuth, } from "./http-auth.js";
18
+ import { RELAY_PUBLIC_ORIGIN } from "./relay-urls.js";
16
19
  import { createMcpServer } from "./server.js";
17
20
  const DEFAULT_HTTP_PORT = 3847;
18
21
  const streamSessions = new Map();
@@ -90,16 +93,27 @@ async function handleMcpRequest(req, res) {
90
93
  id: null,
91
94
  });
92
95
  }
93
- function createBearerAuthMiddleware(authToken) {
94
- return (req, res, next) => {
95
- if (!bearerTokenMatches(req.headers.authorization, authToken)) {
96
- res.status(401).json({
97
- error: "Unauthorized",
98
- message: "Provide Authorization: Bearer <MDB_MCP_AUTH_TOKEN>",
99
- });
96
+ function createBearerAuthMiddleware(authToken, oauthResourceMetadataUrl) {
97
+ return async (req, res, next) => {
98
+ if (bearerTokenMatches(req.headers.authorization, authToken)) {
99
+ next();
100
100
  return;
101
101
  }
102
- next();
102
+ const match = req.headers.authorization?.match(/^Bearer\s+(.+)$/i);
103
+ if (match?.[1]) {
104
+ const result = await verifyTokenWithBackend(match[1]);
105
+ if (result.valid && result.tier === "pro") {
106
+ next();
107
+ return;
108
+ }
109
+ }
110
+ if (oauthResourceMetadataUrl) {
111
+ res.setHeader("WWW-Authenticate", `Bearer resource_metadata="${oauthResourceMetadataUrl}"`);
112
+ }
113
+ res.status(401).json({
114
+ error: "Unauthorized",
115
+ message: "Provide Authorization: Bearer <MDB_MCP_AUTH_TOKEN> or a valid LockIn OAuth access token",
116
+ });
103
117
  };
104
118
  }
105
119
  async function runHttp(port) {
@@ -166,14 +180,19 @@ async function runHttp(port) {
166
180
  }
167
181
  app.use(express.json({ limit: "4mb" }));
168
182
  const protectedPaths = ["/mcp", "/sse", "/message"];
183
+ const deviceId = process.env.MDB_DEVICE_ID;
184
+ const oauthResourceMetadataUrl = deviceId
185
+ ? `${RELAY_PUBLIC_ORIGIN}/.well-known/oauth-protected-resource/device/${deviceId}/mcp`
186
+ : undefined;
169
187
  if (authToken) {
170
188
  for (const path of protectedPaths) {
171
- app.use(path, createBearerAuthMiddleware(authToken));
189
+ app.use(path, createBearerAuthMiddleware(authToken, oauthResourceMetadataUrl));
172
190
  }
173
191
  log("HTTP MCP auth enabled (Bearer token required)");
174
192
  }
175
193
  app.get("/health", (_req, res) => {
176
194
  res.json({
195
+ service: APP_SLUG,
177
196
  status: "ok",
178
197
  tier: proVerified ? "pro" : "free",
179
198
  });
@@ -274,6 +293,8 @@ async function runHttp(port) {
274
293
  });
275
294
  }
276
295
  async function main() {
296
+ const { ensureDataDirMigrated } = await import("./installer/data-dir.js");
297
+ await ensureDataDirMigrated();
277
298
  const argv = process.argv.slice(2);
278
299
  if (argv[0] === "install" || argv[0] === "mdb-install") {
279
300
  // mdb-install: legacy alias from mac-distraction-blocker-mcp rebrand
@@ -292,9 +313,13 @@ async function main() {
292
313
  }
293
314
  await runStdio();
294
315
  }
295
- main().catch((error) => {
296
- const message = error instanceof Error ? error.message : String(error);
297
- log(`Fatal error: ${message}`);
316
+ main().catch(async (error) => {
317
+ if (process.argv.includes("install") || process.argv.includes("mdb-install")) {
318
+ process.exit(1);
319
+ return;
320
+ }
321
+ const { toUserInstallMessage } = await import("./installer/user-errors.js");
322
+ log(toUserInstallMessage(error));
298
323
  process.exit(1);
299
324
  });
300
325
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/install.js CHANGED
@@ -1,4 +1,6 @@
1
1
  #!/usr/bin/env node
2
+ import { installHarmlessSocketErrorHandler } from "./local-http.js";
3
+ installHarmlessSocketErrorHandler();
2
4
  import { runInstaller } from "./installer/run.js";
3
5
  async function main() {
4
6
  const args = process.argv.slice(2);
@@ -7,9 +9,7 @@ async function main() {
7
9
  }
8
10
  await runInstaller(args);
9
11
  }
10
- main().catch((error) => {
11
- const message = error instanceof Error ? error.message : String(error);
12
- console.error(`Installer failed: ${message}`);
12
+ main().catch(() => {
13
13
  process.exit(1);
14
14
  });
15
15
  //# sourceMappingURL=install.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,iCAAiC,EAAE,MAAM,iBAAiB,CAAC;AAEpE,iCAAiC,EAAE,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;IAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,4 +1,16 @@
1
- export declare const CHATGPT_CONNECTORS_URL = "https://chatgpt.com/#settings/Connectors";
1
+ export declare const CLAUDE_AI_CONNECTORS_BASE = "https://claude.ai/customize/connectors";
2
+ /** Opens the add-connector modal without pre-filled fields. */
3
+ export declare const CLAUDE_AI_CONNECTOR_URL = "https://claude.ai/customize/connectors?modal=add-custom-connector";
4
+ /** Claude pre-fills name + MCP URL from the link; API key must be entered separately. */
5
+ export declare function buildClaudeConnectorUrl(params: {
6
+ connectorName: string;
7
+ connectorUrl: string;
8
+ }): string;
9
+ export declare const CHATGPT_CONNECTORS_ADVANCED_URL = "https://chatgpt.com/#settings/Connectors/Advanced";
10
+ /** @deprecated Use CHATGPT_CONNECTORS_ADVANCED_URL */
11
+ export declare const CHATGPT_CONNECTORS_URL = "https://chatgpt.com/#settings/Connectors/Advanced";
12
+ export type ConnectorPlatform = "poke" | "claude-web" | "claude-desktop" | "chatgpt";
13
+ export declare function getConnectorsDocsUrl(platform?: ConnectorPlatform): string;
2
14
  export interface AgentConnectionDetails {
3
15
  authToken: string;
4
16
  remoteMcpUrl: string;
@@ -10,10 +22,12 @@ export interface AgentConnectionDetails {
10
22
  claude: {
11
23
  mcpUrl: string;
12
24
  configPath: string;
25
+ connectorUrl: string;
13
26
  };
14
27
  chatgpt: {
15
28
  mcpUrl: string;
16
29
  settingsUrl: string;
30
+ advancedSettingsUrl: string;
17
31
  };
18
32
  }
19
33
  export declare function agentConnectionDetails(params: {
@@ -1 +1 @@
1
- {"version":3,"file":"agent-instructions.d.ts","sourceRoot":"","sources":["../../src/installer/agent-instructions.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB,6CAA6C,CAAC;AAEjF,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,sBAAsB,CAgCzB;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CAK7E"}
1
+ {"version":3,"file":"agent-instructions.d.ts","sourceRoot":"","sources":["../../src/installer/agent-instructions.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,yBAAyB,2CAA2C,CAAC;AAElF,+DAA+D;AAC/D,eAAO,MAAM,uBAAuB,sEAA4D,CAAC;AAEjG,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAOT;AAED,eAAO,MAAM,+BAA+B,sDACS,CAAC;AAEtD,sDAAsD;AACtD,eAAO,MAAM,sBAAsB,sDAAkC,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GACzB,MAAM,GACN,YAAY,GACZ,gBAAgB,GAChB,SAAS,CAAC;AAEd,wBAAgB,oBAAoB,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,MAAM,CAGzE;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,sBAAsB,CA4BzB;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,CAK7E"}
@@ -1,11 +1,28 @@
1
- import { homedir } from "node:os";
2
- import { join } from "node:path";
1
+ import { APP_NAME } from "../brand.js";
2
+ import { getAppUrl } from "../config.js";
3
+ import { claudeDesktopConfigPath } from "./claude-desktop-config.js";
3
4
  import { buildPokeMcpAddCommand } from "./poke.js";
4
- export const CHATGPT_CONNECTORS_URL = "https://chatgpt.com/#settings/Connectors";
5
+ export const CLAUDE_AI_CONNECTORS_BASE = "https://claude.ai/customize/connectors";
6
+ /** Opens the add-connector modal without pre-filled fields. */
7
+ export const CLAUDE_AI_CONNECTOR_URL = `${CLAUDE_AI_CONNECTORS_BASE}?modal=add-custom-connector`;
8
+ /** Claude pre-fills name + MCP URL from the link; API key must be entered separately. */
9
+ export function buildClaudeConnectorUrl(params) {
10
+ const query = new URLSearchParams({
11
+ modal: "add-custom-connector",
12
+ connectorName: params.connectorName,
13
+ connectorUrl: params.connectorUrl,
14
+ });
15
+ return `${CLAUDE_AI_CONNECTORS_BASE}?${query.toString()}`;
16
+ }
17
+ export const CHATGPT_CONNECTORS_ADVANCED_URL = "https://chatgpt.com/#settings/Connectors/Advanced";
18
+ /** @deprecated Use CHATGPT_CONNECTORS_ADVANCED_URL */
19
+ export const CHATGPT_CONNECTORS_URL = CHATGPT_CONNECTORS_ADVANCED_URL;
20
+ export function getConnectorsDocsUrl(platform) {
21
+ const base = `${getAppUrl().replace(/\/$/, "")}/docs/connectors`;
22
+ return platform ? `${base}#${platform}` : base;
23
+ }
5
24
  export function agentConnectionDetails(params) {
6
- const claudeConfigPath = process.platform === "darwin"
7
- ? join(homedir(), "Library", "Application Support", "Claude", "claude_desktop_config.json")
8
- : join(homedir(), ".config", "Claude", "claude_desktop_config.json");
25
+ const claudeConfigPath = claudeDesktopConfigPath();
9
26
  return {
10
27
  authToken: params.authToken,
11
28
  remoteMcpUrl: params.remoteMcpUrl,
@@ -20,10 +37,15 @@ export function agentConnectionDetails(params) {
20
37
  claude: {
21
38
  mcpUrl: params.remoteMcpUrl,
22
39
  configPath: claudeConfigPath,
40
+ connectorUrl: buildClaudeConnectorUrl({
41
+ connectorName: APP_NAME,
42
+ connectorUrl: params.remoteMcpUrl,
43
+ }),
23
44
  },
24
45
  chatgpt: {
25
46
  mcpUrl: params.remoteMcpUrl,
26
- settingsUrl: CHATGPT_CONNECTORS_URL,
47
+ settingsUrl: CHATGPT_CONNECTORS_ADVANCED_URL,
48
+ advancedSettingsUrl: CHATGPT_CONNECTORS_ADVANCED_URL,
27
49
  },
28
50
  };
29
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/installer/agent-instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEnD,MAAM,CAAC,MAAM,sBAAsB,GAAG,0CAA0C,CAAC;AAoBjF,MAAM,UAAU,sBAAsB,CAAC,MAItC;IACC,MAAM,gBAAgB,GACpB,OAAO,CAAC,QAAQ,KAAK,QAAQ;QAC3B,CAAC,CAAC,IAAI,CACF,OAAO,EAAE,EACT,SAAS,EACT,qBAAqB,EACrB,QAAQ,EACR,4BAA4B,CAC7B;QACH,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC;IAEzE,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,aAAa,EAAE,sBAAsB,CAAC;gBACpC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACvD,YAAY,EAAE,MAAM,CAAC,SAAS;aAC/B,CAAC;SACH;QACD,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,UAAU,EAAE,gBAAgB;SAC7B;QACD,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,WAAW,EAAE,sBAAsB;SACpC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,mBAAmB,OAAO,CAAC,YAAY,EAAE;QACzC,mBAAmB,OAAO,CAAC,SAAS,EAAE;KACvC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"agent-instructions.js","sourceRoot":"","sources":["../../src/installer/agent-instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEnD,MAAM,CAAC,MAAM,yBAAyB,GAAG,wCAAwC,CAAC;AAElF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,yBAAyB,6BAA6B,CAAC;AAEjG,yFAAyF;AACzF,MAAM,UAAU,uBAAuB,CAAC,MAGvC;IACC,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC;QAChC,KAAK,EAAE,sBAAsB;QAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;IACH,OAAO,GAAG,yBAAyB,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,CAAC,MAAM,+BAA+B,GAC1C,mDAAmD,CAAC;AAEtD,sDAAsD;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,+BAA+B,CAAC;AAQtE,MAAM,UAAU,oBAAoB,CAAC,QAA4B;IAC/D,MAAM,IAAI,GAAG,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC;IACjE,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAsBD,MAAM,UAAU,sBAAsB,CAAC,MAItC;IACC,MAAM,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;IAEnD,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,aAAa,EAAE,sBAAsB,CAAC;gBACpC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACvD,YAAY,EAAE,MAAM,CAAC,SAAS;aAC/B,CAAC;SACH;QACD,MAAM,EAAE;YACN,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,UAAU,EAAE,gBAAgB;YAC5B,YAAY,EAAE,uBAAuB,CAAC;gBACpC,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,MAAM,CAAC,YAAY;aAClC,CAAC;SACH;QACD,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,WAAW,EAAE,+BAA+B;YAC5C,mBAAmB,EAAE,+BAA+B;SACrD;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,mBAAmB,OAAO,CAAC,YAAY,EAAE;QACzC,mBAAmB,OAAO,CAAC,SAAS,EAAE;KACvC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/installer/agents.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AA+ND,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,CAAC,CAyDf;AAED,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/installer/agents.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAuLD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,CAAC,CA2Ef;AAED,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,40 +1,16 @@
1
1
  import { execFile } from "node:child_process";
2
- import { readFile, writeFile, mkdir } from "node:fs/promises";
3
- import { dirname, join } from "node:path";
4
2
  import { promisify } from "node:util";
5
3
  import * as clack from "@clack/prompts";
6
4
  import color from "picocolors";
7
5
  import { APP_NAME } from "../brand.js";
8
- import { agentConnectionDetails, CHATGPT_CONNECTORS_URL, formatCredentialsCard, } from "./agent-instructions.js";
6
+ import { mergeClaudeDesktopMcpConfig } from "./claude-desktop-config.js";
7
+ import { agentConnectionDetails, CHATGPT_CONNECTORS_ADVANCED_URL, getConnectorsDocsUrl, } from "./agent-instructions.js";
9
8
  import { copyToClipboard } from "./clipboard.js";
10
- import { getInstallDir, openBrowser } from "./platform.js";
9
+ import { DATA_DIR_DISPLAY } from "./data-dir.js";
10
+ import { openBrowser } from "./platform.js";
11
11
  import { buildPokeLoginCommand, POKE_LOCKIN_RECIPE_URL } from "./poke.js";
12
12
  import { isPokeLoggedIn } from "./poke.js";
13
13
  const execFileAsync = promisify(execFile);
14
- async function mergeMcpServersConfig(configPath, serverKey, serverConfig) {
15
- let config = {};
16
- try {
17
- const raw = await readFile(configPath, "utf8");
18
- config = JSON.parse(raw);
19
- }
20
- catch {
21
- // new config file
22
- }
23
- const servers = config.mcpServers && typeof config.mcpServers === "object"
24
- ? config.mcpServers
25
- : {};
26
- servers[serverKey] = serverConfig;
27
- config.mcpServers = servers;
28
- await mkdir(dirname(configPath), { recursive: true });
29
- await writeFile(configPath, `${JSON.stringify(config, null, 2)}\n`);
30
- }
31
- function remoteServerConfig(url, authToken) {
32
- const config = { url };
33
- if (authToken) {
34
- config.headers = { Authorization: `Bearer ${authToken}` };
35
- }
36
- return config;
37
- }
38
14
  async function ensurePokeLogin() {
39
15
  if (await isPokeLoggedIn()) {
40
16
  return true;
@@ -76,10 +52,12 @@ async function setupPoke(details, relayReady) {
76
52
  return;
77
53
  }
78
54
  if (!relayReady) {
79
- clack.log.warn("Relay was not verified during install. If Poke rejects the URL, finish background service setup and retry.");
55
+ clack.log.info("If your AI app can't connect yet, finish the steps below and try again.");
80
56
  }
81
- clack.log.info("Opening Poke integration form (URL + API key pre-filled)...");
57
+ clack.log.info("Opening Poke integration form (name + URL pre-filled)...");
82
58
  await openBrowser(details.pokeIntegrationUrl);
59
+ await copyToClipboard(details.authToken);
60
+ clack.log.success("API key copied — paste in Poke when prompted");
83
61
  const spinner = clack.spinner();
84
62
  spinner.start("Registering LockIn MCP with Poke CLI...");
85
63
  try {
@@ -113,58 +91,54 @@ async function setupPoke(details, relayReady) {
113
91
  clack.note([
114
92
  "In the Poke tab that just opened:",
115
93
  `1. Confirm URL: ${color.cyan(details.poke.mcpUrl)}`,
116
- `2. Confirm API key is filled in`,
94
+ "2. Paste API key when prompted (already copied to clipboard)",
117
95
  "3. Click Create Integration",
118
96
  `4. Install the LockIn recipe: ${color.cyan(POKE_LOCKIN_RECIPE_URL)}`,
119
97
  "5. Start a new Poke chat",
120
98
  ].join("\n"), "Poke setup");
121
- await copyToClipboard(details.authToken);
122
- clack.log.success("API key copied to clipboard");
123
99
  }
124
- async function setupClaude(details) {
125
- await mergeMcpServersConfig(details.claude.configPath, "lockin-mcp", remoteServerConfig(details.claude.mcpUrl, details.authToken));
126
- clack.log.success(`Added lockin-mcp to ${details.claude.configPath}`);
127
- clack.log.info("Restart Claude Desktop to load the server.");
100
+ async function setupClaudeDesktop(details) {
101
+ await mergeClaudeDesktopMcpConfig({
102
+ configPath: details.claude.configPath,
103
+ mcpUrl: details.claude.mcpUrl,
104
+ authToken: details.authToken,
105
+ });
106
+ clack.log.success(`Claude Desktop configured (${details.claude.configPath})`);
107
+ clack.log.info("Restart Claude Desktop completely (quit from the menu bar, then reopen). " +
108
+ "Node.js 18+ is required so mcp-remote can bridge the remote MCP URL.");
109
+ }
110
+ async function connectInstantly(params) {
111
+ if (params.clipboardText) {
112
+ const copied = await copyToClipboard(params.clipboardText);
113
+ if (copied) {
114
+ clack.log.success(params.clipboardSuccessMessage ?? "Copied to clipboard");
115
+ }
116
+ }
117
+ await openBrowser(params.openUrl);
118
+ clack.log.info(params.afterOpenNote);
119
+ }
120
+ async function setupClaudeWeb(details) {
121
+ await connectInstantly({
122
+ openUrl: details.claude.connectorUrl,
123
+ clipboardText: details.authToken,
124
+ clipboardSuccessMessage: "API key copied to clipboard",
125
+ afterOpenNote: "Claude opened — leave Advanced settings empty. Do not paste your API key in OAuth Client ID or Secret. " +
126
+ "Click Add, then enable LockIn in a new chat and sign in when Claude prompts. " +
127
+ "For Bearer auth, choose Claude Desktop in the installer instead.",
128
+ });
128
129
  }
129
130
  async function setupChatGPT(details) {
130
- clack.note([
131
- "1. Open ChatGPT → Settings → Connectors",
132
- `2. Add MCP server URL: ${color.cyan(details.chatgpt.mcpUrl)}`,
133
- `3. API key / auth: ${color.cyan(details.authToken)}`,
134
- "4. Save and start a new chat",
135
- ].join("\n"), "ChatGPT setup");
136
- const action = await clack.select({
137
- message: "What should we do next?",
138
- options: [
139
- { value: "url", label: "Copy MCP URL" },
140
- { value: "key", label: "Copy API key" },
141
- { value: "open", label: "Open ChatGPT Connectors settings" },
142
- { value: "skip", label: "Done" },
143
- ],
131
+ await connectInstantly({
132
+ openUrl: CHATGPT_CONNECTORS_ADVANCED_URL,
133
+ clipboardText: details.chatgpt.mcpUrl,
134
+ clipboardSuccessMessage: "MCP URL copied paste when creating the connector",
135
+ afterOpenNote: "ChatGPT opened enable Developer mode, create a connector, paste the MCP URL, " +
136
+ "set Authentication to OAuth, and leave DCR enabled. Sign in on lockinmcp.com when ChatGPT prompts — " +
137
+ "do not paste your API key in OAuth fields.",
144
138
  });
145
- if (clack.isCancel(action) || action === "skip") {
146
- return;
147
- }
148
- if (action === "url") {
149
- await copyToClipboard(details.chatgpt.mcpUrl);
150
- clack.log.success("MCP URL copied");
151
- }
152
- if (action === "key") {
153
- await copyToClipboard(details.authToken);
154
- clack.log.success("API key copied");
155
- }
156
- if (action === "open") {
157
- await openBrowser(CHATGPT_CONNECTORS_URL);
158
- }
159
139
  }
160
- function showCredentialsCard(details) {
161
- const manifestPath = join(getInstallDir(), "setup-manifest.json");
162
- clack.note([
163
- formatCredentialsCard(details),
164
- "",
165
- color.dim("One URL for all agents. Poke uses the same server automatically."),
166
- color.dim(`Saved in ${manifestPath}`),
167
- ].join("\n"), "Your LockIn MCP credentials");
140
+ function showCredentialsCard() {
141
+ clack.log.info(color.dim(`MCP URL + API key saved in ${DATA_DIR_DISPLAY}/setup-manifest.json`));
168
142
  }
169
143
  export async function promptConnectAgent(params) {
170
144
  if (!params.authToken) {
@@ -176,7 +150,7 @@ export async function promptConnectAgent(params) {
176
150
  pokeIntegrationUrl: params.pokeIntegrationUrl,
177
151
  authToken: params.authToken,
178
152
  });
179
- showCredentialsCard(details);
153
+ showCredentialsCard();
180
154
  const choice = await clack.select({
181
155
  message: "Connect your AI agent",
182
156
  options: [
@@ -186,14 +160,24 @@ export async function promptConnectAgent(params) {
186
160
  hint: "opens poke.com/integrations/new",
187
161
  },
188
162
  {
189
- value: "claude",
163
+ value: "claude-web",
164
+ label: "Claude (claude.ai)",
165
+ hint: "opens connector + OAuth sign-in",
166
+ },
167
+ {
168
+ value: "claude-desktop",
190
169
  label: "Claude Desktop",
191
- hint: "writes claude_desktop_config.json",
170
+ hint: "auto-writes config (Bearer auth)",
192
171
  },
193
172
  {
194
173
  value: "chatgpt",
195
174
  label: "ChatGPT",
196
- hint: "copy URL + API key into Connectors",
175
+ hint: "Advanced Connectors + developer mode",
176
+ },
177
+ {
178
+ value: "guide",
179
+ label: "Open connector setup guide",
180
+ hint: getConnectorsDocsUrl(),
197
181
  },
198
182
  {
199
183
  value: "skip",
@@ -205,12 +189,19 @@ export async function promptConnectAgent(params) {
205
189
  if (clack.isCancel(choice) || choice === "skip") {
206
190
  return;
207
191
  }
192
+ if (choice === "guide") {
193
+ await openBrowser(getConnectorsDocsUrl());
194
+ return;
195
+ }
208
196
  switch (choice) {
209
197
  case "poke":
210
198
  await setupPoke(details, params.publicTunnelVerified);
211
199
  break;
212
- case "claude":
213
- await setupClaude(details);
200
+ case "claude-web":
201
+ await setupClaudeWeb(details);
202
+ break;
203
+ case "claude-desktop":
204
+ await setupClaudeDesktop(details);
214
205
  break;
215
206
  case "chatgpt":
216
207
  await setupChatGPT(details);