add copilot compilation in main build tasks

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
João Moreno
2026-03-19 11:23:38 +01:00
parent d83a4c0085
commit 68ef7cdffc
6 changed files with 47 additions and 4 deletions

View File

@@ -0,0 +1,10 @@
---
description: Useful context to use when talking about inlining Copilot Chat with VS Code.
applyTo: '**'
---
We are working on inlining Copilot Chat into VS Code. This means we want to ship Copilot Chat as a built-in experience in VS Code, without requiring users to install a separate extension. This will allow us to reach more users and provide a more seamless experience.
We need to figure out the build pipelines, the local dev setup and the UX around running VS Code with Copilot Chat as builtin.
We've done the first step: simply add the vscode-copilot-chat repository as a submodule to extensions/copilot.

30
.vscode/tasks.json vendored
View File

@@ -88,12 +88,25 @@
}
}
},
{
"type": "npm",
"script": "watch-copilotd",
"label": "Copilot - Build",
"isBackground": true,
"presentation": {
"reveal": "never",
"group": "buildWatchers",
"close": false
},
"problemMatcher": "$esbuild-watch"
},
{
"label": "VS Code - Build",
"dependsOn": [
"Core - Transpile",
"Core - Typecheck",
"Ext - Build"
"Ext - Build",
"Copilot - Build"
],
"group": {
"kind": "build",
@@ -137,12 +150,25 @@
},
"problemMatcher": "$tsc"
},
{
"type": "npm",
"script": "kill-watch-copilotd",
"label": "Kill Copilot - Build",
"group": "build",
"presentation": {
"reveal": "never",
"group": "buildKillers",
"close": true
},
"problemMatcher": "$esbuild"
},
{
"label": "Kill VS Code - Build",
"dependsOn": [
"Kill Core - Transpile",
"Kill Core - Typecheck",
"Kill Ext - Build"
"Kill Ext - Build",
"Kill Copilot - Build"
],
"group": "build",
"problemMatcher": []

View File

@@ -238,6 +238,9 @@ function createGitIndexVinyls(paths: string[]): Promise<VinylFile[]> {
return c(null);
} else if (err) {
return e(err);
} else if (stat.isDirectory()) {
// ignore submodules in pre-commit hygiene (git diff --cached reports them as paths)
return c(null);
}
cp.exec(

View File

@@ -14,6 +14,7 @@ export const dirs = [
'build/vite',
'extensions',
'extensions/configuration-editing',
'extensions/copilot',
'extensions/css-language-features',
'extensions/css-language-features/server',
'extensions/debug-auto-launch',

View File

@@ -21,7 +21,7 @@
"postinstall": "node build/npm/postinstall.ts",
"compile": "npm run gulp compile",
"compile-check-ts-native": "tsgo --project ./src/tsconfig.json --noEmit --skipLibCheck",
"watch": "npm-run-all2 -lp watch-client-transpile watch-client watch-extensions",
"watch": "npm-run-all2 -lp watch-client-transpile watch-client watch-extensions watch-copilot",
"watchd": "deemon npm run watch",
"watch-webd": "deemon npm run watch-web",
"kill-watchd": "deemon --kill npm run watch",
@@ -38,6 +38,9 @@
"watch-extensions": "npm run gulp watch-extensions watch-extension-media",
"watch-extensionsd": "deemon npm run watch-extensions",
"kill-watch-extensionsd": "deemon --kill npm run watch-extensions",
"watch-copilot": "npm --prefix extensions/copilot run watch",
"watch-copilotd": "deemon npm run watch-copilot",
"kill-watch-copilotd": "deemon --kill npm run watch-copilot",
"precommit": "node --experimental-strip-types build/hygiene.ts",
"gulp": "node --max-old-space-size=8192 ./node_modules/gulp/bin/gulp.js",
"electron": "node build/lib/electron.ts",