{
  "name": "devchat",
  "displayName": "${ASSISTANT_NAME_ZH}",
  "description": "Write prompts, not code",
  "version": "0.1.84",
  "icon": "assets/devchat.png",
  "publisher": "${PUBLISHER}",
  "engines": {
    "vscode": "^1.75.0"
  },
  "assistantNames": {
    "ASSISTANT_NAME_EN": "${ASSISTANT_NAME_EN}",
    "ASSISTANT_NAME_ZH": "${ASSISTANT_NAME_ZH}"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/devchat-ai/devchat-vscode.git"
  },
  "categories": [
    "Programming Languages",
    "Snippets",
    "Machine Learning",
    "Education"
  ],
  "keywords": [
    "ai",
    "anthropic",
    "assistant",
    "autocomplete",
    "bot",
    "chat",
    "chatbot",
    "codegen",
    "c#",
    "c++",
    "codex",
    "co-pilot",
    "devchat",
    "documentation",
    "go",
    "golang",
    "intellisense",
    "java",
    "javascript",
    "keybindings",
    "kotlin",
    "llm",
    "model",
    "openai",
    "php",
    "pilot",
    "python",
    "refactor",
    "ruby",
    "sourcegraph",
    "snippets",
    "test",
    "typescript"
  ],
  "activationEvents": [
    "*"
  ],
  "main": "./dist/extension.js",
  "files": [
    "dist/*",
    "bin/*",
    "assets/*",
    "tools/*",
    "workflows/*",
    "workflowsCommands/*",
    "LICENSE",
    "README.md"
  ],
  "contributes": {
    "viewsContainers": {
      "activitybar": [
        {
          "id": "devchat-sidebar",
          "title": "${ASSISTANT_NAME_ZH}",
          "icon": "assets/devchat_icon.svg"
        }
      ]
    },
    "views": {
      "devchat-sidebar": [
        {
          "type": "webview",
          "id": "devchat-view",
          "name": "${ASSISTANT_NAME_ZH}"
        }
      ]
    },
    "commands": [
      {
        "command": "devchat.triggerCodeComplete",
        "title": "Trigger Code Completion"
      },
      {
        "command": "devchat.triggerCodeCompleteChinese",
        "title": "触发代码补全"
      },
      {
        "command": "devchat.applyDiffResult",
        "title": "Apply Diff",
        "icon": "assets/devchat_apply.svg"
      },
      {
        "command": "DevChat.PythonPath",
        "title": "Set Python Path",
        "category": "DevChat"
      },
      {
        "command": "devchat.openChatPanel",
        "title": "DevChat"
      },
      {
        "command": "devchat.addContext",
        "title": "${ASSISTANT_NAME_EN}:Add to ${ASSISTANT_NAME_EN}"
      },
      {
        "command": "devchat.askForCode",
        "title": "${ASSISTANT_NAME_EN}:Add to ${ASSISTANT_NAME_EN}"
      },
      {
        "command": "devchat.askForFile",
        "title": "${ASSISTANT_NAME_EN}:Add to ${ASSISTANT_NAME_EN}"
      },
      {
        "command": "devchat.addConext_chinese",
        "title": "${ASSISTANT_NAME_ZH}:添加到${ASSISTANT_NAME_ZH}"
      },
      {
        "command": "devchat.askForCode_chinese",
        "title": "${ASSISTANT_NAME_ZH}:添加到${ASSISTANT_NAME_ZH}"
      },
      {
        "command": "devchat.askForFile_chinese",
        "title": "${ASSISTANT_NAME_ZH}:添加到${ASSISTANT_NAME_ZH}"
      },
      {
        "command": "DevChat.InstallCommands",
        "title": "Install slash commands",
        "category": "DevChat"
      },
      {
        "command": "DevChat.StartLocalService",
        "title": "Start local service",
        "category": "DevChat"
      },
      {
        "command": "DevChat.Chat",
        "title": "Chat with ${ASSISTANT_NAME_EN}",
        "category": "DevChat"
      },
      {
        "command": "devchat.explain",
        "title": "${ASSISTANT_NAME_EN}:Generate Explain"
      },
      {
        "command": "devchat.explain_chinese",
        "title": "${ASSISTANT_NAME_ZH}:代码解释"
      },
      {
        "command": "devchat.comments",
        "title": "${ASSISTANT_NAME_EN}:Generate Comments"
      },
      {
        "command": "devchat.comments_chinese",
        "title": "${ASSISTANT_NAME_ZH}:生成注释"
      },
      {
        "command": "devchat.fix",
        "title": "${ASSISTANT_NAME_EN}:Fix this"
      },
      {
        "command": "devchat.fix_chinese",
        "title": "${ASSISTANT_NAME_ZH}:修复此"
      },
      {
        "command": "DevChat.codecomplete_callback",
        "title": "Codecomplete Callback",
        "category": "DevChat"
      },
      {
        "command": "DevChat.quickFixAskDevChat",
        "title": "Ask ${ASSISTANT_NAME_EN}",
        "category": "DevChat"
      },
      {
        "command": "DevChat.quickFixUsingDevChat",
        "title": "Ask ${ASSISTANT_NAME_EN}",
        "category": "DevChat"
      }
    ],
    "keybindings": [
      {
        "command": "devchat.openChatPanel",
        "key": "ctrl+shift+/",
        "mac": "cmd+shift+/"
      },
      {
        "command": "devchat.triggerCodeComplete",
        "key": "ctrl+shift+'",
        "mac": "cmd+shift+'",
        "when": "editorTextFocus"
      }
    ],
    "menus": {
      "editor/title": [
        {
          "command": "devchat.applyDiffResult",
          "group": "navigation",
          "when": "editorTextFocus && isInDiffEditor"
        }
      ],
      "commandPalette": [
        {
          "command": "devchat.applyDiffResult",
          "when": "false"
        },
        {
          "command": "devchat.addContext",
          "when": "false"
        },
        {
          "command": "devchat.askForCode",
          "when": "false"
        },
        {
          "command": "devchat.askForFile",
          "when": "false"
        },
        {
          "command": "devchat.addConext_chinese",
          "when": "false"
        },
        {
          "command": "devchat.triggerCodeComplete",
          "when": "false"
        },
        {
          "command": "devchat.triggerCodeCompleteChinese",
          "when": "false"
        },
        {
          "command": "devchat.askForCode_chinese",
          "when": "false"
        },
        {
          "command": "devchat.askForFile_chinese",
          "when": "false"
        },
        {
          "command": "DevChat.Chat",
          "when": "false"
        },
        {
          "command": "DevChat.quickFixAskDevChat",
          "when": "false"
        },
        {
          "command": "DevChat.quickFixUsingDevChat",
          "when": "false"
        },
        {
          "command": "devchat.explain",
          "when": "false"
        },
        {
          "command": "devchat.explain_chinese",
          "when": "false"
        },
        {
          "command": "devchat.comments",
          "when": "false"
        },
        {
          "command": "devchat.comments_chinese",
          "when": "false"
        },
        {
          "command": "devchat.fix",
          "when": "false"
        },
        {
          "command": "devchat.fix_chinese",
          "when": "false"
        },
        {
          "command": "DevChat.codecomplete_callback",
          "when": "false"
        },
        {
          "command": "DevChat.InstallCommands",
          "when": "false"
        },
        {
          "command": "DevChat.StartLocalService",
          "when": "false"
        }
      ],
      "explorer/context": [
        {
          "when": "isChineseLocale && resourceLangId != 'git'",
          "command": "devchat.addConext_chinese",
          "group": "navigation"
        },
        {
          "when": "!isChineseLocale && resourceLangId != 'git'",
          "command": "devchat.addContext",
          "group": "navigation"
        }
      ],
      "editor/context": [
        {
          "command": "devchat.triggerCodeComplete",
          "when": "!isChineseLocale && editorTextFocus",
          "group": "navigation"
        },
        {
          "command": "devchat.triggerCodeCompleteChinese",
          "when": "isChineseLocale && editorTextFocus",
          "group": "navigation"
        },
        {
          "command": "devchat.askForCode_chinese",
          "when": "isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.askForCode",
          "when": "!isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.askForFile",
          "when": "!isChineseLocale && editorTextFocus && !editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.askForFile_chinese",
          "when": "isChineseLocale && editorTextFocus && !editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.explain",
          "when": "!isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.explain_chinese",
          "when": "isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.comments",
          "when": "!isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.comments_chinese",
          "when": "isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.fix",
          "when": "!isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        },
        {
          "command": "devchat.fix_chinese",
          "when": "isChineseLocale && editorTextFocus && editorHasSelection",
          "group": "navigation"
        }
      ]
    }
  },
  "scripts": {
    "vscode:uninstall": "node ./dist/uninstall",
    "vscode:prepublish": "node prebuild.js && webpack --mode production --devtool hidden-source-map",
    "prebuild": "node prebuild.js",
    "postbuild": "git checkout -- assets package.json",
    "build:gui": "cd ./gui && yarn && yarn vscode",
    "build": "webpack --config webpack.config.js && npm run build:gui",
    "postpackage": "git checkout -- assets package.json",
    "package": "vsce package",
    "dev": "webpack serve --config webpack.config.js --open",
    "watch": "npm run prebuild && webpack --watch",
    "lint": "eslint src --ext ts",
    "test": "mocha",
    "pretest": "npm run compile-tests && npm run compile && npm run lint",
    "compile-tests": "tsc -p . --outDir out",
    "watch-tests": "npm run prebuild && tsc -p . -w --outDir out"
  },
  "devDependencies": {
    "@babel/core": "^7.21.8",
    "@babel/preset-env": "^7.23.6",
    "@babel/preset-react": "^7.23.3",
    "@babel/preset-typescript": "^7.21.5",
    "@types/chai": "^4.3.5",
    "@types/glob": "^8.1.0",
    "@types/mocha": "^10.0.1",
    "@types/mock-fs": "^4.13.1",
    "@types/ncp": "^2.0.5",
    "@types/node": "16.x",
    "@types/proxyquire": "^1.3.28",
    "@types/shell-escape": "^0.2.1",
    "@types/sinon": "^10.0.15",
    "@types/uuid": "^9.0.1",
    "@types/vscode": "^1.75.0",
    "@typescript-eslint/eslint-plugin": "^5.56.0",
    "@typescript-eslint/parser": "^5.56.0",
    "@vscode/test-electron": "^2.3.0",
    "babel-loader": "^9.1.2",
    "chai": "^4.3.7",
    "copy-webpack-plugin": "^11.0.0",
    "dotenv": "^16.0.3",
    "eslint": "^8.36.0",
    "file-loader": "^6.2.0",
    "glob": "^8.1.0",
    "html-webpack-plugin": "^5.5.1",
    "jest": "^29.5.0",
    "json-loader": "^0.5.7",
    "mocha": "^10.2.0",
    "mock-fs": "^5.2.0",
    "proxyquire": "^2.1.3",
    "sinon": "^15.1.0",
    "ts-jest": "^29.1.0",
    "ts-loader": "^9.4.2",
    "ts-node": "^10.9.1",
    "typescript": "^4.9.5",
    "vscode-test": "^1.6.1",
    "webpack": "^5.76.3",
    "webpack-cli": "^5.0.1",
    "webpack-dev-server": "^4.13.3"
  },
  "dependencies": {
    "@iarna/toml": "^2.2.5",
    "@tiptap/extension-link": "^2.0.3",
    "@tiptap/pm": "^2.0.0",
    "@tiptap/starter-kit": "^2.0.3",
    "axios": "^1.3.6",
    "clean-webpack-plugin": "^4.0.0",
    "dayjs": "^1.11.10",
    "dotenv": "^16.0.3",
    "js-yaml": "^4.1.0",
    "llama-tokenizer-js": "^1.2.1",
    "mdast": "^3.0.0",
    "mobx": "^6.12.0",
    "ncp": "^2.0.0",
    "node-fetch": "^3.3.1",
    "nonce": "^1.0.4",
    "quote": "^0.4.0",
    "rehype-raw": "^6.1.1",
    "shell-escape": "^0.2.0",
    "string-argv": "^0.3.2",
    "tree-kill": "^1.2.2",
    "tree-sitter-wasms": "^0.1.7",
    "unified": "^11.0.3",
    "unist-util-visit": "^5.0.0",
    "uuid": "^9.0.0",
    "web-tree-sitter": "^0.22.2",
    "yaml": "^2.3.2"
  }
}
