| { |
| "name": "chat-output-renderer-sample", |
| "displayName": "chat-output-renderer-sample", |
| "description": "Sample chat output renderer extension that renders Mermaid diagrams.", |
| "version": "0.0.1", |
| "publisher": "vscode-samples", |
| "repository": "https://github.com/Microsoft/vscode-extension-samples/helloworld-sample", |
| "engines": { |
| "vscode": "^1.103.0" |
| }, |
| "categories": [ |
| "Other" |
| ], |
| "enabledApiProposals": [ |
| "chatOutputRenderer" |
| ], |
| "activationEvents": [], |
| "main": "./out/extension.js", |
| "contributes": { |
| "languageModelTools": [ |
| { |
| "name": "renderMermaidDiagram", |
| "displayName": "Mermaid Renderer", |
| "toolReferenceName": "renderMermaidDiagram", |
| "canBeReferencedInPrompt": true, |
| "modelDescription": "Renders a Mermaid diagram from Mermaid.js markup.", |
| "userDescription": "Render a Mermaid.js diagrams from markup.", |
| "inputSchema": { |
| "type": "object", |
| "properties": { |
| "markup": { |
| "type": "string", |
| "description": "The mermaid diagram markup to render as a Mermaid diagram. This should only be the markup of the diagram. Do not include a wrapping code block." |
| } |
| } |
| } |
| }, |
| { |
| "name": "createMermaidDiagram", |
| "displayName": "Mermaid Creator", |
| "toolReferenceName": "createMermaidDiagram", |
| "canBeReferencedInPrompt": true, |
| "modelDescription": "Creates a Mermaid diagram from a description and renders for the user.", |
| "userDescription": "Creates and renders Mermaid.js diagrams.", |
| "inputSchema": { |
| "type": "object", |
| "properties": { |
| "description": { |
| "type": "string", |
| "description": "A plain text description of the Mermaid diagram to create. The description should be detailed enough for the model to generate a valid Mermaid diagram markup." |
| } |
| } |
| } |
| } |
| ], |
| "chatOutputRenderers": [ |
| { |
| "viewType": "vscode-samples.mermaid", |
| "mimeTypes": [ |
| "application/vnd.chat-output-renderer.mermaid" |
| ] |
| } |
| ] |
| }, |
| "scripts": { |
| "vscode:prepublish": "npm run compile", |
| "compile": "tsc -p ./", |
| "lint": "eslint", |
| "watch": "tsc -watch -p ./", |
| "download-api": "dts dev", |
| "postdownload-api": "dts main", |
| "postinstall": "npm run download-api" |
| }, |
| "devDependencies": { |
| "@eslint/js": "^9.13.0", |
| "@stylistic/eslint-plugin": "^2.9.0", |
| "@types/jsdom": "^21.1.7", |
| "@types/node": "^22", |
| "@types/vscode": "^1.100.0", |
| "@vscode/dts": "^0.4.0", |
| "eslint": "^9.13.0", |
| "typescript": "^5.9.2", |
| "typescript-eslint": "^8.39.0" |
| }, |
| "dependencies": { |
| "dompurify": "^3.2.6", |
| "jsdom": "^26.1.0", |
| "mermaid": "^11.9.0" |
| } |
| } |