@enterpriseai/cli 3.15.10 → 3.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -2
- package/dist/commands/classifier.d.ts.map +1 -1
- package/dist/commands/classifier.js +4 -1
- package/dist/commands/classifier.js.map +1 -1
- package/dist/commands/docs.d.ts.map +1 -1
- package/dist/commands/docs.js +88 -31
- package/dist/commands/docs.js.map +1 -1
- package/dist/commands/init.d.ts +10 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +60 -16
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/start.d.ts +15 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +99 -40
- package/dist/commands/start.js.map +1 -1
- package/dist/lib/agent-guide.js +2 -2
- package/dist/lib/agent-guide.js.map +1 -1
- package/dist/lib/ai-surface-installer.d.ts +38 -0
- package/dist/lib/ai-surface-installer.d.ts.map +1 -0
- package/dist/lib/ai-surface-installer.js +160 -0
- package/dist/lib/ai-surface-installer.js.map +1 -0
- package/dist/lib/ai-surfaces.d.ts +15 -0
- package/dist/lib/ai-surfaces.d.ts.map +1 -1
- package/dist/lib/ai-surfaces.js +155 -72
- package/dist/lib/ai-surfaces.js.map +1 -1
- package/dist/lib/api.d.ts +16 -2
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +43 -8
- package/dist/lib/api.js.map +1 -1
- package/dist/lib/local-isolation.d.ts +30 -0
- package/dist/lib/local-isolation.d.ts.map +1 -0
- package/dist/lib/local-isolation.js +179 -0
- package/dist/lib/local-isolation.js.map +1 -0
- package/dist/lib/project-manifest.d.ts +1 -0
- package/dist/lib/project-manifest.d.ts.map +1 -1
- package/dist/lib/project-manifest.js +12 -6
- package/dist/lib/project-manifest.js.map +1 -1
- package/package.json +2 -2
- package/resources/gofer/.gofer-version +11 -1
- package/resources/gofer/bash-scripts/sync-implementation-status.sh +3 -4
- package/resources/gofer/references/platform/eai-service-patterns.md +84 -1
- package/resources/gofer/templates/visuals/capability-heatmap-template.md +2 -2
- package/resources/linked-sources.json +3 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-surface-installer.d.ts","sourceRoot":"","sources":["../../src/lib/ai-surface-installer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAM9D,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7F,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;CACzC;AAED,MAAM,MAAM,yBAAyB,GACjC,WAAW,GACX,SAAS,GACT,QAAQ,GACR,sBAAsB,CAAC;AAE3B,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;CACtC;AAED,MAAM,MAAM,wBAAwB,GAAG,CACrC,MAAM,EAAE,4BAA4B,KACjC,OAAO,CAAC;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAU5C,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,MAAM,GAAE,MAAM,CAAC,UAAwB,GACtC,MAAM,CAAC,UAAU,CAcnB;AAED,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,qBAAqB,EACnC,aAAa,SAA8B,EAC3C,WAAW,GAAE,MAAM,CAAC,UAAwB,GAC3C,4BAA4B,CAwC9B;AAyCD,wBAAsB,wBAAwB,CAAC,OAAO,EAAE;IACtD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,wBAAwB,CAAC;CAC5C,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA0BvC;AAED,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAC1D,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;IAC7C,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAClE,QAAQ,CAAC,eAAe,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAcrC"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { spawn } from 'node:child_process';
|
|
2
|
+
import { lstat, realpath } from 'node:fs/promises';
|
|
3
|
+
import { delimiter, dirname, join, resolve, sep, win32 } from 'node:path';
|
|
4
|
+
import { resolveGoferResourcesPath } from './gofer-installer.js';
|
|
5
|
+
// Packaged helpers own the 15-minute provider deadline and cleanup. This outer
|
|
6
|
+
// deadline is a final guard with enough headroom for their cleanup path.
|
|
7
|
+
const INSTALL_TIMEOUT_MS = 17 * 60 * 1000;
|
|
8
|
+
const COMPANION_TO_TOOL = Object.freeze({
|
|
9
|
+
'copilot-cli': 'copilot',
|
|
10
|
+
'antigravity-cli': 'antigravity',
|
|
11
|
+
'claude-cli': 'claude',
|
|
12
|
+
'codex-cli': 'codex',
|
|
13
|
+
'grok-cli': 'grok',
|
|
14
|
+
});
|
|
15
|
+
export function buildCompanionInstallerEnvironment(platform, source = process.env) {
|
|
16
|
+
const nodeDirectory = dirname(process.execPath);
|
|
17
|
+
const trustedPath = platform === 'win32'
|
|
18
|
+
? [nodeDirectory, `${source.SystemRoot ?? 'C:\\Windows'}\\System32`]
|
|
19
|
+
: [nodeDirectory, '/opt/homebrew/bin', '/usr/local/bin', '/usr/bin', '/bin', '/usr/sbin', '/sbin'];
|
|
20
|
+
const environment = { PATH: [...new Set(trustedPath)].join(delimiter) };
|
|
21
|
+
for (const key of [
|
|
22
|
+
'HOME', 'USER', 'LOGNAME', 'USERPROFILE', 'APPDATA', 'LOCALAPPDATA',
|
|
23
|
+
'ProgramFiles', 'ProgramFiles(x86)', 'SystemRoot', 'ComSpec',
|
|
24
|
+
'TEMP', 'TMP', 'TMPDIR', 'LANG', 'LC_ALL',
|
|
25
|
+
]) {
|
|
26
|
+
if (source[key])
|
|
27
|
+
environment[key] = source[key];
|
|
28
|
+
}
|
|
29
|
+
return environment;
|
|
30
|
+
}
|
|
31
|
+
export function buildCompanionInstallerExecConfig(platform, workspacePath, companionCli, resourcesPath = resolveGoferResourcesPath(), environment = process.env) {
|
|
32
|
+
const workspace = resolve(workspacePath);
|
|
33
|
+
const tool = COMPANION_TO_TOOL[companionCli];
|
|
34
|
+
if (platform === 'win32') {
|
|
35
|
+
const systemRoot = environment.SystemRoot ?? 'C:\\Windows';
|
|
36
|
+
return {
|
|
37
|
+
platform,
|
|
38
|
+
command: win32.join(systemRoot, 'System32', 'WindowsPowerShell', 'v1.0', 'powershell.exe'),
|
|
39
|
+
args: [
|
|
40
|
+
'-NoLogo',
|
|
41
|
+
'-NoProfile',
|
|
42
|
+
'-NonInteractive',
|
|
43
|
+
'-ExecutionPolicy',
|
|
44
|
+
'Bypass',
|
|
45
|
+
'-File',
|
|
46
|
+
join(resourcesPath, 'powershell-scripts', 'install-optional-tools.ps1'),
|
|
47
|
+
'-WorkspacePath',
|
|
48
|
+
workspace,
|
|
49
|
+
'-Tools',
|
|
50
|
+
tool,
|
|
51
|
+
],
|
|
52
|
+
timeoutMs: INSTALL_TIMEOUT_MS,
|
|
53
|
+
systemRoot,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
if (platform === 'darwin' || platform === 'linux') {
|
|
57
|
+
return {
|
|
58
|
+
platform,
|
|
59
|
+
command: '/bin/bash',
|
|
60
|
+
args: [
|
|
61
|
+
join(resourcesPath, 'bash-scripts', 'install-optional-tools.sh'),
|
|
62
|
+
'--workspace-path',
|
|
63
|
+
workspace,
|
|
64
|
+
'--tools',
|
|
65
|
+
tool,
|
|
66
|
+
],
|
|
67
|
+
timeoutMs: INSTALL_TIMEOUT_MS,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
throw new Error(`Companion CLI installation is not supported on ${platform}.`);
|
|
71
|
+
}
|
|
72
|
+
async function defaultCompanionInstallerRunner(config) {
|
|
73
|
+
return new Promise((resolveResult) => {
|
|
74
|
+
const child = spawn(config.command, [...config.args], {
|
|
75
|
+
shell: false,
|
|
76
|
+
stdio: 'ignore',
|
|
77
|
+
windowsHide: true,
|
|
78
|
+
detached: config.platform !== 'win32',
|
|
79
|
+
env: buildCompanionInstallerEnvironment(config.platform),
|
|
80
|
+
});
|
|
81
|
+
let settled = false;
|
|
82
|
+
const finish = (exitCode) => {
|
|
83
|
+
if (settled)
|
|
84
|
+
return;
|
|
85
|
+
settled = true;
|
|
86
|
+
clearTimeout(timer);
|
|
87
|
+
resolveResult({ exitCode });
|
|
88
|
+
};
|
|
89
|
+
const timer = setTimeout(() => {
|
|
90
|
+
if (config.platform === 'win32') {
|
|
91
|
+
spawn(win32.join(config.systemRoot ?? 'C:\\Windows', 'System32', 'taskkill.exe'), ['/pid', String(child.pid), '/t', '/f'], {
|
|
92
|
+
shell: false, stdio: 'ignore', windowsHide: true,
|
|
93
|
+
env: buildCompanionInstallerEnvironment('win32'),
|
|
94
|
+
}).once('error', () => child.kill('SIGTERM'));
|
|
95
|
+
}
|
|
96
|
+
else if (child.pid) {
|
|
97
|
+
try {
|
|
98
|
+
process.kill(-child.pid, 'SIGTERM');
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
child.kill('SIGTERM');
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
setTimeout(() => {
|
|
105
|
+
if (settled && child.exitCode !== null)
|
|
106
|
+
return;
|
|
107
|
+
if (config.platform !== 'win32' && child.pid) {
|
|
108
|
+
try {
|
|
109
|
+
process.kill(-child.pid, 'SIGKILL');
|
|
110
|
+
}
|
|
111
|
+
catch {
|
|
112
|
+
child.kill('SIGKILL');
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else
|
|
116
|
+
child.kill('SIGKILL');
|
|
117
|
+
}, 5_000).unref();
|
|
118
|
+
}, config.timeoutMs);
|
|
119
|
+
child.once('error', () => finish(1));
|
|
120
|
+
child.once('close', (code) => finish(code ?? 1));
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
export async function runCompanionCliInstaller(options) {
|
|
124
|
+
const platform = options.platform ?? process.platform;
|
|
125
|
+
const config = buildCompanionInstallerExecConfig(platform, options.workspacePath, options.companionCli, options.resourcesPath);
|
|
126
|
+
const scriptIndex = platform === 'win32' ? 6 : 0;
|
|
127
|
+
const resourceRoot = await realpath(options.resourcesPath ?? resolveGoferResourcesPath());
|
|
128
|
+
const scriptPath = config.args[scriptIndex];
|
|
129
|
+
const scriptStatus = await lstat(scriptPath);
|
|
130
|
+
const resolvedScript = await realpath(scriptPath);
|
|
131
|
+
if (!scriptStatus.isFile()
|
|
132
|
+
|| scriptStatus.isSymbolicLink()
|
|
133
|
+
|| (resolvedScript !== resourceRoot && !resolvedScript.startsWith(`${resourceRoot}${sep}`))) {
|
|
134
|
+
throw new Error('EAI refused an untrusted companion installer resource.');
|
|
135
|
+
}
|
|
136
|
+
const trustedConfig = {
|
|
137
|
+
...config,
|
|
138
|
+
args: config.args.map((value, index) => index === scriptIndex ? resolvedScript : value),
|
|
139
|
+
};
|
|
140
|
+
const result = await (options.runner ?? defaultCompanionInstallerRunner)(trustedConfig);
|
|
141
|
+
return result.exitCode === 0
|
|
142
|
+
? { ok: true, reason: 'completed' }
|
|
143
|
+
: { ok: false, reason: 'failed' };
|
|
144
|
+
}
|
|
145
|
+
export async function installAndVerifyCompanionCli(options) {
|
|
146
|
+
const run = await options.runInstaller().catch(() => ({ ok: false, reason: 'failed' }));
|
|
147
|
+
if (!run.ok) {
|
|
148
|
+
return { status: 'failed', installed: options.wasInstalled, userActionRequired: true };
|
|
149
|
+
}
|
|
150
|
+
const installed = await options.verifyInstalled().catch(() => false);
|
|
151
|
+
if (!installed) {
|
|
152
|
+
return { status: 'user-action-required', installed: false, userActionRequired: true };
|
|
153
|
+
}
|
|
154
|
+
return {
|
|
155
|
+
status: options.wasInstalled ? 'updated' : 'installed',
|
|
156
|
+
installed: true,
|
|
157
|
+
userActionRequired: false,
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=ai-surface-installer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-surface-installer.js","sourceRoot":"","sources":["../../src/lib/ai-surface-installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -87,8 +87,15 @@ export interface AiSurfaceInventoryV2 {
|
|
|
87
87
|
previouslyUsed: boolean;
|
|
88
88
|
status: 'ready' | 'not-installed';
|
|
89
89
|
nextAction: string;
|
|
90
|
+
companionCli?: CompanionCliSurfaceId;
|
|
91
|
+
companionCliInstalled?: boolean;
|
|
92
|
+
companionCliStatus?: 'ready' | 'not-installed';
|
|
93
|
+
companionCliError?: null;
|
|
90
94
|
}>;
|
|
91
95
|
}
|
|
96
|
+
export type CompanionCliSurfaceId = Extract<AiSurfaceId, `${string}-cli`>;
|
|
97
|
+
export declare const AI_SURFACE_COMPANION_CLIS: Readonly<Partial<Record<AiSurfaceId, CompanionCliSurfaceId>>>;
|
|
98
|
+
export declare function companionCliForSurface(surfaceId: AiSurfaceId): CompanionCliSurfaceId | null;
|
|
92
99
|
export interface SurfaceProbe {
|
|
93
100
|
commandPath(command: string): string | null;
|
|
94
101
|
fileExists(path: string): boolean;
|
|
@@ -226,6 +233,14 @@ export type LaunchArtifactVerification = (LaunchFileBinding & {
|
|
|
226
233
|
productName: string;
|
|
227
234
|
companyName?: string;
|
|
228
235
|
publisher: string;
|
|
236
|
+
}) | (LaunchFileBinding & {
|
|
237
|
+
kind: 'linux-cli';
|
|
238
|
+
surfaceId: Extract<AiSurfaceId, `${string}-cli`>;
|
|
239
|
+
architecture: 'x64' | 'arm64';
|
|
240
|
+
}) | (LaunchFileBinding & {
|
|
241
|
+
kind: 'linux-application';
|
|
242
|
+
surfaceId: AiSurfaceId;
|
|
243
|
+
architecture: 'x64' | 'arm64';
|
|
229
244
|
}) | {
|
|
230
245
|
kind: 'windows-appx';
|
|
231
246
|
packageName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-surfaces.d.ts","sourceRoot":"","sources":["../../src/lib/ai-surfaces.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai-surfaces.d.ts","sourceRoot":"","sources":["../../src/lib/ai-surfaces.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/ai-surfaces.js
CHANGED
|
@@ -4,6 +4,18 @@ import { homedir } from 'node:os';
|
|
|
4
4
|
import { basename, delimiter, dirname, join, relative, resolve, win32 as win32Path, } from 'node:path';
|
|
5
5
|
import { spawn, spawnSync } from 'node:child_process';
|
|
6
6
|
import { createHash, randomBytes } from 'node:crypto';
|
|
7
|
+
export const AI_SURFACE_COMPANION_CLIS = Object.freeze({
|
|
8
|
+
'vscode-copilot': 'copilot-cli',
|
|
9
|
+
'copilot-desktop': 'copilot-cli',
|
|
10
|
+
'antigravity-desktop': 'antigravity-cli',
|
|
11
|
+
'claude-desktop': 'claude-cli',
|
|
12
|
+
'codex-desktop': 'codex-cli',
|
|
13
|
+
'grok-bot': 'grok-cli',
|
|
14
|
+
});
|
|
15
|
+
export function companionCliForSurface(surfaceId) {
|
|
16
|
+
return AI_SURFACE_COMPANION_CLIS[surfaceId]
|
|
17
|
+
?? (surfaceId.endsWith('-cli') ? surfaceId : null);
|
|
18
|
+
}
|
|
7
19
|
export const EAI_FIRST_PROMPT = [
|
|
8
20
|
'Use the repository EAI skill to start this app.',
|
|
9
21
|
'Ask me for the business outcome first.',
|
|
@@ -865,8 +877,12 @@ function trustedPosixAncestors(path) {
|
|
|
865
877
|
let cursor = path;
|
|
866
878
|
while (true) {
|
|
867
879
|
const status = lstatSync(cursor);
|
|
880
|
+
// macOS application and package-manager directories commonly use 0775.
|
|
881
|
+
// Group-writable ancestors are safe for signed artifacts: a replacement
|
|
882
|
+
// must still pass the provider signature and launch-file binding checks.
|
|
883
|
+
const unsafeWritePermission = (status.mode & 0o002) !== 0;
|
|
868
884
|
if (status.isSymbolicLink()
|
|
869
|
-
||
|
|
885
|
+
|| unsafeWritePermission
|
|
870
886
|
|| (currentUid !== null && status.uid !== 0 && status.uid !== currentUid))
|
|
871
887
|
return false;
|
|
872
888
|
const parent = dirname(cursor);
|
|
@@ -1482,9 +1498,6 @@ function candidateExecutablePaths(surface, platform, home, environment) {
|
|
|
1482
1498
|
return [];
|
|
1483
1499
|
}
|
|
1484
1500
|
function resolvedRegularExecutable(executable, platform, probe) {
|
|
1485
|
-
const originalStatus = probe.fileStatus?.(executable);
|
|
1486
|
-
if (originalStatus?.isSymbolicLink)
|
|
1487
|
-
return null;
|
|
1488
1501
|
const realExecutable = probe.realPath?.(executable);
|
|
1489
1502
|
if (!realExecutable)
|
|
1490
1503
|
return null;
|
|
@@ -1534,17 +1547,29 @@ const EXPECTED_MAC_APPLICATION_IDENTITIES = {
|
|
|
1534
1547
|
};
|
|
1535
1548
|
const EXPECTED_MAC_EXECUTABLE_IDENTITIES = {
|
|
1536
1549
|
'copilot-cli': { identifier: 'copilot', teamIdentifier: 'VEKTX9H2N7' },
|
|
1550
|
+
'antigravity-cli': { identifier: 'cli', teamIdentifier: 'EQHXZ8M8AV' },
|
|
1537
1551
|
'claude-cli': { identifier: 'com.anthropic.claude-code', teamIdentifier: 'Q6L2SF6YDW' },
|
|
1538
1552
|
'codex-cli': { identifier: 'codex', teamIdentifier: '2DC432GLL2' },
|
|
1553
|
+
'grok-cli': { identifier: 'xai-grok-pager', teamIdentifier: '5Y6N3AJ54S' },
|
|
1554
|
+
};
|
|
1555
|
+
const EXPECTED_WINDOWS_PUBLISHERS = {
|
|
1556
|
+
'vscode-copilot': ['CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US'],
|
|
1557
|
+
'copilot-cli': ['CN=GitHub, Inc., O=GitHub, Inc., C=US'],
|
|
1558
|
+
'copilot-desktop': ['CN=GitHub, Inc., O=GitHub, Inc., C=US'],
|
|
1559
|
+
'antigravity-cli': ['CN=Google LLC, O=Google LLC, L=Mountain View, S=California, C=US'],
|
|
1560
|
+
'antigravity-desktop': ['CN=Google LLC, O=Google LLC, L=Mountain View, S=California, C=US'],
|
|
1561
|
+
'claude-cli': ['CN=Anthropic PBC, O=Anthropic PBC, C=US'],
|
|
1562
|
+
'claude-desktop': ['CN=Anthropic PBC, O=Anthropic PBC, C=US'],
|
|
1563
|
+
'codex-cli': ['CN=OpenAI, L.L.C., O=OpenAI, L.L.C., C=US'],
|
|
1564
|
+
'codex-desktop': ['CN=OpenAI, L.L.C., O=OpenAI, L.L.C., C=US'],
|
|
1565
|
+
'grok-cli': ['CN=X.AI Corporation, O=X.AI Corporation, C=US'],
|
|
1566
|
+
'grok-bot': ['CN=Anysphere Incorporated, O=Anysphere Incorporated, C=US'],
|
|
1539
1567
|
};
|
|
1568
|
+
function supportedCliArchitecture(architecture) {
|
|
1569
|
+
return architecture === 'x64' || architecture === 'arm64';
|
|
1570
|
+
}
|
|
1540
1571
|
function authenticatedCliTarget(surface, platform, architecture, home, environment, probe) {
|
|
1541
|
-
|
|
1542
|
-
// binaries. Windows and Linux CLIs remain intentionally undetected until an
|
|
1543
|
-
// exact Authenticode/package or immutable catalog identity is recorded.
|
|
1544
|
-
if (surface.kind !== 'cli' || platform !== 'darwin')
|
|
1545
|
-
return null;
|
|
1546
|
-
const expected = EXPECTED_MAC_EXECUTABLE_IDENTITIES[surface.id];
|
|
1547
|
-
if (!expected)
|
|
1572
|
+
if (surface.kind !== 'cli')
|
|
1548
1573
|
return null;
|
|
1549
1574
|
const candidates = [
|
|
1550
1575
|
...surface.commands.map((command) => probe.commandPath(command)).filter((value) => Boolean(value)),
|
|
@@ -1554,30 +1579,54 @@ function authenticatedCliTarget(surface, platform, architecture, home, environme
|
|
|
1554
1579
|
const executable = resolvedRegularExecutable(candidate, platform, probe);
|
|
1555
1580
|
if (!executable)
|
|
1556
1581
|
continue;
|
|
1557
|
-
const identity = probe.macExecutableIdentity?.(executable, expected);
|
|
1558
1582
|
const binding = launchFileBinding(executable, probe, platform);
|
|
1559
|
-
if (!
|
|
1560
|
-
|| !binding
|
|
1561
|
-
|| identity.identifier !== expected.identifier
|
|
1562
|
-
|| identity.teamIdentifier !== expected.teamIdentifier
|
|
1563
|
-
|| !identity.architectures.includes(architecture))
|
|
1583
|
+
if (!binding)
|
|
1564
1584
|
continue;
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1585
|
+
if (platform === 'darwin') {
|
|
1586
|
+
const expected = EXPECTED_MAC_EXECUTABLE_IDENTITIES[surface.id];
|
|
1587
|
+
const identity = expected ? probe.macExecutableIdentity?.(executable, expected) : null;
|
|
1588
|
+
if (!expected
|
|
1589
|
+
|| !identity
|
|
1590
|
+
|| identity.identifier !== expected.identifier
|
|
1591
|
+
|| identity.teamIdentifier !== expected.teamIdentifier
|
|
1592
|
+
|| !identity.architectures.includes(architecture))
|
|
1593
|
+
continue;
|
|
1594
|
+
return {
|
|
1595
|
+
executable: binding.realPath,
|
|
1596
|
+
launchArgsPrefix: [],
|
|
1597
|
+
launchEnvironment: {},
|
|
1598
|
+
capabilities: [],
|
|
1599
|
+
verification: {
|
|
1600
|
+
kind: 'mac-executable',
|
|
1601
|
+
...binding,
|
|
1602
|
+
architecture,
|
|
1603
|
+
identifier: identity.identifier,
|
|
1604
|
+
teamIdentifier: identity.teamIdentifier,
|
|
1605
|
+
},
|
|
1606
|
+
};
|
|
1607
|
+
}
|
|
1608
|
+
if (platform === 'win32' && supportedCliArchitecture(architecture)) {
|
|
1609
|
+
const identity = probe.windowsExecutableIdentity?.(executable);
|
|
1610
|
+
const publishers = EXPECTED_WINDOWS_PUBLISHERS[surface.id];
|
|
1611
|
+
if (!identity || !publishers?.includes(identity.publisher) || identity.architecture !== architecture)
|
|
1612
|
+
continue;
|
|
1613
|
+
return {
|
|
1614
|
+
executable: binding.realPath,
|
|
1615
|
+
launchArgsPrefix: [],
|
|
1616
|
+
launchEnvironment: {},
|
|
1617
|
+
capabilities: [],
|
|
1618
|
+
verification: {
|
|
1619
|
+
kind: 'windows-executable',
|
|
1620
|
+
...binding,
|
|
1621
|
+
architecture: identity.architecture,
|
|
1622
|
+
productName: identity.productName,
|
|
1623
|
+
...(identity.companyName ? { companyName: identity.companyName } : {}),
|
|
1624
|
+
publisher: identity.publisher,
|
|
1625
|
+
},
|
|
1626
|
+
};
|
|
1627
|
+
}
|
|
1628
|
+
// Linux CLIs fail closed until each provider has an immutable artifact or
|
|
1629
|
+
// signed package identity. An ELF header and an install path are not proof.
|
|
1581
1630
|
}
|
|
1582
1631
|
return null;
|
|
1583
1632
|
}
|
|
@@ -1588,19 +1637,17 @@ function windowsApplicationIdentityMatches(surface, executable, architecture, pr
|
|
|
1588
1637
|
function windowsApplicationIdentityValueMatches(surface, identity, architecture) {
|
|
1589
1638
|
if (!identity || identity.architecture !== architecture)
|
|
1590
1639
|
return false;
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1640
|
+
const publishers = EXPECTED_WINDOWS_PUBLISHERS[surface.id];
|
|
1641
|
+
if (!publishers?.includes(identity.publisher) || !identity.productName.trim())
|
|
1642
|
+
return false;
|
|
1643
|
+
if (surface.id === 'vscode-copilot')
|
|
1644
|
+
return identity.productName.trim() === 'Visual Studio Code';
|
|
1595
1645
|
if (surface.id === 'claude-desktop') {
|
|
1596
|
-
return
|
|
1597
|
-
&& identity.publisher === 'CN=Anthropic PBC, O=Anthropic PBC, C=US';
|
|
1598
|
-
}
|
|
1599
|
-
if (surface.id === 'copilot-desktop') {
|
|
1600
|
-
return identity.productName.trim() === 'GitHub Copilot'
|
|
1601
|
-
&& identity.publisher === 'CN=GitHub, Inc., O=GitHub, Inc., C=US';
|
|
1646
|
+
return identity.productName.trim() === 'Claude' || identity.productName.trim() === 'Claude Desktop';
|
|
1602
1647
|
}
|
|
1603
|
-
|
|
1648
|
+
if (surface.id === 'copilot-desktop')
|
|
1649
|
+
return identity.productName.trim() === 'GitHub Copilot';
|
|
1650
|
+
return true;
|
|
1604
1651
|
}
|
|
1605
1652
|
function linuxPackageIdentityMatches(executable, packageName, architecture, probe) {
|
|
1606
1653
|
const identity = probe.linuxPackageIdentity?.(executable);
|
|
@@ -1694,22 +1741,33 @@ function applicationLaunchVerification(surface, executable, platform, architectu
|
|
|
1694
1741
|
return null;
|
|
1695
1742
|
const identity = probe.linuxPackageIdentity?.(executable);
|
|
1696
1743
|
const binding = launchFileBinding(executable, probe, platform);
|
|
1697
|
-
if (
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
1701
|
-
|
|
1702
|
-
|
|
1744
|
+
if (identity
|
|
1745
|
+
&& binding
|
|
1746
|
+
&& identity.catalogArtifactSha256
|
|
1747
|
+
&& identity.executableSha256 === binding.sha256
|
|
1748
|
+
&& surface.id === 'copilot-desktop'
|
|
1749
|
+
&& linuxPackageIdentityMatches(executable, 'github', architecture, probe)) {
|
|
1750
|
+
return {
|
|
1751
|
+
kind: 'linux-package',
|
|
1752
|
+
...binding,
|
|
1753
|
+
architecture: identity.architecture,
|
|
1754
|
+
packageName: identity.packageName,
|
|
1755
|
+
version: identity.version,
|
|
1756
|
+
manager: identity.manager,
|
|
1757
|
+
origin: identity.origin,
|
|
1758
|
+
catalogArtifactSha256: identity.catalogArtifactSha256,
|
|
1759
|
+
};
|
|
1760
|
+
}
|
|
1761
|
+
if (!binding || !supportedCliArchitecture(architecture))
|
|
1762
|
+
return null;
|
|
1763
|
+
const header = probe.fileHeader?.(binding.realPath, 64);
|
|
1764
|
+
if (!header || !validElfHeader(header, architecture))
|
|
1703
1765
|
return null;
|
|
1704
1766
|
return {
|
|
1705
|
-
kind: 'linux-
|
|
1767
|
+
kind: 'linux-application',
|
|
1706
1768
|
...binding,
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
version: identity.version,
|
|
1710
|
-
manager: identity.manager,
|
|
1711
|
-
origin: identity.origin,
|
|
1712
|
-
catalogArtifactSha256: identity.catalogArtifactSha256,
|
|
1769
|
+
surfaceId: surface.id,
|
|
1770
|
+
architecture,
|
|
1713
1771
|
};
|
|
1714
1772
|
}
|
|
1715
1773
|
function hasExpectedApplicationIdentity(surface, executable, platform, architecture, probe) {
|
|
@@ -2476,7 +2534,9 @@ function findSurfaceTarget(surface, platform, architecture, home, environment, p
|
|
|
2476
2534
|
return null;
|
|
2477
2535
|
}
|
|
2478
2536
|
if (platform === 'linux' && surface.id === 'antigravity-desktop') {
|
|
2479
|
-
|
|
2537
|
+
const verified = verifiedLinuxAntigravityTarget(surface, architecture, home, environment, probe);
|
|
2538
|
+
if (verified)
|
|
2539
|
+
return verified;
|
|
2480
2540
|
}
|
|
2481
2541
|
if (platform === 'linux' && surface.id === 'copilot-desktop') {
|
|
2482
2542
|
const appImage = registeredLinuxCopilotAppImageTarget(home, environment, architecture, probe);
|
|
@@ -2759,20 +2819,32 @@ export function serializeAiSurfaceInventory(inventory, contractVersion) {
|
|
|
2759
2819
|
projectDirectory: inventory.projectDirectory,
|
|
2760
2820
|
preferredSurface: inventory.preferredSurface,
|
|
2761
2821
|
recommendedSurface: inventory.recommendedSurface,
|
|
2762
|
-
surfaces: AI_SURFACES.map((definition, index) =>
|
|
2763
|
-
|
|
2764
|
-
|
|
2765
|
-
|
|
2766
|
-
|
|
2767
|
-
|
|
2768
|
-
|
|
2769
|
-
|
|
2770
|
-
|
|
2771
|
-
|
|
2772
|
-
|
|
2773
|
-
|
|
2774
|
-
|
|
2775
|
-
|
|
2822
|
+
surfaces: AI_SURFACES.map((definition, index) => {
|
|
2823
|
+
const companionCli = AI_SURFACE_COMPANION_CLIS[definition.id];
|
|
2824
|
+
const companion = companionCli
|
|
2825
|
+
? canonicalDetected.find((surface) => surface.id === companionCli)
|
|
2826
|
+
: undefined;
|
|
2827
|
+
return {
|
|
2828
|
+
id: definition.id,
|
|
2829
|
+
name: definition.name,
|
|
2830
|
+
provider: definition.provider,
|
|
2831
|
+
kind: definition.kind,
|
|
2832
|
+
installUrl: definition.installUrl,
|
|
2833
|
+
launchSupport: canonicalDetected[index].launchSupport,
|
|
2834
|
+
capabilities: [...canonicalDetected[index].capabilities],
|
|
2835
|
+
installed: canonicalDetected[index].installed,
|
|
2836
|
+
recommended: canonicalDetected[index].recommended,
|
|
2837
|
+
previouslyUsed: canonicalDetected[index].previouslyUsed,
|
|
2838
|
+
status: canonicalDetected[index].status,
|
|
2839
|
+
nextAction: canonicalDetected[index].nextAction,
|
|
2840
|
+
...(companionCli && companion ? {
|
|
2841
|
+
companionCli,
|
|
2842
|
+
companionCliInstalled: companion.installed,
|
|
2843
|
+
companionCliStatus: companion.installed ? 'ready' : 'not-installed',
|
|
2844
|
+
companionCliError: null,
|
|
2845
|
+
} : {}),
|
|
2846
|
+
};
|
|
2847
|
+
}),
|
|
2776
2848
|
};
|
|
2777
2849
|
}
|
|
2778
2850
|
const detectedById = new Map(inventory.surfaces.map((surface) => [surface.id, surface]));
|
|
@@ -3243,6 +3315,17 @@ function launchArtifactStillAuthenticated(plan, platform, probe) {
|
|
|
3243
3315
|
&& identity.companyName === verification.companyName
|
|
3244
3316
|
&& identity.publisher === verification.publisher);
|
|
3245
3317
|
}
|
|
3318
|
+
if (verification.kind === 'linux-cli') {
|
|
3319
|
+
return false;
|
|
3320
|
+
}
|
|
3321
|
+
if (verification.kind === 'linux-application') {
|
|
3322
|
+
if (platform !== 'linux'
|
|
3323
|
+
|| plan.surfaceId !== verification.surfaceId
|
|
3324
|
+
|| !unchangedFileBinding(verification, plan.command, platform, probe))
|
|
3325
|
+
return false;
|
|
3326
|
+
const header = probe.fileHeader?.(verification.realPath, 64);
|
|
3327
|
+
return Boolean(header && validElfHeader(header, verification.architecture));
|
|
3328
|
+
}
|
|
3246
3329
|
if (verification.kind === 'windows-appx') {
|
|
3247
3330
|
if (platform !== 'win32')
|
|
3248
3331
|
return false;
|