@codemieai/code 0.13.0 → 0.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -1
- package/dist/cli/commands/proxy/connectors/desktop.d.ts +94 -4
- package/dist/cli/commands/proxy/connectors/desktop.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/desktop.js +244 -17
- package/dist/cli/commands/proxy/connectors/desktop.js.map +1 -1
- package/dist/cli/commands/proxy/connectors/managed-mcp-remote.d.ts +25 -0
- package/dist/cli/commands/proxy/connectors/managed-mcp-remote.d.ts.map +1 -1
- package/dist/cli/commands/proxy/connectors/managed-mcp-remote.js +59 -1
- package/dist/cli/commands/proxy/connectors/managed-mcp-remote.js.map +1 -1
- package/dist/cli/commands/proxy/index.d.ts.map +1 -1
- package/dist/cli/commands/proxy/index.js +10 -1
- package/dist/cli/commands/proxy/index.js.map +1 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.discovery.d.ts.map +1 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.discovery.js +13 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.discovery.js.map +1 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.paths.d.ts +12 -0
- package/dist/telemetry/clients/claude-desktop/claude-desktop.paths.d.ts.map +1 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.paths.js +28 -1
- package/dist/telemetry/clients/claude-desktop/claude-desktop.paths.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -535,7 +535,7 @@ Use Claude Desktop 3P through CodeMie proxy routing to capture `claude-desktop`
|
|
|
535
535
|
|
|
536
536
|
- `codemie` installed
|
|
537
537
|
- a valid CodeMie SSO profile
|
|
538
|
-
- Claude Desktop 3P installed
|
|
538
|
+
- Claude Desktop 3P installed — macOS, Windows, or Linux (Linux requires Claude Desktop's Ubuntu/Debian beta)
|
|
539
539
|
|
|
540
540
|
### 1. Connect Claude Desktop
|
|
541
541
|
|
|
@@ -555,6 +555,42 @@ codemie proxy inspect desktop --limit 5
|
|
|
555
555
|
codemie proxy stop
|
|
556
556
|
```
|
|
557
557
|
|
|
558
|
+
### Linux
|
|
559
|
+
|
|
560
|
+
Claude Desktop's Linux app is in beta: Ubuntu 22.04+ or Debian 12+, on x86_64 or arm64. Install it from Anthropic's apt repository first — that means registering their signing key and repo, not just `apt install`, so follow [Anthropic's Linux install guide](https://code.claude.com/docs/en/desktop-linux). Then connect exactly as on macOS and Windows:
|
|
561
|
+
|
|
562
|
+
```bash
|
|
563
|
+
codemie proxy connect desktop --verbose
|
|
564
|
+
```
|
|
565
|
+
|
|
566
|
+
`--verbose` prints the config path that was written, which is the fastest way to confirm where it landed.
|
|
567
|
+
|
|
568
|
+
**Where the config goes.** Claude Desktop is an Electron app, so its config root follows the XDG convention:
|
|
569
|
+
|
|
570
|
+
| Condition | Config library |
|
|
571
|
+
|---|---|
|
|
572
|
+
| `XDG_CONFIG_HOME` set to an absolute path | `$XDG_CONFIG_HOME/Claude-3p/configLibrary/` |
|
|
573
|
+
| otherwise (the common case) | `~/.config/Claude-3p/configLibrary/` |
|
|
574
|
+
|
|
575
|
+
An empty or relative `XDG_CONFIG_HOME` is ignored, per the XDG spec.
|
|
576
|
+
|
|
577
|
+
**Verify the write:**
|
|
578
|
+
|
|
579
|
+
```bash
|
|
580
|
+
echo "${XDG_CONFIG_HOME:-(unset)}"
|
|
581
|
+
ls -la ~/.config/Claude-3p/configLibrary/
|
|
582
|
+
cat ~/.config/Claude-3p/configLibrary/_meta.json # appliedId names the active config
|
|
583
|
+
codemie proxy inspect desktop --limit 5
|
|
584
|
+
```
|
|
585
|
+
|
|
586
|
+
Claude Desktop reads its configuration **once at launch**, so fully quit and reopen the app — not just close the window.
|
|
587
|
+
|
|
588
|
+
**If the app is launched from a desktop launcher**, it may not inherit the `XDG_CONFIG_HOME` you have exported in your shell. When that happens the CLI writes to one path and the app reads another, and the connect silently appears to do nothing. Compare the path from `--verbose` against `~/.config/Claude-3p/`.
|
|
589
|
+
|
|
590
|
+
**Managed (MDM) settings.** If `/etc/claude-desktop/managed-settings.json` exists, `codemie proxy connect desktop` warns you: Claude Desktop applies a managed source in preference to local configuration. This is not automatically fatal — a policy that sets only `disableAutoUpdates` and `autoUpdaterEnforcementHours` leaves everything else local, so the write still applies. If routing really is ignored, ask your administrator to carry the gateway settings in the managed source rather than deleting the file, which is root-owned and typically redeployed by MDM.
|
|
591
|
+
|
|
592
|
+
**WSL is not supported.** WSL reports its platform as Linux, so the config is written on the WSL side where a Windows Claude Desktop will not look for it. Run `codemie proxy connect desktop` from Windows instead.
|
|
593
|
+
|
|
558
594
|
### If Claude Desktop was already using Anthropic subscription or another Gateway
|
|
559
595
|
|
|
560
596
|
1. Quit Claude Desktop.
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type CanonicalMcpEntry, type McpOAuthConfig } from './managed-mcp-remote.js';
|
|
2
2
|
export interface ManagedMcpServerEntry {
|
|
3
3
|
name: string;
|
|
4
4
|
url: string;
|
|
5
5
|
transport?: 'http' | 'sse';
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* `true`/`false` is the legacy flag Claude Desktop already understood; an
|
|
8
|
+
* {@link McpOAuthConfig} is the structured client configuration the backend
|
|
9
|
+
* now supplies. The CLI forwards it verbatim — Desktop runs the flow.
|
|
10
|
+
*/
|
|
11
|
+
oauth?: McpOAuthConfig | boolean;
|
|
7
12
|
}
|
|
8
13
|
/**
|
|
9
14
|
* Curated list of Claude models we expose by default.
|
|
@@ -48,12 +53,87 @@ export declare function selectPreferredClaudeModels(available: string[], preferr
|
|
|
48
53
|
* are passed through untouched and order is preserved.
|
|
49
54
|
*/
|
|
50
55
|
export declare function selectDesktopClaudeModels(available: string[], preferred?: readonly string[]): string[];
|
|
56
|
+
/**
|
|
57
|
+
* Normalize the three accepted auth shapes into what Claude Desktop consumes.
|
|
58
|
+
*
|
|
59
|
+
* Precedence: a valid oauth object wins, then the oauth boolean, then the
|
|
60
|
+
* legacy `auth` enum, then `false`. The final fallback preserves the behavior
|
|
61
|
+
* of entries carrying neither field.
|
|
62
|
+
*/
|
|
63
|
+
export declare function resolveDesktopOAuth(entry: CanonicalMcpEntry): McpOAuthConfig | boolean;
|
|
51
64
|
/**
|
|
52
65
|
* Map client-neutral canonical entries to Claude Desktop's managedMcpServers
|
|
53
66
|
* shape. Drops entries Desktop cannot represent (non-http/sse transports,
|
|
54
67
|
* missing URL, or invalid name).
|
|
55
68
|
*/
|
|
56
69
|
export declare function mapCanonicalToDesktop(entries: CanonicalMcpEntry[]): ManagedMcpServerEntry[];
|
|
70
|
+
/**
|
|
71
|
+
* Copy a managed entry, including its nested oauth object.
|
|
72
|
+
*
|
|
73
|
+
* A shallow `{ ...entry }` would share the oauth object with
|
|
74
|
+
* DEFAULT_MANAGED_MCP_SERVERS — a readonly module-level constant that lives for
|
|
75
|
+
* the whole process — so a later mutation of the written config would corrupt
|
|
76
|
+
* the bundled defaults for every subsequent run.
|
|
77
|
+
*/
|
|
78
|
+
export declare function cloneManagedEntry(entry: ManagedMcpServerEntry): ManagedMcpServerEntry;
|
|
79
|
+
/** A backend entry published at the same endpoint as a bundled default that declares OAuth, without OAuth of its own. */
|
|
80
|
+
export interface ManagedOauthDowngrade {
|
|
81
|
+
/** The bundled default that was displaced. */
|
|
82
|
+
defaultName: string;
|
|
83
|
+
/** The backend entry that displaced it, at weaker auth. */
|
|
84
|
+
backendName: string;
|
|
85
|
+
/** The endpoint the backend entry was published at. */
|
|
86
|
+
url: string;
|
|
87
|
+
}
|
|
88
|
+
export interface ManagedMcpMergeResult {
|
|
89
|
+
/** The entries CodeMie owns this run, defaults first, all freshly cloned. */
|
|
90
|
+
managed: ManagedMcpServerEntry[];
|
|
91
|
+
/** Collisions where the backend entry resolved to weaker auth than the default it displaced. */
|
|
92
|
+
oauthDowngrades: ManagedOauthDowngrade[];
|
|
93
|
+
/** Names of bundled defaults dropped because an org entry collided with them. */
|
|
94
|
+
displacedDefaults: string[];
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Merge the bundled public defaults with the org catalog so a server the backend
|
|
98
|
+
* also publishes is written exactly once.
|
|
99
|
+
*
|
|
100
|
+
* The BACKEND wins every collision outright: it is authoritative for both the
|
|
101
|
+
* name and the endpoint, and its entry is written exactly as published — the CLI
|
|
102
|
+
* is a courier, not a policy layer, so no oauth value is ever rewritten. A
|
|
103
|
+
* collision that lowers auth relative to the bundled default it displaces is
|
|
104
|
+
* logged (see {@link ManagedOauthDowngrade}), never corrected.
|
|
105
|
+
*/
|
|
106
|
+
export declare function mergeManagedMcpServers(defaults: readonly ManagedMcpServerEntry[], org: readonly ManagedMcpServerEntry[]): ManagedMcpMergeResult;
|
|
107
|
+
/**
|
|
108
|
+
* The bundled defaults that are safe to seed when the org catalog fetch FAILED.
|
|
109
|
+
*
|
|
110
|
+
* A failed fetch must change nothing. Restoring a default whose name or URL an
|
|
111
|
+
* entry already in the config occupies would make reconcileManagedMcpServers treat
|
|
112
|
+
* that name as ours and drop the existing entry — silently swapping a tenant's
|
|
113
|
+
* internal server for the bundled public endpoint of the same name, which is worse
|
|
114
|
+
* than the revocation the null-fetch contract already forbids. Whatever the config
|
|
115
|
+
* holds therefore wins; a clean or first-run config still receives the full set.
|
|
116
|
+
*
|
|
117
|
+
* A stored list that is present but unreadable is not an empty one: we cannot tell
|
|
118
|
+
* which names and URLs it claims, so nothing is seeded at all.
|
|
119
|
+
*/
|
|
120
|
+
export declare function selectDefaultsForFailedFetch(existingServers: unknown, defaults?: readonly ManagedMcpServerEntry[]): ManagedMcpServerEntry[];
|
|
121
|
+
export interface ManagedOauthShapeSummary {
|
|
122
|
+
/** Entries forwarding a structured OAuth client configuration. */
|
|
123
|
+
oauthConfigured: number;
|
|
124
|
+
/** Entries carrying only the legacy `oauth: true` flag. */
|
|
125
|
+
oauthFlagged: number;
|
|
126
|
+
/** Entries with `oauth: false` or no auth information at all. */
|
|
127
|
+
noAuth: number;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Count the resolved oauth shapes so a silent downgrade (every entry landing on
|
|
131
|
+
* `false`) or a mass validation drop is visible in the daemon log.
|
|
132
|
+
*
|
|
133
|
+
* Accepts loosely-typed entries so the reconciled array — managed entries plus the
|
|
134
|
+
* user entries preserved beside them — can be summarized exactly as serialized.
|
|
135
|
+
*/
|
|
136
|
+
export declare function summarizeManagedOauthShapes(entries: readonly unknown[] | null): ManagedOauthShapeSummary;
|
|
57
137
|
export interface ReconcileResult {
|
|
58
138
|
servers: unknown[];
|
|
59
139
|
managedNames: string[];
|
|
@@ -83,10 +163,20 @@ export interface DesktopGatewayConfig {
|
|
|
83
163
|
export declare function buildGatewayConfig(proxyUrl: string, gatewayKey: string): DesktopGatewayConfig;
|
|
84
164
|
/**
|
|
85
165
|
* Returns the base directory where Claude Desktop (3P) stores its config.
|
|
86
|
-
* macOS:
|
|
87
|
-
* Windows: %
|
|
166
|
+
* macOS: ~/Library/Application Support/Claude-3p
|
|
167
|
+
* Windows: %LOCALAPPDATA%\Claude-3p
|
|
168
|
+
* Linux: $XDG_CONFIG_HOME/Claude-3p, else ~/.config/Claude-3p
|
|
88
169
|
*/
|
|
89
170
|
export declare function getDesktopBaseDir(): string;
|
|
171
|
+
/**
|
|
172
|
+
* Explains why a local config write may not take effect, or null when nothing
|
|
173
|
+
* is in the way. Claude Desktop applies a managed (MDM) source in preference to
|
|
174
|
+
* the local config library, ignoring local values entirely.
|
|
175
|
+
*
|
|
176
|
+
* The path is injectable so callers and tests can supply one; by default it is
|
|
177
|
+
* resolved from the platform.
|
|
178
|
+
*/
|
|
179
|
+
export declare function describeManagedSettingsOverride(managedSettingsPath?: string | null): string | null;
|
|
90
180
|
/**
|
|
91
181
|
* Returns the path to the active inference config JSON file under configLibrary/.
|
|
92
182
|
* If `_meta.json` doesn't exist or has no `appliedId`, returns the path that
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktop.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/desktop.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"desktop.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/desktop.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,13 @@ import { readFile, writeFile, mkdir, rename } from 'node:fs/promises';
|
|
|
2
2
|
import { existsSync } from 'node:fs';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { randomUUID } from 'node:crypto';
|
|
5
|
-
import { getClaudeDesktopBaseDir } from '../../../../telemetry/clients/claude-desktop/claude-desktop.paths.js';
|
|
5
|
+
import { getClaudeDesktopBaseDir, getClaudeDesktopManagedSettingsPath, } from '../../../../telemetry/clients/claude-desktop/claude-desktop.paths.js';
|
|
6
6
|
import { ConfigurationError } from '../../../../utils/errors.js';
|
|
7
7
|
import { logger } from '../../../../utils/logger.js';
|
|
8
8
|
import { getCodemiePath } from '../../../../utils/paths.js';
|
|
9
9
|
import { sanitizeLogArgs } from '../../../../utils/security.js';
|
|
10
10
|
import managedMcpServers from './desktop-managed-mcp-servers.json' with { type: 'json' };
|
|
11
|
+
import { isValidOAuthConfig } from './managed-mcp-remote.js';
|
|
11
12
|
const INFERENCE_KEYS = [
|
|
12
13
|
'inferenceProvider',
|
|
13
14
|
'inferenceGatewayBaseUrl',
|
|
@@ -179,25 +180,57 @@ function getManagedMcpServerName(server) {
|
|
|
179
180
|
return undefined;
|
|
180
181
|
return typeof server.name === 'string' ? server.name : undefined;
|
|
181
182
|
}
|
|
182
|
-
function
|
|
183
|
+
function getManagedMcpServerUrl(server) {
|
|
184
|
+
if (!isRecord(server))
|
|
185
|
+
return undefined;
|
|
186
|
+
return typeof server.url === 'string' ? server.url : undefined;
|
|
187
|
+
}
|
|
188
|
+
function parseManagedServerList(value) {
|
|
189
|
+
if (value === undefined || value === null) {
|
|
190
|
+
return { parsed: true, servers: [] };
|
|
191
|
+
}
|
|
183
192
|
if (Array.isArray(value)) {
|
|
184
|
-
return value;
|
|
193
|
+
return { parsed: true, servers: value };
|
|
185
194
|
}
|
|
186
195
|
if (typeof value !== 'string') {
|
|
187
|
-
return
|
|
196
|
+
return { parsed: false };
|
|
188
197
|
}
|
|
189
198
|
try {
|
|
190
199
|
const parsed = JSON.parse(value);
|
|
191
|
-
return Array.isArray(parsed) ? parsed :
|
|
200
|
+
return Array.isArray(parsed) ? { parsed: true, servers: parsed } : { parsed: false };
|
|
192
201
|
}
|
|
193
202
|
catch {
|
|
194
|
-
return
|
|
203
|
+
return { parsed: false };
|
|
195
204
|
}
|
|
196
205
|
}
|
|
206
|
+
function parseJsonArray(value) {
|
|
207
|
+
const result = parseManagedServerList(value);
|
|
208
|
+
return result.parsed ? result.servers : [];
|
|
209
|
+
}
|
|
197
210
|
function isValidMcpServerName(name) {
|
|
198
211
|
return /^[a-zA-Z0-9_-]+$/.test(name);
|
|
199
212
|
}
|
|
200
213
|
const DESKTOP_SUPPORTED_TRANSPORTS = new Set(['http', 'sse']);
|
|
214
|
+
/**
|
|
215
|
+
* Normalize the three accepted auth shapes into what Claude Desktop consumes.
|
|
216
|
+
*
|
|
217
|
+
* Precedence: a valid oauth object wins, then the oauth boolean, then the
|
|
218
|
+
* legacy `auth` enum, then `false`. The final fallback preserves the behavior
|
|
219
|
+
* of entries carrying neither field.
|
|
220
|
+
*/
|
|
221
|
+
export function resolveDesktopOAuth(entry) {
|
|
222
|
+
if (isValidOAuthConfig(entry.oauth))
|
|
223
|
+
return { ...entry.oauth };
|
|
224
|
+
if (entry.oauth === true)
|
|
225
|
+
return true;
|
|
226
|
+
if (entry.oauth === false)
|
|
227
|
+
return false;
|
|
228
|
+
if (entry.auth === 'oauth')
|
|
229
|
+
return true;
|
|
230
|
+
if (entry.auth === 'none')
|
|
231
|
+
return false;
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
201
234
|
/**
|
|
202
235
|
* Map client-neutral canonical entries to Claude Desktop's managedMcpServers
|
|
203
236
|
* shape. Drops entries Desktop cannot represent (non-http/sse transports,
|
|
@@ -214,11 +247,159 @@ export function mapCanonicalToDesktop(entries) {
|
|
|
214
247
|
name: entry.name,
|
|
215
248
|
url: entry.url,
|
|
216
249
|
transport: entry.transport,
|
|
217
|
-
oauth: entry
|
|
250
|
+
oauth: resolveDesktopOAuth(entry),
|
|
218
251
|
});
|
|
219
252
|
}
|
|
220
253
|
return result;
|
|
221
254
|
}
|
|
255
|
+
/**
|
|
256
|
+
* Copy a managed entry, including its nested oauth object.
|
|
257
|
+
*
|
|
258
|
+
* A shallow `{ ...entry }` would share the oauth object with
|
|
259
|
+
* DEFAULT_MANAGED_MCP_SERVERS — a readonly module-level constant that lives for
|
|
260
|
+
* the whole process — so a later mutation of the written config would corrupt
|
|
261
|
+
* the bundled defaults for every subsequent run.
|
|
262
|
+
*/
|
|
263
|
+
export function cloneManagedEntry(entry) {
|
|
264
|
+
const copy = { ...entry };
|
|
265
|
+
if (entry.oauth !== undefined && typeof entry.oauth === 'object') {
|
|
266
|
+
copy.oauth = { ...entry.oauth };
|
|
267
|
+
}
|
|
268
|
+
return copy;
|
|
269
|
+
}
|
|
270
|
+
/** True when the entry carries usable OAuth information (structured config or the legacy flag). */
|
|
271
|
+
function hasManagedOAuth(entry) {
|
|
272
|
+
return entry.oauth === true || (typeof entry.oauth === 'object' && entry.oauth !== null);
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* URL equality between two managed entries, compared verbatim. Managed entries
|
|
276
|
+
* come from controlled sources (DEFAULT_MANAGED_MCP_SERVERS or the backend
|
|
277
|
+
* catalog), so this is intentionally exact — no trailing-slash or host-case
|
|
278
|
+
* normalization. That normalization is a known, separately-tracked gap, not
|
|
279
|
+
* something this comparison closes.
|
|
280
|
+
*/
|
|
281
|
+
function sameManagedEndpoint(a, b) {
|
|
282
|
+
return a.url === b.url;
|
|
283
|
+
}
|
|
284
|
+
/** Case-insensitive name equality between two managed entries. */
|
|
285
|
+
function sameManagedName(a, b) {
|
|
286
|
+
return a.name.toLowerCase() === b.name.toLowerCase();
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Collision test between a bundled default and a backend entry: a shared name
|
|
290
|
+
* OR a shared endpoint, mirroring reconcileManagedMcpServers, where both sides
|
|
291
|
+
* come from controlled sources. Defined in terms of {@link sameManagedName} and
|
|
292
|
+
* {@link sameManagedEndpoint} so the wide and narrow tests cannot drift apart.
|
|
293
|
+
*/
|
|
294
|
+
function collidesWithManagedEntry(a, b) {
|
|
295
|
+
return sameManagedName(a, b) || sameManagedEndpoint(a, b);
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Merge the bundled public defaults with the org catalog so a server the backend
|
|
299
|
+
* also publishes is written exactly once.
|
|
300
|
+
*
|
|
301
|
+
* The BACKEND wins every collision outright: it is authoritative for both the
|
|
302
|
+
* name and the endpoint, and its entry is written exactly as published — the CLI
|
|
303
|
+
* is a courier, not a policy layer, so no oauth value is ever rewritten. A
|
|
304
|
+
* collision that lowers auth relative to the bundled default it displaces is
|
|
305
|
+
* logged (see {@link ManagedOauthDowngrade}), never corrected.
|
|
306
|
+
*/
|
|
307
|
+
export function mergeManagedMcpServers(defaults, org) {
|
|
308
|
+
// Single pass over defaults: keptDefaults and displacedDefaults are
|
|
309
|
+
// complements of the same collidesWithManagedEntry test, so they can never
|
|
310
|
+
// disagree about which bundled default survived.
|
|
311
|
+
const keptDefaults = [];
|
|
312
|
+
const displacedDefaults = [];
|
|
313
|
+
for (const bundled of defaults) {
|
|
314
|
+
if (org.some((entry) => collidesWithManagedEntry(bundled, entry))) {
|
|
315
|
+
displacedDefaults.push(bundled.name);
|
|
316
|
+
}
|
|
317
|
+
else {
|
|
318
|
+
keptDefaults.push(bundled);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
// Downgrade reporting is scoped to sameManagedEndpoint, not the wider
|
|
322
|
+
// collidesWithManagedEntry used for displacement above — a default's oauth
|
|
323
|
+
// describes ITS endpoint, not its name, so a backend entry that merely
|
|
324
|
+
// reuses the name at a different endpoint is not a downgrade. Because
|
|
325
|
+
// collidesWithManagedEntry is defined as sameManagedName(a, b) ||
|
|
326
|
+
// sameManagedEndpoint(a, b), a reported downgrade is by construction a
|
|
327
|
+
// strict subset of a displacement: an endpoint collision can never displace
|
|
328
|
+
// a default without also being reportable. Do not widen this back to
|
|
329
|
+
// collidesWithManagedEntry.
|
|
330
|
+
const oauthDowngrades = [];
|
|
331
|
+
for (const entry of org) {
|
|
332
|
+
if (hasManagedOAuth(entry))
|
|
333
|
+
continue;
|
|
334
|
+
// At most one record per org entry — take the first matching default, so
|
|
335
|
+
// an entry is never double-counted if it happened to match more than one.
|
|
336
|
+
const downgradedDefault = defaults.find((bundled) => hasManagedOAuth(bundled) && sameManagedEndpoint(bundled, entry));
|
|
337
|
+
if (!downgradedDefault)
|
|
338
|
+
continue;
|
|
339
|
+
oauthDowngrades.push({
|
|
340
|
+
defaultName: downgradedDefault.name,
|
|
341
|
+
backendName: entry.name,
|
|
342
|
+
url: entry.url,
|
|
343
|
+
});
|
|
344
|
+
}
|
|
345
|
+
return {
|
|
346
|
+
managed: [...keptDefaults, ...org].map(cloneManagedEntry),
|
|
347
|
+
oauthDowngrades,
|
|
348
|
+
displacedDefaults,
|
|
349
|
+
};
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* The bundled defaults that are safe to seed when the org catalog fetch FAILED.
|
|
353
|
+
*
|
|
354
|
+
* A failed fetch must change nothing. Restoring a default whose name or URL an
|
|
355
|
+
* entry already in the config occupies would make reconcileManagedMcpServers treat
|
|
356
|
+
* that name as ours and drop the existing entry — silently swapping a tenant's
|
|
357
|
+
* internal server for the bundled public endpoint of the same name, which is worse
|
|
358
|
+
* than the revocation the null-fetch contract already forbids. Whatever the config
|
|
359
|
+
* holds therefore wins; a clean or first-run config still receives the full set.
|
|
360
|
+
*
|
|
361
|
+
* A stored list that is present but unreadable is not an empty one: we cannot tell
|
|
362
|
+
* which names and URLs it claims, so nothing is seeded at all.
|
|
363
|
+
*/
|
|
364
|
+
export function selectDefaultsForFailedFetch(existingServers, defaults = DEFAULT_MANAGED_MCP_SERVERS) {
|
|
365
|
+
const stored = parseManagedServerList(existingServers);
|
|
366
|
+
if (!stored.parsed) {
|
|
367
|
+
logger.warn('[proxy] Existing managed MCP list could not be parsed — seeding no bundled defaults after the failed fetch', ...sanitizeLogArgs({
|
|
368
|
+
storedValueType: typeof existingServers,
|
|
369
|
+
skippedDefaultCount: defaults.length,
|
|
370
|
+
}));
|
|
371
|
+
return [];
|
|
372
|
+
}
|
|
373
|
+
const existing = stored.servers.filter(isRecord);
|
|
374
|
+
const takenNames = new Set(existing
|
|
375
|
+
.map((server) => getManagedMcpServerName(server))
|
|
376
|
+
.filter((name) => name !== undefined)
|
|
377
|
+
.map((name) => name.toLowerCase()));
|
|
378
|
+
const takenUrls = new Set(existing
|
|
379
|
+
.map((server) => getManagedMcpServerUrl(server))
|
|
380
|
+
.filter((url) => url !== undefined));
|
|
381
|
+
return defaults.filter((bundled) => !takenNames.has(bundled.name.toLowerCase()) && !takenUrls.has(bundled.url));
|
|
382
|
+
}
|
|
383
|
+
/**
|
|
384
|
+
* Count the resolved oauth shapes so a silent downgrade (every entry landing on
|
|
385
|
+
* `false`) or a mass validation drop is visible in the daemon log.
|
|
386
|
+
*
|
|
387
|
+
* Accepts loosely-typed entries so the reconciled array — managed entries plus the
|
|
388
|
+
* user entries preserved beside them — can be summarized exactly as serialized.
|
|
389
|
+
*/
|
|
390
|
+
export function summarizeManagedOauthShapes(entries) {
|
|
391
|
+
const summary = { oauthConfigured: 0, oauthFlagged: 0, noAuth: 0 };
|
|
392
|
+
for (const entry of entries ?? []) {
|
|
393
|
+
const oauth = isRecord(entry) ? entry.oauth : undefined;
|
|
394
|
+
if (isRecord(oauth))
|
|
395
|
+
summary.oauthConfigured += 1;
|
|
396
|
+
else if (oauth === true)
|
|
397
|
+
summary.oauthFlagged += 1;
|
|
398
|
+
else
|
|
399
|
+
summary.noAuth += 1;
|
|
400
|
+
}
|
|
401
|
+
return summary;
|
|
402
|
+
}
|
|
222
403
|
/**
|
|
223
404
|
* Reconcile the managed MCP set into an existing managedMcpServers array.
|
|
224
405
|
*
|
|
@@ -239,9 +420,15 @@ export function reconcileManagedMcpServers(existingServers, managed, previouslyM
|
|
|
239
420
|
// controlled sources (DEFAULT_MANAGED_MCP_SERVERS or the backend catalog) and
|
|
240
421
|
// are matched verbatim.
|
|
241
422
|
const managedUrls = new Set(managed.map((s) => s.url));
|
|
423
|
+
// Unlike selectDefaultsForFailedFetch (which asks "which names/URLs are
|
|
424
|
+
// already claimed?" and must treat unreadable as unknown-therefore-claimed),
|
|
425
|
+
// this asks "which existing entries must be preserved?" An unreadable value
|
|
426
|
+
// yields no identifiable entries to preserve, and a non-array value cannot be
|
|
427
|
+
// written back into a field Desktop reads as an array — so [] is the
|
|
428
|
+
// conservative answer to *this* question, not an inconsistency with the other.
|
|
242
429
|
const filtered = parseJsonArray(existingServers).filter((server) => {
|
|
243
430
|
const name = getManagedMcpServerName(server);
|
|
244
|
-
const url =
|
|
431
|
+
const url = getManagedMcpServerUrl(server);
|
|
245
432
|
if (!name) {
|
|
246
433
|
// Still drop nameless entries that point at a managed URL, so a managed
|
|
247
434
|
// endpoint can never be double-registered under an anonymous entry.
|
|
@@ -256,7 +443,7 @@ export function reconcileManagedMcpServers(existingServers, managed, previouslyM
|
|
|
256
443
|
return true;
|
|
257
444
|
});
|
|
258
445
|
return {
|
|
259
|
-
servers: [...managed.map(
|
|
446
|
+
servers: [...managed.map(cloneManagedEntry), ...filtered],
|
|
260
447
|
managedNames,
|
|
261
448
|
};
|
|
262
449
|
}
|
|
@@ -300,12 +487,27 @@ export function buildGatewayConfig(proxyUrl, gatewayKey) {
|
|
|
300
487
|
}
|
|
301
488
|
/**
|
|
302
489
|
* Returns the base directory where Claude Desktop (3P) stores its config.
|
|
303
|
-
* macOS:
|
|
304
|
-
* Windows: %
|
|
490
|
+
* macOS: ~/Library/Application Support/Claude-3p
|
|
491
|
+
* Windows: %LOCALAPPDATA%\Claude-3p
|
|
492
|
+
* Linux: $XDG_CONFIG_HOME/Claude-3p, else ~/.config/Claude-3p
|
|
305
493
|
*/
|
|
306
494
|
export function getDesktopBaseDir() {
|
|
307
495
|
return getClaudeDesktopBaseDir();
|
|
308
496
|
}
|
|
497
|
+
/**
|
|
498
|
+
* Explains why a local config write may not take effect, or null when nothing
|
|
499
|
+
* is in the way. Claude Desktop applies a managed (MDM) source in preference to
|
|
500
|
+
* the local config library, ignoring local values entirely.
|
|
501
|
+
*
|
|
502
|
+
* The path is injectable so callers and tests can supply one; by default it is
|
|
503
|
+
* resolved from the platform.
|
|
504
|
+
*/
|
|
505
|
+
export function describeManagedSettingsOverride(managedSettingsPath = getClaudeDesktopManagedSettingsPath()) {
|
|
506
|
+
if (!managedSettingsPath || !existsSync(managedSettingsPath))
|
|
507
|
+
return null;
|
|
508
|
+
return (`${managedSettingsPath} exists. Claude Desktop applies managed settings ` +
|
|
509
|
+
`instead of local configuration, so this write may have no effect.`);
|
|
510
|
+
}
|
|
309
511
|
/**
|
|
310
512
|
* Returns the path to the active inference config JSON file under configLibrary/.
|
|
311
513
|
* If `_meta.json` doesn't exist or has no `appliedId`, returns the path that
|
|
@@ -378,12 +580,24 @@ export async function writeDesktopConfig(proxyUrl, gatewayKey, baseDir = getDesk
|
|
|
378
580
|
// outage would otherwise strip the user's internal MCPs) and must leave the
|
|
379
581
|
// marker state untouched so a later successful run can still revoke.
|
|
380
582
|
const orgFetchSucceeded = orgMcpServers !== null;
|
|
381
|
-
// Dedup
|
|
382
|
-
//
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
const
|
|
583
|
+
// Dedup bundled public defaults against the org catalog so an entry the
|
|
584
|
+
// backend also publishes is written once (see mergeManagedMcpServers for the
|
|
585
|
+
// collision precedence). On a FAILED fetch the defaults are first narrowed to
|
|
586
|
+
// those the config does not already hold, so a previously-written org entry
|
|
587
|
+
// that shadowed a default is never evicted by the public endpoint it replaced.
|
|
588
|
+
const org = orgMcpServers ?? [];
|
|
589
|
+
const seedDefaults = orgFetchSucceeded
|
|
590
|
+
? DEFAULT_MANAGED_MCP_SERVERS
|
|
591
|
+
: selectDefaultsForFailedFetch(existing.managedMcpServers);
|
|
592
|
+
const { managed: managedSet, oauthDowngrades, displacedDefaults } = mergeManagedMcpServers(seedDefaults, org);
|
|
593
|
+
if (oauthDowngrades.length > 0) {
|
|
594
|
+
logger.warn('[proxy] Managed MCP entry published without the auth its bundled default declares (auth downgrade) — forwarding it as published', ...sanitizeLogArgs({
|
|
595
|
+
oauthDowngradeCount: oauthDowngrades.length,
|
|
596
|
+
sourceBundledDefaults: oauthDowngrades.map((downgrade) => downgrade.defaultName),
|
|
597
|
+
downgradedBackendEntries: oauthDowngrades.map((downgrade) => downgrade.backendName),
|
|
598
|
+
downgradedUrls: oauthDowngrades.map((downgrade) => downgrade.url),
|
|
599
|
+
}));
|
|
600
|
+
}
|
|
387
601
|
const previouslyManagedNames = orgFetchSucceeded ? await readManagedMcpState(managedStatePath) : [];
|
|
388
602
|
const { servers: managedMcpServers, managedNames } = reconcileManagedMcpServers(existing.managedMcpServers, managedSet, previouslyManagedNames);
|
|
389
603
|
// Marker write-ahead (successful fetch only): record the UNION of previously-
|
|
@@ -398,6 +612,12 @@ export async function writeDesktopConfig(proxyUrl, gatewayKey, baseDir = getDesk
|
|
|
398
612
|
const unionNames = [...new Set([...previouslyManagedNames, ...managedNames])];
|
|
399
613
|
await writeManagedMcpState(managedStatePath, unionNames);
|
|
400
614
|
}
|
|
615
|
+
// Summarize the reconciled list we are about to serialize (not the org catalog
|
|
616
|
+
// index.ts already logs), so the shape counts always add up to
|
|
617
|
+
// managedMcpServerCount and a logged auth downgrade is visible in the field.
|
|
618
|
+
// seededDefaultCount reports what was offered to the merge, not what was
|
|
619
|
+
// written — displacedDefaultCount and displacedDefaults reconcile the difference.
|
|
620
|
+
const writtenOauthShapes = summarizeManagedOauthShapes(managedMcpServers);
|
|
401
621
|
logger.info('[proxy] Preparing Claude Desktop config payload', ...sanitizeLogArgs({
|
|
402
622
|
baseDir,
|
|
403
623
|
configPath,
|
|
@@ -409,6 +629,13 @@ export async function writeDesktopConfig(proxyUrl, gatewayKey, baseDir = getDesk
|
|
|
409
629
|
resolvedModels,
|
|
410
630
|
inferenceModelsWritten: inferenceModels.length > 0,
|
|
411
631
|
managedMcpServerCount: managedMcpServers.length,
|
|
632
|
+
seededDefaultCount: seedDefaults.length,
|
|
633
|
+
displacedDefaultCount: displacedDefaults.length,
|
|
634
|
+
displacedDefaults,
|
|
635
|
+
oauthDowngradeCount: oauthDowngrades.length,
|
|
636
|
+
oauthConfiguredCount: writtenOauthShapes.oauthConfigured,
|
|
637
|
+
oauthFlaggedCount: writtenOauthShapes.oauthFlagged,
|
|
638
|
+
noAuthCount: writtenOauthShapes.noAuth,
|
|
412
639
|
existingConfigKeys: Object.keys(existing),
|
|
413
640
|
}));
|
|
414
641
|
for (const key of INFERENCE_KEYS) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/desktop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/desktop.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OAuth client configuration supplied by the backend for a managed MCP server.
|
|
3
|
+
*
|
|
4
|
+
* The CLI never performs the OAuth flow itself — it forwards this object to the
|
|
5
|
+
* client (Claude Desktop), which owns the flow. The index signature is
|
|
6
|
+
* deliberate: unknown backend keys (a future `audience`, `resource`, `pkce`, …)
|
|
7
|
+
* must survive to the client without a CLI release.
|
|
8
|
+
*/
|
|
9
|
+
export interface McpOAuthConfig {
|
|
10
|
+
clientId: string;
|
|
11
|
+
authorizationUrl: string;
|
|
12
|
+
tokenUrl: string;
|
|
13
|
+
scope?: string;
|
|
14
|
+
callbackHost?: string;
|
|
15
|
+
callbackPort?: number;
|
|
16
|
+
[key: string]: unknown;
|
|
17
|
+
}
|
|
1
18
|
/** Client-neutral MCP entry returned by GET /v1/mcp/managed-servers. */
|
|
2
19
|
export interface CanonicalMcpEntry {
|
|
3
20
|
name: string;
|
|
4
21
|
transport: 'http' | 'sse' | 'stdio';
|
|
5
22
|
url?: string;
|
|
23
|
+
/** Legacy flag retained for the rollout window; superseded by `oauth`. */
|
|
6
24
|
auth?: 'oauth' | 'none';
|
|
25
|
+
oauth?: McpOAuthConfig | boolean;
|
|
7
26
|
description?: string;
|
|
8
27
|
clients?: string[];
|
|
9
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Sanity-gate an oauth object: require the fields the client cannot run a flow
|
|
31
|
+
* without, type-check the optional ones, and let every unknown key through
|
|
32
|
+
* untouched. This is deliberately not an allowlist.
|
|
33
|
+
*/
|
|
34
|
+
export declare function isValidOAuthConfig(value: unknown): value is McpOAuthConfig;
|
|
10
35
|
/**
|
|
11
36
|
* Fetch the client-neutral managed MCP catalog from CodeMie.
|
|
12
37
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-mcp-remote.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/managed-mcp-remote.ts"],"names":[],"mappings":"AAUA,wEAAwE;AACxE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"managed-mcp-remote.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/managed-mcp-remote.ts"],"names":[],"mappings":"AAUA;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wEAAwE;AACxE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;IACpC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,IAAI,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAa1E;AA4CD;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC,CA2DrC"}
|
|
@@ -6,6 +6,36 @@ import { sanitizeLogArgs } from '../../../../utils/security.js';
|
|
|
6
6
|
const VALID_NAME = /^[a-zA-Z0-9_-]+$/;
|
|
7
7
|
const CANONICAL_TRANSPORTS = new Set(['http', 'sse', 'stdio']);
|
|
8
8
|
const CANONICAL_AUTH = new Set(['oauth', 'none']);
|
|
9
|
+
function isNonEmptyString(value) {
|
|
10
|
+
return typeof value === 'string' && value.trim().length > 0;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Sanity-gate an oauth object: require the fields the client cannot run a flow
|
|
14
|
+
* without, type-check the optional ones, and let every unknown key through
|
|
15
|
+
* untouched. This is deliberately not an allowlist.
|
|
16
|
+
*/
|
|
17
|
+
export function isValidOAuthConfig(value) {
|
|
18
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
19
|
+
return false;
|
|
20
|
+
const o = value;
|
|
21
|
+
if (!isNonEmptyString(o.clientId))
|
|
22
|
+
return false;
|
|
23
|
+
if (!isNonEmptyString(o.authorizationUrl))
|
|
24
|
+
return false;
|
|
25
|
+
if (!isNonEmptyString(o.tokenUrl))
|
|
26
|
+
return false;
|
|
27
|
+
if (o.scope !== undefined && o.scope !== null && typeof o.scope !== 'string')
|
|
28
|
+
return false;
|
|
29
|
+
if (o.callbackHost !== undefined && o.callbackHost !== null && typeof o.callbackHost !== 'string')
|
|
30
|
+
return false;
|
|
31
|
+
if (o.callbackPort !== undefined && o.callbackPort !== null) {
|
|
32
|
+
if (typeof o.callbackPort !== 'number' || !Number.isInteger(o.callbackPort))
|
|
33
|
+
return false;
|
|
34
|
+
if (o.callbackPort < 1 || o.callbackPort > 65535)
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
9
39
|
function isValidCanonicalEntry(value) {
|
|
10
40
|
if (typeof value !== 'object' || value === null)
|
|
11
41
|
return false;
|
|
@@ -20,6 +50,18 @@ function isValidCanonicalEntry(value) {
|
|
|
20
50
|
// optionals as `null`, so treat null the same as undefined ("absent").
|
|
21
51
|
if (e.auth !== undefined && e.auth !== null && (typeof e.auth !== 'string' || !CANONICAL_AUTH.has(e.auth)))
|
|
22
52
|
return false;
|
|
53
|
+
// `oauth` accepts a boolean flag or a structured config object. A malformed
|
|
54
|
+
// object invalidates the WHOLE entry: forwarding half a client configuration
|
|
55
|
+
// would make the client fail the flow with no diagnosis.
|
|
56
|
+
if (e.oauth !== undefined && e.oauth !== null) {
|
|
57
|
+
if (typeof e.oauth === 'object') {
|
|
58
|
+
if (!isValidOAuthConfig(e.oauth))
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
else if (typeof e.oauth !== 'boolean') {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
23
65
|
if (e.description !== undefined && e.description !== null && typeof e.description !== 'string')
|
|
24
66
|
return false;
|
|
25
67
|
if (e.clients !== undefined && e.clients !== null &&
|
|
@@ -33,6 +75,12 @@ function pickCanonicalFields(e) {
|
|
|
33
75
|
out.url = e.url;
|
|
34
76
|
if (e.auth !== undefined && e.auth !== null)
|
|
35
77
|
out.auth = e.auth;
|
|
78
|
+
// Copy the oauth value wholesale instead of rebuilding it from known keys:
|
|
79
|
+
// that is what lets a future backend field reach the client without a CLI
|
|
80
|
+
// release. The shallow copy detaches it from the parsed response payload.
|
|
81
|
+
if (e.oauth !== undefined && e.oauth !== null) {
|
|
82
|
+
out.oauth = typeof e.oauth === 'object' ? { ...e.oauth } : e.oauth;
|
|
83
|
+
}
|
|
36
84
|
if (e.description !== undefined && e.description !== null)
|
|
37
85
|
out.description = e.description;
|
|
38
86
|
if (Array.isArray(e.clients))
|
|
@@ -84,7 +132,17 @@ export async function fetchManagedMcpServers(client, codeMieUrl) {
|
|
|
84
132
|
// caller does not mistake it for an authoritative "empty catalog".
|
|
85
133
|
if (!Array.isArray(json))
|
|
86
134
|
return null;
|
|
87
|
-
|
|
135
|
+
const valid = json.filter(isValidCanonicalEntry).map(pickCanonicalFields);
|
|
136
|
+
const dropped = json.length - valid.length;
|
|
137
|
+
if (dropped > 0) {
|
|
138
|
+
logger.warn('[proxy] Managed MCP entries dropped by validation', ...sanitizeLogArgs({ received: json.length, kept: valid.length, dropped }));
|
|
139
|
+
}
|
|
140
|
+
// A non-empty payload where NOTHING survived is a backend contract failure,
|
|
141
|
+
// not an authoritative empty catalog. Returning [] here would make
|
|
142
|
+
// writeDesktopConfig revoke every org MCP server the tenant has.
|
|
143
|
+
if (json.length > 0 && valid.length === 0)
|
|
144
|
+
return null;
|
|
145
|
+
return valid;
|
|
88
146
|
}
|
|
89
147
|
catch (error) {
|
|
90
148
|
logger.warn('[proxy] Managed MCP fetch threw', ...sanitizeLogArgs({ error: error instanceof Error ? error.message : String(error) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-mcp-remote.js","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/managed-mcp-remote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,UAAU,GAAG,kBAAkB,CAAC;AACtC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"managed-mcp-remote.js","sourceRoot":"","sources":["../../../../../src/cli/commands/proxy/connectors/managed-mcp-remote.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/proxy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoMpC,wBAAgB,kBAAkB,IAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/proxy/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoMpC,wBAAgB,kBAAkB,IAAI,OAAO,CAqf5C"}
|
|
@@ -9,7 +9,7 @@ import { sanitizeLogArgs } from '../../../utils/security.js';
|
|
|
9
9
|
import { syncRegisteredSkills } from '../skills/setup/sync.js';
|
|
10
10
|
import { syncPluginSkills } from '../skills/setup/sync-plugin.js';
|
|
11
11
|
import { checkStatus, readState, spawnDaemon, stopDaemon, } from './daemon-manager.js';
|
|
12
|
-
import { writeDesktopConfig, getDesktopBaseDir, mapCanonicalToDesktop } from './connectors/desktop.js';
|
|
12
|
+
import { writeDesktopConfig, describeManagedSettingsOverride, getDesktopBaseDir, mapCanonicalToDesktop, summarizeManagedOauthShapes } from './connectors/desktop.js';
|
|
13
13
|
import { fetchManagedMcpServers } from './connectors/managed-mcp-remote.js';
|
|
14
14
|
import { writeVsCodeLanguageModelsConfig } from './connectors/vscode.js';
|
|
15
15
|
import { VS_CODE_SUPPORTED_MODELS } from './connectors/vscode-models.js';
|
|
@@ -354,12 +354,16 @@ export function createProxyCommand() {
|
|
|
354
354
|
? await fetchManagedMcpServers('claude-desktop', state.syncCodeMieUrl)
|
|
355
355
|
: null;
|
|
356
356
|
const orgMcpServers = canonical ? mapCanonicalToDesktop(canonical) : null;
|
|
357
|
+
const oauthShapes = summarizeManagedOauthShapes(orgMcpServers);
|
|
357
358
|
logger.info('[proxy] Resolved managed MCP servers for Claude Desktop', ...sanitizeLogArgs({
|
|
358
359
|
codeMieUrl: state.syncCodeMieUrl,
|
|
359
360
|
fetchSucceeded: canonical !== null,
|
|
360
361
|
canonicalCount: canonical?.length ?? 0,
|
|
361
362
|
mappedCount: orgMcpServers?.length ?? 0,
|
|
362
363
|
mappedNames: orgMcpServers?.map((s) => s.name) ?? [],
|
|
364
|
+
oauthConfiguredCount: oauthShapes.oauthConfigured,
|
|
365
|
+
oauthFlaggedCount: oauthShapes.oauthFlagged,
|
|
366
|
+
noAuthCount: oauthShapes.noAuth,
|
|
363
367
|
}));
|
|
364
368
|
const configPath = await writeDesktopConfig(state.url, state.gatewayKey, getDesktopBaseDir(), orgMcpServers);
|
|
365
369
|
logger.info('[proxy] Claude Desktop proxy configuration written', ...sanitizeLogArgs({
|
|
@@ -370,6 +374,11 @@ export function createProxyCommand() {
|
|
|
370
374
|
inferenceGatewayApiKey: state.gatewayKey,
|
|
371
375
|
}));
|
|
372
376
|
console.log(chalk.green('✓ Claude Desktop configured'));
|
|
377
|
+
const managedSettingsWarning = describeManagedSettingsOverride();
|
|
378
|
+
if (managedSettingsWarning) {
|
|
379
|
+
console.log(chalk.yellow(`⚠ ${managedSettingsWarning}`));
|
|
380
|
+
logger.warn('[proxy] Claude Desktop managed settings source present', ...sanitizeLogArgs({ managedSettingsWarning }));
|
|
381
|
+
}
|
|
373
382
|
if (verbose) {
|
|
374
383
|
console.log(` Config: ${configPath}`);
|
|
375
384
|
console.log(` Gateway: ${state.url}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/proxy/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/proxy/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-desktop.discovery.d.ts","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.discovery.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-desktop.discovery.d.ts","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.discovery.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AA2HpF,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,+BAA+B,EAAE,CAAC,CA8D5C"}
|
|
@@ -3,6 +3,7 @@ import { readdir, readFile } from 'fs/promises';
|
|
|
3
3
|
import { join } from 'path';
|
|
4
4
|
import { resolveHomeDir, normalizePathSeparators } from '../../../utils/paths.js';
|
|
5
5
|
import { logger } from '../../../utils/logger.js';
|
|
6
|
+
import { sanitizeLogArgs } from '../../../utils/security.js';
|
|
6
7
|
import { getClaudeDesktopCodeSessionsRoot, getClaudeDesktopLocalSessionsRoot } from './claude-desktop.paths.js';
|
|
7
8
|
async function loadCompanionMetadata(metadataPath) {
|
|
8
9
|
const localRoot = getClaudeDesktopLocalSessionsRoot();
|
|
@@ -65,7 +66,18 @@ async function resolveClaudeTranscriptPath(metadata) {
|
|
|
65
66
|
}
|
|
66
67
|
async function walk(root) {
|
|
67
68
|
const files = [];
|
|
68
|
-
|
|
69
|
+
// A directory that is unreadable (root-owned leftovers under ~/.config) or
|
|
70
|
+
// deleted between listing and descent must cost us that subtree only. This
|
|
71
|
+
// rejection would otherwise propagate through DesktopTelemetryRuntime.start()
|
|
72
|
+
// and abort the proxy daemon before it writes its state file.
|
|
73
|
+
let entries;
|
|
74
|
+
try {
|
|
75
|
+
entries = await readdir(root, { withFileTypes: true });
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
logger.debug('[claude-desktop] Skipping unreadable session directory', ...sanitizeLogArgs({ root, error: error instanceof Error ? error.message : String(error) }));
|
|
79
|
+
return files;
|
|
80
|
+
}
|
|
69
81
|
for (const entry of entries) {
|
|
70
82
|
const fullPath = join(root, entry.name);
|
|
71
83
|
if (entry.isDirectory()) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-desktop.discovery.js","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.discovery.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"claude-desktop.discovery.js","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
1
|
export declare function getClaudeDesktopBaseDir(): string;
|
|
2
|
+
/**
|
|
3
|
+
* Path to the managed (MDM) settings source, where the platform exposes one as
|
|
4
|
+
* a plain file. A managed source overrides local configLibrary entries
|
|
5
|
+
* entirely, so its presence makes a local write ineffective.
|
|
6
|
+
*
|
|
7
|
+
* Returns null on macOS and Windows. Windows keeps its managed source in the
|
|
8
|
+
* registry, which is not a file. macOS does use one
|
|
9
|
+
* (/Library/Managed Preferences/<user>/com.anthropic.claudefordesktop.plist),
|
|
10
|
+
* but a device-scoped profile lands outside that per-user path, so stat-ing it
|
|
11
|
+
* would detect only some managed Macs; doing it properly is out of scope here.
|
|
12
|
+
*/
|
|
13
|
+
export declare function getClaudeDesktopManagedSettingsPath(): string | null;
|
|
2
14
|
export declare function getClaudeDesktopLocalSessionsRoot(): string;
|
|
3
15
|
export declare function getClaudeDesktopCodeSessionsRoot(): string;
|
|
4
16
|
//# sourceMappingURL=claude-desktop.paths.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-desktop.paths.d.ts","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.paths.ts"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"claude-desktop.paths.d.ts","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.paths.ts"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,IAAI,MAAM,CA+BhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mCAAmC,IAAI,MAAM,GAAG,IAAI,CAEnE;AAED,wBAAgB,iCAAiC,IAAI,MAAM,CAE1D;AAED,wBAAgB,gCAAgC,IAAI,MAAM,CAEzD"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { homedir } from 'node:os';
|
|
2
|
-
import { join } from 'node:path';
|
|
2
|
+
import { isAbsolute, join } from 'node:path';
|
|
3
3
|
import { ConfigurationError } from '../../../utils/errors.js';
|
|
4
4
|
export function getClaudeDesktopBaseDir() {
|
|
5
5
|
if (process.platform === 'win32') {
|
|
@@ -11,8 +11,35 @@ export function getClaudeDesktopBaseDir() {
|
|
|
11
11
|
if (process.platform === 'darwin') {
|
|
12
12
|
return join(homedir(), 'Library', 'Application Support', 'Claude-3p');
|
|
13
13
|
}
|
|
14
|
+
if (process.platform === 'linux') {
|
|
15
|
+
// Claude Desktop is Electron, whose appData dir resolves to
|
|
16
|
+
// $XDG_CONFIG_HOME || ~/.config; Claude-3p sits directly under it, exactly
|
|
17
|
+
// as ~/Library/Application Support/Claude-3p does on macOS. Anthropic
|
|
18
|
+
// documents the local 3P config library as ~/.config/Claude-3p/configLibrary/.
|
|
19
|
+
//
|
|
20
|
+
// The XDG spec treats an empty value as unset and requires absolute paths,
|
|
21
|
+
// and Electron enforces the same. Honouring a relative value here would
|
|
22
|
+
// resolve the config against the current directory.
|
|
23
|
+
const xdgConfigHome = process.env.XDG_CONFIG_HOME;
|
|
24
|
+
const configDir = xdgConfigHome && isAbsolute(xdgConfigHome) ? xdgConfigHome : join(homedir(), '.config');
|
|
25
|
+
return join(configDir, 'Claude-3p');
|
|
26
|
+
}
|
|
14
27
|
throw new ConfigurationError(`Claude Desktop proxy is not supported on platform "${process.platform}"`);
|
|
15
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Path to the managed (MDM) settings source, where the platform exposes one as
|
|
31
|
+
* a plain file. A managed source overrides local configLibrary entries
|
|
32
|
+
* entirely, so its presence makes a local write ineffective.
|
|
33
|
+
*
|
|
34
|
+
* Returns null on macOS and Windows. Windows keeps its managed source in the
|
|
35
|
+
* registry, which is not a file. macOS does use one
|
|
36
|
+
* (/Library/Managed Preferences/<user>/com.anthropic.claudefordesktop.plist),
|
|
37
|
+
* but a device-scoped profile lands outside that per-user path, so stat-ing it
|
|
38
|
+
* would detect only some managed Macs; doing it properly is out of scope here.
|
|
39
|
+
*/
|
|
40
|
+
export function getClaudeDesktopManagedSettingsPath() {
|
|
41
|
+
return process.platform === 'linux' ? '/etc/claude-desktop/managed-settings.json' : null;
|
|
42
|
+
}
|
|
16
43
|
export function getClaudeDesktopLocalSessionsRoot() {
|
|
17
44
|
return join(getClaudeDesktopBaseDir(), 'local-agent-mode-sessions');
|
|
18
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-desktop.paths.js","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-desktop.paths.js","sourceRoot":"","sources":["../../../../src/telemetry/clients/claude-desktop/claude-desktop.paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,UAAU,uBAAuB;IACrC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,2EAA2E;QAC3E,qEAAqE;QACrE,MAAM,YAAY,GAChB,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,4DAA4D;QAC5D,2EAA2E;QAC3E,sEAAsE;QACtE,+EAA+E;QAC/E,EAAE;QACF,2EAA2E;QAC3E,wEAAwE;QACxE,oDAAoD;QACpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QAClD,MAAM,SAAS,GACb,aAAa,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;QAC1F,OAAO,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,IAAI,kBAAkB,CAC1B,sDAAsD,OAAO,CAAC,QAAQ,GAAG,CAC1E,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mCAAmC;IACjD,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,2CAA2C,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3F,CAAC;AAED,MAAM,UAAU,iCAAiC;IAC/C,OAAO,IAAI,CAAC,uBAAuB,EAAE,EAAE,2BAA2B,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,gCAAgC;IAC9C,OAAO,IAAI,CAAC,uBAAuB,EAAE,EAAE,sBAAsB,CAAC,CAAC;AACjE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@codemieai/code",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.1",
|
|
4
4
|
"description": "Unified AI coding assistant CLI - Manage Claude Code, Gemini & custom agents. Multi-provider support (OpenAI, Azure, LiteLLM, SSO). Built-in LangGraph agent with file operations & git integration.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|