mirror of
https://github.com/microsoft/vscode-extension-samples.git
synced 2026-04-27 16:55:44 +08:00
* Port tool sample to main * README and polish * Port changes from main * Fix errors * Add branch protection
169 lines
4.0 KiB
JSON
169 lines
4.0 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.95.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."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"languageModelTools": [
|
|
{
|
|
"name": "chat-tools-sample_tabCount",
|
|
"tags": [
|
|
"editors",
|
|
"chat-tools-sample"
|
|
],
|
|
"toolReferenceName": "tabCount",
|
|
"displayName": "Tab Count",
|
|
"modelDescription": "The number of active tabs in a tab group",
|
|
"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"
|
|
],
|
|
"displayName": "Find Files",
|
|
"modelDescription": "Search for files in the current workspace",
|
|
"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",
|
|
"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/prompt-tsx": "^0.3.0-alpha.12"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.13.0",
|
|
"@stylistic/eslint-plugin": "^2.9.0",
|
|
"@types/node": "^20",
|
|
"eslint": "^9.13.0",
|
|
"typescript": "^5.6.2",
|
|
"typescript-eslint": "^8.11.0"
|
|
}
|
|
}
|