vscode/extensions/configuration-editing/package.json
Johannes Rieken 2e59a77991
Add support for tool sets (#249448)
* observale map/set

* adds tool sets, let mcp contribute tool set, update commands

* add `languageModelToolSets` contribution point that allows extensions to define set of tools

* only homogenous tool sets hide the tools they contain (that is set and all its tools are from the same source)

* make sure checking/unchecking buckets works

* make it more clear that the action is about tool configuration (not selecting/attaching)

* simplify `IToolSet#tools`

* support `*.toolset.json` files

* one bucket for all MCP servers

* use mcp icon

* use `.toolsets.json` suffix

* [tools config-pick] keep parents, peek sort order

* * add "Configure Tool Sets" actions
* make it `toolsets.jsonc` and register schema etc pp
* fix some tools picker issues

* add tool sets validation

* * tools completions
* Add ToolDataSource.Internal constant

* add missing return

* make tool set a class

* allow a tool set to contain other tool sets

* use dynamic schema for `toolsets.jsonc` language features

* fix tests
2025-05-21 06:54:14 -07:00

183 lines
4.9 KiB
JSON

{
"name": "configuration-editing",
"displayName": "%displayName%",
"description": "%description%",
"version": "1.0.0",
"publisher": "vscode",
"license": "MIT",
"engines": {
"vscode": "^1.0.0"
},
"icon": "images/icon.png",
"activationEvents": [
"onProfile",
"onProfile:github",
"onLanguage:json",
"onLanguage:jsonc"
],
"enabledApiProposals": [
"profileContentHandlers"
],
"main": "./out/configurationEditingMain",
"browser": "./dist/browser/configurationEditingMain",
"scripts": {
"compile": "gulp compile-extension:configuration-editing",
"watch": "gulp watch-extension:configuration-editing"
},
"dependencies": {
"@octokit/rest": "^21.1.1",
"jsonc-parser": "^3.2.0",
"tunnel": "^0.0.6"
},
"capabilities": {
"virtualWorkspaces": true,
"untrustedWorkspaces": {
"supported": true
}
},
"contributes": {
"languages": [
{
"id": "jsonc",
"extensions": [
".code-workspace",
"language-configuration.json",
"icon-theme.json",
"color-theme.json"
],
"filenames": [
"settings.json",
"launch.json",
"tasks.json",
"mcp.json",
"keybindings.json",
"extensions.json",
"argv.json",
"profiles.json",
"devcontainer.json",
".devcontainer.json"
]
},
{
"id": "json",
"extensions": [
".code-profile"
]
}
],
"jsonValidation": [
{
"fileMatch": "vscode://defaultsettings/keybindings.json",
"url": "vscode://schemas/keybindings"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/keybindings.json",
"url": "vscode://schemas/keybindings"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/profiles/*/keybindings.json",
"url": "vscode://schemas/keybindings"
},
{
"fileMatch": "vscode://defaultsettings/*.json",
"url": "vscode://schemas/settings/default"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/settings.json",
"url": "vscode://schemas/settings/user"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/profiles/*/settings.json",
"url": "vscode://schemas/settings/profile"
},
{
"fileMatch": "%MACHINE_SETTINGS_HOME%/settings.json",
"url": "vscode://schemas/settings/machine"
},
{
"fileMatch": "%APP_WORKSPACES_HOME%/*/workspace.json",
"url": "vscode://schemas/workspaceConfig"
},
{
"fileMatch": "**/*.code-workspace",
"url": "vscode://schemas/workspaceConfig"
},
{
"fileMatch": "**/argv.json",
"url": "vscode://schemas/argv"
},
{
"fileMatch": "/.vscode/settings.json",
"url": "vscode://schemas/settings/folder"
},
{
"fileMatch": "/.vscode/launch.json",
"url": "vscode://schemas/launch"
},
{
"fileMatch": "/.vscode/tasks.json",
"url": "vscode://schemas/tasks"
},
{
"fileMatch": "/.vscode/mcp.json",
"url": "vscode://schemas/mcp"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/tasks.json",
"url": "vscode://schemas/tasks"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/snippets/*.json",
"url": "vscode://schemas/snippets"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/prompts/*.toolsets.jsonc",
"url": "vscode://schemas/toolsets"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/profiles/*/snippets/.json",
"url": "vscode://schemas/snippets"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/sync/snippets/preview/*.json",
"url": "vscode://schemas/snippets"
},
{
"fileMatch": "**/*.code-snippets",
"url": "vscode://schemas/global-snippets"
},
{
"fileMatch": "/.vscode/extensions.json",
"url": "vscode://schemas/extensions"
},
{
"fileMatch": "devcontainer.json",
"url": "https://raw.githubusercontent.com/devcontainers/spec/main/schemas/devContainer.schema.json"
},
{
"fileMatch": ".devcontainer.json",
"url": "https://raw.githubusercontent.com/devcontainers/spec/main/schemas/devContainer.schema.json"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/globalStorage/ms-vscode-remote.remote-containers/nameConfigs/*.json",
"url": "./schemas/attachContainer.schema.json"
},
{
"fileMatch": "%APP_SETTINGS_HOME%/globalStorage/ms-vscode-remote.remote-containers/imageConfigs/*.json",
"url": "./schemas/attachContainer.schema.json"
},
{
"fileMatch": "**/quality/*/product.json",
"url": "vscode://schemas/vscode-product"
}
]
},
"devDependencies": {
"@types/node": "22.x"
},
"repository": {
"type": "git",
"url": "https://github.com/microsoft/vscode.git"
}
}