{ "name": "roo-cline", "displayName": "Roo Code (prev. Roo Cline)", "description": "A whole dev team of AI agents in your editor.", "publisher": "RooVeterinaryInc", "version": "3.10.5", "icon": "assets/icons/icon.png", "galleryBanner": { "color": "#617A91", "theme": "dark" }, "engines": { "vscode": "^1.84.0", "node": "20.18.1" }, "author": { "name": "Roo Code" }, "repository": { "type": "git", "url": "https://github.com/RooVetGit/Roo-Code" }, "homepage": "https://github.com/RooVetGit/Roo-Code", "categories": [ "AI", "Chat", "Programming Languages", "Education", "Snippets", "Testing" ], "keywords": [ "cline", "claude", "dev", "mcp", "openrouter", "coding", "agent", "autonomous", "chatgpt", "sonnet", "ai", "llama", "roo code", "roocode" ], "activationEvents": [ "onLanguage", "onStartupFinished" ], "main": "./dist/extension.js", "contributes": { "submenus": [ { "id": "roo-code.contextMenu", "label": "Roo Code" }, { "id": "roo-code.terminalMenu", "label": "Roo Code" } ], "viewsContainers": { "activitybar": [ { "id": "roo-cline-ActivityBar", "title": "Roo Code", "icon": "assets/icons/icon.svg" } ] }, "views": { "roo-cline-ActivityBar": [ { "type": "webview", "id": "roo-cline.SidebarProvider", "name": "" } ] }, "commands": [ { "command": "roo-cline.plusButtonClicked", "title": "New Task", "icon": "$(add)" }, { "command": "roo-cline.mcpButtonClicked", "title": "MCP Servers", "icon": "$(server)" }, { "command": "roo-cline.promptsButtonClicked", "title": "Prompts", "icon": "$(notebook)" }, { "command": "roo-cline.historyButtonClicked", "title": "History", "icon": "$(history)" }, { "command": "roo-cline.popoutButtonClicked", "title": "Open in Editor", "icon": "$(link-external)" }, { "command": "roo-cline.settingsButtonClicked", "title": "Settings", "icon": "$(settings-gear)" }, { "command": "roo-cline.helpButtonClicked", "title": "Documentation", "icon": "$(question)" }, { "command": "roo-cline.openInNewTab", "title": "Open In New Tab", "category": "Roo Code" }, { "command": "roo-cline.explainCode", "title": "Explain Code", "category": "Roo Code" }, { "command": "roo-cline.fixCode", "title": "Fix Code", "category": "Roo Code" }, { "command": "roo-cline.improveCode", "title": "Improve Code", "category": "Roo Code" }, { "command": "roo-cline.addToContext", "title": "Add To Context", "category": "Roo Code" }, { "command": "roo-cline.newTask", "title": "New Task", "category": "Roo Code" }, { "command": "roo-cline.terminalAddToContext", "title": "Add Terminal Content to Context", "category": "Terminal" }, { "command": "roo-cline.terminalFixCommand", "title": "Fix This Command", "category": "Terminal" }, { "command": "roo-cline.terminalExplainCommand", "title": "Explain This Command", "category": "Terminal" }, { "command": "roo-cline.terminalFixCommandInCurrentTask", "title": "Fix This Command (Current Task)", "category": "Terminal" }, { "command": "roo-cline.terminalExplainCommandInCurrentTask", "title": "Explain This Command (Current Task)", "category": "Terminal" }, { "command": "roo-cline.setCustomStoragePath", "title": "Set Custom Storage Path", "category": "Roo Code" } ], "menus": { "editor/context": [ { "submenu": "roo-code.contextMenu", "group": "navigation" } ], "roo-code.contextMenu": [ { "command": "roo-cline.addToContext", "group": "1_actions@1" }, { "command": "roo-cline.explainCode", "group": "1_actions@2" }, { "command": "roo-cline.fixCode", "group": "1_actions@3" }, { "command": "roo-cline.improveCode", "group": "1_actions@4" } ], "terminal/context": [ { "submenu": "roo-code.terminalMenu", "group": "navigation" } ], "roo-code.terminalMenu": [ { "command": "roo-cline.terminalAddToContext", "group": "1_actions@1" }, { "command": "roo-cline.terminalFixCommand", "group": "1_actions@2" }, { "command": "roo-cline.terminalExplainCommand", "group": "1_actions@3" }, { "command": "roo-cline.terminalFixCommandInCurrentTask", "group": "1_actions@5" }, { "command": "roo-cline.terminalExplainCommandInCurrentTask", "group": "1_actions@6" } ], "view/title": [ { "command": "roo-cline.plusButtonClicked", "group": "navigation@1", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.promptsButtonClicked", "group": "navigation@2", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.mcpButtonClicked", "group": "navigation@3", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.historyButtonClicked", "group": "navigation@4", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.popoutButtonClicked", "group": "navigation@5", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.settingsButtonClicked", "group": "navigation@6", "when": "view == roo-cline.SidebarProvider" }, { "command": "roo-cline.helpButtonClicked", "group": "navigation@7", "when": "view == roo-cline.SidebarProvider" } ] }, "configuration": { "title": "Roo Code", "properties": { "roo-cline.allowedCommands": { "type": "array", "items": { "type": "string" }, "default": [ "npm test", "npm install", "tsc", "git log", "git diff", "git show" ], "description": "Commands that can be auto-executed when 'Always approve execute operations' is enabled" }, "roo-cline.vsCodeLmModelSelector": { "type": "object", "properties": { "vendor": { "type": "string", "description": "The vendor of the language model (e.g. copilot)" }, "family": { "type": "string", "description": "The family of the language model (e.g. gpt-4)" } }, "description": "Settings for VSCode Language Model API" }, "roo-cline.customStoragePath": { "type": "string", "default": "", "description": "Custom storage path. Leave empty to use the default location. Supports absolute paths (e.g. 'D:\\RooCodeStorage')" } } } }, "scripts": { "build": "npm run vsix", "build:webview": "cd webview-ui && npm run build", "build:esbuild": "node esbuild.js --production", "compile": "tsc -p . --outDir out && node esbuild.js", "install:all": "npm install npm-run-all && npm run install:_all", "install:_all": "npm-run-all -p install-*", "install-extension": "npm install", "install-webview": "cd webview-ui && npm install", "install-e2e": "cd e2e && npm install", "install-benchmark": "cd benchmark && npm install", "lint": "npm-run-all -p lint:*", "lint:extension": "eslint src --ext ts", "lint:webview": "cd webview-ui && npm run lint", "lint:e2e": "cd e2e && npm run lint", "lint:benchmark": "cd benchmark && npm run lint", "check-types": "npm-run-all -p check-types:*", "check-types:extension": "tsc --noEmit", "check-types:webview": "cd webview-ui && npm run check-types", "check-types:e2e": "cd e2e && npm run check-types", "check-types:benchmark": "cd benchmark && npm run check-types", "package": "npm-run-all -p build:webview build:esbuild check-types lint", "pretest": "npm run compile", "dev": "cd webview-ui && npm run dev", "test": "npm-run-all -p test:*", "test:extension": "jest", "test:webview": "cd webview-ui && npm run test", "prepare": "husky", "publish:marketplace": "vsce publish && ovsx publish", "publish": "npm run build && changeset publish && npm install --package-lock-only", "version-packages": "changeset version && npm install --package-lock-only", "vscode:prepublish": "npm run package", "vsix": "rimraf bin && mkdirp bin && npx vsce package --out bin", "watch": "npm-run-all -p watch:*", "watch:esbuild": "node esbuild.js --watch", "watch:tsc": "tsc --noEmit --watch --project tsconfig.json", "watch-tests": "tsc -p . -w --outDir out", "changeset": "changeset", "knip": "knip --include files", "clean": "npm-run-all -p clean:*", "clean:extension": "rimraf bin dist out", "clean:webview": "cd webview-ui && npm run clean", "clean:e2e": "cd e2e && npm run clean", "clean:benchmark": "cd benchmark && npm run clean", "update-contributors": "node scripts/update-contributors.js", "generate-types": "tsx scripts/generate-types.mts" }, "dependencies": { "@anthropic-ai/bedrock-sdk": "^0.10.2", "@anthropic-ai/sdk": "^0.37.0", "@anthropic-ai/vertex-sdk": "^0.7.0", "@aws-sdk/client-bedrock-runtime": "^3.706.0", "@google-cloud/vertexai": "^1.9.3", "@google/generative-ai": "^0.18.0", "@mistralai/mistralai": "^1.3.6", "@modelcontextprotocol/sdk": "^1.7.0", "@types/clone-deep": "^4.0.4", "@types/pdf-parse": "^1.1.4", "@types/tmp": "^0.2.6", "@types/turndown": "^5.0.5", "@types/vscode": "^1.95.0", "@vscode/codicons": "^0.0.36", "axios": "^1.7.4", "cheerio": "^1.0.0", "chokidar": "^4.0.1", "clone-deep": "^4.0.1", "default-shell": "^2.2.0", "delay": "^6.0.0", "diff": "^5.2.0", "diff-match-patch": "^1.0.5", "fast-deep-equal": "^3.1.3", "fast-xml-parser": "^4.5.1", "fastest-levenshtein": "^1.0.16", "fzf": "^0.5.2", "get-folder-size": "^5.0.0", "globby": "^14.0.2", "i18next": "^24.2.2", "isbinaryfile": "^5.0.2", "js-tiktoken": "^1.0.19", "mammoth": "^1.8.0", "monaco-vscode-textmate-theme-converter": "^0.1.7", "openai": "^4.78.1", "os-name": "^6.0.0", "p-wait-for": "^5.0.2", "pdf-parse": "^1.1.1", "pkce-challenge": "^4.1.0", "posthog-node": "^4.7.0", "pretty-bytes": "^6.1.1", "puppeteer-chromium-resolver": "^23.0.0", "puppeteer-core": "^23.4.0", "reconnecting-eventsource": "^1.6.4", "say": "^0.16.0", "serialize-error": "^11.0.3", "simple-git": "^3.27.0", "sound-play": "^1.1.0", "string-similarity": "^4.0.4", "strip-ansi": "^7.1.0", "strip-bom": "^5.0.0", "tmp": "^0.2.3", "tree-sitter-wasms": "^0.1.11", "turndown": "^7.2.0", "web-tree-sitter": "^0.22.6", "zod": "^3.23.8" }, "devDependencies": { "@changesets/cli": "^2.27.10", "@changesets/types": "^6.0.0", "@dotenvx/dotenvx": "^1.34.0", "@types/debug": "^4.1.12", "@types/diff": "^5.2.1", "@types/diff-match-patch": "^1.0.36", "@types/glob": "^8.1.0", "@types/jest": "^29.5.14", "@types/node": "20.x", "@types/string-similarity": "^4.0.2", "@typescript-eslint/eslint-plugin": "^7.14.1", "@typescript-eslint/parser": "^7.11.0", "esbuild": "^0.24.0", "eslint": "^8.57.0", "execa": "^9.5.2", "glob": "^11.0.1", "husky": "^9.1.7", "jest": "^29.7.0", "jest-simple-dot-reporter": "^1.0.5", "knip": "^5.44.4", "lint-staged": "^15.2.11", "mkdirp": "^3.0.1", "npm-run-all": "^4.1.5", "prettier": "^3.4.2", "rimraf": "^6.0.1", "ts-jest": "^29.2.5", "tsup": "^8.4.0", "tsx": "^4.19.3", "typescript": "^5.4.5", "zod-to-ts": "^1.2.0" }, "lint-staged": { "*.{js,jsx,ts,tsx,json,css,md}": [ "prettier --write" ], "src/**/*.{ts,tsx}": [ "npx eslint -c .eslintrc.json --max-warnings=0 --fix" ], "webview-ui/**/*.{ts,tsx}": [ "npx eslint -c webview-ui/.eslintrc.json --max-warnings=0 --fix" ] } }