{
  "name": "@unit-mesh/autodev",
  "displayName": "AutoDev - 🧙the AI-powered coding wizard.",
  "description": " 🧙‍AutoDev: the AI-powered coding wizard with multilingual support 🌐, auto code generation 🏗️, and a helpful bug-slaying assistant 🐞! Customizable prompts 🎨 and a magic Auto Dev/Testing/Document/Agent feature 🧪 included! 🚀 ",
  "version": "0.1.2",
  "repository": "https://github.com/unit-mesh/auto-dev-vscode",
  "publisher": "Phodal",
  "l10n": "./l10n",
  "extensionKind": [
    "ui",
    "workspace"
  ],
  "bugs": {
    "url": "https://github.com/unit-mesh/auto-dev-vscode/issues"
  },
  "homepage": "https://editor.unitmesh.cc",
  "qna": "https://github.com/unit-mesh/auto-dev-vscode/issues/new/choose",
  "license": "Apache-2.0",
  "pricing": "Free",
  "icon": "media/pluginIcon.png",
  "engines": {
    "vscode": "^1.77.0"
  },
  "vsce": {
    "dependencies": true
  },
  "categories": [
    "Programming Languages",
    "Education",
    "Machine Learning",
    "Snippets"
  ],
  "activationEvents": [
    "onLanguage:java",
    "onLanguage:c",
    "onLanguage:cpp",
    "onLanguage:csharp",
    "onLanguage:go",
    "onLanguage:java",
    "onLanguage:javascript",
    "onLanguage:kotlin",
    "onLanguage:typescript",
    "onLanguage:typescriptreact",
    "onLanguage:python",
    "onLanguage:rust",
    "onStartupFinished",
    "onView:autodevGUIView"
  ],
  "main": "./dist/extension.js",
  "enabledApiProposals": [
    "contribSourceControlHistoryItemGroupMenu",
    "contribSourceControlHistoryItemMenu",
    "contribSourceControlInputBoxMenu",
    "contribSourceControlTitleMenu"
  ],
  "contributes": {
    "configuration": {
      "title": "AutoDev",
      "properties": {
        "autodev.customPromptDir": {
          "type": "string",
          "default": "prompts",
          "markdownDescription": "Custom prompt directory"
        },
        "autodev.openaiCompatibleConfig": {
          "type": "object",
          "default": {
            "apiType": "openai",
            "apiBase": "https://api.openai.com/v1/",
            "apiKey": "",
            "model": "gpt-3.5-turbo"
          },
          "markdownDescription": "For LLM compatible with OpenAI, set the API key here."
        },
        "autodev.enableRenameSuggestion": {
          "type": "boolean",
          "default": false,
          "markdownDescription": "Enable rename suggestion"
        },
        "autodev.chatModels": {
          "type": "array",
          "default": [
            {
              "title": "GPT-4 turbo",
              "provider": "openai",
              "model": "gpt-4-turbo",
              "apiKey": null,
              "baseURL": null,
              "temperature": null,
              "maxTokens": null,
              "stop": null,
              "clientOptions": {}
            },
            {
              "title": "GPT-3.5 turbo",
              "provider": "openai",
              "model": "gpt-3.5-turbo",
              "apiKey": null,
              "baseURL": null,
              "temperature": null,
              "maxTokens": null,
              "stop": null,
              "clientOptions": {}
            },
            {
              "title": "ERNIE-Bot turbo",
              "provider": "qianfan",
              "model": "ERNIE-Bot-turbo",
              "apiKey": null,
              "secretKey": null,
              "temperature": null,
              "maxTokens": null,
              "stop": null,
              "clientOptions": {}
            },
            {
              "title": "QWen turbo",
              "provider": "tongyi",
              "model": "qwen-turbo",
              "apiKey": null,
              "temperature": null,
              "maxTokens": null,
              "stop": null,
              "clientOptions": {}
            }
          ],
          "markdownDescription": "Chat models"
        }
      }
    },
    "commands": [
      {
        "command": "autodev.newSession",
        "category": "AutoDev",
        "title": "New Session",
        "icon": "$(add)",
        "group": "AutoDev"
      },
      {
        "command": "autodev.debugTerminal",
        "category": "AutoDev",
        "title": "Debug Terminal",
        "group": "AutoDev"
      },
      {
        "command": "autodev.menu.autoComment",
        "category": "AutoDev",
        "title": "%AutoComment%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.genApiData",
        "category": "AutoDev",
        "title": "%autodev.command.genApiData%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.action.quickAction",
        "category": "AutoDev",
        "title": "%autodev.command.quickChat%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.explain",
        "category": "AutoDev",
        "title": "%autodev.command.explain%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.fixThis",
        "category": "AutoDev",
        "title": "%autodev.command.fixThis%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.autoTest",
        "category": "AutoDev",
        "title": "%AutoTest%",
        "group": "AutoDev"
      },
      {
        "command": "autodev.debugRunR",
        "category": "AutoDev",
        "title": "Debug Run R",
        "group": "AutoDev"
      },
      {
        "command": "autodev.editor.suggestCommand",
        "category": "AutoDev",
        "title": "AutoDev Suggest Command",
        "group": "AutoDev"
      },
      {
        "command": "autodev.terminal.explainTerminalSelectionContextMenu",
        "category": "AutoDev",
        "title": "AutoDev: Explain this",
        "group": "AutoDev"
      },
      {
        "command": "autodev.git.generateCommitMessage",
        "title": "Gen Commit Message",
        "icon": "$(autodev-icon)",
        "category": "AutoDev"
      }
    ],
    "keybindings": [
      {
        "command": "autodev.debugTerminal",
        "mac": "cmd+shift+r",
        "key": "ctrl+shift+r"
      },
      {
        "command": "autodev.editor.suggestCommand",
        "mac": "cmd+shift+j",
        "key": "ctrl+shift+j"
      }
    ],
    "submenus": [
      {
        "id": "autodev",
        "label": "AutoDev"
      }
    ],
    "menus": {
      "view/title": [
        {
          "command": "autodev.debugRunR",
          "when": "view == terminal",
          "group": "navigation"
        }
      ],
      "editor/context": [
        {
          "submenu": "autodev",
          "when": "!editorReadonly",
          "group": "1_autodev@0"
        }
      ],
      "autodev": [
        {
          "command": "autodev.action.quickAction",
          "when": "!editorReadonly",
          "group": "autodev@1"
        },
        {
          "command": "autodev.explain",
          "when": "!editorReadonly",
          "group": "autodevAction@1"
        },
        {
          "command": "autodev.fixThis",
          "when": "!editorReadonly",
          "group": "autodevAction@2"
        },
        {
          "command": "autodev.menu.autoComment",
          "when": "!editorReadonly",
          "group": "autodevAction@3"
        },
        {
          "command": "autodev.autoTest",
          "when": "!editorReadonly",
          "group": "autodevAction@4"
        }
      ],
      "terminal/context": [
        {
          "command": "autodev.terminal.explainTerminalSelectionContextMenu",
          "group": "1_autodev@0"
        }
      ],
      "scm/title": [
        {
          "when": "scmProvider == git",
          "command": "autodev.git.generateCommitMessage",
          "group": "navigation"
        }
      ],
      "scm/inputBox": [
        {
          "command": "autodev.git.generateCommitMessage",
          "when": "scmProvider == git"
        }
      ],
      "commandPalette": [
        {
          "command": "autodev.debugTerminal"
        },
        {
          "command": "autodev.git.generateCommitMessage",
          "when": "false"
        }
      ]
    },
    "viewsContainers": {
      "activitybar": [
        {
          "id": "autodev",
          "title": "AutoDev",
          "icon": "media/autodev-dark.svg"
        }
      ]
    },
    "views": {
      "autodev": [
        {
          "type": "webview",
          "id": "autodev.autodevGUIView",
          "name": "",
          "visibility": "visible"
        }
      ]
    },
    "languages": [
      {
        "id": "DevIns",
        "aliases": [
          "devins",
          "devin"
        ],
        "extensions": [
          ".devins",
          ".devin"
        ],
        "configuration": "syntaxes/language-configuration.json",
        "icon": {
          "light": "./media/icon.svg",
          "dark": "./media/autodev-dark.svg"
        }
      }
    ],
    "grammars": [
      {
        "language": "DevIns",
        "scopeName": "text.ref",
        "path": "syntaxes/DevIns.tmLanguage.json"
      }
    ],
    "icons": {
      "autodev-icon": {
        "description": "autodev icon",
        "default": {
          "fontPath": "media/autodev.woff",
          "fontCharacter": "\\E900"
        }
      },
      "autodev-dark": {
        "description": "autodev-drak",
        "default": {
          "fontPath": "media/autodev.woff",
          "fontCharacter": "\\E902"
        }
      },
      "autodev-error": {
        "description": "AutoDev Error",
        "default": {
          "fontPath": "media/autodev.woff",
          "fontCharacter": "\\E904"
        }
      },
      "autodev-pair": {
        "description": "AutoDev Pair",
        "default": {
          "fontPath": "media/autodev.woff",
          "fontCharacter": "\\E906"
        }
      }
    }
  },
  "scripts": {
    "preinstall": "npx only-allow npm",
    "watch": "vite build --watch --mode=development",
    "build": "tsc && vite build",
    "lint": "eslint . --ext ts,tsx",
    "lint:fix": "eslint . --ext ts,tsx --fix",
    "preintegration-test": "tsc -p . --outDir out",
    "integration-test": "vscode-test",
    "integration-test:watch": "tsc -p . -w --outDir out",
    "test": "vitest --run --coverage.enabled",
    "test:watch": "vitest --silent=false",
    "vscode:prepublish": "npm run build",
    "pa": "vsce package",
    "antlr4ts": "antlr4ts -visitor src/grammar/cmake/CMake.g4"
  },
  "dependencies": {
    "@langchain/anthropic": "^0.1.16",
    "@langchain/core": "^0.1.59",
    "@langchain/openai": "^0.0.28",
    "@mozilla/readability": "^0.5.0",
    "@octokit/rest": "^20.1.1",
    "@types/js-yaml": "^4.0.9",
    "@unit-mesh/treesitter-artifacts": "^1.6.1",
    "@vscode/l10n": "^0.0.18",
    "@xenova/transformers": "^2.17.1",
    "antlr4ts": "^0.5.0-alpha.4",
    "cheerio": "^1.0.0-rc.12",
    "csv": "^6.3.8",
    "graphology": "^0.25.4",
    "graphology-types": "^0.24.7",
    "ignore": "^5.3.1",
    "inversify": "^6.0.2",
    "isbinaryfile": "^5.0.2",
    "js-tiktoken": "^1.0.11",
    "js-yaml": "^4.1.0",
    "jsdom": "^24.0.0",
    "llama-tokenizer-js": "^1.1.3",
    "monaco-vscode-textmate-theme-converter": "^0.1.7",
    "natural": "^7.0.5",
    "node-fetch": "^3.3.2",
    "node-machine-id": "^1.1.12",
    "onnxruntime-node": "^1.17.3-rev.1",
    "openai": "^4.36.0",
    "reflect-metadata": "^0.2.2",
    "tokenizers": "^0.13.3",
    "vectordb": "0.4.19",
    "velocityjs": "^2.0.6",
    "vscode-gradle": "^3.10.1",
    "web-tree-sitter": "^0.22.2"
  },
  "devDependencies": {
    "@types/chai": "^4.3.14",
    "@types/jsdom": "^21.1.6",
    "@types/mocha": "^10.0.1",
    "@types/node": "^18.x",
    "@types/sinon": "^17.0.3",
    "@types/vscode": "^1.77.0",
    "@typescript-eslint/eslint-plugin": "^7.6.0",
    "@typescript-eslint/parser": "^7.6.0",
    "@vitest/coverage-v8": "^1.5.2",
    "@vscode/test-cli": "^0.0.9",
    "@vscode/test-electron": "^2.3.9",
    "@vscode/vsce": "^2.25.0",
    "antlr4ts-cli": "^0.5.0-alpha.4",
    "chai": "^5.1.0",
    "eslint": "^8.56.0",
    "mocha": "^10.0.1",
    "sinon": "^17.0.1",
    "typescript": "^5.4.4",
    "vite": "^5.2.8",
    "vite-plugin-checker": "^0.6.4",
    "vite-plugin-dts": "^3.8.1",
    "vite-plugin-externalize-deps": "^0.8.0",
    "vite-plugin-static-copy": "^1.0.2",
    "vitest": "^1.4.0"
  }
}
