agentHost: bump Copilot SDK to 1.0.14 (#336360)

* chore: bump @github/copilot-sdk to 1.0.14-preview.1 and @github/copilot to 1.0.84-9

* test: match invoke_agent span by prefix and wait past batch export

The bumped @github/copilot runtime now names the OTel root span
`invoke_agent {gen_ai.agent.name}` per GenAI semconv (verified in
copilot-agent-runtime session_tracker.rs), so the exact `"name":"invoke_agent"`
substring match no longer holds; match by prefix. The SDK span is also exported
via the runtime's AsyncBatchSpanProcessor (~5s scheduled delay), so widen the
poll budget past that cadence to avoid racing the batched export.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* build: preserve built-in Copilot SDK entrypoint

Restore the staged SDK after product packaging before target-native files are materialized, and fail if the SDK entrypoint is absent. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* agentHost: stabilize Copilot SDK validation

Tighten OTel span matching, remove cross-chat ordering from the retained-subagent snapshot, and approve the SDK's updated koffi dependency. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* agentHost: support stable Copilot runtime packages

Use the final Copilot SDK and CLI versions, resolve their paired platform artifacts, retain them in desktop and remote products, and validate the stable OTel contract. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb

* build: pin Copilot SDK koffi dependency

Resolve the SDK's transitive koffi dependency to 3.2.1 in both package roots so mirrored registries only need a release older than seven days. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb

* build: scope Copilot packaging to Agent Host

Keep the root Copilot runtime packaging changes without altering the independently versioned built-in Copilot extension. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb

* build: update Linux dependency baseline

Remove the obsolete glibc 2.27 requirement after the Copilot runtime package update changes the generated x64 dependency set. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb

* build: update Linux RPM dependency baseline

Remove the obsolete glibc 2.27 libm requirement after the Copilot runtime package update changes the generated x64 RPM dependency set. (Written by Copilot)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: vs-code-engineering[bot] <122617954+vs-code-engineering[bot]@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: c1d23f93-6f44-4570-af50-2fd458472fbb
This commit is contained in:
authored and GitHub committed 2026-09-16 22:22:12 +00:00
1 parent 66fc4e9967
commit 6e9cf0e4ad
15 files changed
+996 -935

No files matched your search

+6 -2
View File
@@ -96,6 +96,10 @@ async function main(buildDir?: string) {
'**/node_modules/@github/copilot-darwin-arm64/**',
'**/node_modules.asar.unpacked/@github/copilot-darwin-x64/**',
'**/node_modules.asar.unpacked/@github/copilot-darwin-arm64/**',
'**/node_modules/@github/copilot-sdk-darwin-x64/**',
'**/node_modules/@github/copilot-sdk-darwin-arm64/**',
'**/node_modules.asar.unpacked/@github/copilot-sdk-darwin-x64/**',
'**/node_modules.asar.unpacked/@github/copilot-sdk-darwin-arm64/**',
'**/node_modules/@vscode/os-proxy-resolver-darwin-x64/**',
'**/node_modules/@vscode/os-proxy-resolver-darwin-arm64/**',
'**/node_modules.asar.unpacked/@vscode/os-proxy-resolver-darwin-x64/**',
@@ -139,8 +143,8 @@ async function main(buildDir?: string) {
// them as arch-unique. Paths here are ASAR-internal (top level, no `node_modules`
// prefix). Over-covering is harmless: the allowlist is only consulted for files
// that are actually unique to one arch.
singleArchFiles: '{**/@github/copilot-darwin-*,**/@github/copilot-darwin-*/**,**/@github/copilot/prebuilds/darwin-*,**/@github/copilot/prebuilds/darwin-*/**,**/@github/copilot/tgrep/bin/darwin-*,**/@github/copilot/tgrep/bin/darwin-*/**,**/@github/copilot/sdk/tgrep/bin/darwin-*,**/@github/copilot/sdk/tgrep/bin/darwin-*/**,**/@github/copilot/sdk/prebuilds/darwin-*,**/@github/copilot/sdk/prebuilds/darwin-*/**,**/@github/copilot/sdk/ripgrep/bin/darwin-*,**/@github/copilot/sdk/ripgrep/bin/darwin-*/**,**/@vscode/ripgrep-universal/bin/darwin-*,**/@vscode/ripgrep-universal/bin/darwin-*/**,**/@vscode/os-proxy-resolver-darwin-*,**/@vscode/os-proxy-resolver-darwin-*/**,**/@microsoft/mxc-sdk/bin/*,**/@microsoft/mxc-sdk/bin/*/**}',
x64ArchFiles: '{*/kerberos.node,**/extensions/microsoft-authentication/dist/libmsalruntime.dylib,**/extensions/microsoft-authentication/dist/msal-node-runtime.node,**/node_modules/@github/copilot-darwin-*/**,**/node_modules/@github/copilot/prebuilds/darwin-*/*,**/node_modules/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot-darwin-*/**,**/node_modules.asar.unpacked/@github/copilot/prebuilds/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/prebuilds/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/ripgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules/@vscode/ripgrep-universal/bin/darwin-*/*,**/node_modules.asar.unpacked/@vscode/ripgrep-universal/bin/darwin-*/*,**/node_modules/@vscode/os-proxy-resolver-darwin-*/**,**/node_modules.asar.unpacked/@vscode/os-proxy-resolver-darwin-*/**,**/node_modules/@microsoft/mxc-sdk/bin/**,**/node_modules.asar.unpacked/@microsoft/mxc-sdk/bin/**}',
singleArchFiles: '{**/@github/copilot-darwin-*,**/@github/copilot-darwin-*/**,**/@github/copilot-sdk-darwin-*,**/@github/copilot-sdk-darwin-*/**,**/@github/copilot/prebuilds/darwin-*,**/@github/copilot/prebuilds/darwin-*/**,**/@github/copilot/tgrep/bin/darwin-*,**/@github/copilot/tgrep/bin/darwin-*/**,**/@github/copilot/sdk/tgrep/bin/darwin-*,**/@github/copilot/sdk/tgrep/bin/darwin-*/**,**/@github/copilot/sdk/prebuilds/darwin-*,**/@github/copilot/sdk/prebuilds/darwin-*/**,**/@github/copilot/sdk/ripgrep/bin/darwin-*,**/@github/copilot/sdk/ripgrep/bin/darwin-*/**,**/@vscode/ripgrep-universal/bin/darwin-*,**/@vscode/ripgrep-universal/bin/darwin-*/**,**/@vscode/os-proxy-resolver-darwin-*,**/@vscode/os-proxy-resolver-darwin-*/**,**/@microsoft/mxc-sdk/bin/*,**/@microsoft/mxc-sdk/bin/*/**}',
x64ArchFiles: '{*/kerberos.node,**/extensions/microsoft-authentication/dist/libmsalruntime.dylib,**/extensions/microsoft-authentication/dist/msal-node-runtime.node,**/node_modules/@github/copilot-darwin-*/**,**/node_modules/@github/copilot-sdk-darwin-*/**,**/node_modules/@github/copilot/prebuilds/darwin-*/*,**/node_modules/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot-darwin-*/**,**/node_modules.asar.unpacked/@github/copilot-sdk-darwin-*/**,**/node_modules.asar.unpacked/@github/copilot/prebuilds/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules.asar.unpacked/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/prebuilds/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/ripgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/sdk/tgrep/bin/darwin-*/*,**/extensions/copilot/node_modules/@github/copilot/tgrep/bin/darwin-*/*,**/node_modules/@vscode/ripgrep-universal/bin/darwin-*/*,**/node_modules.asar.unpacked/@vscode/ripgrep-universal/bin/darwin-*/*,**/node_modules/@vscode/os-proxy-resolver-darwin-*/**,**/node_modules.asar.unpacked/@vscode/os-proxy-resolver-darwin-*/**,**/node_modules/@microsoft/mxc-sdk/bin/**,**/node_modules.asar.unpacked/@microsoft/mxc-sdk/bin/**}',
filesToSkipComparison: (file: string) => {
for (const expected of filesToSkip) {
if (minimatch(file, expected)) {
+4
View File
@@ -31,6 +31,10 @@ const FILES_TO_SKIP = [
'**/node_modules/@github/copilot-darwin-arm64/**',
'**/node_modules.asar.unpacked/@github/copilot-darwin-x64/**',
'**/node_modules.asar.unpacked/@github/copilot-darwin-arm64/**',
'**/node_modules/@github/copilot-sdk-darwin-x64/**',
'**/node_modules/@github/copilot-sdk-darwin-arm64/**',
'**/node_modules.asar.unpacked/@github/copilot-sdk-darwin-x64/**',
'**/node_modules.asar.unpacked/@github/copilot-sdk-darwin-arm64/**',
// Copilot prebuilds: single-arch binaries in per-platform directories
'**/node_modules/@github/copilot/prebuilds/darwin-*/**',
'**/node_modules.asar.unpacked/@github/copilot/prebuilds/darwin-*/**',
+4 -7
View File
@@ -405,14 +405,11 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
.pipe(createAsar(path.join(process.cwd(), 'node_modules'), [
'**/*.node',
'**/@vscode/ripgrep-universal/bin/**',
// Only the platform-specific Copilot CLI packages (`@github/copilot-<os>-<arch>`)
// need to be unpacked: the CLI is spawned as a subprocess and is a
// self-locating bundle that memory-maps files and resolves its native
// addons / sub-binaries relative to its own on-disk location, so it cannot
// run from inside the archive. `@github/copilot-sdk` is intentionally NOT
// matched here — it is pure JavaScript that the agent host loads via
// `import` (ASAR-aware), so it stays in the archive.
// The platform-specific Copilot CLI and SDK runtime packages must be
// unpacked because they contain spawned executables and native modules.
// The pure JavaScript `@github/copilot-sdk` package stays in the archive.
'**/@github/copilot-{darwin,linux,linuxmusl,win32}-*/**',
'**/@github/copilot-sdk-{darwin,linux,linuxmusl,win32}-*/**',
// The Dev Container CLI is spawned as an external Node process,
// so its bundled entrypoint must be available outside the ASAR.
'**/@devcontainers/cli/**',
+22 -28
View File
@@ -11,16 +11,14 @@ import { ensureNpmPackage, materializeNpmPackageVersion, type EnsureNpmPackageOp
/**
* Options for {@link prepareBuiltInCopilotRipgrepShim}. Extends the npm packing
* options with an override for the extension lockfile used to verify natives
* fetched for the pinned version (defaults to the repo's copy; overridable in
* tests).
* fetched for the pinned version.
*/
export interface PrepareBuiltInCopilotOptions extends EnsureNpmPackageOptions {
extensionLockfilePath?: string;
}
/**
* The platforms that @github/copilot ships platform-specific packages for.
* These are the `@github/copilot-{platform}` optional dependency packages.
* The platforms that Copilot ships platform-specific packages for.
*/
export const copilotPlatforms = [
'darwin-arm64', 'darwin-x64',
@@ -170,7 +168,7 @@ export function getCopilotTgrepExcludeFilter(platform: string, arch: string): st
}
/**
* Returns a glob filter that strips @github/copilot platform packages
* Returns a glob filter that strips Copilot platform packages
* for architectures other than the build target.
*
* Alpine uses the linuxmusl-* packages. Other platform package names follow
@@ -182,46 +180,42 @@ export function getCopilotExcludeFilter(platform: string, arch: string): string[
const targetPlatformArch = toCopilotPackagePlatformArch(platform, arch);
const nonTargetPlatforms = copilotPlatforms.filter(p => p !== targetPlatformArch);
// Strip wrong-architecture @github/copilot-{platform} packages.
const excludes = nonTargetPlatforms.map(p => `!**/node_modules/@github/copilot-${p}/**`);
const excludes = nonTargetPlatforms.flatMap(p => [
`!**/node_modules/@github/copilot-${p}/**`,
`!**/node_modules/@github/copilot-sdk-${p}/**`,
]);
return [
'**',
...excludes,
'!**/node_modules/@github/copilot-*/copilot',
'!**/node_modules/@github/copilot-*/copilot.exe',
...copilotOutOfProcessRuntimeExecutables.map(executable => `!**/node_modules/@github/copilot-*/prebuilds/*/${executable}`),
];
}
/**
* Returns the public @github/copilot package files that must survive
* Returns the paired Copilot CLI and SDK platform files that must survive
* app/remote packaging for the target platform.
*
* .moduleignore strips all @github/copilot-* platform packages globally.
* Re-add the selected runtime package so Agent Host can launch its index.js
* entrypoint and load runtime prebuilds, including cli-native.node on every
* platform. Keep the standalone SEA executable and optional native payload
* trees out of the product build.
* .moduleignore strips all Copilot platform packages globally. Re-add the
* selected CLI executable and SDK package while keeping optional native
* payloads out of the product build.
*/
export function getCopilotRuntimePrebuildFiles(platform: string, arch: string, nodeModulesRoot = 'node_modules'): string[] {
const copilotPackagePlatformArch = toCopilotPackagePlatformArch(platform, arch);
const copilotPlatformPackageDir = path.posix.join(nodeModulesRoot, '@github', `copilot-${copilotPackagePlatformArch}`);
const copilotCliPackageDir = path.posix.join(nodeModulesRoot, '@github', `copilot-${copilotPackagePlatformArch}`);
const copilotSdkPackageDir = path.posix.join(nodeModulesRoot, '@github', `copilot-sdk-${copilotPackagePlatformArch}`);
return [
path.posix.join(copilotPlatformPackageDir, '**'),
`!${path.posix.join(copilotPlatformPackageDir, 'copilot')}`,
`!${path.posix.join(copilotPlatformPackageDir, 'copilot.exe')}`,
...copilotOutOfProcessRuntimeExecutables.map(executable => `!${path.posix.join(copilotPlatformPackageDir, 'prebuilds', '*', executable)}`),
...copilotOptionalNativePayloadDirs.map(dir => `!${path.posix.join(copilotPlatformPackageDir, dir, '**')}`),
...copilotOptionalNativePayloadFiles.map(file => `!${path.posix.join(copilotPlatformPackageDir, file)}`),
path.posix.join(copilotCliPackageDir, platform === 'win32' ? 'copilot.exe' : 'copilot'),
path.posix.join(copilotSdkPackageDir, '**'),
...copilotOptionalNativePayloadDirs.map(dir => `!${path.posix.join(copilotSdkPackageDir, dir, '**')}`),
...copilotOptionalNativePayloadFiles.map(file => `!${path.posix.join(copilotSdkPackageDir, file)}`),
];
}
/**
* Ensures the selected @github/copilot-{platform} package is present before
* packaging. npm only installs the host-compatible optional dependency, but
* VS Code packaging can cross-build targets such as darwin-x64 on arm64 hosts.
* Ensures the selected CLI and SDK platform packages are present before
* packaging. npm only installs host-compatible optional dependencies, but VS
* Code packaging can cross-build targets such as darwin-x64 on arm64 hosts.
*/
export function ensureCopilotPlatformPackage(platform: string, arch: string, nodeModulesRoot = 'node_modules', options: EnsureNpmPackageOptions = {}): void {
const copilotPackagePlatformArch = toCopilotPackagePlatformArch(platform, arch);
@@ -229,8 +223,8 @@ export function ensureCopilotPlatformPackage(platform: string, arch: string, nod
return;
}
const packageName = `@github/copilot-${copilotPackagePlatformArch}`;
ensureNpmPackage(packageName, nodeModulesRoot, options);
ensureNpmPackage(`@github/copilot-${copilotPackagePlatformArch}`, nodeModulesRoot, options);
ensureNpmPackage(`@github/copilot-sdk-${copilotPackagePlatformArch}`, nodeModulesRoot, options);
}
/**
+109 -152
View File
@@ -32,142 +32,88 @@ function createPinnedCopilotWin32Tarball(dir: string): { tarball: string; integr
}
suite('copilot', () => {
test('keeps the public copilot platform package include list scoped to the selected package', () => {
test('keeps the paired Copilot runtime package include list scoped to the selected platform', () => {
const files = getCopilotRuntimePrebuildFiles('linux', 'x64');
assert.deepStrictEqual(files, [
'node_modules/@github/copilot-linux-x64/**',
'!node_modules/@github/copilot-linux-x64/copilot',
'!node_modules/@github/copilot-linux-x64/copilot.exe',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/copilot-runtime',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/copilot-runtime-bin',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/copilot-runtime.exe',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/copilot-runtime-bin.exe',
'!node_modules/@github/copilot-linux-x64/clipboard/**',
'!node_modules/@github/copilot-linux-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-linux-x64/mxc-bin/**',
'!node_modules/@github/copilot-linux-x64/pvrecorder/**',
'!node_modules/@github/copilot-linux-x64/webview/**',
'!node_modules/@github/copilot-linux-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-linux-x64/prebuilds/*/mediaremote-adapter/**',
'node_modules/@github/copilot-linux-x64/copilot',
'node_modules/@github/copilot-sdk-linux-x64/**',
'!node_modules/@github/copilot-sdk-linux-x64/clipboard/**',
'!node_modules/@github/copilot-sdk-linux-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-sdk-linux-x64/mxc-bin/**',
'!node_modules/@github/copilot-sdk-linux-x64/pvrecorder/**',
'!node_modules/@github/copilot-sdk-linux-x64/webview/**',
'!node_modules/@github/copilot-sdk-linux-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-sdk-linux-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-sdk-linux-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-sdk-linux-x64/prebuilds/*/mediaremote-adapter/**',
]);
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-linux-x64', [
'index.js',
'app.js',
'prebuilds/linux-x64/cli-native.node',
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-sdk-linux-x64', [
'sdk/index.js',
'prebuilds/linux-x64/copilot-runtime',
'prebuilds/linux-x64/runtime.node',
'prebuilds/linux-x64/pty.node',
'definitions/task.agent.yaml',
'ripgrep/bin/linux-x64/rg',
'tgrep/bin/linux-x64/tgrep',
]);
assertCopilotStandaloneExecutableExcluded(files, 'node_modules/@github/copilot-linux-x64');
assertCopilotOutOfProcessRuntimeExecutablesExcluded(files, 'node_modules/@github/copilot-linux-x64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-linux-x64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-sdk-linux-x64');
});
test('uses the linuxmusl package runtime for alpine builds', () => {
const files = getCopilotRuntimePrebuildFiles('alpine', 'x64');
assert.deepStrictEqual(files, [
'node_modules/@github/copilot-linuxmusl-x64/**',
'!node_modules/@github/copilot-linuxmusl-x64/copilot',
'!node_modules/@github/copilot-linuxmusl-x64/copilot.exe',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/copilot-runtime',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/copilot-runtime-bin',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/copilot-runtime.exe',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/copilot-runtime-bin.exe',
'!node_modules/@github/copilot-linuxmusl-x64/clipboard/**',
'!node_modules/@github/copilot-linuxmusl-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-linuxmusl-x64/mxc-bin/**',
'!node_modules/@github/copilot-linuxmusl-x64/pvrecorder/**',
'!node_modules/@github/copilot-linuxmusl-x64/webview/**',
'!node_modules/@github/copilot-linuxmusl-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-linuxmusl-x64/prebuilds/*/mediaremote-adapter/**',
'node_modules/@github/copilot-linuxmusl-x64/copilot',
'node_modules/@github/copilot-sdk-linuxmusl-x64/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/clipboard/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/mxc-bin/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/pvrecorder/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/webview/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-sdk-linuxmusl-x64/prebuilds/*/mediaremote-adapter/**',
]);
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-linuxmusl-x64', [
'index.js',
'app.js',
'prebuilds/linuxmusl-x64/cli-native.node',
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-sdk-linuxmusl-x64', [
'sdk/index.js',
'prebuilds/linuxmusl-x64/copilot-runtime',
'prebuilds/linuxmusl-x64/runtime.node',
]);
assertCopilotStandaloneExecutableExcluded(files, 'node_modules/@github/copilot-linuxmusl-x64');
assertCopilotOutOfProcessRuntimeExecutablesExcluded(files, 'node_modules/@github/copilot-linuxmusl-x64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-linuxmusl-x64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-sdk-linuxmusl-x64');
});
test('uses the .exe package runtime for windows builds', () => {
assert.deepStrictEqual(getCopilotRuntimePrebuildFiles('win32', 'x64'), [
'node_modules/@github/copilot-win32-x64/**',
'!node_modules/@github/copilot-win32-x64/copilot',
'!node_modules/@github/copilot-win32-x64/copilot.exe',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/copilot-runtime',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/copilot-runtime-bin',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/copilot-runtime.exe',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/copilot-runtime-bin.exe',
'!node_modules/@github/copilot-win32-x64/clipboard/**',
'!node_modules/@github/copilot-win32-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-win32-x64/mxc-bin/**',
'!node_modules/@github/copilot-win32-x64/pvrecorder/**',
'!node_modules/@github/copilot-win32-x64/webview/**',
'!node_modules/@github/copilot-win32-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-win32-x64/prebuilds/*/mediaremote-adapter/**',
'node_modules/@github/copilot-win32-x64/copilot.exe',
'node_modules/@github/copilot-sdk-win32-x64/**',
'!node_modules/@github/copilot-sdk-win32-x64/clipboard/**',
'!node_modules/@github/copilot-sdk-win32-x64/foundry-local-sdk/**',
'!node_modules/@github/copilot-sdk-win32-x64/mxc-bin/**',
'!node_modules/@github/copilot-sdk-win32-x64/pvrecorder/**',
'!node_modules/@github/copilot-sdk-win32-x64/webview/**',
'!node_modules/@github/copilot-sdk-win32-x64/plugins/computer-use/**',
'!node_modules/@github/copilot-sdk-win32-x64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-sdk-win32-x64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-sdk-win32-x64/prebuilds/*/mediaremote-adapter/**',
]);
assertCopilotPlatformPackageIncludes(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-win32-x64', [
'index.js',
'app.js',
'prebuilds/win32-x64/cli-native.node',
assertCopilotPlatformPackageIncludes(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-sdk-win32-x64', [
'sdk/index.js',
'prebuilds/win32-x64/copilot-runtime.exe',
'prebuilds/win32-x64/runtime.node',
'prebuilds/win32-x64/conpty.node',
'prebuilds/win32-x64/conpty_console_list.node',
'prebuilds/win32-x64/conpty/OpenConsole.exe',
'prebuilds/win32-x64/conpty/conpty.dll',
]);
assertCopilotStandaloneExecutableExcluded(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-win32-x64');
assertCopilotOutOfProcessRuntimeExecutablesExcluded(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-win32-x64');
assert.deepStrictEqual(getCopilotRuntimePrebuildFiles('win32', 'arm64'), [
'node_modules/@github/copilot-win32-arm64/**',
'!node_modules/@github/copilot-win32-arm64/copilot',
'!node_modules/@github/copilot-win32-arm64/copilot.exe',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/copilot-runtime',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/copilot-runtime-bin',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/copilot-runtime.exe',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/copilot-runtime-bin.exe',
'!node_modules/@github/copilot-win32-arm64/clipboard/**',
'!node_modules/@github/copilot-win32-arm64/foundry-local-sdk/**',
'!node_modules/@github/copilot-win32-arm64/mxc-bin/**',
'!node_modules/@github/copilot-win32-arm64/pvrecorder/**',
'!node_modules/@github/copilot-win32-arm64/webview/**',
'!node_modules/@github/copilot-win32-arm64/plugins/computer-use/**',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/computer.node',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/keytar.node',
'!node_modules/@github/copilot-win32-arm64/prebuilds/*/mediaremote-adapter/**',
]);
assertOptionalCopilotNativeDependenciesExcluded(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-win32-x64');
assertCopilotStandaloneExecutableExcluded(getCopilotRuntimePrebuildFiles('win32', 'arm64'), 'node_modules/@github/copilot-win32-arm64');
assertCopilotOutOfProcessRuntimeExecutablesExcluded(getCopilotRuntimePrebuildFiles('win32', 'arm64'), 'node_modules/@github/copilot-win32-arm64');
assertOptionalCopilotNativeDependenciesExcluded(getCopilotRuntimePrebuildFiles('win32', 'x64'), 'node_modules/@github/copilot-sdk-win32-x64');
});
test('keeps macOS runtime prebuilds in the selected platform package', () => {
const files = getCopilotRuntimePrebuildFiles('darwin', 'arm64');
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-darwin-arm64', [
'index.js',
'app.js',
assertCopilotPlatformPackageIncludes(files, 'node_modules/@github/copilot-sdk-darwin-arm64', [
'sdk/index.js',
'sea-loader.js',
'prebuilds/darwin-arm64/cli-native.node',
'prebuilds/darwin-arm64/copilot-runtime',
'prebuilds/darwin-arm64/runtime.node',
'prebuilds/darwin-arm64/pty.node',
'prebuilds/darwin-arm64/spawn-helper',
]);
assertCopilotStandaloneExecutableExcluded(files, 'node_modules/@github/copilot-darwin-arm64');
assertCopilotOutOfProcessRuntimeExecutablesExcluded(files, 'node_modules/@github/copilot-darwin-arm64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-darwin-arm64');
assertOptionalCopilotNativeDependenciesExcluded(files, 'node_modules/@github/copilot-sdk-darwin-arm64');
});
for (const { platform, arch, packagePlatformArch } of [
@@ -181,16 +127,23 @@ suite('copilot', () => {
{ platform: 'win32', arch: 'arm64', packagePlatformArch: 'win32-arm64' },
{ platform: 'win32', arch: 'x64', packagePlatformArch: 'win32-x64' },
]) {
test(`keeps cli-native.node in desktop and remote runtime packages for ${platform}-${arch}`, () => {
test(`keeps the SDK runtime in desktop and remote packages for ${platform}-${arch}`, () => {
for (const nodeModulesRoot of ['node_modules', 'remote/node_modules']) {
const nativeFile = `${nodeModulesRoot}/@github/copilot-${packagePlatformArch}/prebuilds/${packagePlatformArch}/cli-native.node`;
const cliPackageDir = `${nodeModulesRoot}/@github/copilot-${packagePlatformArch}`;
const sdkPackageDir = `${nodeModulesRoot}/@github/copilot-sdk-${packagePlatformArch}`;
const executable = `${cliPackageDir}/${platform === 'win32' ? 'copilot.exe' : 'copilot'}`;
const sdk = `${sdkPackageDir}/sdk/index.js`;
assert.deepStrictEqual({
runtime: matchesGlob(nativeFile, getCopilotRuntimePrebuildFiles(platform, arch, nodeModulesRoot)),
dependencies: matchesGlob(nativeFile, getCopilotExcludeFilter(platform, arch)),
runtimeExecutable: matchesGlob(executable, getCopilotRuntimePrebuildFiles(platform, arch, nodeModulesRoot)),
runtimeSdk: matchesGlob(sdk, getCopilotRuntimePrebuildFiles(platform, arch, nodeModulesRoot)),
dependenciesExecutable: matchesGlob(executable, getCopilotExcludeFilter(platform, arch)),
dependenciesSdk: matchesGlob(sdk, getCopilotExcludeFilter(platform, arch)),
}, {
runtime: true,
dependencies: true,
}, nativeFile);
runtimeExecutable: true,
runtimeSdk: true,
dependenciesExecutable: true,
dependenciesSdk: true,
}, `${cliPackageDir}, ${sdkPackageDir}`);
}
});
}
@@ -204,41 +157,62 @@ suite('copilot', () => {
packages: {
'node_modules/@github/copilot-darwin-x64': {
version: '1.0.64-1',
},
'node_modules/@github/copilot-sdk-darwin-x64': {
version: '1.0.64-1',
}
}
}));
ensureCopilotPlatformPackage('darwin', 'x64', nodeModulesRoot, {
packPackage: (_packageName, _version, tempDir) => {
packPackage: (packageName, _version, tempDir) => {
const packageRoot = path.join(tempDir, 'package');
fs.mkdirSync(path.join(packageRoot, 'prebuilds', 'darwin-x64'), { recursive: true });
fs.writeFileSync(path.join(packageRoot, 'index.js'), '');
fs.writeFileSync(path.join(packageRoot, 'prebuilds', 'darwin-x64', 'runtime.node'), '');
const tarball = path.join(tempDir, 'copilot-darwin-x64.tgz');
if (packageName === '@github/copilot-darwin-x64') {
fs.mkdirSync(packageRoot, { recursive: true });
fs.writeFileSync(path.join(packageRoot, 'copilot'), '');
} else {
fs.mkdirSync(path.join(packageRoot, 'prebuilds', 'darwin-x64'), { recursive: true });
fs.mkdirSync(path.join(packageRoot, 'sdk'), { recursive: true });
fs.writeFileSync(path.join(packageRoot, 'sdk', 'index.js'), '');
fs.writeFileSync(path.join(packageRoot, 'prebuilds', 'darwin-x64', 'copilot-runtime'), '');
fs.writeFileSync(path.join(packageRoot, 'prebuilds', 'darwin-x64', 'runtime.node'), '');
}
const tarball = path.join(tempDir, `${packageName.split('/')[1]}.tgz`);
create({ file: tarball, cwd: tempDir, gzip: true, sync: true }, ['package']);
return tarball;
}
});
assert(fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-darwin-x64', 'index.js')));
assert(fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-darwin-x64', 'prebuilds', 'darwin-x64', 'runtime.node')));
assert.deepStrictEqual({
cli: fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-darwin-x64', 'copilot')),
sdk: fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-sdk-darwin-x64', 'sdk', 'index.js')),
runtime: fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-sdk-darwin-x64', 'prebuilds', 'darwin-x64', 'copilot-runtime')),
native: fs.existsSync(path.join(nodeModulesRoot, '@github', 'copilot-sdk-darwin-x64', 'prebuilds', 'darwin-x64', 'runtime.node')),
}, {
cli: true,
sdk: true,
runtime: true,
native: true,
});
} finally {
fs.rmSync(repoRoot, { recursive: true, force: true });
}
});
test('excludes standalone copilot executables from the platform package dependency stream', () => {
test('excludes legacy and non-target Copilot platform packages from the dependency stream', () => {
const files = getCopilotExcludeFilter('linux', 'x64');
assert(files.includes('**'));
assert(files.includes('!**/node_modules/@github/copilot-*/copilot'));
assert(files.includes('!**/node_modules/@github/copilot-*/copilot.exe'));
assert.deepStrictEqual(files.filter(file => file.includes('/prebuilds/*/copilot-runtime')), [
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime-bin',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime.exe',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime-bin.exe',
]);
assert.deepStrictEqual({
targetCliRuntime: matchesGlob('product/node_modules/@github/copilot-linux-x64/copilot', files),
targetSdkEntrypoint: matchesGlob('product/node_modules/@github/copilot-sdk-linux-x64/sdk/index.js', files),
nonTargetSdkRuntime: matchesGlob('product/node_modules/@github/copilot-sdk-darwin-arm64/prebuilds/darwin-arm64/copilot-runtime', files),
nonTargetCliRuntime: matchesGlob('product/node_modules/@github/copilot-darwin-arm64/copilot', files),
}, {
targetCliRuntime: true,
targetSdkEntrypoint: true,
nonTargetSdkRuntime: false,
nonTargetCliRuntime: false,
});
});
test('materializes target Copilot SDK prebuilds and tgrep for the built-in extension', () => {
@@ -345,7 +319,7 @@ suite('copilot', () => {
const builtInCopilotExtensionDir = path.join(repoRoot, 'extensions', 'copilot');
const extensionCopilotDir = path.join(builtInCopilotExtensionDir, 'node_modules', '@github', 'copilot');
const appNodeModulesDir = path.join(repoRoot, 'node_modules');
fs.mkdirSync(path.join(extensionCopilotDir, 'sdk'), { recursive: true });
fs.mkdirSync(path.join(extensionCopilotDir, 'sdk'), { recursive: true });
fs.writeFileSync(path.join(extensionCopilotDir, 'package.json'), JSON.stringify({ version: '1.0.73' }));
fs.mkdirSync(path.join(appNodeModulesDir, '@vscode', 'ripgrep-universal', 'bin', 'win32-x64'), { recursive: true });
@@ -372,13 +346,10 @@ suite('copilot', () => {
getCopilotExcludeFilter('linux', 'armhf'),
[
'**',
...copilotPlatforms.map(platform => `!**/node_modules/@github/copilot-${platform}/**`),
'!**/node_modules/@github/copilot-*/copilot',
'!**/node_modules/@github/copilot-*/copilot.exe',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime-bin',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime.exe',
'!**/node_modules/@github/copilot-*/prebuilds/*/copilot-runtime-bin.exe',
...copilotPlatforms.flatMap(platform => [
`!**/node_modules/@github/copilot-${platform}/**`,
`!**/node_modules/@github/copilot-sdk-${platform}/**`,
]),
]
);
});
@@ -419,20 +390,6 @@ function assertCopilotPlatformPackageIncludes(patterns: string[], packageDir: st
}
}
function assertCopilotStandaloneExecutableExcluded(patterns: string[], packageDir: string): void {
for (const executable of ['copilot', 'copilot.exe']) {
assert(patterns.includes(`!${packageDir}/${executable}`), executable);
assert(!matchesGlob(`${packageDir}/${executable}`, patterns), executable);
}
}
function assertCopilotOutOfProcessRuntimeExecutablesExcluded(patterns: string[], packageDir: string): void {
for (const executable of ['copilot-runtime', 'copilot-runtime-bin', 'copilot-runtime.exe', 'copilot-runtime-bin.exe']) {
assert(patterns.includes(`!${packageDir}/prebuilds/*/${executable}`), executable);
assert(!matchesGlob(`${packageDir}/prebuilds/test-platform/${executable}`, patterns), executable);
}
}
function assertOptionalCopilotNativeDependenciesExcluded(patterns: string[], packageDir: string): void {
for (const dir of ['clipboard', 'foundry-local-sdk', 'mxc-bin', 'pvrecorder', 'webview']) {
assert(patterns.includes(`!${packageDir}/${dir}/**`), dir);
-1
View File
@@ -34,7 +34,6 @@ export const referenceGeneratedDepsByArch = {
'libc6 (>= 2.17)',
'libc6 (>= 2.2.5)',
'libc6 (>= 2.25)',
'libc6 (>= 2.27)',
'libc6 (>= 2.28)',
'libc6 (>= 2.4)',
'libcairo2 (>= 1.6.0)',
-1
View File
@@ -81,7 +81,6 @@ export const referenceGeneratedDepsByArch = {
'libgtk-3.so.0()(64bit)',
'libm.so.6()(64bit)',
'libm.so.6(GLIBC_2.2.5)(64bit)',
'libm.so.6(GLIBC_2.27)(64bit)',
'libnspr4.so()(64bit)',
'libnss3.so()(64bit)',
'libnss3.so(NSS_3.11)(64bit)',
+391 -340
View File
@@ -12,8 +12,8 @@
"dependencies": {
"@anthropic-ai/sdk": "^0.82.0",
"@devcontainers/cli": "0.88.0",
"@github/copilot": "1.0.84-5",
"@github/copilot-sdk": "1.0.13",
"@github/copilot": "1.0.86-0",
"@github/copilot-sdk": "1.0.14",
"@microsoft/1ds-core-js": "^3.2.13",
"@microsoft/1ds-post-js": "^3.2.13",
"@microsoft/dev-tunnels-connections": "^1.3.41",
@@ -1155,9 +1155,9 @@
}
},
"node_modules/@github/copilot": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-1.0.84-5.tgz",
"integrity": "sha512-R5rjs2Ua8f5Gy/aZ4cJcYOycYcR9+D9UQicOjEjGk5L9arKvc5kqXc1Joaw4cnjv+MgmUyJUg9D0NRaTxYUxNQ==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-1.0.86-0.tgz",
"integrity": "sha512-i9msuxwuqdzIOvu+0cVX1ERa4uL3JitaUOpRgaPaeLG4XY7pC+rIwwj+gk6Rwyqne4uy8GIpVKqR+gXmH9sGqA==",
"license": "SEE LICENSE IN LICENSE.md",
"dependencies": {
"detect-libc": "^2.1.2"
@@ -1166,20 +1166,20 @@
"copilot": "npm-loader.js"
},
"optionalDependencies": {
"@github/copilot-darwin-arm64": "1.0.84-5",
"@github/copilot-darwin-x64": "1.0.84-5",
"@github/copilot-linux-arm64": "1.0.84-5",
"@github/copilot-linux-x64": "1.0.84-5",
"@github/copilot-linuxmusl-arm64": "1.0.84-5",
"@github/copilot-linuxmusl-x64": "1.0.84-5",
"@github/copilot-win32-arm64": "1.0.84-5",
"@github/copilot-win32-x64": "1.0.84-5"
"@github/copilot-darwin-arm64": "1.0.86-0",
"@github/copilot-darwin-x64": "1.0.86-0",
"@github/copilot-linux-arm64": "1.0.86-0",
"@github/copilot-linux-x64": "1.0.86-0",
"@github/copilot-linuxmusl-arm64": "1.0.86-0",
"@github/copilot-linuxmusl-x64": "1.0.86-0",
"@github/copilot-win32-arm64": "1.0.86-0",
"@github/copilot-win32-x64": "1.0.86-0"
}
},
"node_modules/@github/copilot-darwin-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-arm64/-/copilot-darwin-arm64-1.0.84-5.tgz",
"integrity": "sha512-OAwPT1ZP36UfEDCImtoH5gkU5dRMP4enjjlzz4WNRtC897xi1l+ldQDlZQ0nNnsXcg4ME1aJgFiIgR/GBM3sqg==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-arm64/-/copilot-darwin-arm64-1.0.86-0.tgz",
"integrity": "sha512-a/0X0tp5g45td50Z5DsOO8VaDQWhBKgcfGS+TUxUP4oxEx3RtRp5PCxqcFgBCjzrJIaCUFfBhGj2O6GJKbE3wA==",
"cpu": [
"arm64"
],
@@ -1193,9 +1193,9 @@
}
},
"node_modules/@github/copilot-darwin-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-x64/-/copilot-darwin-x64-1.0.84-5.tgz",
"integrity": "sha512-J/U3S9AwozLJ9HS2snCYWIlxLivQjJuXCgy71XgCy89TVGVrAVu3XcoNczaIiynLJtSpVnvjyu0HR6oAVUk0Og==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-x64/-/copilot-darwin-x64-1.0.86-0.tgz",
"integrity": "sha512-d8MTSoEKNK88Egn4p+dcV58yqwc4KH/lfNKayUFiKeDFs80ADtLLQ70ZnvRxHSsJiA4kZFdDovYOjDo97CXdWQ==",
"cpu": [
"x64"
],
@@ -1209,9 +1209,9 @@
}
},
"node_modules/@github/copilot-linux-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-arm64/-/copilot-linux-arm64-1.0.84-5.tgz",
"integrity": "sha512-yG4FLOIYldgR8BKRJW2ZPBU2n3i7ehR/H/p2V6tHalMp0vC28cP18AfdOmv0wWoWNlLv9NPv0+h1IA13HbB+VA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-arm64/-/copilot-linux-arm64-1.0.86-0.tgz",
"integrity": "sha512-XP9NvXrLATNdrSaFWjjhxKSEdc5iDR61sYglW/cuI0eX95gyw68v8xWYcXFIf4Cc+Z+ZqUhPsgaSFCD3ZpsUwQ==",
"cpu": [
"arm64"
],
@@ -1228,9 +1228,9 @@
}
},
"node_modules/@github/copilot-linux-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-x64/-/copilot-linux-x64-1.0.84-5.tgz",
"integrity": "sha512-W3cMWP+GFdupYT4u3K9ZU63B86mt/to9T/lwy/7A5w2XGDssRRFemrYojQwhu8WPVLyZ7WmtbLCltfCe5kUoQg==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-x64/-/copilot-linux-x64-1.0.86-0.tgz",
"integrity": "sha512-yJmBNANkC6vG7woKCXyGQNg3oSPI00fEhgCpMmWhnhBtfUVfmxDY2E0+QgEVVXEHjLqKqAprJWWeHsAVifHEJg==",
"cpu": [
"x64"
],
@@ -1247,9 +1247,9 @@
}
},
"node_modules/@github/copilot-linuxmusl-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-arm64/-/copilot-linuxmusl-arm64-1.0.84-5.tgz",
"integrity": "sha512-dAR5LmY1hpAJhC8BYZIfYmKt/XY0PA6SV0rGolom6gpDkCJdcmrvyp5/i0/olrO0O62OkOjc7sDo+X0CIzN5YA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-arm64/-/copilot-linuxmusl-arm64-1.0.86-0.tgz",
"integrity": "sha512-DsKhYQCkzaFL2iPVoD+bwecm2rvVegJMj9Vhfc9hOiGmZFfGqzXsIQhKh/qC+bpW2CEO0ftGNlo99amc0I9tYQ==",
"cpu": [
"arm64"
],
@@ -1266,9 +1266,9 @@
}
},
"node_modules/@github/copilot-linuxmusl-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-x64/-/copilot-linuxmusl-x64-1.0.84-5.tgz",
"integrity": "sha512-RAPSmc3zOc9B2hq1Ob7ZU+CSNPwN6sltlDo1AxnuhPXq7KL3o8j8zGqudYpzlozp/A5MBM9G11VZZ3SMePxMnA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-x64/-/copilot-linuxmusl-x64-1.0.86-0.tgz",
"integrity": "sha512-1EoQZid0eChynIDA1pNXeLvFhpfMxmc7maDCBlTyfEDqUGdF61AOLjC9pcRCh/gbJ5rslXC9EBmjjGEN/yBa2A==",
"cpu": [
"x64"
],
@@ -1285,12 +1285,12 @@
}
},
"node_modules/@github/copilot-sdk": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk/-/copilot-sdk-1.0.13.tgz",
"integrity": "sha512-/j6/tGc9HOtcupuYFloOKk0fpScdpy65EVF1LKg2Z2VQOojCGPgBGkhgVGVDaqW7UB6TV2qbQZa9rKJimJ0wWQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk/-/copilot-sdk-1.0.14.tgz",
"integrity": "sha512-knNiXKO7jpp8OrLc8ePGuPssf7CsktJwhv4ukfFXfB2RNgO/59hloSILaEL+mDjwt+QjawrLqgO3HN7Pyud2hA==",
"license": "MIT",
"dependencies": {
"koffi": "^3.1.0",
"koffi": "^3.2.1",
"vscode-jsonrpc": "^8.2.1",
"zod": "^4.3.6"
},
@@ -1298,20 +1298,20 @@
"node": "^20.19.0 || >=22.12.0"
},
"optionalDependencies": {
"@github/copilot-sdk-darwin-arm64": "1.0.13",
"@github/copilot-sdk-darwin-x64": "1.0.13",
"@github/copilot-sdk-linux-arm64": "1.0.13",
"@github/copilot-sdk-linux-x64": "1.0.13",
"@github/copilot-sdk-linuxmusl-arm64": "1.0.13",
"@github/copilot-sdk-linuxmusl-x64": "1.0.13",
"@github/copilot-sdk-win32-arm64": "1.0.13",
"@github/copilot-sdk-win32-x64": "1.0.13"
"@github/copilot-sdk-darwin-arm64": "1.0.14",
"@github/copilot-sdk-darwin-x64": "1.0.14",
"@github/copilot-sdk-linux-arm64": "1.0.14",
"@github/copilot-sdk-linux-x64": "1.0.14",
"@github/copilot-sdk-linuxmusl-arm64": "1.0.14",
"@github/copilot-sdk-linuxmusl-x64": "1.0.14",
"@github/copilot-sdk-win32-arm64": "1.0.14",
"@github/copilot-sdk-win32-x64": "1.0.14"
}
},
"node_modules/@github/copilot-sdk-darwin-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-arm64/-/copilot-sdk-darwin-arm64-1.0.13.tgz",
"integrity": "sha512-AvBV5dzjNWpGwgoCnttrETnt7rLI4pTFQsRSM7GU5TK+YqShauffdMU06Bn/d+IDX2fj1Z4ThH7yl/gHCDvoNQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-arm64/-/copilot-sdk-darwin-arm64-1.0.14.tgz",
"integrity": "sha512-ABvcmAiKl6r8OVeHDNPFgVjhdWYliVuySlTjauNxbhhfKbrGAiEdb2wZyIqdenxPQrUXjK5iUq39oNohpfUDHQ==",
"cpu": [
"arm64"
],
@@ -1322,9 +1322,9 @@
]
},
"node_modules/@github/copilot-sdk-darwin-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-x64/-/copilot-sdk-darwin-x64-1.0.13.tgz",
"integrity": "sha512-ZNQmTnHwk8bO/E514k0sFBsuCVNpFj8jMH4jeLncASQM4RRdOqYhXlYLW7H/ts7ANjdfMJjJY29NUqzEWaADOA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-x64/-/copilot-sdk-darwin-x64-1.0.14.tgz",
"integrity": "sha512-p7rL65ORq0bsq7geje3NL/HpPWXMYiII6AiS3wNWR947wdap6YEjVKI3MKmbx8JD+EfTqLW7uTQhlKMReZwlEA==",
"cpu": [
"x64"
],
@@ -1335,9 +1335,9 @@
]
},
"node_modules/@github/copilot-sdk-linux-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-arm64/-/copilot-sdk-linux-arm64-1.0.13.tgz",
"integrity": "sha512-km1jvveDwlJbht8luFyBurz0wUxPHSzdkZRMJEJgVHYfMn03gi0gdnZ6fC6JWgkiffNZpukSxRPJmPfRobw6Aw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-arm64/-/copilot-sdk-linux-arm64-1.0.14.tgz",
"integrity": "sha512-08ocvNmme++Tf/kAbppleJqE/GWUmLn4LUSf+6ZkmWspOXkoF3YRWBlVKNlZZXRBZ8MexJJ8Naci+ky5m55UmQ==",
"cpu": [
"arm64"
],
@@ -1351,9 +1351,9 @@
]
},
"node_modules/@github/copilot-sdk-linux-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-x64/-/copilot-sdk-linux-x64-1.0.13.tgz",
"integrity": "sha512-4AbzC8Nb1dWYQ1uxbHGAh0ZAoOJeL3Ms1oe3byZLn8ENP1PfoyD8DJZUSsyXGYHxL7oLJyUqd3wyt18ifIg8iw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-x64/-/copilot-sdk-linux-x64-1.0.14.tgz",
"integrity": "sha512-1wlAVTK1z7ovAez0tixr+f77TnjB3fqKobamu1pG7FYyCTwQuyU4p1aWNXF9j/u1d7rxSY1n9cAxrtEAUkizbg==",
"cpu": [
"x64"
],
@@ -1367,9 +1367,9 @@
]
},
"node_modules/@github/copilot-sdk-linuxmusl-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-arm64/-/copilot-sdk-linuxmusl-arm64-1.0.13.tgz",
"integrity": "sha512-pCUjly1nXcNpYDZNnKrglFIFejbb+QDkloilldu+0tTbSzb8gEmVsbGwpfwyZXfNQf5Je5FFjsOfQR9PXH1NDQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-arm64/-/copilot-sdk-linuxmusl-arm64-1.0.14.tgz",
"integrity": "sha512-KNQPD698QRxswtFWYq46hzk8/vWhSEAZAtvBwkD5VHxooClZLESC00D55dTA5dC4mZv9SRHUhbpbQhUHfKYMuA==",
"cpu": [
"arm64"
],
@@ -1383,9 +1383,9 @@
]
},
"node_modules/@github/copilot-sdk-linuxmusl-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-x64/-/copilot-sdk-linuxmusl-x64-1.0.13.tgz",
"integrity": "sha512-y5RmqAbKSYHt+OwQdILIiiMSibXdd7/0kO7kFoTZCN2gn2eGRA8wJbXlf6KZh+yYgWSJGUL8677LDJd3WnIHbA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-x64/-/copilot-sdk-linuxmusl-x64-1.0.14.tgz",
"integrity": "sha512-tNNeJl53hXEkqeGudNAsHQk9OrSUbt2EdPhtugcQxscabaEFutd7KwQH6jmvvYW7Sifgl59ySWTd4ok/9I94kg==",
"cpu": [
"x64"
],
@@ -1399,9 +1399,9 @@
]
},
"node_modules/@github/copilot-sdk-win32-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-arm64/-/copilot-sdk-win32-arm64-1.0.13.tgz",
"integrity": "sha512-azISXh4pEVfX0hPzu58wZTYg3tdWG4L1nNpiRa/wdBxhcovbxw+eZVkI4C6FZMx0tiNYFkqWzVTV7oKskNybcw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-arm64/-/copilot-sdk-win32-arm64-1.0.14.tgz",
"integrity": "sha512-GZiw+r+6yNhPlsT1y1sDzUR8HRnduJZFdZzhjNQi+VC0GkdZiYz12yiABwLhN9FxSD079Y4FsNUHiCLUdskNcA==",
"cpu": [
"arm64"
],
@@ -1412,9 +1412,9 @@
]
},
"node_modules/@github/copilot-sdk-win32-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-x64/-/copilot-sdk-win32-x64-1.0.13.tgz",
"integrity": "sha512-lvS7kMbuuxydBQxPDHCkuUwbC858Rvcz3Q3vv0mxnLKuWJ75lAcqERefqA2p4beaPdez+ifZOA5heUT0rx3GnA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-x64/-/copilot-sdk-win32-x64-1.0.14.tgz",
"integrity": "sha512-+HCmPN4GKbLBdRcutdmxh9bKrRWEEA6g6jwG3lCbtExa5OKfi5QAtubsDjdBlq3HzPDU/csIlaRTJ/q3vik2oQ==",
"cpu": [
"x64"
],
@@ -1424,10 +1424,328 @@
"win32"
]
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-android-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-android-arm64/-/koffi-android-arm64-3.2.1.tgz",
"integrity": "sha512-1pJQ4jnZlUJduK9u9DC5CGy3aOgDUPvIXpNb6syV3+Dh5Q/ugezAIGCqvY+w+1mgXsve0pd0NVvJRjdZNHQ6MA==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"android"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-android-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-android-x64/-/koffi-android-x64-3.2.1.tgz",
"integrity": "sha512-HH40xGh3gVQifjOBnhwT2tECC0lL1lYe+nxHvWNSzxDIyQNcVPXg38ta7vuONRFpD+uIrw7fqGYLzbZIagkVcg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"android"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-darwin-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-arm64/-/koffi-darwin-arm64-3.2.1.tgz",
"integrity": "sha512-Vj4h+xcjc5+Cn0DhPHjgRX4omKAv96Kehtcd+1YgYuY2W7FvQn9vS+3SmzVwhC5Qmg9bIwUZObYQ8T/4hBqQqA==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-darwin-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-x64/-/koffi-darwin-x64-3.2.1.tgz",
"integrity": "sha512-gFCWxNBTZIvxo1p+PURWfsy2Ctj5FGnVVs1f03lTLhBvmxEto70pdIiFztdFLDFkAJ1pmtQmruRKapeK+E8YPA==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-arm64/-/koffi-freebsd-arm64-3.2.1.tgz",
"integrity": "sha512-qj+f1s2e6vULaUG1cdlTcCXmunCq2t+rjxku1+esaMIqVnHpOwj0QzPuInG0AFdXjwBNQhyVR/HpDj8daEwwsQ==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-ia32/-/koffi-freebsd-ia32-3.2.1.tgz",
"integrity": "sha512-6olHb1Qfgai0jjs6ddlDDD0ZfsCxy7SPi8rMRpuYQWH0qhgtyQu82hw5b1p7z+TJ0zZP3ZeQQ6l+U/MlM1ICHQ==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-x64/-/koffi-freebsd-x64-3.2.1.tgz",
"integrity": "sha512-Dikhw1ySYNVMkmeFvFVjnU5Wdk6mffNoOjJxm9bTG96vg7OlemylxqdEven47R1YJ3yzNVJn/MlQ207ORWfi2w==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-arm": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm/-/koffi-linux-arm-3.2.1.tgz",
"integrity": "sha512-OfwUwZylidq95wQKp6ClInULrfB2giu7dqM6Rhe0zAe6lES5I2SXNw15T9+GnRHk3/9hKT2XZ37OZLaKSyWNLA==",
"cpu": [
"arm"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm64/-/koffi-linux-arm64-3.2.1.tgz",
"integrity": "sha512-K+cGUL5iBcDqxmsocrjmlASqDf24gc7artbVW3PewG2c9AqwC63lezgwvB85Nx4lZAQjB6zIFHh9A7t1yGbwhw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-ia32/-/koffi-linux-ia32-3.2.1.tgz",
"integrity": "sha512-rxj6UYjU1qd98gxNQOSCdLpc5cPRi5Giq9rNd3jnGuSNIyMkwa6Dxw4cUjmhIBCYESMJtmNt5NWnJp5u9wTfYQ==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-loong64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-loong64/-/koffi-linux-loong64-3.2.1.tgz",
"integrity": "sha512-aHhnHzkPRmT/IHDlGvESJ/Bs32m8N6UE6Ab6kMeJzgk74IN8af2m/81/wZJtybR1M2UxCV4NmlVNUYQQvSAO3Q==",
"cpu": [
"loong64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-riscv64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-riscv64/-/koffi-linux-riscv64-3.2.1.tgz",
"integrity": "sha512-qtQBsjbm3LiirLJvajWmKkNb7ARk7fvJVXdftJ7NtAnF3Xw8EbDvrtvmvtNI1yLPlYcBmlzCCD71hwhWYk0SIA==",
"cpu": [
"riscv64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-x64/-/koffi-linux-x64-3.2.1.tgz",
"integrity": "sha512-c7hw7Qs/r5gnFRTQLcbifBwRU7wiocj+2pVuDQ5Ahb3r36SZmupmgYbTWcLvTW+hul1jd7SKRV0d14ZJq/tvSw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-openbsd-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-ia32/-/koffi-openbsd-ia32-3.2.1.tgz",
"integrity": "sha512-mmY8fY8LQ/CB52+h3yrMYmVyoxzW3x08S0yI6VNfHWdfU6yJtZkKCbhjmQCYMrWbYKC4gMvwZwCywIGPAkLyeA==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-openbsd-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-x64/-/koffi-openbsd-x64-3.2.1.tgz",
"integrity": "sha512-k4ig6aAPbFSRATOIIOfdf/KtlOGH4SVls6L9fy0QnTxRJYvY2oSltTsQtBDANgEQldlq8Kl5WnpRa1VSibP4Lw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-arm64/-/koffi-win32-arm64-3.2.1.tgz",
"integrity": "sha512-cTWBJGK//pDMeKQJE/79Aq9MiOAF4H8QyLZHSQ9IWm8czOfwjG4J1AhsQ9DjI9KFOykH77hhnpmQTGVMIubGig==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-ia32/-/koffi-win32-ia32-3.2.1.tgz",
"integrity": "sha512-Z50EM6TAZ7CFyMmyX6thv8eNpJchqe9eenhibSIy2Eq/FQYF76gU2VK/LEoaF46L8hfC7TpTp9b10MvReHEyFA==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-x64/-/koffi-win32-x64-3.2.1.tgz",
"integrity": "sha512-ZmZNiBO6bkOSh3QNzgfvb1cMY0yMobn6ZQrSMqbAce21qyYL8niIbyipz9N/PIRDciGhsV0wUxnZsxIO+yWsHQ==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/koffi": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/koffi/-/koffi-3.2.1.tgz",
"integrity": "sha512-0qE3lZ8jllRqPN4Ob6Ajl7c2bJSJDhQWuKLGP5hIEpHLllJWv1ydHFMhHmHc5p/W9GticKVDbYzZd7TBoQ4CZg==",
"hasInstallScript": true,
"license": "MIT",
"funding": {
"url": "https://liberapay.com/Koromix"
},
"optionalDependencies": {
"@koromix/koffi-android-arm64": "3.2.1",
"@koromix/koffi-android-x64": "3.2.1",
"@koromix/koffi-darwin-arm64": "3.2.1",
"@koromix/koffi-darwin-x64": "3.2.1",
"@koromix/koffi-freebsd-arm64": "3.2.1",
"@koromix/koffi-freebsd-ia32": "3.2.1",
"@koromix/koffi-freebsd-x64": "3.2.1",
"@koromix/koffi-linux-arm": "3.2.1",
"@koromix/koffi-linux-arm64": "3.2.1",
"@koromix/koffi-linux-ia32": "3.2.1",
"@koromix/koffi-linux-loong64": "3.2.1",
"@koromix/koffi-linux-riscv64": "3.2.1",
"@koromix/koffi-linux-x64": "3.2.1",
"@koromix/koffi-openbsd-ia32": "3.2.1",
"@koromix/koffi-openbsd-x64": "3.2.1",
"@koromix/koffi-win32-arm64": "3.2.1",
"@koromix/koffi-win32-ia32": "3.2.1",
"@koromix/koffi-win32-x64": "3.2.1"
}
},
"node_modules/@github/copilot-win32-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-arm64/-/copilot-win32-arm64-1.0.84-5.tgz",
"integrity": "sha512-me+N1uolNJI3xQb9l+puQ62jJnMtU3AxrVLuxjseuQi1z2a3ofEBh/Ntx83jv0TF0aT0iyGz5dM5PYv4Xnv9BQ==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-arm64/-/copilot-win32-arm64-1.0.86-0.tgz",
"integrity": "sha512-Ovx7nl4mLPXoR5HQQx6bBdzU7K+0waCECvMJLcI0ZGSsue/WJQHAUU2Ijt4BbUU4g3KXzT6nt3JamhWjOC/jEQ==",
"cpu": [
"arm64"
],
@@ -1441,9 +1759,9 @@
}
},
"node_modules/@github/copilot-win32-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-x64/-/copilot-win32-x64-1.0.84-5.tgz",
"integrity": "sha512-BVmWJxTx3xEas1QXHMx9MK0+aPlkvks2mvVs1ImjQRL1mTaHOO53A92+k967eokyTzvqmsPjhhav35YoF39g/A==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-x64/-/copilot-win32-x64-1.0.86-0.tgz",
"integrity": "sha512-1Uii2tXYxvWpq2hel39kK3lSWEYZ/efVQ35ZMzKbh0QMi98KI5BnYKu+3hzPFIMp1FF1FRxJZTAtb6YmXcGDwQ==",
"cpu": [
"x64"
],
@@ -1951,246 +2269,6 @@
}
}
},
"node_modules/@koromix/koffi-darwin-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-arm64/-/koffi-darwin-arm64-3.1.2.tgz",
"integrity": "sha512-32pU4pNZABIz+l9DNJl51Y+jur4vv+SF4Ip2CSF4OUg1xUyefoLpX0NttDmzGITIrneUEVSEN+dT22524ESKBw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-darwin-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-x64/-/koffi-darwin-x64-3.1.2.tgz",
"integrity": "sha512-S+H6LQgUoMj77BqDegwlRaxwLXDfwvSJGuceOqtH0I5V8rzKLmu/hC7NBlxOoAlvKlcV63FtdNiE2E9YSltffg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-arm64/-/koffi-freebsd-arm64-3.1.2.tgz",
"integrity": "sha512-fD0ow2PBE60nw7K6xcbala6qwXxfcYeU62tduNeIPvx0KoWhU2rMKZiDNe+iI5TQb3rxYYjjP+aF2Sdm9y6EXQ==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-ia32/-/koffi-freebsd-ia32-3.1.2.tgz",
"integrity": "sha512-t8OmL+hoJGDLZDnuLjgLemSYrXX99M7Md+zJX8bMHOtiNbFtkGXn/mV21Pb1ik9JhBXjwK1r4hvBPNlqTMGrHg==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-x64/-/koffi-freebsd-x64-3.1.2.tgz",
"integrity": "sha512-axbLgiM4Y2vyDOTqlXCI8vkg9wqjwSRsmoWXSKreA5YFJwnYA6Sc4aHMz+qZgUSfFei52Qrv1RGhDyo4kHvqhA==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm64/-/koffi-linux-arm64-3.1.2.tgz",
"integrity": "sha512-f0hqAIlFcL9wlRGJ/uCfyfspqnGaASk2gLx1UAP3RBgMQl68D1e+fiHNdXa7g9d76ttmpA8/PGNAqc1X4Byy1Q==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-ia32/-/koffi-linux-ia32-3.1.2.tgz",
"integrity": "sha512-UGLPuqeOV/UArsK6oeB5yI/XjSWkFqFlBTC9rUbezBuHJhSibk1EMv7QC0cvtDMu18bo+ucqXWPzh42oT5yYlw==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-loong64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-loong64/-/koffi-linux-loong64-3.1.2.tgz",
"integrity": "sha512-jI0+gM2oDsJ7reOt3XPyO7lyQtZ1CT6NR2uqGQcQVM43cyXBAVYYCUxEH3LHCbgumFaZ+LueIUgbMSwb9pHBxQ==",
"cpu": [
"loong64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-riscv64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-riscv64/-/koffi-linux-riscv64-3.1.2.tgz",
"integrity": "sha512-yB99adXBRd5T+xXG+f6nnUkC3jCI0iXvPU6RqD9Kx7aZP4Y4NNUWJ5Q4FaP9jb1XmZLY4pGBUiHt8u03Yl7NyA==",
"cpu": [
"riscv64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-x64/-/koffi-linux-x64-3.1.2.tgz",
"integrity": "sha512-Oxvo6F3Edzy/Jm2EtbHWkJ2xRB0mXDAe63k5+USL5uiGE5xZjwEUDOBKIhv2BpCZSOAJrfoojFFogj6+ICKQhw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-openbsd-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-ia32/-/koffi-openbsd-ia32-3.1.2.tgz",
"integrity": "sha512-SSWzUhL8Ex84JTsO67+MdWZrdwgOzoOrQ0+ZbB+UsivHoAxmWLHKWZaSafNqyBZtxGY1EgtR8AIPouWE9U+Zfw==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-openbsd-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-x64/-/koffi-openbsd-x64-3.1.2.tgz",
"integrity": "sha512-0ZuI4St7chq3M0d3VivvKIqacZ7RhgohdR476V3HpJkaNdfIywsJIw+GBvqkQahu+4A2Rpu6yQJpWSrfk/Z+Jw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-arm64/-/koffi-win32-arm64-3.1.2.tgz",
"integrity": "sha512-8Wn6phw7y53uI52+aBPAqEfZ5pj/HCjg/YtdthqSWYHy+d0MhyASKlcmuP0B5raxQnnA1Bm9LC8UO3M3RojeBw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-ia32/-/koffi-win32-ia32-3.1.2.tgz",
"integrity": "sha512-FkKaPBMawgHMNnp1FwLldXMNvEa139GXkxPi9JD9xU71Kh/ZmuEYHGSD6JwZDmDr4jekVrBrr+eGZ+j6C2mkXg==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-x64/-/koffi-win32-x64-3.1.2.tgz",
"integrity": "sha512-FeFC59UU1XX4J3ZaqKrsrEzczzB5qksMJo7/R45vIg8mGNVSLMVE85JRiZpjcp9i5Lbav5Vw47QvwFzBgIfvlw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@malept/cross-spawn-promise": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-1.1.1.tgz",
@@ -14204,33 +14282,6 @@
"url": "https://opencollective.com/express"
}
},
"node_modules/koffi": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/koffi/-/koffi-3.1.2.tgz",
"integrity": "sha512-wVwuE21TBl8/si6E0hPorKR2PJ2q33mEWVETANrtSp3kFM8fi2FcD/J5wmxu0T4TBcqmMQ4xKuF1X1ayFmphzw==",
"hasInstallScript": true,
"license": "MIT",
"funding": {
"url": "https://liberapay.com/Koromix"
},
"optionalDependencies": {
"@koromix/koffi-darwin-arm64": "3.1.2",
"@koromix/koffi-darwin-x64": "3.1.2",
"@koromix/koffi-freebsd-arm64": "3.1.2",
"@koromix/koffi-freebsd-ia32": "3.1.2",
"@koromix/koffi-freebsd-x64": "3.1.2",
"@koromix/koffi-linux-arm64": "3.1.2",
"@koromix/koffi-linux-ia32": "3.1.2",
"@koromix/koffi-linux-loong64": "3.1.2",
"@koromix/koffi-linux-riscv64": "3.1.2",
"@koromix/koffi-linux-x64": "3.1.2",
"@koromix/koffi-openbsd-ia32": "3.1.2",
"@koromix/koffi-openbsd-x64": "3.1.2",
"@koromix/koffi-win32-arm64": "3.1.2",
"@koromix/koffi-win32-ia32": "3.1.2",
"@koromix/koffi-win32-x64": "3.1.2"
}
},
"node_modules/last-run": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz",
+4 -3
View File
@@ -104,8 +104,8 @@
"dependencies": {
"@anthropic-ai/sdk": "^0.82.0",
"@devcontainers/cli": "0.88.0",
"@github/copilot": "1.0.84-5",
"@github/copilot-sdk": "1.0.13",
"@github/copilot": "1.0.86-0",
"@github/copilot-sdk": "1.0.14",
"@microsoft/1ds-core-js": "^3.2.13",
"@microsoft/1ds-post-js": "^3.2.13",
"@microsoft/dev-tunnels-connections": "^1.3.41",
@@ -285,6 +285,7 @@
"kerberos@2.1.1": {
"node-addon-api": "7.1.0"
},
"koffi": "3.2.1",
"serialize-javascript": "^7.0.3",
"yauzl": "^3.3.1"
},
@@ -303,7 +304,7 @@
"cpu-features": false,
"foundry-local-sdk@1.2.3": true,
"kerberos@2.1.1": true,
"koffi@3.1.2": false,
"koffi@3.2.1": false,
"native-keymap@3.3.9": true,
"protobufjs@7.6.5": false,
"native-is-elevated@0.9.0": true,
+391 -340
View File
@@ -9,8 +9,8 @@
"version": "0.0.0",
"dependencies": {
"@devcontainers/cli": "0.88.0",
"@github/copilot": "1.0.84-5",
"@github/copilot-sdk": "1.0.13",
"@github/copilot": "1.0.86-0",
"@github/copilot-sdk": "1.0.14",
"@microsoft/1ds-core-js": "^3.2.13",
"@microsoft/1ds-post-js": "^3.2.13",
"@microsoft/mxc-sdk": "0.8.0",
@@ -74,9 +74,9 @@
}
},
"node_modules/@github/copilot": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-1.0.84-5.tgz",
"integrity": "sha512-R5rjs2Ua8f5Gy/aZ4cJcYOycYcR9+D9UQicOjEjGk5L9arKvc5kqXc1Joaw4cnjv+MgmUyJUg9D0NRaTxYUxNQ==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot/-/copilot-1.0.86-0.tgz",
"integrity": "sha512-i9msuxwuqdzIOvu+0cVX1ERa4uL3JitaUOpRgaPaeLG4XY7pC+rIwwj+gk6Rwyqne4uy8GIpVKqR+gXmH9sGqA==",
"license": "SEE LICENSE IN LICENSE.md",
"dependencies": {
"detect-libc": "^2.1.2"
@@ -85,20 +85,20 @@
"copilot": "npm-loader.js"
},
"optionalDependencies": {
"@github/copilot-darwin-arm64": "1.0.84-5",
"@github/copilot-darwin-x64": "1.0.84-5",
"@github/copilot-linux-arm64": "1.0.84-5",
"@github/copilot-linux-x64": "1.0.84-5",
"@github/copilot-linuxmusl-arm64": "1.0.84-5",
"@github/copilot-linuxmusl-x64": "1.0.84-5",
"@github/copilot-win32-arm64": "1.0.84-5",
"@github/copilot-win32-x64": "1.0.84-5"
"@github/copilot-darwin-arm64": "1.0.86-0",
"@github/copilot-darwin-x64": "1.0.86-0",
"@github/copilot-linux-arm64": "1.0.86-0",
"@github/copilot-linux-x64": "1.0.86-0",
"@github/copilot-linuxmusl-arm64": "1.0.86-0",
"@github/copilot-linuxmusl-x64": "1.0.86-0",
"@github/copilot-win32-arm64": "1.0.86-0",
"@github/copilot-win32-x64": "1.0.86-0"
}
},
"node_modules/@github/copilot-darwin-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-arm64/-/copilot-darwin-arm64-1.0.84-5.tgz",
"integrity": "sha512-OAwPT1ZP36UfEDCImtoH5gkU5dRMP4enjjlzz4WNRtC897xi1l+ldQDlZQ0nNnsXcg4ME1aJgFiIgR/GBM3sqg==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-arm64/-/copilot-darwin-arm64-1.0.86-0.tgz",
"integrity": "sha512-a/0X0tp5g45td50Z5DsOO8VaDQWhBKgcfGS+TUxUP4oxEx3RtRp5PCxqcFgBCjzrJIaCUFfBhGj2O6GJKbE3wA==",
"cpu": [
"arm64"
],
@@ -112,9 +112,9 @@
}
},
"node_modules/@github/copilot-darwin-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-x64/-/copilot-darwin-x64-1.0.84-5.tgz",
"integrity": "sha512-J/U3S9AwozLJ9HS2snCYWIlxLivQjJuXCgy71XgCy89TVGVrAVu3XcoNczaIiynLJtSpVnvjyu0HR6oAVUk0Og==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-darwin-x64/-/copilot-darwin-x64-1.0.86-0.tgz",
"integrity": "sha512-d8MTSoEKNK88Egn4p+dcV58yqwc4KH/lfNKayUFiKeDFs80ADtLLQ70ZnvRxHSsJiA4kZFdDovYOjDo97CXdWQ==",
"cpu": [
"x64"
],
@@ -128,9 +128,9 @@
}
},
"node_modules/@github/copilot-linux-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-arm64/-/copilot-linux-arm64-1.0.84-5.tgz",
"integrity": "sha512-yG4FLOIYldgR8BKRJW2ZPBU2n3i7ehR/H/p2V6tHalMp0vC28cP18AfdOmv0wWoWNlLv9NPv0+h1IA13HbB+VA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-arm64/-/copilot-linux-arm64-1.0.86-0.tgz",
"integrity": "sha512-XP9NvXrLATNdrSaFWjjhxKSEdc5iDR61sYglW/cuI0eX95gyw68v8xWYcXFIf4Cc+Z+ZqUhPsgaSFCD3ZpsUwQ==",
"cpu": [
"arm64"
],
@@ -147,9 +147,9 @@
}
},
"node_modules/@github/copilot-linux-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-x64/-/copilot-linux-x64-1.0.84-5.tgz",
"integrity": "sha512-W3cMWP+GFdupYT4u3K9ZU63B86mt/to9T/lwy/7A5w2XGDssRRFemrYojQwhu8WPVLyZ7WmtbLCltfCe5kUoQg==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linux-x64/-/copilot-linux-x64-1.0.86-0.tgz",
"integrity": "sha512-yJmBNANkC6vG7woKCXyGQNg3oSPI00fEhgCpMmWhnhBtfUVfmxDY2E0+QgEVVXEHjLqKqAprJWWeHsAVifHEJg==",
"cpu": [
"x64"
],
@@ -166,9 +166,9 @@
}
},
"node_modules/@github/copilot-linuxmusl-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-arm64/-/copilot-linuxmusl-arm64-1.0.84-5.tgz",
"integrity": "sha512-dAR5LmY1hpAJhC8BYZIfYmKt/XY0PA6SV0rGolom6gpDkCJdcmrvyp5/i0/olrO0O62OkOjc7sDo+X0CIzN5YA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-arm64/-/copilot-linuxmusl-arm64-1.0.86-0.tgz",
"integrity": "sha512-DsKhYQCkzaFL2iPVoD+bwecm2rvVegJMj9Vhfc9hOiGmZFfGqzXsIQhKh/qC+bpW2CEO0ftGNlo99amc0I9tYQ==",
"cpu": [
"arm64"
],
@@ -185,9 +185,9 @@
}
},
"node_modules/@github/copilot-linuxmusl-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-x64/-/copilot-linuxmusl-x64-1.0.84-5.tgz",
"integrity": "sha512-RAPSmc3zOc9B2hq1Ob7ZU+CSNPwN6sltlDo1AxnuhPXq7KL3o8j8zGqudYpzlozp/A5MBM9G11VZZ3SMePxMnA==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-linuxmusl-x64/-/copilot-linuxmusl-x64-1.0.86-0.tgz",
"integrity": "sha512-1EoQZid0eChynIDA1pNXeLvFhpfMxmc7maDCBlTyfEDqUGdF61AOLjC9pcRCh/gbJ5rslXC9EBmjjGEN/yBa2A==",
"cpu": [
"x64"
],
@@ -204,12 +204,12 @@
}
},
"node_modules/@github/copilot-sdk": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk/-/copilot-sdk-1.0.13.tgz",
"integrity": "sha512-/j6/tGc9HOtcupuYFloOKk0fpScdpy65EVF1LKg2Z2VQOojCGPgBGkhgVGVDaqW7UB6TV2qbQZa9rKJimJ0wWQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk/-/copilot-sdk-1.0.14.tgz",
"integrity": "sha512-knNiXKO7jpp8OrLc8ePGuPssf7CsktJwhv4ukfFXfB2RNgO/59hloSILaEL+mDjwt+QjawrLqgO3HN7Pyud2hA==",
"license": "MIT",
"dependencies": {
"koffi": "^3.1.0",
"koffi": "^3.2.1",
"vscode-jsonrpc": "^8.2.1",
"zod": "^4.3.6"
},
@@ -217,20 +217,20 @@
"node": "^20.19.0 || >=22.12.0"
},
"optionalDependencies": {
"@github/copilot-sdk-darwin-arm64": "1.0.13",
"@github/copilot-sdk-darwin-x64": "1.0.13",
"@github/copilot-sdk-linux-arm64": "1.0.13",
"@github/copilot-sdk-linux-x64": "1.0.13",
"@github/copilot-sdk-linuxmusl-arm64": "1.0.13",
"@github/copilot-sdk-linuxmusl-x64": "1.0.13",
"@github/copilot-sdk-win32-arm64": "1.0.13",
"@github/copilot-sdk-win32-x64": "1.0.13"
"@github/copilot-sdk-darwin-arm64": "1.0.14",
"@github/copilot-sdk-darwin-x64": "1.0.14",
"@github/copilot-sdk-linux-arm64": "1.0.14",
"@github/copilot-sdk-linux-x64": "1.0.14",
"@github/copilot-sdk-linuxmusl-arm64": "1.0.14",
"@github/copilot-sdk-linuxmusl-x64": "1.0.14",
"@github/copilot-sdk-win32-arm64": "1.0.14",
"@github/copilot-sdk-win32-x64": "1.0.14"
}
},
"node_modules/@github/copilot-sdk-darwin-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-arm64/-/copilot-sdk-darwin-arm64-1.0.13.tgz",
"integrity": "sha512-AvBV5dzjNWpGwgoCnttrETnt7rLI4pTFQsRSM7GU5TK+YqShauffdMU06Bn/d+IDX2fj1Z4ThH7yl/gHCDvoNQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-arm64/-/copilot-sdk-darwin-arm64-1.0.14.tgz",
"integrity": "sha512-ABvcmAiKl6r8OVeHDNPFgVjhdWYliVuySlTjauNxbhhfKbrGAiEdb2wZyIqdenxPQrUXjK5iUq39oNohpfUDHQ==",
"cpu": [
"arm64"
],
@@ -241,9 +241,9 @@
]
},
"node_modules/@github/copilot-sdk-darwin-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-x64/-/copilot-sdk-darwin-x64-1.0.13.tgz",
"integrity": "sha512-ZNQmTnHwk8bO/E514k0sFBsuCVNpFj8jMH4jeLncASQM4RRdOqYhXlYLW7H/ts7ANjdfMJjJY29NUqzEWaADOA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-darwin-x64/-/copilot-sdk-darwin-x64-1.0.14.tgz",
"integrity": "sha512-p7rL65ORq0bsq7geje3NL/HpPWXMYiII6AiS3wNWR947wdap6YEjVKI3MKmbx8JD+EfTqLW7uTQhlKMReZwlEA==",
"cpu": [
"x64"
],
@@ -254,9 +254,9 @@
]
},
"node_modules/@github/copilot-sdk-linux-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-arm64/-/copilot-sdk-linux-arm64-1.0.13.tgz",
"integrity": "sha512-km1jvveDwlJbht8luFyBurz0wUxPHSzdkZRMJEJgVHYfMn03gi0gdnZ6fC6JWgkiffNZpukSxRPJmPfRobw6Aw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-arm64/-/copilot-sdk-linux-arm64-1.0.14.tgz",
"integrity": "sha512-08ocvNmme++Tf/kAbppleJqE/GWUmLn4LUSf+6ZkmWspOXkoF3YRWBlVKNlZZXRBZ8MexJJ8Naci+ky5m55UmQ==",
"cpu": [
"arm64"
],
@@ -270,9 +270,9 @@
]
},
"node_modules/@github/copilot-sdk-linux-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-x64/-/copilot-sdk-linux-x64-1.0.13.tgz",
"integrity": "sha512-4AbzC8Nb1dWYQ1uxbHGAh0ZAoOJeL3Ms1oe3byZLn8ENP1PfoyD8DJZUSsyXGYHxL7oLJyUqd3wyt18ifIg8iw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linux-x64/-/copilot-sdk-linux-x64-1.0.14.tgz",
"integrity": "sha512-1wlAVTK1z7ovAez0tixr+f77TnjB3fqKobamu1pG7FYyCTwQuyU4p1aWNXF9j/u1d7rxSY1n9cAxrtEAUkizbg==",
"cpu": [
"x64"
],
@@ -286,9 +286,9 @@
]
},
"node_modules/@github/copilot-sdk-linuxmusl-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-arm64/-/copilot-sdk-linuxmusl-arm64-1.0.13.tgz",
"integrity": "sha512-pCUjly1nXcNpYDZNnKrglFIFejbb+QDkloilldu+0tTbSzb8gEmVsbGwpfwyZXfNQf5Je5FFjsOfQR9PXH1NDQ==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-arm64/-/copilot-sdk-linuxmusl-arm64-1.0.14.tgz",
"integrity": "sha512-KNQPD698QRxswtFWYq46hzk8/vWhSEAZAtvBwkD5VHxooClZLESC00D55dTA5dC4mZv9SRHUhbpbQhUHfKYMuA==",
"cpu": [
"arm64"
],
@@ -302,9 +302,9 @@
]
},
"node_modules/@github/copilot-sdk-linuxmusl-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-x64/-/copilot-sdk-linuxmusl-x64-1.0.13.tgz",
"integrity": "sha512-y5RmqAbKSYHt+OwQdILIiiMSibXdd7/0kO7kFoTZCN2gn2eGRA8wJbXlf6KZh+yYgWSJGUL8677LDJd3WnIHbA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-linuxmusl-x64/-/copilot-sdk-linuxmusl-x64-1.0.14.tgz",
"integrity": "sha512-tNNeJl53hXEkqeGudNAsHQk9OrSUbt2EdPhtugcQxscabaEFutd7KwQH6jmvvYW7Sifgl59ySWTd4ok/9I94kg==",
"cpu": [
"x64"
],
@@ -318,9 +318,9 @@
]
},
"node_modules/@github/copilot-sdk-win32-arm64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-arm64/-/copilot-sdk-win32-arm64-1.0.13.tgz",
"integrity": "sha512-azISXh4pEVfX0hPzu58wZTYg3tdWG4L1nNpiRa/wdBxhcovbxw+eZVkI4C6FZMx0tiNYFkqWzVTV7oKskNybcw==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-arm64/-/copilot-sdk-win32-arm64-1.0.14.tgz",
"integrity": "sha512-GZiw+r+6yNhPlsT1y1sDzUR8HRnduJZFdZzhjNQi+VC0GkdZiYz12yiABwLhN9FxSD079Y4FsNUHiCLUdskNcA==",
"cpu": [
"arm64"
],
@@ -331,9 +331,9 @@
]
},
"node_modules/@github/copilot-sdk-win32-x64": {
"version": "1.0.13",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-x64/-/copilot-sdk-win32-x64-1.0.13.tgz",
"integrity": "sha512-lvS7kMbuuxydBQxPDHCkuUwbC858Rvcz3Q3vv0mxnLKuWJ75lAcqERefqA2p4beaPdez+ifZOA5heUT0rx3GnA==",
"version": "1.0.14",
"resolved": "https://registry.npmjs.org/@github/copilot-sdk-win32-x64/-/copilot-sdk-win32-x64-1.0.14.tgz",
"integrity": "sha512-+HCmPN4GKbLBdRcutdmxh9bKrRWEEA6g6jwG3lCbtExa5OKfi5QAtubsDjdBlq3HzPDU/csIlaRTJ/q3vik2oQ==",
"cpu": [
"x64"
],
@@ -343,10 +343,328 @@
"win32"
]
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-android-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-android-arm64/-/koffi-android-arm64-3.2.1.tgz",
"integrity": "sha512-1pJQ4jnZlUJduK9u9DC5CGy3aOgDUPvIXpNb6syV3+Dh5Q/ugezAIGCqvY+w+1mgXsve0pd0NVvJRjdZNHQ6MA==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"android"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-android-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-android-x64/-/koffi-android-x64-3.2.1.tgz",
"integrity": "sha512-HH40xGh3gVQifjOBnhwT2tECC0lL1lYe+nxHvWNSzxDIyQNcVPXg38ta7vuONRFpD+uIrw7fqGYLzbZIagkVcg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"android"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-darwin-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-arm64/-/koffi-darwin-arm64-3.2.1.tgz",
"integrity": "sha512-Vj4h+xcjc5+Cn0DhPHjgRX4omKAv96Kehtcd+1YgYuY2W7FvQn9vS+3SmzVwhC5Qmg9bIwUZObYQ8T/4hBqQqA==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-darwin-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-x64/-/koffi-darwin-x64-3.2.1.tgz",
"integrity": "sha512-gFCWxNBTZIvxo1p+PURWfsy2Ctj5FGnVVs1f03lTLhBvmxEto70pdIiFztdFLDFkAJ1pmtQmruRKapeK+E8YPA==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-arm64/-/koffi-freebsd-arm64-3.2.1.tgz",
"integrity": "sha512-qj+f1s2e6vULaUG1cdlTcCXmunCq2t+rjxku1+esaMIqVnHpOwj0QzPuInG0AFdXjwBNQhyVR/HpDj8daEwwsQ==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-ia32/-/koffi-freebsd-ia32-3.2.1.tgz",
"integrity": "sha512-6olHb1Qfgai0jjs6ddlDDD0ZfsCxy7SPi8rMRpuYQWH0qhgtyQu82hw5b1p7z+TJ0zZP3ZeQQ6l+U/MlM1ICHQ==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-freebsd-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-x64/-/koffi-freebsd-x64-3.2.1.tgz",
"integrity": "sha512-Dikhw1ySYNVMkmeFvFVjnU5Wdk6mffNoOjJxm9bTG96vg7OlemylxqdEven47R1YJ3yzNVJn/MlQ207ORWfi2w==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-arm": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm/-/koffi-linux-arm-3.2.1.tgz",
"integrity": "sha512-OfwUwZylidq95wQKp6ClInULrfB2giu7dqM6Rhe0zAe6lES5I2SXNw15T9+GnRHk3/9hKT2XZ37OZLaKSyWNLA==",
"cpu": [
"arm"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm64/-/koffi-linux-arm64-3.2.1.tgz",
"integrity": "sha512-K+cGUL5iBcDqxmsocrjmlASqDf24gc7artbVW3PewG2c9AqwC63lezgwvB85Nx4lZAQjB6zIFHh9A7t1yGbwhw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-ia32/-/koffi-linux-ia32-3.2.1.tgz",
"integrity": "sha512-rxj6UYjU1qd98gxNQOSCdLpc5cPRi5Giq9rNd3jnGuSNIyMkwa6Dxw4cUjmhIBCYESMJtmNt5NWnJp5u9wTfYQ==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-loong64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-loong64/-/koffi-linux-loong64-3.2.1.tgz",
"integrity": "sha512-aHhnHzkPRmT/IHDlGvESJ/Bs32m8N6UE6Ab6kMeJzgk74IN8af2m/81/wZJtybR1M2UxCV4NmlVNUYQQvSAO3Q==",
"cpu": [
"loong64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-riscv64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-riscv64/-/koffi-linux-riscv64-3.2.1.tgz",
"integrity": "sha512-qtQBsjbm3LiirLJvajWmKkNb7ARk7fvJVXdftJ7NtAnF3Xw8EbDvrtvmvtNI1yLPlYcBmlzCCD71hwhWYk0SIA==",
"cpu": [
"riscv64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-linux-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-x64/-/koffi-linux-x64-3.2.1.tgz",
"integrity": "sha512-c7hw7Qs/r5gnFRTQLcbifBwRU7wiocj+2pVuDQ5Ahb3r36SZmupmgYbTWcLvTW+hul1jd7SKRV0d14ZJq/tvSw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-openbsd-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-ia32/-/koffi-openbsd-ia32-3.2.1.tgz",
"integrity": "sha512-mmY8fY8LQ/CB52+h3yrMYmVyoxzW3x08S0yI6VNfHWdfU6yJtZkKCbhjmQCYMrWbYKC4gMvwZwCywIGPAkLyeA==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-openbsd-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-x64/-/koffi-openbsd-x64-3.2.1.tgz",
"integrity": "sha512-k4ig6aAPbFSRATOIIOfdf/KtlOGH4SVls6L9fy0QnTxRJYvY2oSltTsQtBDANgEQldlq8Kl5WnpRa1VSibP4Lw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-arm64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-arm64/-/koffi-win32-arm64-3.2.1.tgz",
"integrity": "sha512-cTWBJGK//pDMeKQJE/79Aq9MiOAF4H8QyLZHSQ9IWm8czOfwjG4J1AhsQ9DjI9KFOykH77hhnpmQTGVMIubGig==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-ia32": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-ia32/-/koffi-win32-ia32-3.2.1.tgz",
"integrity": "sha512-Z50EM6TAZ7CFyMmyX6thv8eNpJchqe9eenhibSIy2Eq/FQYF76gU2VK/LEoaF46L8hfC7TpTp9b10MvReHEyFA==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/@koromix/koffi-win32-x64": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-x64/-/koffi-win32-x64-3.2.1.tgz",
"integrity": "sha512-ZmZNiBO6bkOSh3QNzgfvb1cMY0yMobn6ZQrSMqbAce21qyYL8niIbyipz9N/PIRDciGhsV0wUxnZsxIO+yWsHQ==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@github/copilot-sdk/node_modules/koffi": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/koffi/-/koffi-3.2.1.tgz",
"integrity": "sha512-0qE3lZ8jllRqPN4Ob6Ajl7c2bJSJDhQWuKLGP5hIEpHLllJWv1ydHFMhHmHc5p/W9GticKVDbYzZd7TBoQ4CZg==",
"hasInstallScript": true,
"license": "MIT",
"funding": {
"url": "https://liberapay.com/Koromix"
},
"optionalDependencies": {
"@koromix/koffi-android-arm64": "3.2.1",
"@koromix/koffi-android-x64": "3.2.1",
"@koromix/koffi-darwin-arm64": "3.2.1",
"@koromix/koffi-darwin-x64": "3.2.1",
"@koromix/koffi-freebsd-arm64": "3.2.1",
"@koromix/koffi-freebsd-ia32": "3.2.1",
"@koromix/koffi-freebsd-x64": "3.2.1",
"@koromix/koffi-linux-arm": "3.2.1",
"@koromix/koffi-linux-arm64": "3.2.1",
"@koromix/koffi-linux-ia32": "3.2.1",
"@koromix/koffi-linux-loong64": "3.2.1",
"@koromix/koffi-linux-riscv64": "3.2.1",
"@koromix/koffi-linux-x64": "3.2.1",
"@koromix/koffi-openbsd-ia32": "3.2.1",
"@koromix/koffi-openbsd-x64": "3.2.1",
"@koromix/koffi-win32-arm64": "3.2.1",
"@koromix/koffi-win32-ia32": "3.2.1",
"@koromix/koffi-win32-x64": "3.2.1"
}
},
"node_modules/@github/copilot-win32-arm64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-arm64/-/copilot-win32-arm64-1.0.84-5.tgz",
"integrity": "sha512-me+N1uolNJI3xQb9l+puQ62jJnMtU3AxrVLuxjseuQi1z2a3ofEBh/Ntx83jv0TF0aT0iyGz5dM5PYv4Xnv9BQ==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-arm64/-/copilot-win32-arm64-1.0.86-0.tgz",
"integrity": "sha512-Ovx7nl4mLPXoR5HQQx6bBdzU7K+0waCECvMJLcI0ZGSsue/WJQHAUU2Ijt4BbUU4g3KXzT6nt3JamhWjOC/jEQ==",
"cpu": [
"arm64"
],
@@ -360,9 +678,9 @@
}
},
"node_modules/@github/copilot-win32-x64": {
"version": "1.0.84-5",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-x64/-/copilot-win32-x64-1.0.84-5.tgz",
"integrity": "sha512-BVmWJxTx3xEas1QXHMx9MK0+aPlkvks2mvVs1ImjQRL1mTaHOO53A92+k967eokyTzvqmsPjhhav35YoF39g/A==",
"version": "1.0.86-0",
"resolved": "https://registry.npmjs.org/@github/copilot-win32-x64/-/copilot-win32-x64-1.0.86-0.tgz",
"integrity": "sha512-1Uii2tXYxvWpq2hel39kK3lSWEYZ/efVQ35ZMzKbh0QMi98KI5BnYKu+3hzPFIMp1FF1FRxJZTAtb6YmXcGDwQ==",
"cpu": [
"x64"
],
@@ -387,246 +705,6 @@
"node": ">=18.0.0"
}
},
"node_modules/@koromix/koffi-darwin-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-arm64/-/koffi-darwin-arm64-3.1.2.tgz",
"integrity": "sha512-32pU4pNZABIz+l9DNJl51Y+jur4vv+SF4Ip2CSF4OUg1xUyefoLpX0NttDmzGITIrneUEVSEN+dT22524ESKBw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-darwin-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-darwin-x64/-/koffi-darwin-x64-3.1.2.tgz",
"integrity": "sha512-S+H6LQgUoMj77BqDegwlRaxwLXDfwvSJGuceOqtH0I5V8rzKLmu/hC7NBlxOoAlvKlcV63FtdNiE2E9YSltffg==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-arm64/-/koffi-freebsd-arm64-3.1.2.tgz",
"integrity": "sha512-fD0ow2PBE60nw7K6xcbala6qwXxfcYeU62tduNeIPvx0KoWhU2rMKZiDNe+iI5TQb3rxYYjjP+aF2Sdm9y6EXQ==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-ia32/-/koffi-freebsd-ia32-3.1.2.tgz",
"integrity": "sha512-t8OmL+hoJGDLZDnuLjgLemSYrXX99M7Md+zJX8bMHOtiNbFtkGXn/mV21Pb1ik9JhBXjwK1r4hvBPNlqTMGrHg==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-freebsd-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-freebsd-x64/-/koffi-freebsd-x64-3.1.2.tgz",
"integrity": "sha512-axbLgiM4Y2vyDOTqlXCI8vkg9wqjwSRsmoWXSKreA5YFJwnYA6Sc4aHMz+qZgUSfFei52Qrv1RGhDyo4kHvqhA==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-arm64/-/koffi-linux-arm64-3.1.2.tgz",
"integrity": "sha512-f0hqAIlFcL9wlRGJ/uCfyfspqnGaASk2gLx1UAP3RBgMQl68D1e+fiHNdXa7g9d76ttmpA8/PGNAqc1X4Byy1Q==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-ia32/-/koffi-linux-ia32-3.1.2.tgz",
"integrity": "sha512-UGLPuqeOV/UArsK6oeB5yI/XjSWkFqFlBTC9rUbezBuHJhSibk1EMv7QC0cvtDMu18bo+ucqXWPzh42oT5yYlw==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-loong64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-loong64/-/koffi-linux-loong64-3.1.2.tgz",
"integrity": "sha512-jI0+gM2oDsJ7reOt3XPyO7lyQtZ1CT6NR2uqGQcQVM43cyXBAVYYCUxEH3LHCbgumFaZ+LueIUgbMSwb9pHBxQ==",
"cpu": [
"loong64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-riscv64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-riscv64/-/koffi-linux-riscv64-3.1.2.tgz",
"integrity": "sha512-yB99adXBRd5T+xXG+f6nnUkC3jCI0iXvPU6RqD9Kx7aZP4Y4NNUWJ5Q4FaP9jb1XmZLY4pGBUiHt8u03Yl7NyA==",
"cpu": [
"riscv64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-linux-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-linux-x64/-/koffi-linux-x64-3.1.2.tgz",
"integrity": "sha512-Oxvo6F3Edzy/Jm2EtbHWkJ2xRB0mXDAe63k5+USL5uiGE5xZjwEUDOBKIhv2BpCZSOAJrfoojFFogj6+ICKQhw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-openbsd-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-ia32/-/koffi-openbsd-ia32-3.1.2.tgz",
"integrity": "sha512-SSWzUhL8Ex84JTsO67+MdWZrdwgOzoOrQ0+ZbB+UsivHoAxmWLHKWZaSafNqyBZtxGY1EgtR8AIPouWE9U+Zfw==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-openbsd-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-openbsd-x64/-/koffi-openbsd-x64-3.1.2.tgz",
"integrity": "sha512-0ZuI4St7chq3M0d3VivvKIqacZ7RhgohdR476V3HpJkaNdfIywsJIw+GBvqkQahu+4A2Rpu6yQJpWSrfk/Z+Jw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-arm64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-arm64/-/koffi-win32-arm64-3.1.2.tgz",
"integrity": "sha512-8Wn6phw7y53uI52+aBPAqEfZ5pj/HCjg/YtdthqSWYHy+d0MhyASKlcmuP0B5raxQnnA1Bm9LC8UO3M3RojeBw==",
"cpu": [
"arm64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-ia32": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-ia32/-/koffi-win32-ia32-3.1.2.tgz",
"integrity": "sha512-FkKaPBMawgHMNnp1FwLldXMNvEa139GXkxPi9JD9xU71Kh/ZmuEYHGSD6JwZDmDr4jekVrBrr+eGZ+j6C2mkXg==",
"cpu": [
"ia32"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@koromix/koffi-win32-x64": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@koromix/koffi-win32-x64/-/koffi-win32-x64-3.1.2.tgz",
"integrity": "sha512-FeFC59UU1XX4J3ZaqKrsrEzczzB5qksMJo7/R45vIg8mGNVSLMVE85JRiZpjcp9i5Lbav5Vw47QvwFzBgIfvlw==",
"cpu": [
"x64"
],
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"funding": {
"url": "https://liberapay.com/Koromix"
}
},
"node_modules/@microsoft/1ds-core-js": {
"version": "3.2.13",
"resolved": "https://registry.npmjs.org/@microsoft/1ds-core-js/-/1ds-core-js-3.2.13.tgz",
@@ -1692,33 +1770,6 @@
"node": "^16 || ^18 || >= 20"
}
},
"node_modules/koffi": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/koffi/-/koffi-3.1.2.tgz",
"integrity": "sha512-wVwuE21TBl8/si6E0hPorKR2PJ2q33mEWVETANrtSp3kFM8fi2FcD/J5wmxu0T4TBcqmMQ4xKuF1X1ayFmphzw==",
"hasInstallScript": true,
"license": "MIT",
"funding": {
"url": "https://liberapay.com/Koromix"
},
"optionalDependencies": {
"@koromix/koffi-darwin-arm64": "3.1.2",
"@koromix/koffi-darwin-x64": "3.1.2",
"@koromix/koffi-freebsd-arm64": "3.1.2",
"@koromix/koffi-freebsd-ia32": "3.1.2",
"@koromix/koffi-freebsd-x64": "3.1.2",
"@koromix/koffi-linux-arm64": "3.1.2",
"@koromix/koffi-linux-ia32": "3.1.2",
"@koromix/koffi-linux-loong64": "3.1.2",
"@koromix/koffi-linux-riscv64": "3.1.2",
"@koromix/koffi-linux-x64": "3.1.2",
"@koromix/koffi-openbsd-ia32": "3.1.2",
"@koromix/koffi-openbsd-x64": "3.1.2",
"@koromix/koffi-win32-arm64": "3.1.2",
"@koromix/koffi-win32-ia32": "3.1.2",
"@koromix/koffi-win32-x64": "3.1.2"
}
},
"node_modules/lru-cache": {
"version": "11.5.1",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.1.tgz",
+4 -3
View File
@@ -4,8 +4,8 @@
"private": true,
"dependencies": {
"@devcontainers/cli": "0.88.0",
"@github/copilot": "1.0.84-5",
"@github/copilot-sdk": "1.0.13",
"@github/copilot": "1.0.86-0",
"@github/copilot-sdk": "1.0.14",
"@microsoft/1ds-core-js": "^3.2.13",
"@microsoft/1ds-post-js": "^3.2.13",
"@microsoft/mxc-sdk": "0.8.0",
@@ -60,11 +60,12 @@
"kerberos@2.1.1": {
"node-addon-api": "7.1.0"
},
"koffi": "3.2.1",
"yauzl": "^3.3.1"
},
"allowScripts": {
"kerberos@2.1.1": true,
"koffi@3.1.2": false,
"koffi@3.2.1": false,
"node-pty@1.2.0-beta.15": true,
"@parcel/watcher@2.5.6": true,
"@vscode/deviceid@0.1.5": true,
@@ -240,23 +240,52 @@ function getCopilotPlatformPackageCandidates(): string[] {
return isLinuxMuslRuntime() ? linuxCandidates.reverse() : linuxCandidates;
}
async function resolveCopilotCliPath(nodeModulesUri: URI): Promise<string> {
/** Paths to the paired Copilot runtime executable and SDK API. */
interface ICopilotRuntimePaths {
readonly cliPath: string;
readonly sdkPath: string;
}
async function resolveCopilotRuntimePaths(nodeModulesUri: URI): Promise<ICopilotRuntimePaths> {
const tried: string[] = [];
for (const platformPackage of getCopilotPlatformPackageCandidates()) {
const cliPath = URI.joinPath(nodeModulesUri, '@github', `copilot-${platformPackage}`, 'index.js').fsPath;
tried.push(cliPath);
if (await fileExists(cliPath)) {
return cliPath;
const cliPath = URI.joinPath(nodeModulesUri, '@github', `copilot-${platformPackage}`, process.platform === 'win32' ? 'copilot.exe' : 'copilot').fsPath;
const sdkPath = URI.joinPath(nodeModulesUri, '@github', `copilot-sdk-${platformPackage}`, 'sdk', 'index.js').fsPath;
tried.push(`${cliPath} with ${sdkPath}`);
if (await fileExists(cliPath) && await fileExists(sdkPath)) {
return { cliPath, sdkPath };
}
}
const oldTopLevelPath = URI.joinPath(nodeModulesUri, '@github', 'copilot', 'index.js').fsPath;
tried.push(oldTopLevelPath);
if (await fileExists(oldTopLevelPath)) {
return oldTopLevelPath;
for (const platformPackage of getCopilotPlatformPackageCandidates()) {
const packageUri = URI.joinPath(nodeModulesUri, '@github', `copilot-sdk-${platformPackage}`);
const cliPath = URI.joinPath(packageUri, 'prebuilds', platformPackage, process.platform === 'win32' ? 'copilot-runtime.exe' : 'copilot-runtime').fsPath;
const sdkPath = URI.joinPath(packageUri, 'sdk', 'index.js').fsPath;
tried.push(`${cliPath} with ${sdkPath}`);
if (await fileExists(cliPath) && await fileExists(sdkPath)) {
return { cliPath, sdkPath };
}
}
throw new Error(`Unable to resolve @github/copilot CLI path. Tried: ${tried.join(', ')}`);
for (const platformPackage of getCopilotPlatformPackageCandidates()) {
const packageUri = URI.joinPath(nodeModulesUri, '@github', `copilot-${platformPackage}`);
const cliPath = URI.joinPath(packageUri, 'index.js').fsPath;
const sdkPath = URI.joinPath(packageUri, 'sdk', 'index.js').fsPath;
tried.push(`${cliPath} with ${sdkPath}`);
if (await fileExists(cliPath) && await fileExists(sdkPath)) {
return { cliPath, sdkPath };
}
}
const oldPackageUri = URI.joinPath(nodeModulesUri, '@github', 'copilot');
const oldCliPath = URI.joinPath(oldPackageUri, 'index.js').fsPath;
const oldSdkPath = URI.joinPath(oldPackageUri, 'sdk', 'index.js').fsPath;
tried.push(`${oldCliPath} with ${oldSdkPath}`);
if (await fileExists(oldCliPath) && await fileExists(oldSdkPath)) {
return { cliPath: oldCliPath, sdkPath: oldSdkPath };
}
throw new Error(`Unable to resolve @github/copilot SDK runtime paths. Tried: ${tried.join(', ')}`);
}
/**
@@ -1391,11 +1420,10 @@ export class CopilotAgent extends Disposable implements IAgent {
async getManagedSettingsDiagnostics(): Promise<IAgentHostManagedSettingsSnapshot> {
this._logService.debug('[Copilot] Collecting runtime managed-settings diagnostics');
let stage = 'resolving the Copilot CLI path';
let stage = 'resolving the Copilot SDK runtime paths';
const diagnostics = (async () => {
const nodeModulesUri = getAppNodeModulesUri();
const cliPath = await resolveCopilotCliPath(nodeModulesUri);
const runtimeSdkPath = join(dirname(cliPath), 'sdk', 'index.js');
const { sdkPath: runtimeSdkPath } = await resolveCopilotRuntimePaths(nodeModulesUri);
stage = 'checking the Copilot runtime SDK';
if (!await fileExists(runtimeSdkPath)) {
throw new Error(`Copilot runtime SDK not found at ${runtimeSdkPath}`);
@@ -2336,16 +2364,14 @@ export class CopilotAgent extends Disposable implements IAgent {
delete env['RUBBER_DUCK_AGENT'];
}
// Resolve the CLI entry point and native SDK binaries from node_modules.
// Resolve the CLI executable and SDK from their paired target-platform packages.
// In the desktop app these live next to the ASAR archive in
// `node_modules.asar.unpacked` (the `@github/copilot-<platform>` CLI and
// `node_modules.asar.unpacked` (the `@github/copilot-sdk-<platform>` runtime and
// the `@microsoft/mxc-sdk/bin` executables are unpacked so they can be
// spawned), while in dev and on the server (which has no ASAR) they live
// in a plain `node_modules`.
// We can't use require.resolve() because @github/copilot's exports map
// blocks direct subpath access.
const nodeModulesUri = getAppNodeModulesUri();
const cliPath = await resolveCopilotCliPath(nodeModulesUri);
const { cliPath } = await resolveCopilotRuntimePaths(nodeModulesUri);
// The SDK's sandbox auto-detection looks for `<MXC_BIN_DIR>/<arch>/wxc-exec.exe`
// (and the Linux/macOS equivalents). VS Code core ships the MXC sandbox binaries
@@ -27,12 +27,6 @@ rounds:
- channel: ${session_0}
action:
type: session/ready
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_0}
toolCallId: ${toolCall_0}
toolName: task
- channel: ${chat_0}
action:
type: chat/toolCallComplete
@@ -47,12 +41,6 @@ rounds:
part:
kind: markdown
content: Waiting for the background subagent to finish before continuing.
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_0}
toolCallId: ${toolCall_1}
toolName: read_agent
- channel: ${chat_0}
action:
type: chat/toolCallComplete
@@ -98,12 +86,6 @@ rounds:
text: 'Use write_agent exactly once to send the same retained subagent this message: "Reply exactly CHILD_FOLLOWUP_ONE_DONE and do not use tools." Wait for its completion notification, call read_agent with wait true, then reply exactly "PARENT_FOLLOWUP_ONE_DONE". Do not start or stop a subagent.'
origin:
kind: user
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_2}
toolCallId: ${toolCall_2}
toolName: write_agent
- channel: ${chat_0}
action:
type: chat/toolCallComplete
@@ -111,12 +93,6 @@ rounds:
toolCallId: ${toolCall_2}
result:
success: true
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_2}
toolCallId: ${toolCall_3}
toolName: read_agent
- channel: ${chat_1}
action:
type: chat/turnStarted
@@ -175,12 +151,6 @@ rounds:
text: 'Use write_agent exactly once to send the same retained subagent this message: "Reply exactly CHILD_FOLLOWUP_TWO_DONE and do not use tools." Wait for its completion notification, call read_agent with wait true, then reply exactly "PARENT_FOLLOWUP_TWO_DONE". Do not start or stop a subagent.'
origin:
kind: user
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_4}
toolCallId: ${toolCall_4}
toolName: write_agent
- channel: ${chat_0}
action:
type: chat/toolCallComplete
@@ -188,12 +158,6 @@ rounds:
toolCallId: ${toolCall_4}
result:
success: true
- channel: ${chat_0}
action:
type: chat/toolCallStart
turnId: ${turn_4}
toolCallId: ${toolCall_5}
toolName: read_agent
- channel: ${chat_1}
action:
type: chat/turnStarted
@@ -91,15 +91,19 @@ suite('Agent Host E2E — Copilot OTel file exporter', function () {
await driveTurnToCompletion(client, sessionUri, 'turn-otel-title', '/rename OTel Captured Title', 10);
const exported = await retry(async () => {
const contents = await readFile(exportFile, 'utf8').catch(() => '');
const sdkSpanExported = contents.split('\n').some(line =>
line.includes('"name":"invoke_agent"')
&& line.includes('"gen_ai.operation.name":"invoke_agent"')
&& line.includes('"service.name":"github-copilot"')
);
if (!contents.includes('"traceId"')
|| !contents.includes('"spanId"')
|| !contents.includes('vscode.agent_host.session.title_changed')
|| !contents.includes('"name":"invoke_agent"')
|| !contents.includes('"service.name":"github-copilot"')) {
|| !sdkSpanExported) {
throw new Error(`OTel spans have not reached the file exporter: ${contents}`);
}
return contents;
}, 100, 100);
}, 250, 240);
assert.ok(exported.split('\n').filter(Boolean).length > 0);
});
@@ -323,6 +323,13 @@ export function defineSubagentTests(context: IAgentHostE2ETestContext): void {
tempDirs.push(workspace);
const sessionUri = await createRealSession(context.client, config, 'retained-subagent-followups', createdSessions, URI.file(workspace));
const parentChat = buildDefaultChatUri(sessionUri);
const assertParentToolNames = (expected: readonly string[]) => {
const actual = context.client.receivedNotifications(n => isActionNotification(n, 'chat/toolCallStart'))
.map(n => ({ channel: getActionEnvelope(n).channel, action: getActionEnvelope(n).action as ChatToolCallStartAction }))
.filter(({ channel }) => channel === parentChat)
.map(({ action }) => action.toolName);
assert.deepStrictEqual(actual, expected);
};
context.client.beginAhpSnapshotRound();
const initial = await driveTurnToCompletion(
@@ -335,6 +342,7 @@ export function defineSubagentTests(context: IAgentHostE2ETestContext): void {
2,
);
assert.match(initial.responseText.trim(), /PARENT_INITIAL_DONE$/);
assertParentToolNames(['task', 'read_agent']);
const subagentChat = subagentChatFromReceived(parentChat);
assert.ok(subagentChat, 'the task tool should expose the retained subagent chat');
assert.ok(context.client.receivedNotifications(n => isActionNotification(n, 'session/chatAdded')).some(notification => {
@@ -395,6 +403,7 @@ export function defineSubagentTests(context: IAgentHostE2ETestContext): void {
2 + index,
);
assert.match(result.responseText.trim(), new RegExp(`${parentResponse}$`));
assertParentToolNames(['write_agent', 'read_agent']);
recordChildState(await readCompletedChild(index + 1));
}
@@ -417,7 +426,7 @@ export function defineSubagentTests(context: IAgentHostE2ETestContext): void {
]);
await assertRecordedAhpSnapshot(this.test!, context.client, {
...behaviorSnapshot,
ignoredActionTypes: [ActionType.SessionChatAdded],
ignoredActionTypes: [ActionType.SessionChatAdded, ActionType.ChatToolCallStart],
});
});