mirror of
https://github.com/microsoft/vscode-extension-samples.git
synced 2026-04-27 16:55:44 +08:00
This makes sure that if folks get a relatively recent `vscode.d.ts`. It also lets us safely bump up the target to es2024 so you can use all the latest lib additions
187 lines
4.6 KiB
JSON
187 lines
4.6 KiB
JSON
{
|
|
"name": "chat-sample",
|
|
"publisher": "vscode-samples",
|
|
"displayName": "Copilot Chat Sample",
|
|
"description": "Sample chat extension, a trusty cat tutor that will can teach you computer science topics.",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/Microsoft/vscode-extension-samples"
|
|
},
|
|
"version": "0.1.0",
|
|
"engines": {
|
|
"vscode": "^1.100.0"
|
|
},
|
|
"categories": [
|
|
"AI",
|
|
"Chat"
|
|
],
|
|
"activationEvents": [],
|
|
"contributes": {
|
|
"chatParticipants": [
|
|
{
|
|
"id": "chat-sample.cat",
|
|
"fullName": "Cat",
|
|
"name": "cat",
|
|
"description": "Meow! What can I teach you?",
|
|
"isSticky": true,
|
|
"commands": [
|
|
{
|
|
"name": "randomTeach",
|
|
"description": "Pick at random a computer science concept then explain it in purfect way of a cat"
|
|
},
|
|
{
|
|
"name": "play",
|
|
"description": "Do whatever you want, you are a cat after all",
|
|
"disambiguation": [
|
|
{
|
|
"category": "cat_play",
|
|
"description": "The user just wants to relax and see the cat play.",
|
|
"examples": [
|
|
"Enough learning, let the cat play with a ball of yarn",
|
|
"Can you show me a cat playing with a laser pointer?"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"disambiguation": [
|
|
{
|
|
"category": "cat",
|
|
"description": "The user wants to learn a specific computer science topic in an informal way.",
|
|
"examples": [
|
|
"Teach me C++ pointers using metaphors",
|
|
"Explain to me what is a linked list in a simple way",
|
|
"Can you explain to me what is a function in programming?"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "chat-tools-sample.tools",
|
|
"fullName": "Tool User",
|
|
"name": "tools",
|
|
"description": "I use tools",
|
|
"isSticky": true,
|
|
"commands": [
|
|
{
|
|
"name": "list",
|
|
"description": "List all available tools"
|
|
},
|
|
{
|
|
"name": "all",
|
|
"description": "Use all registered tools. By default, only this extension's tools are used."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "chat-tools-sample.catTools",
|
|
"fullName": "Cat (Tools)",
|
|
"name": "catTools",
|
|
"description": "I use tools, implemented using @vscode/chat-extension-utils, and am also a cat",
|
|
"isSticky": true,
|
|
"commands": [
|
|
{
|
|
"name": "all",
|
|
"description": "Use all registered tools. By default, only this extension's tools are used."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"languageModelTools": [
|
|
{
|
|
"name": "chat-tools-sample_tabCount",
|
|
"tags": [
|
|
"editors",
|
|
"chat-tools-sample"
|
|
],
|
|
"toolReferenceName": "countTabs",
|
|
"displayName": "Tab Count",
|
|
"modelDescription": "The number of active tabs in a tab group",
|
|
"canBeReferencedInPrompt": true,
|
|
"icon": "$(files)",
|
|
"inputSchema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"tabGroup": {
|
|
"type": "number",
|
|
"description": "The index of the tab group to check. This is optional- if not specified, the active tab group will be checked.",
|
|
"default": 0
|
|
}
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"name": "chat-tools-sample_findFiles",
|
|
"tags": [
|
|
"files",
|
|
"search",
|
|
"chat-tools-sample"
|
|
],
|
|
"toolReferenceName": "findFiles",
|
|
"displayName": "Find Files",
|
|
"modelDescription": "Search for files in the current workspace",
|
|
"canBeReferencedInPrompt": true,
|
|
"inputSchema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"pattern": {
|
|
"type": "string",
|
|
"description": "Search for files that match this glob pattern"
|
|
}
|
|
},
|
|
"required": [
|
|
"pattern"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "chat-tools-sample_runInTerminal",
|
|
"tags": [
|
|
"terminal",
|
|
"chat-tools-sample"
|
|
],
|
|
"displayName": "Run in Terminal",
|
|
"modelDescription": "Run a command in a terminal and return the output",
|
|
"canBeReferencedInPrompt": false,
|
|
"inputSchema": {
|
|
"type": "object",
|
|
"properties": {
|
|
"command": {
|
|
"type": "string",
|
|
"description": "The command to run"
|
|
}
|
|
},
|
|
"required": [
|
|
"command"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"commands": [
|
|
{
|
|
"command": "cat.namesInEditor",
|
|
"title": "Use Cat Names in Editor"
|
|
}
|
|
]
|
|
},
|
|
"main": "./out/extension.js",
|
|
"scripts": {
|
|
"vscode:prepublish": "npm run compile",
|
|
"compile": "tsc -p ./",
|
|
"lint": "eslint",
|
|
"watch": "tsc -watch -p ./"
|
|
},
|
|
"dependencies": {
|
|
"@vscode/chat-extension-utils": "^0.0.0-alpha.1",
|
|
"@vscode/prompt-tsx": "^0.3.0-alpha.12"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.13.0",
|
|
"@stylistic/eslint-plugin": "^2.9.0",
|
|
"@types/node": "^22",
|
|
"@types/vscode": "^1.100.0",
|
|
"eslint": "^9.13.0",
|
|
"typescript": "^5.9.2",
|
|
"typescript-eslint": "^8.39.0"
|
|
}
|
|
} |