mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-17 12:10:22 -05:00
remove unused language fields and clean up project setup info (#404)
* remove unused language fields and clean up project setup info * fix: add missing punctuation in instructions for clarity * Update cache * Remove cache layer file that requires signed commit * Update cache
This commit is contained in:
@@ -550,10 +550,6 @@
|
||||
"projectType": {
|
||||
"type": "string",
|
||||
"description": "The type of project to create. Supported values are: 'python-script', 'python-project', 'mcp-server', 'model-context-protocol-server', 'vscode-extension', 'next-js', 'vite' and 'other'"
|
||||
},
|
||||
"language": {
|
||||
"type": "string",
|
||||
"description": "The programming language for the project. Supported: 'javascript', 'typescript', 'python' and 'other'."
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
|
||||
@@ -6,12 +6,10 @@ import * as l10n from '@vscode/l10n';
|
||||
import { BasePromptElementProps, PromptElement, PromptElementProps, PromptSizing, TextChunk } from '@vscode/prompt-tsx';
|
||||
import type { CancellationToken, LanguageModelToolInvocationOptions, LanguageModelToolInvocationPrepareOptions, PreparedToolInvocation, Uri } from 'vscode';
|
||||
import { IRunCommandExecutionService } from '../../../../platform/commands/common/runCommandExecutionService';
|
||||
import { ConfigKey, IConfigurationService } from '../../../../platform/configuration/common/configurationService';
|
||||
import { IDialogService } from '../../../../platform/dialog/common/dialogService';
|
||||
import { IVSCodeExtensionContext } from '../../../../platform/extContext/common/extensionContext';
|
||||
import { IFileSystemService } from '../../../../platform/filesystem/common/fileSystemService';
|
||||
import { IInteractiveSessionService } from '../../../../platform/interactive/common/interactiveSessionService';
|
||||
import { IPromptPathRepresentationService } from '../../../../platform/prompts/common/promptPathRepresentationService';
|
||||
import { IWorkspaceService } from '../../../../platform/workspace/common/workspaceService';
|
||||
import { CancellationError } from '../../../../util/vs/base/common/errors';
|
||||
import { extUri } from '../../../../util/vs/base/common/resources';
|
||||
@@ -123,9 +121,7 @@ export class GetNewWorkspaceTool implements ICopilotTool<INewWorkspaceToolParams
|
||||
export class NewWorkspaceCreationResult extends PromptElement<NewWorkspaceElementProps> {
|
||||
constructor(
|
||||
props: PromptElementProps<NewWorkspaceElementProps>,
|
||||
@IPromptPathRepresentationService private readonly promptPathRepresentationService: IPromptPathRepresentationService,
|
||||
@IWorkspaceService private readonly workspaceService: IWorkspaceService,
|
||||
@IConfigurationService private readonly configurationService: IConfigurationService
|
||||
) {
|
||||
super(props);
|
||||
}
|
||||
@@ -140,60 +136,71 @@ export class NewWorkspaceCreationResult extends PromptElement<NewWorkspaceElemen
|
||||
</TextChunk>;
|
||||
}
|
||||
|
||||
const useContext7 = this.configurationService.getConfig(ConfigKey.NewWorkspaceUseContext7);
|
||||
return <>
|
||||
<TextChunk>
|
||||
The user has opened the workspace folder {this.promptPathRepresentationService.getFilePath(workspaceUri)}<br />
|
||||
Follow the plan below to create a new project in the current VS Code workspace folder<br />
|
||||
Step 1: Create a `.github/copilot-instructions.md` with the following content as a markdown todo list<br />
|
||||
- If the user has requested a VS Code extension: Add a note at the top to use {ToolName.VSCodeAPI} tool<br />
|
||||
- If the user has requested an MCP server: Add a link at the top to https://modelcontextprotocol.io/llms-full.txt<br />
|
||||
- Include this comment at the top of the file {`<!-- Use this file to provide workspace-specific custom instructions to Copilot. For more details, visit https://code.visualstudio.com/docs/copilot/copilot-customization#_use-a-githubcopilotinstructionsmd-file -->`}<br />
|
||||
- Copy the entire markdown content below including all tasks and their comments exactly as shown<br />
|
||||
- If vscode_manageTodoList tool is available, use it to manage this checklist throughout the process<br />
|
||||
- After completing each step, mark it as done and update your progress (use vscode_manageTodoList if available)<br />
|
||||
Create or update the file `.github/copilot-instructions.md` with the exact content shown below.<br />
|
||||
<br />
|
||||
</TextChunk>
|
||||
<UnsafeCodeBlock code={`
|
||||
<!-- Use this file to provide workspace-specific custom instructions to Copilot. For more details, visit https://code.visualstudio.com/docs/copilot/copilot-customization#_use-a-githubcopilotinstructionsmd-file -->
|
||||
- [ ] Verify that .github/copilot-instructions.md is created.
|
||||
|
||||
- [ ] Clarify Project Requirements
|
||||
<!-- Ask for project type, language, and frameworks if not specified. Skip if already provided. -->
|
||||
|
||||
- [ ] Scaffold the Project
|
||||
<!--
|
||||
${useContext7 ? 'MANDATORY Context7 Usage: Call mcp_context7_resolve-library-id with your project requirements, then call mcp_context7_get-library-docs to get scaffolding instructions. Review the Context7 documentation carefully and use it to scaffold the project.' : 'Call project setup tool with projectType and language parameters.'}
|
||||
Ensure that the previous step has been marked as completed.
|
||||
Call project setup tool with projectType parameter.
|
||||
Run scaffolding command to create project files and folders.
|
||||
Use '.' as the working directory.
|
||||
If no appropriate projectType is available, search documentation using available tools.
|
||||
Otherwise, create the project structure manually using available file creation tools.
|
||||
-->
|
||||
|
||||
- [ ] Customize the Project
|
||||
<!--
|
||||
Verify that all previous steps have been completed successfully and you have marked the step as completed.
|
||||
Develop a plan to modify codebase according to user requirements.
|
||||
Apply modifications using appropriate tools and user-provided references.
|
||||
Skip this step for "Hello World" projects.
|
||||
-->
|
||||
|
||||
- [ ] Install Required Extensions
|
||||
<!-- Use extension installer tool if requiredExtensions is defined in project setup. -->
|
||||
<!-- ONLY install extensions provided mentioned in the ${ToolName.GetProjectSetupInfo}. Skip this step otherwise and mark as completed. -->
|
||||
|
||||
- [ ] Compile the Project
|
||||
<!--
|
||||
Verify that all previous steps have been completed.
|
||||
Install any missing dependencies.
|
||||
Run diagnostics and resolve any issues.
|
||||
Check for markdown files in project folder for relevant instructions on how to do this.
|
||||
-->
|
||||
|
||||
- [ ] Create and Run Task
|
||||
<!-- Create task based on package.json, README.md, and project structure. -->
|
||||
<!--
|
||||
Verify that all previous steps have been completed.
|
||||
Check https://code.visualstudio.com/docs/debugtest/tasks to determine if the project needs a task. If so, use the ${ToolName.CoreCreateAndRunTask} to create and launch a task based on package.json, README.md, and project structure.
|
||||
Skip this step otherwise.
|
||||
-->
|
||||
|
||||
- [ ] Launch the Project
|
||||
<!-- Prompt user for debug mode, launch only if confirmed. -->
|
||||
<!--
|
||||
Verify that all previous steps have been completed.
|
||||
Prompt user for debug mode, launch only if confirmed.
|
||||
-->
|
||||
|
||||
- [ ] Ensure Documentation is Complete
|
||||
<!-- Verify README.md exists and is up to date. -->
|
||||
<!--
|
||||
Verify that all previous steps have been completed.
|
||||
Verify that README.md and .github/copilot-instructions.md exists and contains current project information.
|
||||
Clean up .github/copilot-instructions.md by removing all HTML comments.
|
||||
-->
|
||||
|
||||
<!--
|
||||
## Execution Guidelines
|
||||
PROGRESS TRACKING:
|
||||
- If vscode_manageTodoList tool is available, use it to track progress through this checklist.
|
||||
- If any tools are available to manage the above todo list, use it to track progress through this checklist.
|
||||
- After completing each step, mark it complete and add a summary.
|
||||
- Read current todo list status before starting each new step.
|
||||
|
||||
@@ -204,24 +211,21 @@ COMMUNICATION RULES:
|
||||
- Keep explanations concise and focused.
|
||||
|
||||
DEVELOPMENT RULES:
|
||||
- Always start executing the plan by calling the tool to get the project template.
|
||||
- Use '.' as the working directory unless user specifies otherwise.
|
||||
- Do not create folders unless user instructs.
|
||||
- Avoid adding media or external links unless explicitly requested.
|
||||
- Use placeholders only with a note that they should be replaced.
|
||||
- Use VS Code API tool only for VS Code extension projects.
|
||||
- Once the project is created, it is already opened in Visual Studio Code—do not suggest commands to open this project in Visual Studio again.
|
||||
- Do not print and explain the project structure to the user unless explicitly requested.
|
||||
- If the project setup information has additional rules, follow them strictly.
|
||||
|
||||
FOLDER CREATION RULES:
|
||||
- Always use the current directory as the project root.
|
||||
- If you are running any terminal commands, use the '.' argument to ensure that the current working directory is used ALWAYS.
|
||||
- Do not create a new folder unless the user explicitly requests it besides a .vscode folder for a tasks.json file.
|
||||
- If any of the scaffolding commands mention that the folder name is not correct, let the user know to create a new folder with the correct name and then reopen it again in vscode. Do not attempt to move it yourself. And do not proceed with next steps.
|
||||
- If any of the scaffolding commands mention that the folder name is not correct, let the user know to create a new folder with the correct name and then reopen it again in vscode.
|
||||
|
||||
EXTENSION INSTALLATION RULES:
|
||||
- If the project setup lists requiredExtensions, use extension installer tool to check and install ALL the listed requiredExtensions before proceeding.
|
||||
- Only install extension specified by the ${ToolName.GetProjectSetupInfo} tool. DO NOT INSTALL any other extensions.
|
||||
|
||||
PROJECT CONTENT RULES:
|
||||
- If the user has not specified project details, assume they want a "Hello World" project as a starting point.
|
||||
@@ -234,14 +238,10 @@ PROJECT CONTENT RULES:
|
||||
|
||||
TASK COMPLETION RULES:
|
||||
- Your task is complete when:
|
||||
- The project is successfully created without errors.
|
||||
- The user has clear instructions on how to launch their code in debug mode within Visual Studio Code.
|
||||
- A copilot-instructions.md exists in the project root under the .github directory.
|
||||
- A README.md file in the root of the project is up to date.
|
||||
- A tasks.json file exists in the project root under the .vscode directory.
|
||||
|
||||
SUCCESS CRITERIA:
|
||||
- Completion = project scaffolded, copilot-instructions + README exist, task runnable, debug launch offered.
|
||||
- Project is successfully scaffolded and compiled without errors
|
||||
- .github/copilot-instructions.md exists in the project
|
||||
- README.md file exists and is up to date
|
||||
- User is provided with clear instructions to debug/launch the project
|
||||
|
||||
Before starting a new task in the above plan, update progress in the plan.
|
||||
-->
|
||||
@@ -251,17 +251,9 @@ Before starting a new task in the above plan, update progress in the plan.
|
||||
`} languageId='markdown'></UnsafeCodeBlock>
|
||||
<TextChunk>
|
||||
<br />
|
||||
Step 2: Execute the Plan<br />
|
||||
After creating the .github/copilot-instructions.md file, systematically work through each item.<br />
|
||||
If vscode_manageTodoList tool is available, use it to read status, mark items complete, and track progress.<br />
|
||||
Verify that a .github/copilot-instructions.md file exists and systematically work through each item in the task list.<br />
|
||||
Update the .github/copilot-instructions.md file directly as you complete each step.<br />
|
||||
<br />
|
||||
Step 3: Finalize Instructions<br />
|
||||
Once all tasks are complete, update the .github/copilot-instructions.md file:<br />
|
||||
- Remove all HTML comments from the completed tasks<br />
|
||||
- Replace the comments with a brief description of the project structure and key files<br />
|
||||
- Add any project-specific instructions or conventions that future developers should know<br />
|
||||
<br />
|
||||
If the user asks to "continue," refer to the previous steps and proceed accordingly.
|
||||
</TextChunk>
|
||||
</>;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import * as l10n from '@vscode/l10n';
|
||||
import { BasePromptElementProps, PromptElement, PromptElementProps, PromptSizing, TextChunk } from '@vscode/prompt-tsx';
|
||||
import type { CancellationToken, LanguageModelToolInvocationOptions, LanguageModelToolInvocationPrepareOptions, PreparedToolInvocation } from 'vscode';
|
||||
import { IFetcherService } from '../../../../platform/networking/common/fetcherService';
|
||||
import { ConfigKey, IConfigurationService } from '../../../../platform/configuration/common/configurationService';
|
||||
import { CancellationError } from '../../../../util/vs/base/common/errors';
|
||||
import { IInstantiationService } from '../../../../util/vs/platform/instantiation/common/instantiation';
|
||||
import { LanguageModelPromptTsxPart, LanguageModelToolResult } from '../../../../vscodeTypes';
|
||||
@@ -24,11 +24,9 @@ interface ExecutionCommand {
|
||||
arguments?: Argument[];
|
||||
}
|
||||
|
||||
type SupportedLanguage = "python" | "typescript" | "javascript";
|
||||
|
||||
interface ProjectSetupInfo {
|
||||
projectType: string;
|
||||
language: SupportedLanguage[];
|
||||
description: string;
|
||||
executionCommands?: ExecutionCommand[];
|
||||
requiredExtensions?: string[];
|
||||
@@ -38,7 +36,6 @@ interface ProjectSetupInfo {
|
||||
const setupInfo: ProjectSetupInfo[] = [
|
||||
{
|
||||
projectType: 'vscode-extension',
|
||||
language: ['typescript', 'javascript'],
|
||||
description: 'A template for creating a VS Code extension using Yeoman and Generator-Code.',
|
||||
executionCommands: [{
|
||||
command: 'npx --package yo --package generator-code -- yo code . --skipOpen',
|
||||
@@ -65,7 +62,6 @@ const setupInfo: ProjectSetupInfo[] = [
|
||||
},
|
||||
{
|
||||
projectType: 'next-js',
|
||||
language: ['typescript', 'javascript'],
|
||||
description: 'A React based framework for building server-rendered web applications.',
|
||||
executionCommands: [{
|
||||
command: 'npx create-next-app@latest .',
|
||||
@@ -89,7 +85,6 @@ const setupInfo: ProjectSetupInfo[] = [
|
||||
},
|
||||
{
|
||||
projectType: 'vite',
|
||||
language: ['typescript', 'javascript'],
|
||||
description: 'A front end build tool for web applications that focuses on speed and performance. Can be used with React, Vue, Preact, Lit, Svelte, Solid, and Qwik.',
|
||||
executionCommands: [{
|
||||
command: 'npx create-vite@latest .',
|
||||
@@ -100,69 +95,22 @@ const setupInfo: ProjectSetupInfo[] = [
|
||||
},
|
||||
{
|
||||
projectType: 'mcp-server',
|
||||
language: ['typescript'],
|
||||
description: 'A Model Context Protocol (MCP) server project in Typescript. This project is based on the MCP server template.',
|
||||
executionCommands: [
|
||||
{ command: 'npm init -y' },
|
||||
{ command: 'npm install typescript --save-dev' },
|
||||
{ command: 'npx tsc --init' },
|
||||
{ command: 'npm install @modelcontextprotocol/sdk zod' }
|
||||
],
|
||||
description: 'A Model Context Protocol (MCP) server project. This project supports multiple programming languages including TypeScript, JavaScript, Python, C#, Java, and Kotlin.',
|
||||
rules: [
|
||||
'Follow these rules strictly and do not deviate from them.',
|
||||
'1. Set up a TypeScript project environment using the commands provided.',
|
||||
'2. Apply the modifications to the project to implement the MCP server using the documentation and examples provided.',
|
||||
'3. Always install the latest version of the packages and ensure that the installed versions are not changed or downgraded.',
|
||||
'4. Update the `copilot-instructions.md` to include a reference to the SDK link: https://github.com/modelcontextprotocol/create-python-server.',
|
||||
'5. Update the `README.md` file with the latest state of the project.',
|
||||
'6. Create an `mcp.json` file in the `.vscode` folder in the project root with the following content: `{ "servers": { "mcp-server-name": { "type": "stdio", "command": "command-to-run", "args": [list-of-args] } } }`.',
|
||||
'1. First, visit https://github.com/modelcontextprotocol to find the correct SDK and setup instructions for the requested language. Default to TypeScript if no language is specified.',
|
||||
`2. Use the ${ToolName.FetchWebPage} to find the correct implementation instructions from https://modelcontextprotocol.io/llms-full.txt`,
|
||||
'3. Update the `copilot-instructions.md` to include references to the SDK documentation',
|
||||
'4. Create an `mcp.json` file in the `.vscode` folder in the project root with the following content: `{ "servers": { "mcp-server-name": { "type": "stdio", "command": "command-to-run", "args": [list-of-args] } } }`.',
|
||||
'- mcp-server-name: The name of the MCP server. Create a unique name that reflects what this MCP server does.',
|
||||
'- command-to-run: The command to run to start the MCP server. This is the command you would use to run the project you just created.',
|
||||
'- list-of-args: The arguments to pass to the command. This is the list of arguments you would use to run the project you just created.',
|
||||
'7. Inform the user that they can now debug this MCP server using VS Code.',
|
||||
'5. Install any required VS Code extensions based on the chosen language (e.g., Python extension for Python projects).',
|
||||
'6. Inform the user that they can now debug this MCP server using VS Code.',
|
||||
]
|
||||
},
|
||||
{
|
||||
projectType: 'mcp-server',
|
||||
language: ['python'],
|
||||
description: 'A Model Context Protocol (MCP) server project in Python. This project is based on the MCP server template.',
|
||||
requiredExtensions: ['ms-python.python', 'ms-python.vscode-python-envs'],
|
||||
executionCommands: [
|
||||
{
|
||||
command: 'pip install create-mcp-server && create-mcp-server --path . --no-claudeapp',
|
||||
arguments: [
|
||||
{ argName: '--name', description: 'Project name' },
|
||||
{ argName: '--version', description: 'Server version' },
|
||||
{ argName: '--description', description: 'Project description' }
|
||||
]
|
||||
},
|
||||
{
|
||||
command: 'uvx create-mcp-server --path .',
|
||||
arguments: [
|
||||
{ argName: '--name', description: 'Project name' },
|
||||
{ argName: '--version', description: 'Server version' },
|
||||
{ argName: '--description', description: 'Project description' }
|
||||
]
|
||||
},
|
||||
],
|
||||
rules: [
|
||||
'Follow these rules strictly and do not deviate from them.',
|
||||
'Use the exact command provided above. Do not modify the command.',
|
||||
'1. Ensure that Python is installed and available in your PATH.',
|
||||
'2. Run the execution commands to create the MCP server project using the templating tool.',
|
||||
'3. Activate the virtual environment.',
|
||||
'4. Install any other dependencies requested by the user or required by the project, and then modify the project to implement the MCP server.',
|
||||
'5. Update the `copilot-instructions.md` to include a reference to the SDK link: https://github.com/modelcontextprotocol/create-python-server.',
|
||||
'6. Update the `README.md` file with the latest state of the project.',
|
||||
'7. Create an `mcp.json` file in the `.vscode` folder in the project root with the following content: `{ "servers": { "mcp-server-name": { "type": "stdio", "command": "command-to-run", "args": [list-of-args] } } }`.',
|
||||
'- mcp-server-name: The name of the MCP server. Create a unique name that reflects what this MCP server does.',
|
||||
'- command-to-run: The command to run to start the MCP server. This is the command you would use to run the project you just created.',
|
||||
'- list-of-args: The arguments to pass to the command. This is the list of arguments you would use to run the project you just created.',
|
||||
'8. Inform the user that they can now debug this MCP server using VS Code.',
|
||||
]
|
||||
}, {
|
||||
projectType: 'python-script',
|
||||
language: ['python'],
|
||||
description: 'A simple Python script project which should be chosen when just a single script wants to be created.',
|
||||
requiredExtensions: ['ms-python.python', 'ms-python.vscode-python-envs'],
|
||||
rules: [
|
||||
@@ -178,7 +126,6 @@ const setupInfo: ProjectSetupInfo[] = [
|
||||
},
|
||||
{
|
||||
projectType: 'python-package',
|
||||
language: ['python'],
|
||||
description: 'A Python package project which can be used to create a distributable package.',
|
||||
requiredExtensions: ['ms-python.python', 'ms-python.vscode-python-envs'],
|
||||
rules: [
|
||||
@@ -194,27 +141,8 @@ const setupInfo: ProjectSetupInfo[] = [
|
||||
}
|
||||
];
|
||||
|
||||
// Utility function to extract content under a specific header in markdown
|
||||
function extractContentUnderHeader(markdown: string, header: string): string {
|
||||
const headerRegex = new RegExp(`^#\\s*${header}\\s*$`, 'm');
|
||||
const startMatch = markdown.match(headerRegex);
|
||||
if (!startMatch) {
|
||||
return '';
|
||||
}
|
||||
|
||||
const startIndex = startMatch.index! + startMatch[0].length;
|
||||
const remainingContent = markdown.slice(startIndex);
|
||||
|
||||
// Search for the next header that starts with #
|
||||
const nextHeaderIndex = remainingContent.search(/^#\s+/m);
|
||||
return nextHeaderIndex === -1
|
||||
? remainingContent.trim()
|
||||
: remainingContent.slice(0, nextHeaderIndex).trim();
|
||||
}
|
||||
|
||||
export interface IWorkspaceSetupInfoToolParams {
|
||||
projectType: string;
|
||||
language?: SupportedLanguage;
|
||||
}
|
||||
|
||||
export class GetWorkspaceSetupInfoTool implements ICopilotTool<IWorkspaceSetupInfoToolParams> {
|
||||
@@ -232,9 +160,8 @@ export class GetWorkspaceSetupInfoTool implements ICopilotTool<IWorkspaceSetupIn
|
||||
|
||||
async invoke(options: LanguageModelToolInvocationOptions<IWorkspaceSetupInfoToolParams>, token: CancellationToken): Promise<LanguageModelToolResult> {
|
||||
|
||||
const { projectType, language } = options.input;
|
||||
const resolvedLanguage = language ?? "typescript";
|
||||
const selectedSetupInfo = setupInfo.find((info) => info.projectType === projectType && info.language.includes(resolvedLanguage));
|
||||
const { projectType } = options.input;
|
||||
const selectedSetupInfo = setupInfo.find((info) => info.projectType === projectType);
|
||||
|
||||
const json = await renderPromptElementJSON(this.instantiationService, WorkspaceSetupResult, { projectSetupInfo: selectedSetupInfo },);
|
||||
|
||||
@@ -253,12 +180,22 @@ ToolRegistry.registerTool(GetWorkspaceSetupInfoTool);
|
||||
export class WorkspaceSetupResult extends PromptElement<WorkspaceSetupProps> {
|
||||
constructor(
|
||||
props: PromptElementProps<WorkspaceSetupProps>,
|
||||
@IFetcherService private readonly fetcherService: IFetcherService,
|
||||
@IConfigurationService private readonly configurationService: IConfigurationService,
|
||||
) {
|
||||
super(props);
|
||||
}
|
||||
|
||||
override async render(state: void, sizing: PromptSizing) {
|
||||
const useContext7 = this.configurationService.getConfig(ConfigKey.NewWorkspaceUseContext7);
|
||||
if (useContext7) {
|
||||
return <> <TextChunk>
|
||||
Use context7 tools to find the latest libraries, APIs, and documentation to help the user create and customize their project.<br />
|
||||
1. Call mcp_context7_resolve-library-id with your project requirements.<br />
|
||||
2. Call mcp_context7_get-library-docs to get scaffolding instructions.<br />
|
||||
You must call these tools before proceeding and confirm that you did NOT skip this step.<br />
|
||||
<br />
|
||||
</TextChunk></>;
|
||||
}
|
||||
|
||||
const { projectSetupInfo } = this.props;
|
||||
if (!projectSetupInfo) {
|
||||
@@ -267,35 +204,13 @@ export class WorkspaceSetupResult extends PromptElement<WorkspaceSetupProps> {
|
||||
</TextChunk></>;
|
||||
}
|
||||
|
||||
|
||||
const setupInfo = JSON.stringify(projectSetupInfo, null, 2);
|
||||
|
||||
if (projectSetupInfo.projectType === 'mcp-server') {
|
||||
const exampleContent = await this.fetcherService.fetch('https://modelcontextprotocol.io/llms-full.txt', { method: 'GET' });
|
||||
const examples = exampleContent ? await exampleContent.text() : '';
|
||||
// python setup info is outdated. use our custom instructions instead
|
||||
const referenceContent = projectSetupInfo.language[0] === 'python' ? '' : extractContentUnderHeader(examples, 'For Server Developers');
|
||||
return <>
|
||||
<TextChunk>
|
||||
Use the Project Setup Information:<br />
|
||||
${setupInfo}<br />
|
||||
<br />
|
||||
Use the following documentation to set up the MCP server:<br />
|
||||
${referenceContent}<br />
|
||||
<br />
|
||||
Don't forget to call the tool {ToolName.CreateNewWorkspace} to create the project in a VS Code workspace.<br />
|
||||
</TextChunk>
|
||||
</>;
|
||||
}
|
||||
else {
|
||||
return <>
|
||||
<TextChunk>
|
||||
Use the Project Setup Information:<br />
|
||||
${setupInfo}<br />
|
||||
Don't forget to call the tool {ToolName.CreateNewWorkspace} to create the project in a VS Code workspace.<br />
|
||||
</TextChunk>
|
||||
</>;
|
||||
}
|
||||
return <>
|
||||
<TextChunk>
|
||||
Use the Project Setup Information:<br />
|
||||
${setupInfo}<br />
|
||||
</TextChunk>
|
||||
</>;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
{
|
||||
"name": "edit (toolCalling) [panel] - does not read",
|
||||
"requests": [
|
||||
"3ef7b7ddec0e6951cb3854eda3316a25b57b07c7592dc658f86538109b5aee65"
|
||||
"a792f7026e0bebfd49678203371490b9f8b3116b772363af7e9b1ad9955a5e86"
|
||||
]
|
||||
}
|
||||
]
|
||||
@@ -2,25 +2,25 @@
|
||||
{
|
||||
"name": "fetchWebPageTool (toolCalling) [panel] - multiple URLs boundary test with 6 URLs",
|
||||
"requests": [
|
||||
"18aa6dab697edce91c16457a756198c3550c5a24ef0e1e3f5d40c54d41ae9317"
|
||||
"97c1a77d2c228fd17761573fc0b24091b6106daf13f06989a5e9ee5313d8c302"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "fetchWebPageTool (toolCalling) [panel] - multiple URLs handling",
|
||||
"requests": [
|
||||
"3f7eceb642378232e9a79b784543e20c7c818c09bb99456ace34ba96ae4d8144"
|
||||
"9bf8dfc8c6dc526bd48ba1eb37479f322b5498dc8f39de5fd90e19e9089ad299"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "fetchWebPageTool (toolCalling) [panel] - proper URL validation and query handling",
|
||||
"requests": [
|
||||
"95b8550c2011bee943cda6a850daef163437ba7a53e51ee2abbaf05bc4e7e070"
|
||||
"07b6398ca6d430511aa6d705a759ac99ae4eb27ed00e19f5a4959635fe9a1c13"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "fetchWebPageTool (toolCalling) [panel] - query parameter extraction",
|
||||
"requests": [
|
||||
"a6d812742fd035877cb9e88397231ce73e39ea6eca9d43e48a72216138b9ccba"
|
||||
"4e6c54e5af2a3cc9e583c1529bb4c93d0525db091098b8e53a787aaa4f2610bd"
|
||||
]
|
||||
}
|
||||
]
|
||||
@@ -2,7 +2,7 @@
|
||||
{
|
||||
"name": "findFilesTool (toolCalling) [panel] - proper glob patterns",
|
||||
"requests": [
|
||||
"f274bdbf349c794c9c90691967f83e681bd21037cd7b56a6fae561656b776432"
|
||||
"cc3d9121c7cf092bb80714e2ec48af7463f57d6efe05e84a36fa6b933d1cee67"
|
||||
]
|
||||
}
|
||||
]
|
||||
@@ -2,43 +2,43 @@
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - Edit cell tool",
|
||||
"requests": [
|
||||
"9834c0b5f7a58f5e79cd64abe699f4d7186221cf9d281fe69e57666ea5ad7c15"
|
||||
"4d5ed440cdb69dd6ead778b7de28a16cd966c738e93d07a14af17fa23c55d7b1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - New Notebook Tool with EditFile and EditNotebook",
|
||||
"requests": [
|
||||
"f90d7fcc60499f21c4979e3d3c0e603ab40fc2f3ddbe174e500972d80d0c40e1"
|
||||
"6d1e226ebe6bb0491abf6136a577b4b3f7b04336d2c4c61b73ce428e50829b5e"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - New Notebook Tool without EditFile and with EditNotebook",
|
||||
"requests": [
|
||||
"f90d7fcc60499f21c4979e3d3c0e603ab40fc2f3ddbe174e500972d80d0c40e1"
|
||||
"6d1e226ebe6bb0491abf6136a577b4b3f7b04336d2c4c61b73ce428e50829b5e"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - New Notebook Tool without EditFile and without EditNotebook",
|
||||
"requests": [
|
||||
"f90d7fcc60499f21c4979e3d3c0e603ab40fc2f3ddbe174e500972d80d0c40e1"
|
||||
"6d1e226ebe6bb0491abf6136a577b4b3f7b04336d2c4c61b73ce428e50829b5e"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - Run cell at a specific index",
|
||||
"requests": [
|
||||
"de558cbf574dfc710aafbdba47162f4917c3d1d4ac488239615ec46b9ea62d29"
|
||||
"6186aacc873b0f7c10b553890b777488184bcaf0b3b044d59ccda665637aac08"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - Run cell tool",
|
||||
"requests": [
|
||||
"f6efefd1b8e139f5a7da827446818addef21b9d2e4c0ce34a61c4bcbc026f7d4"
|
||||
"c2eeffb3eadf1bcfbbadac1b3b96af68255a00f60c373d92c3970c8d96a9e1f2"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "notebooks (toolCalling) [panel] - Run cell tool should avoid running markdown cells",
|
||||
"requests": [
|
||||
"e17ee6c17a85e6c0419e38830b7cbc247410d2f31a495726c140999e8d073441"
|
||||
"a358fbf2e6aa6b207a83fe7ac60832fe4648e4eb3b02d737e0270644ff3db9e2"
|
||||
]
|
||||
}
|
||||
]
|
||||
@@ -2,13 +2,13 @@
|
||||
{
|
||||
"name": "toolCalling [panel] - find all phone numbers in markdown files in the codebase",
|
||||
"requests": [
|
||||
"a0ec4b0c2b441050c98c3fd1a96ba8355f9c02478b8f64f8946e645262d5f4b3"
|
||||
"0fdc2949f56e1a1ac4906b6ca05e68b6439eb04585d9a59d0c27076048c3937a"
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "toolCalling [panel] - I'm using git, create a new branch called issue-9876",
|
||||
"requests": [
|
||||
"7462279ed18ae6bc0b80717af6f940361af13491259f425f8c47b3bd53663378"
|
||||
"266393f471956c346761f9bab96be31c6947235ce37b062c9dc7effdc7070ce3"
|
||||
]
|
||||
}
|
||||
]
|
||||
BIN
extensions/copilot/test/simulation/cache/layers/3e558dd9-66aa-4156-a214-0462cfab6e2e.sqlite
LFS
vendored
Normal file
BIN
extensions/copilot/test/simulation/cache/layers/3e558dd9-66aa-4156-a214-0462cfab6e2e.sqlite
LFS
vendored
Normal file
Binary file not shown.
Reference in New Issue
Block a user