Roo-Code/package.json
Sam Hoang Van e7e5511b65
feat: prioritize "Add to Context" and add line number tracking (#2063)
- Move "Add to Context" to the top of submenu and code actions for improved accessibility
- Add line number tracking (startLine/endLine) to EditorContext and code actions
- Update templates in support-prompt.ts to include line numbers in file references
- Ensure backward compatibility with existing code

This change improves the UX by making the frequently used "Add to Context" action more accessible and enhances context awareness by tracking and displaying line numbers for selected code.
2025-03-28 12:01:16 -04:00

457 lines
12 KiB
JSON

{
"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"
]
}
}