File: /srv/users/mkanyafarm/.vscode-server/extensions/github.copilot-chat-0.26.5/package.json
{
"name": "copilot-chat",
"displayName": "GitHub Copilot Chat",
"description": "AI chat features powered by Copilot",
"version": "0.26.5",
"build": "1",
"internalAIKey": "1058ec22-3c95-4951-8443-f26c1f325911",
"ariaKey": "0c6ae279ed8443289764825290e4f9e2-1a736e7c-1324-4338-be46-fc2a58ae4d14-7255",
"buildType": "prod",
"publisher": "GitHub",
"homepage": "https://github.com/features/copilot?editor=vscode",
"license": "SEE LICENSE IN LICENSE.txt",
"repository": {
"type": "git",
"url": "https://github.com/microsoft/vscode-copilot-release"
},
"bugs": {
"url": "https://aka.ms/microsoft/vscode-copilot-release"
},
"qna": "https://github.com/github-community/community/discussions/categories/copilot",
"icon": "assets/Copilot-App-Icon.png",
"pricing": "Trial",
"engines": {
"vscode": "^1.99.0",
"npm": ">=9.0.0",
"node": ">=20.18.1"
},
"categories": [
"AI",
"Chat",
"Programming Languages",
"Machine Learning"
],
"keywords": [
"ai",
"openai",
"codex",
"pilot",
"snippets",
"documentation",
"autocomplete",
"intellisense",
"refactor",
"javascript",
"python",
"typescript",
"php",
"go",
"golang",
"ruby",
"c++",
"c#",
"java",
"kotlin",
"co-pilot"
],
"badges": [
{
"url": "https://img.shields.io/badge/GitHub%20Copilot-Subscription%20Required-orange",
"href": "https://github.com/github-copilot/signup?editor=vscode",
"description": "%github.copilot.badge.signUp%"
},
{
"url": "https://img.shields.io/github/stars/github/copilot-docs?style=social",
"href": "https://github.com/github/copilot-docs",
"description": "%github.copilot.badge.star%"
},
{
"url": "https://img.shields.io/youtube/channel/views/UC7c3Kb6jYCRj4JOHHZTxKsQ?style=social",
"href": "https://www.youtube.com/@GitHub/search?query=copilot",
"description": "%github.copilot.badge.youtube%"
},
{
"url": "https://img.shields.io/twitter/follow/github?style=social",
"href": "https://twitter.com/github",
"description": "%github.copilot.badge.twitter%"
}
],
"activationEvents": [
"onStartupFinished",
"onLanguageModelChat:copilot",
"onUri",
"onFileSystem:ccreq",
"onFileSystem:ccsettings"
],
"main": "./dist/extension",
"l10n": "./l10n",
"enabledApiProposals": [
"extensionsAny",
"newSymbolNamesProvider",
"interactive",
"codeActionAI",
"activeComment",
"commentReveal",
"contribCommentThreadAdditionalMenu",
"contribCommentsViewThreadMenus",
"documentFiltersExclusive",
"embeddings",
"findTextInFiles",
"findTextInFiles2",
"findFiles2@2",
"textSearchProvider",
"terminalDataWriteEvent",
"terminalExecuteCommandEvent",
"terminalSelection",
"terminalQuickFixProvider",
"mappedEditsProvider",
"aiRelatedInformation",
"chatParticipantAdditions",
"chatEditing",
"defaultChatParticipant@3",
"contribSourceControlInputBoxMenu",
"authLearnMore",
"testObserver",
"aiTextSearchProvider@2",
"chatParticipantPrivate@6",
"chatProvider",
"contribDebugCreateConfiguration",
"chatReferenceDiagnostic",
"textSearchProvider2",
"chatReferenceBinaryData",
"languageModelSystem",
"languageModelCapabilities",
"inlineCompletionsAdditions",
"languageModelDataPart",
"chatStatusItem"
],
"contributes": {
"languageModelTools": [
{
"name": "copilot_searchCodebase",
"toolReferenceName": "codebase",
"displayName": "Codebase",
"icon": "$(folder)",
"canBeReferencedInPrompt": true,
"userDescription": "%copilot.codebase.tool.description%",
"modelDescription": "Run a natural language search for relevant code or documentation comments from the user's current workspace. Returns relevant code snippets from the user's current workspace if it is large, or the full contents of the workspace if it is small."
},
{
"name": "copilot_semanticSearch",
"toolReferenceName": "codebase",
"displayName": "Codebase",
"icon": "$(folder)",
"userDescription": "%copilot.codebase.tool.description%",
"modelDescription": "Run a natural language search for relevant code or documentation comments from the user's current workspace. Returns relevant code snippets from the user's current workspace if it is large, or the full contents of the workspace if it is small.",
"tags": [
"vscode_editing",
"codesearch",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The query to search the codebase for. Should contain all relevant context. Should ideally be text that might appear in the codebase, such as function names, variable names, or comments."
}
},
"required": [
"query"
]
}
},
{
"name": "copilot_searchWorkspaceSymbols",
"toolReferenceName": "symbols",
"displayName": "Workspace Symbols",
"icon": "$(symbol)",
"userDescription": "%copilot.workspaceSymbols.tool.description%",
"modelDescription": "Search the user's workspace for code symbols using language services. Limited to 20 results. Use this tool when the user is looking for a specific symbol in their workspace.",
"tags": [
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"symbolName": {
"type": "string",
"description": "The symbol to search for, such as a function name, class name, or variable name."
}
},
"required": [
"symbolName"
]
}
},
{
"name": "copilot_listCodeUsages",
"toolReferenceName": "usages",
"displayName": "Find Usages",
"icon": "$(references)",
"canBeReferencedInPrompt": true,
"userDescription": "%copilot.listCodeUsages.tool.description%",
"modelDescription": "Request to list all usages (references, definitions, implementations etc) of a function, class, method, variable etc. Use this tool when \n1. Looking for a sample implementation of an interface or class\n2. Checking how a function is used throughout the codebase.\n3. Including and updating all usages when changing a function, method, or constructor",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"symbolName": {
"type": "string",
"description": "The name of the symbol, such as a function name, class name, method name, variable name, etc."
},
"filePaths": {
"type": "array",
"description": "One or more file paths which likely contain the definition of the symbol. For instance the file which declares a class or function. This is optional but will speed up the invocation of this tool and improve the quality of its output.",
"items": {
"type": "string"
}
}
},
"required": [
"symbolName"
]
}
},
{
"name": "copilot_getVSCodeAPI",
"toolReferenceName": "vscodeAPI",
"displayName": "Get VS Code API References",
"icon": "$(references)",
"userDescription": "%copilot.vscode.tool.description%",
"modelDescription": "Get relevant VS Code API references to answer questions about VS Code extension development. Use this tool when the user asks about VS Code APIs, capabilities, or best practices related to developing VS Code extensions. Use it in all VS Code extension development workspaces.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The query to search vscode documentation for. Should contain all relevant context."
}
},
"required": [
"query"
]
},
"tags": [
"vscode_editing"
],
"canBeReferencedInPrompt": true
},
{
"displayName": "Think",
"name": "copilot_think",
"tags": [
"vscode_editing"
],
"when": "config.github.copilot.chat.agent.thinkingTool",
"modelDescription": "Think deeply about the user's request. Use this tool to take a moment to think about the user's request before generating a response. Use this to improve the quality of the response by allowing the model to consider the user's request more carefully.",
"inputSchema": {
"type": "object",
"properties": {
"thoughts": {
"type": "string",
"description": "Thoughts about the user's request. This should not include any code or other output. Use this field to think deeply about the user's request, review the available context and any actions that have already been performed, and decide on next steps."
}
},
"required": [
"thoughts"
]
}
},
{
"name": "copilot_findFiles",
"displayName": "Find Files",
"modelDescription": "Search for files in the workspace by glob pattern. This only returns the paths of matching files. Limited to 20 results. Use this tool when you know the exact filename pattern of the files you're searching for. Glob patterns match from the root of the workspace folder. Examples:\n- **/*.{js,ts} to match all js/ts files in the workspace.\n- src/** to match all files under the top-level src folder.\n- **/foo/**/*.js to match all js files under any foo folder in the workspace.",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search for files with names or paths matching this query. Can be a glob pattern."
}
},
"required": [
"query"
]
}
},
{
"name": "copilot_findTextInFiles",
"displayName": "Find Text In Files",
"modelDescription": "Do a text search in the workspace. Limited to 20 results. Use this tool when you know the exact string you're searching for.",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The pattern to search for in files in the workspace. Can be a regex or plain text pattern"
},
"isRegexp": {
"type": "boolean",
"description": "Whether the pattern is a regex. False by default."
},
"includePattern": {
"type": "string",
"description": "Search files matching this glob pattern. Will be applied to the relative path of files within the workspace."
}
},
"required": [
"query"
]
}
},
{
"name": "copilot_readFile",
"displayName": "Read File",
"modelDescription": "Read the contents of a file.\n\nYou must specify the line range you're interested in, and if the file is larger, you will be given an outline of the rest of the file. If the file contents returned are insufficient for your task, you may call this tool again to retrieve more content.",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"filePath": {
"description": "The absolute path of the file to read.",
"type": "string"
},
"startLineNumberBaseZero": {
"type": "number",
"description": "The line number to start reading from, 0-based."
},
"endLineNumberBaseZero": {
"type": "number",
"description": "The inclusive line number to end reading at, 0-based."
}
},
"required": [
"filePath",
"startLineNumberBaseZero",
"endLineNumberBaseZero"
]
}
},
{
"name": "copilot_listDirectory",
"displayName": "List Dir",
"modelDescription": "List the contents of a directory. Result will have the name of the child. If the name ends in /, it's a folder, otherwise a file",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "The absolute path to the directory to list."
}
},
"required": [
"path"
]
}
},
{
"name": "copilot_runInTerminal",
"displayName": "Run In Terminal",
"modelDescription": "Run a shell command in a terminal. State is persistent across tool calls.\n- Use this tool instead of printing a shell codeblock and asking the user to run it.\n- If the command is a long-running background process, you MUST pass isBackground=true. Background terminals will return a terminal ID which you can use to check the output of a background process with copilot_getTerminalOutput.\n- If a command may use a pager, you must something to disable it. For example, you can use `git --no-pager`. Otherwise you should add something like ` | cat`. Examples: git, less, man, etc.",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"command": {
"type": "string",
"description": "The command to run in the terminal."
},
"explanation": {
"type": "string",
"description": "A one-sentence description of what the command does. This will be shown to the user before the command is run."
},
"isBackground": {
"type": "boolean",
"description": "Whether the command starts a background process. If true, the command will run in the background and you will not see the output. If false, the tool call will block on the command finishing, and then you will get the output. Examples of backgrond processes: building in watch mode, starting a server. You can check the output of a backgrond process later on by using copilot_getTerminalOutput."
}
},
"required": [
"command",
"explanation",
"isBackground"
]
}
},
{
"name": "copilot_getTerminalOutput",
"displayName": "Get terminal output",
"modelDescription": "Get the output of a terminal command previous started with copilot_runInTerminal",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the terminal command output to check."
}
},
"required": [
"id"
]
}
},
{
"name": "copilot_getErrors",
"displayName": "Get Errors",
"toolReferenceName": "problems",
"icon": "$(error)",
"when": "config.chat.agent.enabled",
"modelDescription": "Get any compile or lint errors in a code file. If the user mentions errors or problems in a file, they may be referring to these. Use the tool to see the same errors that the user is seeing. Also use this tool after editing a file to validate the change.",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"filePaths": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"filePaths"
]
}
},
{
"name": "copilot_readProjectStructure",
"displayName": "Project Structure",
"modelDescription": "Get a file tree representation of the workspace.",
"tags": []
},
{
"name": "copilot_getChangedFiles",
"displayName": "Git Changes",
"toolReferenceName": "changes",
"icon": "$(diff)",
"canBeReferencedInPrompt": true,
"modelDescription": "Get git diffs of current file changes in the active git repository. Don't forget that you can use copilot_runInTerminal to run git commands in a terminal as well.",
"tags": [
"vscode_editing",
"vscode_codesearch"
],
"inputSchema": {
"type": "object",
"properties": {
"repositoryPath": {
"type": "string",
"description": "The absolute path to the git repository to look for changes in."
},
"sourceControlState": {
"type": "array",
"items": {
"type": "string",
"enum": [
"staged",
"unstaged",
"merge-conflicts"
]
},
"description": "The kinds of git state to filter by. Allowed values are: 'staged', 'unstaged', and 'merge-conflicts'. If not provided, all states will be included."
}
},
"required": [
"repositoryPath"
]
}
},
{
"name": "copilot_testFailure",
"toolReferenceName": "testFailure",
"displayName": "Test Failure",
"icon": "$(beaker)",
"userDescription": "%copilot.testFailure.tool.description%",
"modelDescription": "Includes test failure information in the prompt.",
"inputSchema": {},
"tags": [
"vscode_editing_with_tests",
"enable_other_tool_copilot_readFile",
"enable_other_tool_copilot_listDirectory",
"enable_other_tool_copilot_findFiles",
"enable_other_tool_copilot_runTests"
],
"when": "config.chat.agent.enabled",
"canBeReferencedInPrompt": true
},
{
"name": "copilot_updateUserPreferences",
"toolReferenceName": "updateUserPreferences",
"displayName": "Update User Preferences",
"modelDescription": "Update the user's preferences file with new information about the user and their coding preferences, based on the current chat history.",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"facts": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of new user preferences to remember."
}
},
"required": [
"facts"
]
},
"when": "config.github.copilot.chat.enableUserPreferences"
},
{
"name": "copilot_runTests",
"toolReferenceName": "runTests",
"displayName": "Run Tests",
"modelDescription": "Runs tests in workspace.",
"inputSchema": {
"type": "object",
"properties": {
"filter": {
"type": "string",
"description": "Specifies which tests to run, either\n- `all` to run all tests\n- `failed` to run failed tests\n- `last` to re-run the last set of tests",
"enum": [
"all",
"failed",
"last"
]
}
},
"required": [
"filter"
]
},
"tags": [
"vscode_editing_with_tests",
"enable_other_tool_copilot_readFile",
"enable_other_tool_copilot_listDirectory",
"enable_other_tool_copilot_findFiles",
"enable_other_tool_copilot_runTests"
],
"when": "config.chat.agent.enabled"
},
{
"name": "copilot_getTerminalSelection",
"toolReferenceName": "terminalSelection",
"displayName": "%github.copilot.tools.terminalSelection.name%",
"modelDescription": "Get the user's current selection in the active terminal.",
"userDescription": "%github.copilot.tools.terminalSelection.description%",
"canBeReferencedInPrompt": true,
"icon": "$(terminal)"
},
{
"name": "copilot_getTerminalLastCommand",
"toolReferenceName": "terminalLastCommand",
"displayName": "%github.copilot.tools.terminalLastCommand.name%",
"modelDescription": "Get the user's current selection in the active terminal.",
"userDescription": "%github.copilot.tools.terminalLastCommand.description%",
"canBeReferencedInPrompt": true,
"icon": "$(terminal)"
},
{
"name": "copilot_createNewWorkspace",
"displayName": "%github.copilot.tools.createNewWorkspace.name%",
"when": "config.github.copilot.chat.newWorkspaceCreation.enabled",
"modelDescription": "Get steps to help the user create any project in a VS Code workspace. Use this tool to help users set up new projects, including TypeScript-based projects, Model Context Protocol (MCP) servers, VS Code extensions, Next.js projects, Vite projects, or any other project.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The query to use to generate the new workspace. This should be a clear and concise description of the workspace the user wants to create."
}
},
"required": [
"query"
]
},
"tags": [
"vscode_editing",
"enable_other_tool_copilot_installExtension",
"enable_other_tool_copilot_getProjectSetupInfo"
]
},
{
"name": "copilot_getProjectSetupInfo",
"displayName": "%github.copilot.tools.getProjectSetupInfo.name%",
"when": "config.github.copilot.chat.newWorkspaceCreation.enabled",
"modelDescription": "Do not call this tool without first calling the tool to create a workspace. This tool provides a project setup information for a Visual Studio Code workspace based on a project type and programming language.",
"inputSchema": {
"type": "object",
"properties": {
"projectType": {
"type": "string",
"description": "The type of project to create. Supported values are: 'basic', '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": [
"projectType"
]
},
"tags": [
"vscode_editing"
]
},
{
"name": "copilot_installExtension",
"displayName": "Install Extension in VS Code",
"when": "config.github.copilot.chat.newWorkspaceCreation.enabled",
"modelDescription": "Install an extension in VS Code. Use this tool to install an extension in Visual Studio Code as part of a new workspace creation process only.",
"inputSchema": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The ID of the extension to install. This should be in the format <publisher>.<extension>."
},
"name": {
"type": "string",
"description": "The name of the extension to install. This should be a clear and concise description of the extension."
}
},
"required": [
"id",
"name"
]
},
"tags": [
"vscode_editing"
]
},
{
"name": "copilot_createNewJupyterNotebook",
"displayName": "Create New Jupyter Notebook",
"when": "",
"modelDescription": "Generates a new Jupyter Notebook (.ipynb) in VS Code. Jupyter Notebooks are interactive documents commonly used for data exploration, analysis, visualization, and combining code with narrative text. This tool should only be called when the user explicitly requests to create a new Jupyter Notebook.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The query to use to generate the jupyter notebook. This should be a clear and concise description of the notebook the user wants to create."
}
},
"required": [
"query"
]
},
"tags": [
"vscode_editing"
]
},
{
"name": "copilot_runVsCodeTask",
"displayName": "runVsCodeTask",
"modelDescription": "Runs a VS Code task.\n\n- If you see that an appropriate task exists for building or running code, prefer to use this tool to run the task instead of using the run_in_terminal tool.\n- Make sure that any appropriate build or watch task is running before trying to run tests or execute code.\n- If the user asks to run a task, use this tool to do so.",
"inputSchema": {
"type": "object",
"properties": {
"workspaceFolder": {
"type": "string",
"description": "The workspace folder path containing the task"
},
"id": {
"type": "string",
"description": "The task ID to run."
}
},
"required": [
"workspaceFolder",
"id"
]
}
},
{
"name": "copilot_insertEdit",
"displayName": "Edit File",
"modelDescription": "Insert new code into an existing file in the workspace. Use this tool once per file that needs to be modified, even if there are multiple changes for a file. Generate the \"explanation\" property first.\nThe system is very smart and can understand how to apply your edits to the files, you just need to provide minimal hints.\nAvoid repeating existing code, instead use comments to represent regions of unchanged code. Be as concise as possible. For example:\n// ...existing code...\n{ changed code }\n// ...existing code...\n{ changed code }\n// ...existing code...\n\nHere is an example of how you should use format an edit to an existing Person class:\nclass Person {\n\t// ...existing code...\n\tage: number;\n\t// ...existing code...\n\tgetAge() {\n\treturn this.age;\n\t}\n}",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"explanation": {
"type": "string",
"description": "A short explanation of the edit being made."
},
"filePath": {
"type": "string",
"description": "An absolute path to the file to edit."
},
"code": {
"type": "string",
"description": "The code change to apply to the file.\nThe system is very smart and can understand how to apply your edits to the files, you just need to provide minimal hints.\nAvoid repeating existing code, instead use comments to represent regions of unchanged code. Be as concise as possible. For example:\n// ...existing code...\n{ changed code }\n// ...existing code...\n{ changed code }\n// ...existing code...\n\nHere is an example of how you should use format an edit to an existing Person class:\nclass Person {\n\t// ...existing code...\n\tage: number;\n\t// ...existing code...\n\tgetAge() {\n\t\treturn this.age;\n\t}\n}"
}
},
"required": [
"explanation",
"filePath",
"code"
]
}
},
{
"name": "copilot_createFile",
"displayName": "Create File",
"modelDescription": "This is a tool for creating a new file in the workspace. The file will be created with the specified content.",
"tags": [
"vscode_editing"
],
"when": "config.github.copilot.chat.advanced.swebench.useEditToolset",
"inputSchema": {
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "The absolute path to the file to create."
},
"content": {
"type": "string",
"description": "The content to write to the file."
}
},
"required": [
"filePath",
"content"
]
}
},
{
"name": "copilot_replaceString",
"displayName": "Replace String in File",
"modelDescription": "This is a tool for making small edits in an existing file in the workspace. For moving or renaming files, use run in terminal tool with the 'mv' command instead. For larger edits, split them into smaller edits and call the edit tool multiple times to ensure accuracy. Before editing, always use the read file tool to understand the file's contents and context. To edit a file, provide: 1) filePath (absolute path), 2) oldString (must exactly match, including whitespace and indentation, uniquely identifying a single occurrence), and 3) newString (replacement text). Each use of this tool replaces exactly ONE occurrence of oldString. Ensure oldString uniquely identifies the change by including at least 3-5 lines of context both before and after the target text, preserving whitespace and indentation exactly. Never use ...existing code... comments in the oldString or newString. The result of the replace operation must be syntactically valid!",
"tags": [
"vscode_claude_editing"
],
"when": "config.github.copilot.chat.advanced.swebench.useEditToolset",
"inputSchema": {
"type": "object",
"properties": {
"filePath": {
"type": "string",
"description": "An absolute path to the file to edit, or the URI of a untitled, not yet named, file, such as `untitled:Untitled-1."
},
"oldString": {
"type": "string",
"description": "The string to be replaced in the file. If specified, newString must also be provided. Never use ...existing code... comments in the oldString."
},
"newString": {
"type": "string",
"description": "The replacement string. If specified, oldString must also be provided."
}
},
"required": [
"filePath",
"oldString",
"newString"
]
}
},
{
"name": "copilot_fetchWebPage",
"displayName": "Fetch Web Page",
"toolReferenceName": "fetch",
"canBeReferencedInPrompt": true,
"icon": "$(globe)",
"userDescription": "Fetch the main content from a web page. You should include the URL of the page you want to fetch.",
"modelDescription": "Fetches the main content from a web page. This tool is useful for summarizing or analyzing the content of a webpage. You should use this tool when you think the user is looking for information from a specific webpage.",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of URLs to fetch content from."
},
"query": {
"type": "string",
"description": "The query to search for in the web page's content. This should be a clear and concise description of the content you want to find."
}
},
"required": [
"urls",
"query"
]
}
},
{
"name": "copilot_findTestFiles",
"displayName": "Find Test Files",
"icon": "$(beaker)",
"canBeReferencedInPrompt": true,
"toolReferenceName": "findTestFiles",
"userDescription": "For a source code file, find the file that contains the tests. For a test file find the file that contains the code under test.",
"modelDescription": "For a source code file, find the file that contains the tests. For a test file find the file that contains the code under test.",
"tags": [
"vscode_editing"
],
"inputSchema": {
"type": "object",
"properties": {
"filePaths": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"filePaths"
]
}
},
{
"name": "copilot_getSearchResults",
"toolReferenceName": "searchResults",
"displayName": "%github.copilot.tools.searchResults.name%",
"icon": "$(search)",
"modelDescription": "%github.copilot.tools.searchResults.description%",
"canBeReferencedInPrompt": true
}
],
"chatParticipants": [
{
"id": "github.copilot.default",
"name": "GitHubCopilot",
"fullName": "GitHub Copilot",
"description": "%copilot.description%",
"isDefault": true,
"locations": [
"panel"
],
"disambiguation": [
{
"category": "generate_code_sample",
"description": "The user wants to generate code snippets without referencing the contents of the current workspace. This category does not include generating entire projects.",
"examples": [
"Write an example of computing a SHA256 hash."
]
},
{
"category": "add_feature_to_file",
"description": "The user wants to change code in a file that is provided in their request, without referencing the contents of the current workspace. This category does not include generating entire projects.",
"examples": [
"Add a refresh button to the table widget."
]
},
{
"category": "question_about_specific_files",
"description": "The user has a question about a specific file or code snippet that they have provided as part of their query, and the question does not require additional workspace context to answer.",
"examples": [
"What does this file do?"
]
}
]
},
{
"id": "github.copilot.editingSession",
"name": "GitHubCopilot",
"fullName": "GitHub Copilot",
"description": "%copilot.edits.description%",
"isDefault": true,
"locations": [
"editing-session"
],
"when": "!config.chat.edits2.enabled"
},
{
"id": "github.copilot.editingSessionEditor",
"name": "GitHubCopilot",
"fullName": "GitHub Copilot",
"description": "%copilot.edits.description%",
"isDefault": true,
"when": "config.github.copilot.chat.advanced.inlineChat2",
"locations": [
"editor",
"notebook"
],
"commands": [
{
"name": "fix",
"description": "%copilot.workspace.fix.description%",
"when": "config.github.copilot.chat.advanced.inlineChat2",
"disambiguation": [
{
"category": "fix",
"description": "Propose a fix for the problems in the selected code",
"examples": [
"There is a problem in this code. Rewrite the code to show it with the bug fixed."
]
}
]
},
{
"name": "tests",
"description": "%copilot.workspace.tests.description%",
"when": "config.github.copilot.chat.advanced.inlineChat2",
"disambiguation": [
{
"category": "tests",
"description": "Help writing tests for the selected code",
"examples": [
"Help me write tests for the selected code."
]
}
]
}
]
},
{
"id": "github.copilot.editingSession2",
"name": "GitHubCopilot",
"fullName": "GitHub Copilot",
"description": "%copilot.edits.description%",
"isDefault": true,
"locations": [
"editing-session"
],
"when": "config.chat.edits2.enabled"
},
{
"id": "github.copilot.editsAgent",
"name": "agent",
"fullName": "GitHub Copilot",
"description": "%copilot.agent.description%",
"locations": [
"editing-session"
],
"isDefault": true,
"isAgent": true,
"when": "config.chat.agent.enabled && !chatAgentModeDisallowed",
"commands": [
{
"name": "list",
"when": "github.copilot.chat.debug"
}
]
},
{
"id": "github.copilot.editor",
"name": "Copilot",
"fullName": "GitHub Copilot",
"description": "%copilot.description%",
"isDefault": true,
"locations": [
"editor"
],
"when": "!config.github.copilot.chat.advanced.inlineChat2",
"disambiguation": [
{
"category": "unknown",
"description": "Intent of this command is unclear or is not related to information technologies",
"examples": [
"Add a dog to this comment."
]
}
],
"commands": [
{
"name": "generate",
"description": "%copilot.workspace.generate.description%",
"disambiguation": [
{
"category": "generate",
"description": "Generate new code",
"examples": [
"Add a function that returns the sum of two numbers"
]
}
]
},
{
"name": "edit",
"description": "%copilot.workspace.edit.inline.description%",
"disambiguation": [
{
"category": "edit",
"description": "Make changes to existing code",
"examples": [
"Change this method to use async/await"
]
}
]
},
{
"name": "doc",
"description": "%copilot.workspace.doc.description%",
"disambiguation": [
{
"category": "doc",
"description": "Add documentation comment for this symbol",
"examples": [
"Add jsdoc to this method"
]
}
]
},
{
"name": "fix",
"description": "%copilot.workspace.fix.description%",
"disambiguation": [
{
"category": "fix",
"description": "Propose a fix for the problems in the selected code",
"examples": [
"There is a problem in this code. Rewrite the code to show it with the bug fixed."
]
}
]
},
{
"name": "explain",
"description": "%copilot.workspace.explain.description%",
"disambiguation": [
{
"category": "explain",
"description": "Explain how the code in your active editor works",
"examples": [
"Write an explanation for the code above as paragraphs of text."
]
}
]
},
{
"name": "review",
"description": "%copilot.workspace.review.description%",
"when": "github.copilot.advanced.review.intent"
},
{
"name": "tests",
"description": "%copilot.workspace.tests.description%",
"disambiguation": [
{
"category": "tests",
"description": "Generate unit tests for the selected code. The user does not want to fix their existing tests.",
"examples": [
"Write a set of detailed unit test functions for the code above."
]
}
]
}
]
},
{
"id": "github.copilot.notebook",
"name": "GitHubCopilot",
"fullName": "GitHub Copilot",
"description": "%copilot.description%",
"isDefault": true,
"locations": [
"notebook"
],
"when": "!config.github.copilot.chat.advanced.inlineChat2",
"commands": [
{
"name": "fix",
"description": "%copilot.workspace.fix.description%"
},
{
"name": "explain",
"description": "%copilot.workspace.explain.description%"
}
]
},
{
"id": "github.copilot.workspace",
"name": "workspace",
"fullName": "Workspace",
"description": "%copilot.workspace.description%",
"sampleRequest": "%copilot.workspace.sampleRequest%",
"locations": [
"panel"
],
"disambiguation": [
{
"category": "workspace_project_questions",
"description": "The user wants to learn about or update the code or files in their current workspace. Questions in this category may be about understanding what the whole workspace does or locating the implementation of some code. This does not include generating or updating tests.",
"examples": [
"What does this project do?"
]
},
{
"category": "find_code_in_workspace",
"description": "The user wants to locate the implementation of some functionality in their current workspace.",
"examples": [
"Where is the tree widget implemented?"
]
},
{
"category": "generate_with_workspace_context",
"description": "The user wants to generate code based on multiple files in the workspace and did not specify which files to reference.",
"examples": [
"Create a README for this project."
]
}
],
"commands": [
{
"name": "explain",
"description": "%copilot.workspace.explain.description%"
},
{
"name": "review",
"description": "%copilot.workspace.review.description%",
"when": "github.copilot.advanced.review.intent"
},
{
"name": "tests",
"description": "%copilot.workspace.tests.description%",
"disambiguation": [
{
"category": "create_tests",
"description": "The user wants to generate unit tests.",
"examples": [
"Generate tests for my selection using pytest."
]
}
]
},
{
"name": "fix",
"description": "%copilot.workspace.fix.description%",
"sampleRequest": "%copilot.workspace.fix.sampleRequest%"
},
{
"name": "new",
"description": "%copilot.workspace.new.description%",
"sampleRequest": "%copilot.workspace.new.sampleRequest%",
"isSticky": true,
"disambiguation": [
{
"category": "create_new_workspace_or_extension",
"description": "The user wants to create a complete Visual Studio Code workspace from scratch, such as a new application or a Visual Studio Code extension. Use this category only if the question relates to generating or creating new workspaces in Visual Studio Code. Do not use this category for updating existing code or generating sample code snippets",
"examples": [
"Scaffold a Node server.",
"Create a sample project which uses the fileSystemProvider API.",
"react application"
]
}
]
},
{
"name": "newNotebook",
"description": "%copilot.workspace.newNotebook.description%",
"sampleRequest": "%copilot.workspace.newNotebook.sampleRequest%",
"disambiguation": [
{
"category": "create_jupyter_notebook",
"description": "The user wants to create a new Jupyter notebook in Visual Studio Code.",
"examples": [
"Create a notebook to analyze this CSV file."
]
}
]
},
{
"name": "semanticSearch",
"description": "%copilot.workspace.semanticSearch.description%",
"sampleRequest": "%copilot.workspace.semanticSearch.sampleRequest%",
"when": "config.github.copilot.semanticSearch.enabled"
},
{
"name": "setupTests",
"description": "%copilot.vscode.setupTests.description%",
"sampleRequest": "%copilot.vscode.setupTests.sampleRequest%",
"when": "config.github.copilot.chat.setupTests.enabled",
"disambiguation": [
{
"category": "set_up_tests",
"description": "The user wants to configure project test setup, framework, or test runner. The user does not want to fix their existing tests.",
"examples": [
"Set up tests for this project."
]
}
]
}
]
},
{
"id": "github.copilot.vscode",
"name": "vscode",
"fullName": "VS Code",
"description": "%copilot.vscode.description%",
"sampleRequest": "%copilot.vscode.sampleRequest%",
"locations": [
"panel"
],
"disambiguation": [
{
"category": "vscode_configuration_questions",
"description": "The user wants to learn about, use, or configure the Visual Studio Code. Use this category if the users question is specifically about commands, settings, keybindings, extensions and other features available in Visual Studio Code. Do not use this category to answer questions about generating code or creating new projects including Visual Studio Code extensions.",
"examples": [
"Switch to light mode.",
"Keyboard shortcut to toggle terminal visibility.",
"Settings to enable minimap.",
"Whats new in the latest release?"
]
},
{
"category": "configure_python_environment",
"description": "The user wants to set up their Python environment.",
"examples": [
"Create a virtual environment for my project."
]
}
],
"commands": [
{
"name": "search",
"description": "%copilot.vscode.search.description%",
"sampleRequest": "%copilot.vscode.search.sampleRequest%"
},
{
"name": "startDebugging",
"description": "%copilot.vscode.startDebugging.description%",
"sampleRequest": "%copilot.vscode.startDebugging.sampleRequest%",
"when": "config.github.copilot.chat.startDebugging.enabled"
}
]
},
{
"id": "github.copilot.terminal",
"name": "terminal",
"fullName": "Terminal",
"description": "%copilot.terminal.description%",
"sampleRequest": "%copilot.terminal.sampleRequest%",
"isDefault": true,
"locations": [
"terminal"
],
"commands": [
{
"name": "explain",
"description": "%copilot.terminal.explain.description%",
"sampleRequest": "%copilot.terminal.explain.sampleRequest%"
}
]
},
{
"id": "github.copilot.terminalPanel",
"name": "terminal",
"fullName": "Terminal",
"description": "%copilot.terminalPanel.description%",
"sampleRequest": "%copilot.terminal.sampleRequest%",
"locations": [
"panel"
],
"commands": [
{
"name": "explain",
"description": "%copilot.terminal.explain.description%",
"sampleRequest": "%copilot.terminal.explain.sampleRequest%",
"disambiguation": [
{
"category": "terminal_state_questions",
"description": "The user wants to learn about specific state such as the selection, command, or failed command in the integrated terminal in Visual Studio Code.",
"examples": [
"Why did the latest terminal command fail?"
]
}
]
}
]
}
],
"languageModels": [
{
"vendor": "copilot"
},
{
"vendor": "copilot-byok"
}
],
"interactiveSession": [
{
"label": "GitHub Copilot",
"id": "copilot",
"icon": "",
"when": "!github.copilot.interactiveSession.disabled"
}
],
"viewsWelcome": [
{
"view": "debug",
"when": "github.copilot-chat.activated",
"contents": "%github.copilot.viewsWelcome.debug%"
}
],
"chatViewsWelcome": [
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.signIn%",
"when": "config.github.copilot.advanced.authProvider != 'github-enterprise' && !github.copilot-chat.activated && !github.copilot.offline && !github.copilot.interactiveSession.individual.disabled && !github.copilot.interactiveSession.individual.expired && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport && !github.copilot.interactiveSession.chatDisabled && !github.copilot.interactiveSession.switchToReleaseChannel"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.signInGHE%",
"when": "config.github.copilot.advanced.authProvider == 'github-enterprise' && !github.copilot-chat.activated && !github.copilot.offline && !github.copilot.interactiveSession.individual.disabled && !github.copilot.interactiveSession.individual.expired && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport && !github.copilot.interactiveSession.chatDisabled && !github.copilot.interactiveSession.switchToReleaseChannel"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.individual%",
"when": "github.copilot.interactiveSession.individual.disabled"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.individual.expired%",
"when": "github.copilot.interactiveSession.individual.expired"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.enterprise%",
"when": "github.copilot.interactiveSession.enterprise.disabled"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.offline%",
"when": "github.copilot.offline"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.contactSupport%",
"when": "github.copilot.interactiveSession.contactSupport"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.chatDisabled%",
"when": "github.copilot.interactiveSession.chatDisabled"
},
{
"icon": "$(copilot-large)",
"title": "Ask Copilot",
"content": "%github.copilot.viewsWelcome.switchToReleaseChannel%",
"when": "github.copilot.interactiveSession.switchToReleaseChannel"
}
],
"commands": [
{
"command": "github.copilotChat.signIn",
"title": "Sign in to GitHub.com",
"enablement": "false"
},
{
"command": "github.copilotChat.signInGHE",
"title": "Sign in to GHE.com",
"enablement": "false"
},
{
"command": "github.copilotChat.signInChoose",
"title": "Sign in to...",
"enablement": "false"
},
{
"command": "github.copilot.chat.explain",
"title": "%github.copilot.command.explainThis%",
"enablement": "!github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.explain.palette",
"title": "%github.copilot.command.explainThis%",
"enablement": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review",
"title": "%github.copilot.command.reviewAndComment%",
"enablement": "github.copilot.chat.reviewSelection.enabled && !github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.apply",
"title": "%github.copilot.command.applyReviewSuggestion%",
"icon": "$(sparkle)",
"enablement": "commentThread =~ /hasSuggestion/",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.applyAndNext",
"title": "%github.copilot.command.applyReviewSuggestionAndNext%",
"icon": "$(sparkle)",
"enablement": "commentThread =~ /hasSuggestion/",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.discard",
"title": "%github.copilot.command.discardReviewSuggestion%",
"icon": "$(close)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.discardAndNext",
"title": "%github.copilot.command.discardReviewSuggestionAndNext%",
"icon": "$(close)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.discardAll",
"title": "%github.copilot.command.discardAllReviewSuggestion%",
"icon": "$(close-all)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.stagedChanges",
"title": "%github.copilot.command.reviewStagedChanges%",
"icon": "$(code-review)",
"enablement": "github.copilot.chat.reviewDiff.enabled && !github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.unstagedChanges",
"title": "%github.copilot.command.reviewUnstagedChanges%",
"icon": "$(code-review)",
"enablement": "github.copilot.chat.reviewDiff.enabled && !github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.changes",
"title": "%github.copilot.command.reviewChanges%",
"icon": "$(code-review)",
"enablement": "github.copilot.chat.reviewDiff.enabled && !github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.changes.cancel",
"title": "%github.copilot.command.reviewChanges.cancel%",
"icon": "$(stop-circle)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.previous",
"title": "%github.copilot.command.gotoPreviousReviewSuggestion%",
"icon": "$(arrow-up)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.next",
"title": "%github.copilot.command.gotoNextReviewSuggestion%",
"icon": "$(arrow-down)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.continueInInlineChat",
"title": "%github.copilot.command.continueReviewInInlineChat%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.continueInChat",
"title": "%github.copilot.command.continueReviewInChat%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.review.markHelpful",
"title": "%github.copilot.command.helpfulReviewSuggestion%",
"icon": "$(thumbsup)",
"enablement": "!(commentThread =~ /markedAsHelpful/)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.openUserPreferences",
"title": "%github.copilot.command.openUserPreferences%",
"category": "GitHub Copilot",
"enablement": "config.github.copilot.chat.enableUserPreferences"
},
{
"command": "github.copilot.chat.review.markUnhelpful",
"title": "%github.copilot.command.unhelpfulReviewSuggestion%",
"icon": "$(thumbsdown)",
"enablement": "!(commentThread =~ /markedAsUnhelpful/)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.generate",
"title": "%github.copilot.command.generateThis%",
"icon": "$(sparkle)",
"enablement": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.generateDocs",
"title": "%github.copilot.command.generateDocs%",
"enablement": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.generateTests",
"title": "%github.copilot.command.generateTests%",
"enablement": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.fix",
"title": "%github.copilot.command.fixThis%",
"enablement": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.interactiveSession.feedback",
"title": "%github.copilot.command.sendChatFeedback%",
"enablement": "github.copilot-chat.activated && !github.copilot.interactiveSession.disabled",
"icon": "$(feedback)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.debug.workbenchState",
"title": "%github.copilot.command.logWorkbenchState%",
"category": "Developer"
},
{
"command": "github.copilot.terminal.explainTerminalSelection",
"title": "%github.copilot.command.explainTerminalSelection%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.terminal.explainTerminalSelectionContextMenu",
"title": "%github.copilot.command.explainTerminalSelectionContextMenu%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.terminal.explainTerminalLastCommand",
"title": "%github.copilot.command.explainTerminalLastCommand%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.terminal.attachTerminalSelection",
"title": "%github.copilot.command.attachTerminalSelection%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.git.generateCommitMessage",
"title": "%github.copilot.git.generateCommitMessage%",
"icon": "$(sparkle)",
"enablement": "!github.copilot.interactiveSession.disabled",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.devcontainer.generateDevContainerConfig",
"title": "%github.copilot.devcontainer.generateDevContainerConfig%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.tests.fixTestFailure",
"icon": "$(sparkle)",
"title": "%github.copilot.command.fixTestFailure%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.tests.fixTestFailure.fromInline",
"icon": "$(sparkle)",
"title": "%github.copilot.command.fixTestFailure%"
},
{
"command": "github.copilot.chat.attachFile",
"title": "%github.copilot.chat.attachFile%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot",
"enablement": "resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata'"
},
{
"command": "github.copilot.chat.attachFolder",
"title": "%github.copilot.chat.attachFolder%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.attachSelection",
"title": "%github.copilot.chat.attachSelection%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.edits.attachSelection",
"title": "%github.copilot.edits.attachSelection%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot",
"enablement": "(resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata') && !config.chat.unifiedChatView"
},
{
"command": "github.copilot.edits.attachFile",
"title": "%github.copilot.edits.attachFile%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot",
"enablement": "(resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata') && !config.chat.unifiedChatView"
},
{
"command": "github.copilot.edits.attachFolder",
"title": "%github.copilot.edits.attachFolder%",
"icon": "$(comment-discussion)",
"category": "GitHub Copilot",
"enablement": "(resourceScheme == 'file' || resourceScheme =='vscode-remote') && !config.chat.unifiedChatView"
},
{
"command": "github.copilot.debug.collectDiagnostics",
"title": "%github.copilot.command.collectDiagnostics%",
"category": "Developer"
},
{
"command": "github.copilot.debug.generateSTest",
"title": "%github.copilot.command.generateSTest%",
"enablement": "github.copilot.debugReportFeedback",
"category": "GitHub Copilot Developer"
},
{
"command": "github.copilot.debug.generateConfiguration",
"title": "%github.copilot.command.generateConfiguration%",
"category": "GitHub Copilot",
"enablement": "config.github.copilot.chat.startDebugging.enabled",
"tags": [
"experimental"
]
},
{
"command": "github.copilot.open.walkthrough",
"title": "%github.copilot.command.openWalkthrough%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.debug.generateInlineEditTests",
"title": "Generate Inline Edit Tests",
"category": "GitHub Copilot",
"enablement": "resourceScheme == 'ccreq'"
},
{
"command": "github.copilot.buildLocalWorkspaceIndex",
"title": "%github.copilot.command.buildLocalWorkspaceIndex%",
"category": "GitHub Copilot",
"enablement": "github.copilot-chat.activated"
},
{
"command": "github.copilot.buildRemoteWorkspaceIndex",
"title": "%github.copilot.command.buildRemoteWorkspaceIndex%",
"category": "GitHub Copilot",
"enablement": "github.copilot-chat.activated"
},
{
"command": "github.copilot.report",
"title": "Report Issue",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.rerunWithCopilotDebug",
"title": "%github.copilot.command.rerunWithCopilotDebug%",
"category": "GitHub Copilot"
},
{
"command": "github.copilot.chat.startCopilotDebugCommand",
"title": "Start Copilot Debug"
},
{
"command": "github.copilot.chat.clearTemporalContext",
"title": "Clear Temporal Context",
"category": "GitHub Copilot (Developer)"
},
{
"command": "github.copilot.search.markHelpful",
"title": "Helpful",
"icon": "$(thumbsup)",
"enablement": "!github.copilot.search.feedback.sent"
},
{
"command": "github.copilot.search.markUnhelpful",
"title": "Unhelpful",
"icon": "$(thumbsdown)",
"enablement": "!github.copilot.search.feedback.sent"
},
{
"command": "github.copilot.search.feedback",
"title": "Feedback",
"icon": "$(feedback)",
"enablement": "!github.copilot.search.feedback.sent"
},
{
"command": "github.copilot.chat.manageModels",
"title": "Manage Models...",
"icon": "$(settings-gear)",
"category": "GitHub Copilot",
"enablement": "github.copilot.byokEnabled"
},
{
"command": "github.copilot.chat.debug.showElements",
"title": "Show Rendered Elements"
},
{
"command": "github.copilot.chat.debug.hideElements",
"title": "Hide Rendered Elements"
},
{
"command": "github.copilot.chat.debug.showTools",
"title": "Show Tools"
},
{
"command": "github.copilot.chat.debug.hideTools",
"title": "Hide Tools"
},
{
"command": "github.copilot.debug.collectWorkspaceIndexDiagnostics",
"title": "%github.copilot.command.collectWorkspaceIndexDiagnostics%",
"category": "Developer"
},
{
"command": "github.copilot.chat.mcp.setup.check",
"title": "MCP Check: is supported"
},
{
"command": "github.copilot.chat.mcp.setup.validatePackage",
"title": "MCP Check: validate package"
},
{
"command": "github.copilot.chat.mcp.setup.flow",
"title": "MCP Check: do prompts"
}
],
"configuration": [
{
"title": "GitHub Copilot Chat",
"id": "stable",
"properties": {
"github.copilot.chat.codeGeneration.useInstructionFiles": {
"type": "boolean",
"default": true,
"markdownDescription": "%github.copilot.config.codeGeneration.useInstructionFiles%"
},
"github.copilot.editor.enableCodeActions": {
"type": "boolean",
"default": true,
"description": "%github.copilot.config.enableCodeActions%"
},
"github.copilot.renameSuggestions.triggerAutomatically": {
"type": "boolean",
"default": true,
"description": "%github.copilot.config.renameSuggestions.triggerAutomatically%"
},
"github.copilot.chat.localeOverride": {
"type": "string",
"enum": [
"auto",
"en",
"fr",
"it",
"de",
"es",
"ru",
"zh-CN",
"zh-TW",
"ja",
"ko",
"cs",
"pt-br",
"tr",
"pl"
],
"enumDescriptions": [
"Use VS Code's configured display language",
"English",
"français",
"italiano",
"Deutsch",
"español",
"русский",
"中文(简体)",
"中文(繁體)",
"日本語",
"한국어",
"čeština",
"português",
"Türkçe",
"polski"
],
"default": "auto",
"markdownDescription": "%github.copilot.config.localeOverride%"
},
"github.copilot.chat.terminalChatLocation": {
"type": "string",
"default": "chatView",
"markdownDescription": "%github.copilot.config.terminalChatLocation%",
"markdownEnumDescriptions": [
"%github.copilot.config.terminalChatLocation.chatView%",
"%github.copilot.config.terminalChatLocation.quickChat%",
"%github.copilot.config.terminalChatLocation.terminal%"
],
"enum": [
"chatView",
"quickChat",
"terminal"
]
},
"github.copilot.chat.scopeSelection": {
"type": "boolean",
"default": false,
"markdownDescription": "%github.copilot.config.scopeSelection%"
},
"github.copilot.chat.followUps": {
"type": "string",
"default": "firstOnly",
"enum": [
"always",
"firstOnly",
"never"
],
"markdownDescription": "%github.copilot.config.followUps%",
"markdownEnumDescriptions": [
"%github.copilot.config.followUps.always%",
"%github.copilot.config.followUps.firstOnly%",
"%github.copilot.config.followUps.never%"
]
},
"github.copilot.chat.useProjectTemplates": {
"type": "boolean",
"default": true,
"markdownDescription": "%github.copilot.config.useProjectTemplates%"
},
"github.copilot.chat.agent.runTasks": {
"type": "boolean",
"default": true,
"description": "%github.copilot.config.agent.runTasks%"
},
"github.copilot.nextEditSuggestions.enabled": {
"type": "boolean",
"default": false,
"tags": [
"nextEditSuggestions",
"onExp"
],
"description": "%github.copilot.nextEditSuggestions.enabled%",
"scope": "language-overridable"
}
}
},
{
"title": "Preview",
"id": "preview",
"properties": {
"github.copilot.chat.startDebugging.enabled": {
"type": "boolean",
"default": true,
"markdownDescription": "%github.copilot.config.startDebugging.enabled%",
"tags": [
"preview"
]
},
"github.copilot.chat.reviewSelection.enabled": {
"type": "boolean",
"default": true,
"description": "%github.copilot.config.reviewSelection.enabled%",
"tags": [
"preview"
]
},
"github.copilot.chat.reviewSelection.instructions": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"markdownDescription": "%github.copilot.config.reviewSelection.instruction.file%",
"properties": {
"file": {
"type": "string",
"examples": [
".copilot-review-instructions.md"
]
},
"language": {
"type": "string"
}
},
"examples": [
{
"file": ".copilot-review-instructions.md"
}
],
"required": [
"file"
]
},
{
"type": "object",
"markdownDescription": "%github.copilot.config.reviewSelection.instruction.text%",
"properties": {
"text": {
"type": "string",
"examples": [
"Use underscore for field names."
]
},
"language": {
"type": "string"
}
},
"required": [
"text"
],
"examples": [
{
"text": "Use underscore for field names."
},
{
"text": "Resolve all TODO tasks."
}
]
}
]
},
"default": [],
"markdownDescription": "%github.copilot.config.reviewSelection.instructions%",
"examples": [
[
{
"file": ".copilot-review-instructions.md"
},
{
"text": "Resolve all TODO tasks."
}
]
],
"tags": [
"preview"
]
},
"github.copilot.chat.copilotDebugCommand.enabled": {
"type": "boolean",
"default": true,
"tags": [
"preview"
],
"description": "%github.copilot.chat.copilotDebugCommand.enabled%"
},
"github.copilot.chat.codesearch.enabled": {
"type": "boolean",
"default": false,
"tags": [
"preview"
],
"markdownDescription": "%github.copilot.config.codesearch.enabled%"
},
"github.copilot.chat.edits.codesearch.enabled": {
"tags": [
"preview"
],
"markdownDeprecationMessage": "%github.copilot.config.edits.codesearch.enabled%"
}
}
},
{
"title": "Experimental",
"id": "experimental",
"properties": {
"github.copilot.chat.agent.thinkingTool": {
"type": "boolean",
"default": false,
"tags": [
"experimental"
],
"markdownDescription": "%github.copilot.config.agent.thinkingTool%"
},
"github.copilot.chat.edits.suggestRelatedFilesFromGitHistory": {
"type": "boolean",
"default": true,
"tags": [
"experimental"
],
"markdownDescription": "%github.copilot.config.edits.suggestRelatedFilesFromGitHistory%"
},
"github.copilot.chat.edits.suggestRelatedFilesForTests": {
"type": "boolean",
"default": true,
"tags": [
"experimental"
],
"markdownDescription": "%github.copilot.chat.edits.suggestRelatedFilesForTests%"
},
"github.copilot.chat.codeGeneration.instructions": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"markdownDescription": "%github.copilot.config.codeGeneration.instruction.file%",
"properties": {
"file": {
"type": "string",
"examples": [
".copilot-codeGeneration-instructions.md"
]
},
"language": {
"type": "string"
}
},
"examples": [
{
"file": ".copilot-codeGeneration-instructions.md"
}
],
"required": [
"file"
]
},
{
"type": "object",
"markdownDescription": "%github.copilot.config.codeGeneration.instruction.text%",
"properties": {
"text": {
"type": "string",
"examples": [
"Use underscore for field names."
]
},
"language": {
"type": "string"
}
},
"required": [
"text"
],
"examples": [
{
"text": "Use underscore for field names."
},
{
"text": "Always add a comment: 'Generated by Copilot'."
}
]
}
]
},
"default": [],
"markdownDescription": "%github.copilot.config.codeGeneration.instructions%",
"examples": [
[
{
"file": ".copilot-codeGeneration-instructions.md"
},
{
"text": "Always add a comment: 'Generated by Copilot'."
}
]
],
"tags": [
"experimental"
]
},
"github.copilot.chat.testGeneration.instructions": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"markdownDescription": "%github.copilot.config.experimental.testGeneration.instruction.file%",
"properties": {
"file": {
"type": "string",
"examples": [
".copilot-test-instructions.md"
]
},
"language": {
"type": "string"
}
},
"examples": [
{
"file": ".copilot-test-instructions.md"
}
],
"required": [
"file"
]
},
{
"type": "object",
"markdownDescription": "%github.copilot.config.experimental.testGeneration.instruction.text%",
"properties": {
"text": {
"type": "string",
"examples": [
"Use suite and test instead of describe and it."
]
},
"language": {
"type": "string"
}
},
"required": [
"text"
],
"examples": [
{
"text": "Always try uniting related tests in a suite."
}
]
}
]
},
"default": [],
"markdownDescription": "%github.copilot.config.testGeneration.instructions%",
"examples": [
[
{
"file": ".copilot-test-instructions.md"
},
{
"text": "Always try uniting related tests in a suite."
}
]
],
"tags": [
"experimental"
]
},
"github.copilot.chat.commitMessageGeneration.instructions": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"markdownDescription": "%github.copilot.config.commitMessageGeneration.instruction.file%",
"properties": {
"file": {
"type": "string",
"examples": [
".copilot-commit-message-instructions.md"
]
}
},
"examples": [
{
"file": ".copilot-commit-message-instructions.md"
}
],
"required": [
"file"
]
},
{
"type": "object",
"markdownDescription": "%github.copilot.config.commitMessageGeneration.instruction.text%",
"properties": {
"text": {
"type": "string",
"examples": [
"Use conventional commit message format."
]
}
},
"required": [
"text"
],
"examples": [
{
"text": "Use conventional commit message format."
}
]
}
]
},
"default": [],
"markdownDescription": "%github.copilot.config.commitMessageGeneration.instructions%",
"examples": [
[
{
"file": ".copilot-commit-message-instructions.md"
},
{
"text": "Use conventional commit message format."
}
]
],
"tags": [
"experimental"
]
},
"github.copilot.chat.pullRequestDescriptionGeneration.instructions": {
"type": "array",
"items": {
"oneOf": [
{
"type": "object",
"markdownDescription": "%github.copilot.config.pullRequestDescriptionGeneration.instruction.file%",
"properties": {
"file": {
"type": "string",
"examples": [
".copilot-pull-request-description-instructions.md"
]
}
},
"examples": [
{
"file": ".copilot-pull-request-description-instructions.md"
}
],
"required": [
"file"
]
},
{
"type": "object",
"markdownDescription": "%github.copilot.config.pullRequestDescriptionGeneration.instruction.text%",
"properties": {
"text": {
"type": "string",
"examples": [
"Include every commit message in the pull request description."
]
}
},
"required": [
"text"
],
"examples": [
{
"text": "Include every commit message in the pull request description."
}
]
}
]
},
"default": [],
"markdownDescription": "%github.copilot.config.pullRequestDescriptionGeneration.instructions%",
"examples": [
[
{
"file": ".copilot-pull-request-description-instructions.md"
},
{
"text": "Use conventional commit message format."
}
]
],
"tags": [
"experimental"
]
},
"github.copilot.chat.generateTests.codeLens": {
"type": "boolean",
"default": false,
"description": "%github.copilot.config.generateTests.codeLens%",
"tags": [
"experimental"
]
},
"github.copilot.chat.edits.temporalContext.enabled": {
"type": "boolean",
"default": false,
"description": "%github.copilot.chat.edits.temporalContext.enabled%",
"tags": [
"experimental",
"onExp"
]
},
"github.copilot.chat.editor.temporalContext.enabled": {
"type": "boolean",
"default": false,
"description": "%github.copilot.chat.editor.temporalContext.enabled%",
"tags": [
"experimental",
"onExp"
]
},
"github.copilot.chat.setupTests.enabled": {
"type": "boolean",
"default": true,
"markdownDescription": "%github.copilot.config.setupTests.enabled%",
"tags": [
"experimental"
]
},
"github.copilot.chat.search.semanticTextResults": {
"type": "boolean",
"description": "%github.copilot.config.search.semanticTextResults%",
"default": true,
"tags": [
"experimental"
]
},
"github.copilot.chat.completionContext.typescript.mode": {
"type": "string",
"scope": "resource",
"enum": [
"off",
"sidecar",
"on"
],
"tags": [
"experimental"
],
"markdownDescription": "%github.copilot.chat.completionContext.typescript.mode%"
},
"github.copilot.chat.languageContext.typescript.enabled": {
"type": "boolean",
"default": false,
"scope": "resource",
"tags": [
"experimental",
"onExP"
],
"markdownDescription": "%github.copilot.chat.languageContext.typescript.enabled%"
},
"github.copilot.chat.languageContext.fix.typescript.enabled": {
"type": "boolean",
"default": false,
"scope": "resource",
"tags": [
"experimental",
"onExP"
],
"markdownDescription": "%github.copilot.chat.languageContext.fix.typescript.enabled%"
},
"github.copilot.chat.languageContext.inline.typescript.enabled": {
"type": "boolean",
"default": false,
"scope": "resource",
"tags": [
"experimental",
"onExP"
],
"markdownDescription": "%github.copilot.chat.languageContext.inline.typescript.enabled%"
},
"github.copilot.chat.newWorkspaceCreation.enabled": {
"type": "boolean",
"default": true,
"tags": [
"experimental"
],
"description": "%github.copilot.config.newWorkspaceCreation.enabled%"
},
"github.copilot.chat.edits.newNotebook.enabled": {
"type": "boolean",
"default": true,
"tags": [
"experimental",
"onExp"
],
"description": "%github.copilot.config.editsNewNotebook.enabled%"
}
}
}
],
"submenus": [
{
"id": "copilot",
"label": "%github.copilot.submenu.copilot.label%"
},
{
"id": "explorer/copilot",
"label": "%github.copilot.submenu.copilot.label%"
},
{
"id": "terminal/copilot",
"label": "%github.copilot.submenu.copilot.label%"
},
{
"id": "copilot/reviewComment/additionalActions/applyAndNext",
"label": "%github.copilot.submenu.reviewComment.applyAndNext.label%"
},
{
"id": "copilot/reviewComment/additionalActions/discardAndNext",
"label": "%github.copilot.submenu.reviewComment.discardAndNext.label%"
},
{
"id": "copilot/reviewComment/additionalActions/discard",
"label": "%github.copilot.submenu.reviewComment.discard.label%"
},
{
"id": "github.copilot.chat.debug.filter",
"label": "Filter",
"icon": "$(filter)"
}
],
"menus": {
"chat/modelPicker": [
{
"command": "github.copilot.chat.manageModels",
"when": "github.copilot.byokEnabled"
}
],
"explorer/context": [
{
"submenu": "explorer/copilot",
"group": "5_copilot@0",
"when": "!github.copilot.interactiveSession.disabled"
}
],
"editor/context": [
{
"submenu": "copilot",
"when": "!github.copilot.interactiveSession.disabled",
"group": "1_copilot@0"
}
],
"editor/title": [
{
"command": "github.copilot.debug.generateInlineEditTests",
"when": "resourceScheme == 'ccreq'"
}
],
"explorer/copilot": [
{
"command": "github.copilot.chat.attachFile",
"when": "!explorerResourceIsFolder && (resourceScheme == 'file' || resourceScheme =='vscode-remote')",
"group": "chat@1"
},
{
"command": "github.copilot.edits.attachFile",
"when": "!explorerResourceIsFolder && !config.chat.unifiedChatView && (resourceScheme == 'file' || resourceScheme =='vscode-remote')",
"group": "chat@2"
},
{
"command": "github.copilot.chat.attachFolder",
"when": "explorerResourceIsFolder && (resourceScheme == 'file' || resourceScheme =='vscode-remote')",
"group": "chat@1"
},
{
"command": "github.copilot.edits.attachFolder",
"when": "explorerResourceIsFolder && !config.chat.unifiedChatView && (resourceScheme == 'file' || resourceScheme =='vscode-remote')",
"group": "chat@2"
}
],
"copilot": [
{
"command": "github.copilot.chat.attachFile",
"when": "resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata'",
"group": "zContext@2"
},
{
"command": "github.copilot.chat.attachSelection",
"when": "resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata'",
"group": "zContext@1"
},
{
"command": "github.copilot.edits.attachSelection",
"when": "(resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata') && !config.chat.unifiedChatView",
"group": "zEditContext@1"
},
{
"command": "github.copilot.edits.attachFile",
"when": "(resourceScheme == 'file' || resourceScheme =='vscode-remote' || resourceScheme == 'untitled' || resourceScheme == 'vscode-userdata') && !config.chat.unifiedChatView",
"group": "zEditContext@2"
},
{
"command": "inlineChat.start",
"when": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"group": "copilot@1"
},
{
"command": "github.copilot.chat.explain",
"when": "!github.copilot.interactiveSession.disabled",
"group": "copilotAction@1"
},
{
"command": "github.copilot.chat.fix",
"when": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"group": "copilotAction@2"
},
{
"command": "github.copilot.chat.review",
"when": "github.copilot.chat.reviewSelection.enabled && !github.copilot.interactiveSession.disabled && resourceScheme != 'vscode-chat-code-block'",
"group": "copilotAction@3"
},
{
"command": "github.copilot.chat.generateDocs",
"when": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"group": "copilotAction@4"
},
{
"command": "github.copilot.chat.generateTests",
"when": "!github.copilot.interactiveSession.disabled && !editorReadonly",
"group": "copilotAction@5"
}
],
"terminal/context": [
{
"submenu": "terminal/copilot",
"when": "!github.copilot.interactiveSession.disabled",
"group": "2_copilot@0"
}
],
"terminal/copilot": [
{
"command": "workbench.action.terminal.chat.start",
"group": "copilot@1"
},
{
"command": "github.copilot.terminal.explainTerminalSelectionContextMenu",
"group": "copilotAction@1"
},
{
"command": "github.copilot.terminal.attachTerminalSelection",
"group": "zEditContext@1"
}
],
"testing/item/result": [
{
"command": "github.copilot.tests.fixTestFailure.fromInline",
"when": "testResultState == failed && !testResultOutdated",
"group": "inline@2"
}
],
"testing/item/context": [
{
"command": "github.copilot.tests.fixTestFailure.fromInline",
"when": "testResultState == failed && !testResultOutdated",
"group": "inline@2"
}
],
"commandPalette": [
{
"command": "github.copilot.interactiveSession.feedback",
"when": "github.copilot-chat.activated && !github.copilot.interactiveSession.disabled"
},
{
"command": "github.copilot.debug.workbenchState",
"when": "true"
},
{
"command": "github.copilot.chat.rerunWithCopilotDebug",
"when": "false"
},
{
"command": "github.copilot.chat.startCopilotDebugCommand",
"when": "false"
},
{
"command": "github.copilot.terminal.explainTerminalSelectionContextMenu",
"when": "false"
},
{
"command": "github.copilot.git.generateCommitMessage",
"when": "false"
},
{
"command": "github.copilot.chat.explain",
"when": "false"
},
{
"command": "github.copilot.chat.attachFolder",
"when": "false"
},
{
"command": "github.copilot.edits.attachFolder",
"when": "false"
},
{
"command": "github.copilot.chat.review",
"when": "!github.copilot.interactiveSession.disabled"
},
{
"command": "github.copilot.chat.review.apply",
"when": "false"
},
{
"command": "github.copilot.chat.review.applyAndNext",
"when": "false"
},
{
"command": "github.copilot.chat.review.discard",
"when": "false"
},
{
"command": "github.copilot.chat.review.discardAndNext",
"when": "false"
},
{
"command": "github.copilot.chat.review.discardAll",
"when": "false"
},
{
"command": "github.copilot.chat.review.stagedChanges",
"when": "false"
},
{
"command": "github.copilot.chat.review.unstagedChanges",
"when": "false"
},
{
"command": "github.copilot.chat.review.changes",
"when": "false"
},
{
"command": "github.copilot.chat.review.changes.cancel",
"when": "false"
},
{
"command": "github.copilot.chat.review.previous",
"when": "false"
},
{
"command": "github.copilot.chat.review.next",
"when": "false"
},
{
"command": "github.copilot.chat.review.continueInInlineChat",
"when": "false"
},
{
"command": "github.copilot.chat.review.continueInChat",
"when": "false"
},
{
"command": "github.copilot.chat.review.markHelpful",
"when": "false"
},
{
"command": "github.copilot.chat.review.markUnhelpful",
"when": "false"
},
{
"command": "github.copilot.devcontainer.generateDevContainerConfig",
"when": "false"
},
{
"command": "github.copilot.tests.fixTestFailure",
"when": "false"
},
{
"command": "github.copilot.tests.fixTestFailure.fromInline",
"when": "false"
},
{
"command": "github.copilot.search.markHelpful",
"when": "false"
},
{
"command": "github.copilot.search.markUnhelpful",
"when": "false"
},
{
"command": "github.copilot.search.feedback",
"when": "false"
},
{
"command": "github.copilot.chat.debug.showElements",
"when": "false"
},
{
"command": "github.copilot.chat.debug.hideElements",
"when": "false"
},
{
"command": "github.copilot.chat.debug.showTools",
"when": "false"
},
{
"command": "github.copilot.chat.debug.hideTools",
"when": "false"
},
{
"command": "github.copilot.chat.mcp.setup.check",
"when": "false"
},
{
"command": "github.copilot.chat.mcp.setup.validatePackage",
"when": "false"
},
{
"command": "github.copilot.chat.mcp.setup.flow",
"when": "false"
}
],
"view/title": [
{
"submenu": "github.copilot.chat.debug.filter",
"when": "view == copilot-chat",
"group": "navigation"
}
],
"searchPanel/aiResults/commands": [
{
"command": "github.copilot.search.markHelpful",
"group": "inline@0",
"when": "aiResultsTitle && aiResultsRequested"
},
{
"command": "github.copilot.search.markUnhelpful",
"group": "inline@1",
"when": "aiResultsTitle && aiResultsRequested"
},
{
"command": "github.copilot.search.feedback",
"group": "inline@2",
"when": "aiResultsTitle && aiResultsRequested && github.copilot.debugReportFeedback"
}
],
"comments/comment/title": [
{
"command": "github.copilot.chat.review.markHelpful",
"group": "inline@0",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.markUnhelpful",
"group": "inline@1",
"when": "commentController == github-copilot-review"
}
],
"commentsView/commentThread/context": [
{
"command": "github.copilot.chat.review.apply",
"group": "context@1",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.discard",
"group": "context@2",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.discardAll",
"group": "context@3",
"when": "commentController == github-copilot-review"
}
],
"comments/commentThread/additionalActions": [
{
"submenu": "copilot/reviewComment/additionalActions/applyAndNext",
"group": "inline@1",
"when": "commentController == github-copilot-review && github.copilot.chat.review.numberOfComments > 1"
},
{
"command": "github.copilot.chat.review.apply",
"group": "inline@1",
"when": "commentController == github-copilot-review && github.copilot.chat.review.numberOfComments == 1"
},
{
"submenu": "copilot/reviewComment/additionalActions/discardAndNext",
"group": "inline@2",
"when": "commentController == github-copilot-review && github.copilot.chat.review.numberOfComments > 1"
},
{
"submenu": "copilot/reviewComment/additionalActions/discard",
"group": "inline@2",
"when": "commentController == github-copilot-review && github.copilot.chat.review.numberOfComments == 1"
}
],
"copilot/reviewComment/additionalActions/applyAndNext": [
{
"command": "github.copilot.chat.review.applyAndNext",
"group": "inline@1",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.apply",
"group": "inline@2",
"when": "commentController == github-copilot-review"
}
],
"copilot/reviewComment/additionalActions/discardAndNext": [
{
"command": "github.copilot.chat.review.discardAndNext",
"group": "inline@1",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.discard",
"group": "inline@2",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.continueInInlineChat",
"group": "inline@3",
"when": "commentController == github-copilot-review"
}
],
"copilot/reviewComment/additionalActions/discard": [
{
"command": "github.copilot.chat.review.discard",
"group": "inline@2",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.continueInInlineChat",
"group": "inline@3",
"when": "commentController == github-copilot-review"
}
],
"comments/commentThread/title": [
{
"command": "github.copilot.chat.review.previous",
"group": "inline@1",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.next",
"group": "inline@2",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.continueInChat",
"group": "inline@3",
"when": "commentController == github-copilot-review"
},
{
"command": "github.copilot.chat.review.discardAll",
"group": "inline@4",
"when": "commentController == github-copilot-review"
}
],
"scm/title": [
{
"command": "github.copilot.chat.review.changes",
"group": "navigation",
"when": "github.copilot.chat.reviewDiff.enabled && !github.copilot.chat.review.sourceControlProgress && scmProvider == git && scmProviderRootUri in github.copilot.chat.reviewDiff.enabledRootUris"
},
{
"command": "github.copilot.chat.review.changes.cancel",
"group": "navigation",
"when": "github.copilot.chat.reviewDiff.enabled && github.copilot.chat.review.sourceControlProgress && scmProvider == git && scmProviderRootUri in github.copilot.chat.reviewDiff.enabledRootUris"
}
],
"scm/inputBox": [
{
"command": "github.copilot.git.generateCommitMessage",
"when": "scmProvider == git"
}
],
"testing/message/context": [
{
"command": "github.copilot.tests.fixTestFailure",
"when": "testing.testItemHasUri",
"group": "inline@1"
}
],
"debug/createConfiguration": [
{
"command": "github.copilot.debug.generateConfiguration",
"group": "z_commands",
"when": "config.github.copilot.chat.startDebugging.enabled"
}
],
"issue/reporter": [
{
"command": "github.copilot.report"
}
],
"github.copilot.chat.debug.filter": [
{
"command": "github.copilot.chat.debug.showElements",
"when": "github.copilot.chat.debug.elementsHidden",
"group": "commands@0"
},
{
"command": "github.copilot.chat.debug.hideElements",
"when": "!github.copilot.chat.debug.elementsHidden",
"group": "commands@0"
},
{
"command": "github.copilot.chat.debug.showTools",
"when": "github.copilot.chat.debug.toolsHidden",
"group": "commands@1"
},
{
"command": "github.copilot.chat.debug.hideTools",
"when": "!github.copilot.chat.debug.toolsHidden",
"group": "commands@1"
}
]
},
"icons": {
"copilot-logo": {
"description": "%github.copilot.icon%",
"default": {
"fontPath": "assets/copilot.woff",
"fontCharacter": "\\0041"
}
},
"copilot-warning": {
"description": "%github.copilot.icon%",
"default": {
"fontPath": "assets/copilot.woff",
"fontCharacter": "\\0042"
}
},
"copilot-notconnected": {
"description": "%github.copilot.icon%",
"default": {
"fontPath": "assets/copilot.woff",
"fontCharacter": "\\0043"
}
}
},
"iconFonts": [
{
"id": "copilot-font",
"src": [
{
"path": "assets/copilot.woff",
"format": "woff"
}
]
}
],
"terminalQuickFixes": [
{
"id": "copilot-chat.fixWithCopilot",
"commandLineMatcher": ".+",
"commandExitResult": "error",
"outputMatcher": {
"anchor": "bottom",
"length": 1,
"lineMatcher": ".+",
"offset": 0
},
"kind": "explain"
},
{
"id": "copilot-chat.generateCommitMessage",
"commandLineMatcher": "git add .+",
"commandExitResult": "success",
"kind": "explain",
"outputMatcher": {
"anchor": "bottom",
"length": 1,
"lineMatcher": ".+",
"offset": 0
}
},
{
"id": "copilot-chat.terminalToDebugging",
"commandLineMatcher": ".+",
"kind": "explain",
"commandExitResult": "error",
"outputMatcher": {
"anchor": "bottom",
"length": 1,
"lineMatcher": "",
"offset": 0
}
},
{
"id": "copilot-chat.terminalToDebuggingSuccess",
"commandLineMatcher": ".+",
"kind": "explain",
"commandExitResult": "success",
"outputMatcher": {
"anchor": "bottom",
"length": 1,
"lineMatcher": "",
"offset": 0
}
}
],
"languages": [
{
"id": "ignore",
"filenamePatterns": [
".copilotignore"
],
"aliases": []
},
{
"id": "markdown",
"extensions": [
".copilotmd"
]
}
],
"views": {
"copilot-chat": [
{
"id": "copilot-chat",
"name": "Copilot Chat Debug",
"icon": "assets/debug-icon.svg",
"when": "github.copilot.chat.debug"
}
]
},
"viewsContainers": {
"activitybar": [
{
"id": "copilot-chat",
"title": "Copilot Chat Debug",
"icon": "assets/debug-icon.svg",
"when": "github.copilot.chat.debug"
}
]
},
"configurationDefaults": {
"workbench.editorAssociations": {
"*.copilotmd": "vscode.markdown.preview.editor"
}
},
"keybindings": [
{
"command": "github.copilot.chat.rerunWithCopilotDebug",
"key": "ctrl+alt+.",
"mac": "cmd+alt+.",
"when": "github.copilot-chat.activated && terminalShellIntegrationEnabled && terminalFocus && !terminalAltBufferActive"
}
],
"walkthroughs": [
{
"id": "copilotWelcome",
"title": "%github.copilot.walkthrough.title%",
"description": "%github.copilot.walkthrough.description%",
"when": "!isWeb",
"steps": [
{
"id": "copilot.setup.signIn",
"title": "%github.copilot.walkthrough.setup.signIn.title%",
"description": "%github.copilot.walkthrough.setup.signIn.description%",
"when": "chatSetupSignedOut && !view.workbench.panel.chat.view.copilot.visible && !github.copilot-chat.activated && !github.copilot.offline && !github.copilot.interactiveSession.individual.disabled && !github.copilot.interactiveSession.individual.expired && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.panelChat.media.altText%"
}
},
{
"id": "copilot.setup.signInNoAction",
"title": "%github.copilot.walkthrough.setup.signIn.title%",
"description": "%github.copilot.walkthrough.setup.noAction.description%",
"when": "chatSetupSignedOut && view.workbench.panel.chat.view.copilot.visible && !github.copilot-chat.activated && !github.copilot.offline && !github.copilot.interactiveSession.individual.disabled && !github.copilot.interactiveSession.individual.expired && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.panelChat.media.altText%"
}
},
{
"id": "copilot.setup.signUp",
"title": "%github.copilot.walkthrough.setup.signUp.title%",
"description": "%github.copilot.walkthrough.setup.signUp.description%",
"when": "chatPlanCanSignUp && !view.workbench.panel.chat.view.copilot.visible && !github.copilot-chat.activated && !github.copilot.offline && (github.copilot.interactiveSession.individual.disabled || github.copilot.interactiveSession.individual.expired) && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.panelChat.media.altText%"
}
},
{
"id": "copilot.setup.signUpNoAction",
"title": "%github.copilot.walkthrough.setup.signUp.title%",
"description": "%github.copilot.walkthrough.setup.noAction.description%",
"when": "chatPlanCanSignUp && view.workbench.panel.chat.view.copilot.visible && !github.copilot-chat.activated && !github.copilot.offline && (github.copilot.interactiveSession.individual.disabled || github.copilot.interactiveSession.individual.expired) && !github.copilot.interactiveSession.enterprise.disabled && !github.copilot.interactiveSession.contactSupport",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.panelChat.media.altText%"
}
},
{
"id": "copilot.panelChat",
"title": "%github.copilot.walkthrough.panelChat.title%",
"description": "%github.copilot.walkthrough.panelChat.description%",
"when": "!chatSetupSignedOut || chatIsEnabled ",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/workspace-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.panelChat.media.altText%"
}
},
{
"id": "copilot.edits",
"title": "%github.copilot.walkthrough.edits.title%",
"description": "%github.copilot.walkthrough.edits.description%",
"when": "!chatSetupSignedOut || chatIsEnabled ",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/edits.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/edits-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/edits-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/edits-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.edits.media.altText%"
}
},
{
"id": "copilot.firstSuggest",
"title": "%github.copilot.walkthrough.firstSuggest.title%",
"description": "%github.copilot.walkthrough.firstSuggest.description%",
"when": "!chatSetupSignedOut || chatIsEnabled ",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/ghost-text.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/ghost-text-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/ghost-text-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/ghost-text-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.firstSuggest.media.altText%"
}
},
{
"id": "copilot.inlineChatNotMac",
"title": "%github.copilot.walkthrough.inlineChatNotMac.title%",
"description": "%github.copilot.walkthrough.inlineChatNotMac.description%",
"when": "!isMac && (!chatSetupSignedOut || chatIsEnabled )",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.inlineChatNotMac.media.altText%"
}
},
{
"id": "copilot.inlineChatMac",
"title": "%github.copilot.walkthrough.inlineChatMac.title%",
"description": "%github.copilot.walkthrough.inlineChatMac.description%",
"when": "isMac && (!chatSetupSignedOut || chatIsEnabled )",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/inline-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.inlineChatMac.media.altText%"
}
},
{
"id": "copilot.sparkle",
"title": "%github.copilot.walkthrough.sparkle.title%",
"description": "%github.copilot.walkthrough.sparkle.description%",
"when": "!chatSetupSignedOut || chatIsEnabled",
"media": {
"video": {
"dark": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/git-commit.mp4",
"light": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/git-commit-light.mp4",
"hc": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/git-commit-hc.mp4",
"hcLight": "https://vscodewalkthroughs.z1.web.core.windows.net/v0.26/git-commit-hclight.mp4"
},
"altText": "%github.copilot.walkthrough.sparkle.media.altText%"
}
}
]
}
],
"jsonValidation": [
{
"fileMatch": "settings.json",
"url": "ccsettings://root/schema.json"
}
],
"typescriptServerPlugins": [
{
"name": "@vscode/copilot-typescript-server-plugin",
"enableForWorkspaceTypeScriptVersions": true
}
]
},
"extensionPack": [
"GitHub.copilot"
],
"overrides": {
"@aminya/node-gyp-build": "npm:node-gyp-build@4.8.1",
"string_decoder": "npm:string_decoder@1.2.0"
},
"isPreRelease": false,
"__metadata": {
"installedTimestamp": 1744888616408,
"targetPlatform": "undefined",
"size": 35326029
}
}