Skip to content

Commit c96c8fe

Browse files
authored
Merge pull request #7 from posit-dev/merge/1.106.0
Merge 1.106.0 from upstream
2 parents c16e8b3 + 169ccb6 commit c96c8fe

File tree

1,008 files changed

+167907
-30423
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,008 files changed

+167907
-30423
lines changed

.esbuild.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,10 @@ const baseNodeBuildOptions = {
3636
'applicationinsights-native-metrics',
3737
'@opentelemetry/instrumentation',
3838
'@azure/opentelemetry-instrumentation-azure-sdk',
39-
'zeromq',
4039
'electron', // this is for simulation workbench,
4140
'sqlite3',
42-
// --- Start Positron ---
43-
'@vscode/prompt-tsx',
44-
// --- End Positron ---
41+
'node-pty', // Required by @github/copilot
42+
'@github/copilot',
4543
...(isDev ? [] : ['dotenv', 'source-map-support'])
4644
],
4745
platform: 'node',
@@ -51,6 +49,15 @@ const baseNodeBuildOptions = {
5149
},
5250
} satisfies esbuild.BuildOptions;
5351

52+
const webviewBuildOptions = {
53+
...baseBuildOptions,
54+
platform: 'browser',
55+
target: 'es2024', // Electron 34 -> Chrome 132 -> ES2024
56+
entryPoints: [
57+
{ in: 'src/extension/completions-core/vscode-node/extension/src/copilotPanel/webView/suggestionsPanelWebview.ts', out: 'suggestionsPanelWebview' },
58+
],
59+
} satisfies esbuild.BuildOptions;
60+
5461
const nodeExtHostTestGlobs = [
5562
'src/**/vscode/**/*.test.{ts,tsx}',
5663
'src/**/vscode-node/**/*.test.{ts,tsx}',
@@ -115,10 +122,10 @@ const sanityTestBundlePlugin: esbuild.Plugin = {
115122
};
116123

117124
const importMetaPlugin: esbuild.Plugin = {
118-
name: 'claudeAgentSdkImportMetaPlugin',
125+
name: 'claudeCodeImportMetaPlugin',
119126
setup(build) {
120-
// Handle import.meta.url in @anthropic-ai/claude-agent-sdk package
121-
build.onLoad({ filter: /node_modules[\/\\]@anthropic-ai[\/\\]claude-agent-sdk[\/\\].*\.mjs$/ }, async (args) => {
127+
// Handle import.meta.url in @anthropic-ai/claude-code package
128+
build.onLoad({ filter: /node_modules[\/\\]@anthropic-ai[\/\\]claude-code[\/\\].*\.mjs$/ }, async (args) => {
122129
const contents = await fs.promises.readFile(args.path, 'utf8');
123130
return {
124131
contents: contents.replace(
@@ -173,6 +180,7 @@ const nodeExtHostBuildOptions = {
173180
{ in: './src/platform/diff/node/diffWorkerMain.ts', out: 'diffWorker' },
174181
{ in: './src/platform/tfidf/node/tfidfWorker.ts', out: 'tfidfWorker' },
175182
{ in: './src/extension/onboardDebug/node/copilotDebugWorker/index.ts', out: 'copilotDebugCommand' },
183+
{ in: './src/extension/chatSessions/vscode-node/copilotCLIShim.ts', out: 'copilotCLIShim' },
176184
{ in: './src/test-extension.ts', out: 'test-extension' },
177185
{ in: './src/sanity-test-extension.ts', out: 'sanity-test-extension' },
178186
],
@@ -355,6 +363,7 @@ async function main() {
355363
esbuild.build(nodeSimulationWorkbenchUIBuildOptions),
356364
esbuild.build(nodeExtHostSimulationTestOptions),
357365
esbuild.build(typeScriptServerPluginBuildOptions),
366+
esbuild.build(webviewBuildOptions),
358367
]);
359368
}
360369
}

.eslint-ignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,3 @@ src/extension/typescriptContext/serverPlugin/dist/**
2929

3030
# Ignore Built test-extension
3131
.vscode/extensions/test-extension/dist/**
32-
33-
# Ignore completions-core
34-
src/extension/completions-core/**

.github/CODEOWNERS

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,10 @@
33
build/pr-check-cache-files.ts @lszomoru @joaomoreno
44
test/base/cache-cli.ts @lszomoru @joaomoreno
55
test/base/cache.ts @lszomoru @joaomoreno
6+
# Model prompts
7+
src/extension/prompts/node/agent/openAIPrompts.tsx @roblourens
8+
src/extension/prompts/node/agent/anthropicPrompts.tsx @bhavyaus
9+
src/extension/prompts/node/agent/geminiPrompts.tsx @vijayupadya
10+
src/extension/prompts/node/agent/xAIPrompts.tsx @pwang347
11+
src/extension/prompts/node/agent/vscModelPrompts.tsx @karthiknadig
12+
src/extension/prompts/node/agent/promptRegistry.ts @bhavyaus

.github/copilot-instructions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ This is the **GitHub Copilot Chat** extension for Visual Studio Code - a VS Code
99
- **Inline Chat**: AI-powered editing directly in the editor with `Ctrl+I`
1010
- **Agent Mode**: Multi-step autonomous coding tasks
1111
- **Edit Mode**: Natural language to code
12-
- **Code Completions**: Next edit suggestions and inline completions
12+
- **Inline Suggestions**: Next edit suggestions and inline completions
1313
- **Language Model Integration**: Support for multiple AI models (GPT-4, Claude, Gemini, etc.)
1414
- **Context-Aware**: Workspace understanding, semantic search, and code analysis
1515

@@ -268,7 +268,7 @@ The extension uses numerous proposed VS Code APIs for advanced functionality:
268268
- `languageModelSystem`: System messages for LM API
269269
- `chatProvider`: Custom chat provider implementation
270270
- `mappedEditsProvider`: Advanced editing capabilities
271-
- `inlineCompletionsAdditions`: Enhanced inline completions
271+
- `inlineCompletionsAdditions`: Enhanced inline suggestions
272272
- `aiTextSearchProvider`: AI-powered search capabilities
273273

274274
### External Integrations

.github/workflows/pr.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,12 @@ jobs:
139139
- name: Run extension tests using VS Code
140140
run: xvfb-run -a npm run test:extension
141141

142+
- name: Run Completions Core prompt tests
143+
run: npm run test:prompt
144+
145+
- name: Run Completions Core lib tests using VS Code
146+
run: xvfb-run -a npm run test:completions-core
147+
142148
- name: Archive simulation output
143149
if: always()
144150
run: |
@@ -221,3 +227,9 @@ jobs:
221227

222228
- name: Run extension tests using VS Code
223229
run: npm run test:extension
230+
231+
- name: Run Completions Core prompt tests
232+
run: npm run test:prompt
233+
234+
- name: Run Completions Core lib tests using VS Code
235+
run: npm run test:completions-core

.vscode/launch.json

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,30 @@
316316
"group": "2_launch"
317317
}
318318
},
319+
{
320+
"name": "Run Completions-Core Extension Tests",
321+
"type": "extensionHost",
322+
"request": "launch",
323+
"args": [
324+
"--extensionDevelopmentPath=${workspaceFolder}",
325+
"--extensionTestsPath=${workspaceFolder}/src/extension/completions-core/vscode-node/extension/test/run",
326+
"--disable-extensions"
327+
],
328+
"env": {
329+
"TSX_TSCONFIG_PATH": "${workspaceFolder}/tsconfig.json",
330+
"VITEST": "true"
331+
},
332+
"internalConsoleOptions": "openOnSessionStart",
333+
"outFiles": [
334+
"${workspaceFolder}/**/*.ts",
335+
"${workspaceFolder}/dist/**/*.js",
336+
"!**/node_modules/**"
337+
],
338+
"autoAttachChildProcesses": true,
339+
"presentation": {
340+
"group": "1_launch"
341+
}
342+
},
319343
],
320344
"compounds": [
321345
{

.vscode/settings.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@
5151
"search.exclude": {
5252
"src/base/util/tokenizer_*.json": true,
5353
"src/base/util/*.bpe": true,
54-
"src/extension/chatSessions/vscode-node/test/fixtures/**": true,
5554
"src/extension/prompts/node/test/fixtures/**/*": true,
5655
"src/extension/test/node/fixtures/**/*": true,
5756
"src/platform/parser/test/node/fixtures/**/*": true,

.vscodeignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,15 @@ assets/walkthroughs/**
1515
!dist/diffWorker.js
1616
!dist/webview.js
1717
!dist/copilotDebugCommand.js
18+
!dist/copilotCLIShim.js
1819
!dist/cli.js
20+
!dist/suggestionsPanelWebview.js
1921
!node_modules/@vscode/copilot-typescript-server-plugin/package.json
2022
!node_modules/@vscode/copilot-typescript-server-plugin/dist/*.js
23+
!node_modules/@github/copilot/**/package.json
24+
node_modules/@github/copilot/index.js
25+
!node_modules/@github/copilot/sdk/*.js
26+
!node_modules/@github/copilot/node_modules/**/*.js
2127
!CHANGELOG.md
2228
!README.md
2329
!package.json

CONTRIBUTING.md

Lines changed: 0 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -343,64 +343,6 @@ You can run the extension from Code OSS Desktop, provided that you follow along
343343

344344
```json
345345
{
346-
"defaultChatAgent": {
347-
"extensionId": "GitHub.copilot",
348-
"chatExtensionId": "GitHub.copilot-chat",
349-
"documentationUrl": "https://aka.ms/github-copilot-overview",
350-
"termsStatementUrl": "https://aka.ms/github-copilot-terms-statement",
351-
"privacyStatementUrl": "https://aka.ms/github-copilot-privacy-statement",
352-
"skusDocumentationUrl": "https://aka.ms/github-copilot-plans",
353-
"publicCodeMatchesUrl": "https://aka.ms/github-copilot-match-public-code",
354-
"manageSettingsUrl": "https://aka.ms/github-copilot-settings",
355-
"managePlanUrl": "https://aka.ms/github-copilot-manage-plan",
356-
"manageOverageUrl": "https://aka.ms/github-copilot-manage-overage",
357-
"upgradePlanUrl": "https://aka.ms/github-copilot-upgrade-plan",
358-
"signUpUrl": "https://aka.ms/github-sign-up",
359-
"provider": {
360-
"default": {
361-
"id": "github",
362-
"name": "GitHub"
363-
},
364-
"enterprise": {
365-
"id": "github-enterprise",
366-
"name": "GHE.com"
367-
},
368-
"google": {
369-
"id": "google",
370-
"name": "Google"
371-
},
372-
"apple": {
373-
"id": "apple",
374-
"name": "Apple"
375-
}
376-
},
377-
"providerUriSetting": "github-enterprise.uri",
378-
"providerScopes": [
379-
[
380-
"user:email"
381-
],
382-
[
383-
"read:user"
384-
],
385-
[
386-
"read:user",
387-
"user:email",
388-
"repo",
389-
"workflow"
390-
]
391-
],
392-
"entitlementUrl": "https://api.github.com/copilot_internal/user",
393-
"entitlementSignupLimitedUrl": "https://api.github.com/copilot_internal/subscribe_limited_user",
394-
"chatQuotaExceededContext": "github.copilot.chat.quotaExceeded",
395-
"completionsQuotaExceededContext": "github.copilot.completions.quotaExceeded",
396-
"walkthroughCommand": "github.copilot.open.walkthrough",
397-
"completionsMenuCommand": "github.copilot.toggleStatusMenu",
398-
"completionsRefreshTokenCommand": "github.copilot.signIn",
399-
"chatRefreshTokenCommand": "github.copilot.refreshToken",
400-
"completionsAdvancedSetting": "github.copilot.advanced",
401-
"completionsEnablementSetting": "github.copilot.enable",
402-
"nextEditSuggestionsSetting": "github.copilot.nextEditSuggestions.enabled"
403-
},
404346
"trustedExtensionAuthAccess": {
405347
"github": [
406348
"github.copilot-chat"

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ To access GitHub Copilot, an active GitHub Copilot subscription is required. You
2525

2626
![Agent mode in Copilot Chat creating a new Vue application](https://github.com/microsoft/vscode-copilot-release/blob/main/images/agent-mode-readme.gif?raw=true)
2727

28-
## Code suggestions in the editor
28+
## Inline suggestions in the editor
2929

30-
**Automatically receive code suggestions in the editor** from [completions](https://aka.ms/vscode-completions) and [next edit suggestions](https://aka.ms/vscode-nes) to help you write code faster. Code completions provide suggestions at the current location, tailored to your coding style and your existing code. Copilot next edit suggestions (Copilot NES) takes it a step further and predicts what and where your next logical code change will be. Use the Tab key to navigate and accept changes in quick succession.
30+
**Automatically receive inline suggestions in the editor** from [ghost text suggestions](https://aka.ms/vscode-completions) and [next edit suggestions](https://aka.ms/vscode-nes) to help you write code faster. Ghost text suggestions provide suggestions at the current location, tailored to your coding style and your existing code. Copilot next edit suggestions (Copilot NES) takes it a step further and predicts what and where your next logical code change will be. Use the Tab key to navigate and accept changes in quick succession.
3131

3232
![Copilot next edit suggestions](https://code.visualstudio.com/assets/docs/copilot/inline-suggestions/nes-point.gif)
3333

@@ -49,7 +49,7 @@ GitHub Copilot works on any language, including Java, PHP, Python, JavaScript, R
4949

5050
As Copilot Chat releases in lockstep with VS Code due to its deep UI integration, every new version of Copilot Chat is only compatible with the latest and newest release of VS Code. This means that if you are using an older version of VS Code, you will not be able to use the latest Copilot Chat.
5151

52-
Only the latest Copilot Chat versions will use the latest models provided by the Copilot service, as even minor model upgrades require prompt changes and fixes in the extension. An older version of Copilot Chat will still use the latest version of Copilot completions.
52+
Only the latest Copilot Chat versions will use the latest models provided by the Copilot service, as even minor model upgrades require prompt changes and fixes in the extension.
5353

5454
### Privacy and preview terms
5555

0 commit comments

Comments
 (0)