diff --git a/package.json b/package.json index 7562c0022f8..519a7c13466 100644 --- a/package.json +++ b/package.json @@ -140,6 +140,11 @@ "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", diff --git a/src/activate/handleTask.ts b/src/activate/handleTask.ts new file mode 100644 index 00000000000..7bce8c75beb --- /dev/null +++ b/src/activate/handleTask.ts @@ -0,0 +1,22 @@ +import * as vscode from "vscode" +import { COMMAND_IDS } from "../core/CodeActionProvider" +import { ClineProvider } from "../core/webview/ClineProvider" +import { t } from "../i18n" + +export const handleNewTask = async (params: { prompt?: string } | null | undefined) => { + let prompt = params?.prompt + if (!prompt) { + prompt = await vscode.window.showInputBox({ + prompt: t("common:input.task_prompt"), + placeHolder: t("common:input.task_placeholder"), + }) + } + if (!prompt) { + await vscode.commands.executeCommand("roo-cline.SidebarProvider.focus") + return + } + + await ClineProvider.handleCodeAction(COMMAND_IDS.NEW_TASK, "NEW_TASK", { + userInput: prompt, + }) +} diff --git a/src/activate/registerCommands.ts b/src/activate/registerCommands.ts index e17e71ad02a..2e1fac5e4b0 100644 --- a/src/activate/registerCommands.ts +++ b/src/activate/registerCommands.ts @@ -4,6 +4,7 @@ import delay from "delay" import { ClineProvider } from "../core/webview/ClineProvider" import { registerHumanRelayCallback, unregisterHumanRelayCallback, handleHumanRelayResponse } from "./humanRelay" +import { handleNewTask } from "./handleTask" // Store panel references in both modes let sidebarPanel: vscode.WebviewView | undefined = undefined @@ -85,6 +86,7 @@ const getCommandsMap = ({ context, outputChannel, provider }: RegisterCommandOpt "roo-cline.registerHumanRelayCallback": registerHumanRelayCallback, "roo-cline.unregisterHumanRelayCallback": unregisterHumanRelayCallback, "roo-cline.handleHumanRelayResponse": handleHumanRelayResponse, + "roo-cline.newTask": handleNewTask, "roo-cline.setCustomStoragePath": async () => { const { promptForCustomStoragePath } = await import("../shared/storagePathManager") await promptForCustomStoragePath() diff --git a/src/core/Cline.ts b/src/core/Cline.ts index 5e306332979..63bffed83f5 100644 --- a/src/core/Cline.ts +++ b/src/core/Cline.ts @@ -2893,7 +2893,7 @@ export class Cline extends EventEmitter { if (item.mimeType?.startsWith("image") && item.blob) { images.push(item.blob) } - }); + }) await this.say("mcp_server_response", resourceResultPretty, images) pushToolResult(formatResponse.toolResult(resourceResultPretty, images)) break diff --git a/src/core/CodeActionProvider.ts b/src/core/CodeActionProvider.ts index 285e6dac6cd..040021a51fa 100644 --- a/src/core/CodeActionProvider.ts +++ b/src/core/CodeActionProvider.ts @@ -7,6 +7,7 @@ export const ACTION_NAMES = { FIX_LOGIC: "Roo Code: Fix Logic", IMPROVE: "Roo Code: Improve Code", ADD_TO_CONTEXT: "Roo Code: Add to Context", + NEW_TASK: "Roo Code: New Task", } as const export const COMMAND_IDS = { @@ -14,6 +15,7 @@ export const COMMAND_IDS = { FIX: "roo-cline.fixCode", IMPROVE: "roo-cline.improveCode", ADD_TO_CONTEXT: "roo-cline.addToContext", + NEW_TASK: "roo-cline.newTask", } as const export class CodeActionProvider implements vscode.CodeActionProvider { diff --git a/src/core/__tests__/Cline.test.ts b/src/core/__tests__/Cline.test.ts index 5ae5f625fc3..a049d8efd2d 100644 --- a/src/core/__tests__/Cline.test.ts +++ b/src/core/__tests__/Cline.test.ts @@ -139,6 +139,10 @@ jest.mock("vscode", () => { } return { + CodeActionKind: { + QuickFix: { value: "quickfix" }, + RefactorRewrite: { value: "refactor.rewrite" }, + }, window: { createTextEditorDecorationType: jest.fn().mockReturnValue({ dispose: jest.fn(), diff --git a/src/core/webview/__tests__/ClineProvider.test.ts b/src/core/webview/__tests__/ClineProvider.test.ts index 1729831028a..c77e677f6fe 100644 --- a/src/core/webview/__tests__/ClineProvider.test.ts +++ b/src/core/webview/__tests__/ClineProvider.test.ts @@ -167,6 +167,10 @@ jest.mock("vscode", () => ({ joinPath: jest.fn(), file: jest.fn(), }, + CodeActionKind: { + QuickFix: { value: "quickfix" }, + RefactorRewrite: { value: "refactor.rewrite" }, + }, window: { showInformationMessage: jest.fn(), showErrorMessage: jest.fn(), diff --git a/src/i18n/locales/ca/common.json b/src/i18n/locales/ca/common.json index b85fb0eb327..cbedf48a224 100644 --- a/src/i18n/locales/ca/common.json +++ b/src/i18n/locales/ca/common.json @@ -1,4 +1,8 @@ { + "input": { + "task_prompt": "Què vols que faci Roo?", + "task_placeholder": "Escriu la teva tasca aquí" + }, "extension": { "name": "Roo Code", "description": "Tot un equip de desenvolupadors d'IA al teu editor." diff --git a/src/i18n/locales/de/common.json b/src/i18n/locales/de/common.json index 556185ee920..6e953dd9ab0 100644 --- a/src/i18n/locales/de/common.json +++ b/src/i18n/locales/de/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Bitte gib einen absoluten Pfad ein (z.B. D:\\RooCodeStorage oder /home/user/storage)", "enter_valid_path": "Bitte gib einen gültigen Pfad ein" + }, + "input": { + "task_prompt": "Was soll Roo tun?", + "task_placeholder": "Gib deine Aufgabe hier ein" } } diff --git a/src/i18n/locales/en/common.json b/src/i18n/locales/en/common.json index 60554f23c71..6f1e496f644 100644 --- a/src/i18n/locales/en/common.json +++ b/src/i18n/locales/en/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Please enter an absolute path (e.g. D:\\RooCodeStorage or /home/user/storage)", "enter_valid_path": "Please enter a valid path" + }, + "input": { + "task_prompt": "What should Roo do?", + "task_placeholder": "Type your task here" } } diff --git a/src/i18n/locales/es/common.json b/src/i18n/locales/es/common.json index 7faa80d7d67..52c87275c9f 100644 --- a/src/i18n/locales/es/common.json +++ b/src/i18n/locales/es/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Por favor, ingresa una ruta absoluta (por ejemplo, D:\\RooCodeStorage o /home/user/storage)", "enter_valid_path": "Por favor, ingresa una ruta válida" + }, + "input": { + "task_prompt": "¿Qué debe hacer Roo?", + "task_placeholder": "Escribe tu tarea aquí" } } diff --git a/src/i18n/locales/fr/common.json b/src/i18n/locales/fr/common.json index addadb4f805..cbbf692e4aa 100644 --- a/src/i18n/locales/fr/common.json +++ b/src/i18n/locales/fr/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Veuillez entrer un chemin absolu (ex. D:\\RooCodeStorage ou /home/user/storage)", "enter_valid_path": "Veuillez entrer un chemin valide" + }, + "input": { + "task_prompt": "Que doit faire Roo ?", + "task_placeholder": "Écris ta tâche ici" } } diff --git a/src/i18n/locales/hi/common.json b/src/i18n/locales/hi/common.json index 096ae98d073..eef4c4b751b 100644 --- a/src/i18n/locales/hi/common.json +++ b/src/i18n/locales/hi/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "कृपया एक पूर्ण पाथ दर्ज करें (उदाहरण: D:\\RooCodeStorage या /home/user/storage)", "enter_valid_path": "कृपया एक वैध पाथ दर्ज करें" + }, + "input": { + "task_prompt": "Roo को क्या करना है?", + "task_placeholder": "अपना कार्य यहाँ लिखें" } } diff --git a/src/i18n/locales/it/common.json b/src/i18n/locales/it/common.json index 3fde39957f3..2212ee2ff87 100644 --- a/src/i18n/locales/it/common.json +++ b/src/i18n/locales/it/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Inserisci un percorso assoluto (ad esempio D:\\RooCodeStorage o /home/user/storage)", "enter_valid_path": "Inserisci un percorso valido" + }, + "input": { + "task_prompt": "Cosa deve fare Roo?", + "task_placeholder": "Scrivi il tuo compito qui" } } diff --git a/src/i18n/locales/ja/common.json b/src/i18n/locales/ja/common.json index b7a26604e07..be37e832a15 100644 --- a/src/i18n/locales/ja/common.json +++ b/src/i18n/locales/ja/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "絶対パスを入力してください(例:D:\\RooCodeStorage または /home/user/storage)", "enter_valid_path": "有効なパスを入力してください" + }, + "input": { + "task_prompt": "Rooにどんなことをさせますか?", + "task_placeholder": "タスクをここに入力してください" } } diff --git a/src/i18n/locales/ko/common.json b/src/i18n/locales/ko/common.json index 71636cffedb..794aa8d59aa 100644 --- a/src/i18n/locales/ko/common.json +++ b/src/i18n/locales/ko/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "절대 경로를 입력하세요 (예: D:\\RooCodeStorage 또는 /home/user/storage)", "enter_valid_path": "유효한 경로를 입력하세요" + }, + "input": { + "task_prompt": "Roo에게 무엇을 시킬까요?", + "task_placeholder": "여기에 작업을 입력하세요" } } diff --git a/src/i18n/locales/pl/common.json b/src/i18n/locales/pl/common.json index 33231c5d85a..4218218c67e 100644 --- a/src/i18n/locales/pl/common.json +++ b/src/i18n/locales/pl/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Wprowadź pełną ścieżkę (np. D:\\RooCodeStorage lub /home/user/storage)", "enter_valid_path": "Wprowadź prawidłową ścieżkę" + }, + "input": { + "task_prompt": "Co ma zrobić Roo?", + "task_placeholder": "Wpisz swoje zadanie tutaj" } } diff --git a/src/i18n/locales/pt-BR/common.json b/src/i18n/locales/pt-BR/common.json index 17f36440654..844970f2201 100644 --- a/src/i18n/locales/pt-BR/common.json +++ b/src/i18n/locales/pt-BR/common.json @@ -1,4 +1,8 @@ { + "input": { + "task_prompt": "O que você quer que o Roo faça?", + "task_placeholder": "Digite sua tarefa aqui" + }, "extension": { "name": "Roo Code", "description": "Uma equipe completa de desenvolvedores com IA em seu editor." diff --git a/src/i18n/locales/tr/common.json b/src/i18n/locales/tr/common.json index 898deb47967..82464b73425 100644 --- a/src/i18n/locales/tr/common.json +++ b/src/i18n/locales/tr/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Lütfen mutlak bir yol girin (örn. D:\\RooCodeStorage veya /home/user/storage)", "enter_valid_path": "Lütfen geçerli bir yol girin" + }, + "input": { + "task_prompt": "Roo ne yapsın?", + "task_placeholder": "Görevini buraya yaz" } } diff --git a/src/i18n/locales/vi/common.json b/src/i18n/locales/vi/common.json index f07487989f0..a2824be1827 100644 --- a/src/i18n/locales/vi/common.json +++ b/src/i18n/locales/vi/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "Vui lòng nhập đường dẫn tuyệt đối (ví dụ: D:\\RooCodeStorage hoặc /home/user/storage)", "enter_valid_path": "Vui lòng nhập đường dẫn hợp lệ" + }, + "input": { + "task_prompt": "Bạn muốn Roo làm gì?", + "task_placeholder": "Nhập nhiệm vụ của bạn ở đây" } } diff --git a/src/i18n/locales/zh-CN/common.json b/src/i18n/locales/zh-CN/common.json index ce6079d1d05..b4c41db5e2d 100644 --- a/src/i18n/locales/zh-CN/common.json +++ b/src/i18n/locales/zh-CN/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "请输入绝对路径(例如 D:\\RooCodeStorage 或 /home/user/storage)", "enter_valid_path": "请输入有效的路径" + }, + "input": { + "task_prompt": "让Roo做什么?", + "task_placeholder": "在这里输入任务" } } diff --git a/src/i18n/locales/zh-TW/common.json b/src/i18n/locales/zh-TW/common.json index 1b6bb92654e..7b36be8145b 100644 --- a/src/i18n/locales/zh-TW/common.json +++ b/src/i18n/locales/zh-TW/common.json @@ -83,5 +83,9 @@ "path_placeholder": "D:\\RooCodeStorage", "enter_absolute_path": "請輸入絕對路徑(例如 D:\\RooCodeStorage 或 /home/user/storage)", "enter_valid_path": "請輸入有效的路徑" + }, + "input": { + "task_prompt": "讓Roo做什麼?", + "task_placeholder": "在這裡輸入任務" } } diff --git a/src/shared/support-prompt.ts b/src/shared/support-prompt.ts index ca22360632d..cc5e3e1d0df 100644 --- a/src/shared/support-prompt.ts +++ b/src/shared/support-prompt.ts @@ -25,24 +25,16 @@ export const createPrompt = (template: string, params: PromptParams): string => } interface SupportPromptConfig { - label: string - description: string template: string } const supportPromptConfigs: Record = { ENHANCE: { - label: "Enhance Prompt", - description: - "Use prompt enhancement to get tailored suggestions or improvements for your inputs. This ensures Roo understands your intent and provides the best possible responses. Available via the ✨ icon in chat.", template: `Generate an enhanced version of this prompt (reply with only the enhanced prompt - no conversation, explanations, lead-in, bullet points, placeholders, or surrounding quotes): \${userInput}`, }, EXPLAIN: { - label: "Explain Code", - description: - "Get detailed explanations of code snippets, functions, or entire files. Useful for understanding complex code or learning new patterns. Available in code actions (lightbulb icon in the editor) and the editor context menu (right-click on selected code).", template: `Explain the following code from file path @/\${filePath}: \${userInput} @@ -56,9 +48,6 @@ Please provide a clear and concise explanation of what this code does, including 3. Important patterns or techniques used`, }, FIX: { - label: "Fix Issues", - description: - "Get help identifying and resolving bugs, errors, or code quality issues. Provides step-by-step guidance for fixing problems. Available in code actions (lightbulb icon in the editor) and the editor context menu (right-click on selected code).", template: `Fix any issues in the following code from file path @/\${filePath} \${diagnosticText} \${userInput} @@ -74,9 +63,6 @@ Please: 4. Explain what was fixed and why`, }, IMPROVE: { - label: "Improve Code", - description: - "Receive suggestions for code optimization, better practices, and architectural improvements while maintaining functionality. Available in code actions (lightbulb icon in the editor) and the editor context menu (right-click on selected code).", template: `Improve the following code from file path @/\${filePath}: \${userInput} @@ -93,18 +79,12 @@ Please suggest improvements for: Provide the improved code along with explanations for each enhancement.`, }, ADD_TO_CONTEXT: { - label: "Add to Context", - description: - "Add context to your current task or conversation. Useful for providing additional information or clarifications. Available in code actions (lightbulb icon in the editor). and the editor context menu (right-click on selected code).", template: `\${filePath}: \`\`\` \${selectedText} \`\`\``, }, TERMINAL_ADD_TO_CONTEXT: { - label: "Add Terminal Content to Context", - description: - "Add terminal output to your current task or conversation. Useful for providing command outputs or logs. Available in the terminal context menu (right-click on selected terminal content).", template: `\${userInput} Terminal output: \`\`\` @@ -112,9 +92,6 @@ Terminal output: \`\`\``, }, TERMINAL_FIX: { - label: "Fix Terminal Command", - description: - "Get help fixing terminal commands that failed or need improvement. Available in the terminal context menu (right-click on selected terminal content).", template: `\${userInput} Fix this terminal command: \`\`\` @@ -127,9 +104,6 @@ Please: 3. Explain what was fixed and why`, }, TERMINAL_EXPLAIN: { - label: "Explain Terminal Command", - description: - "Get detailed explanations of terminal commands and their outputs. Available in the terminal context menu (right-click on selected terminal content).", template: `\${userInput} Explain this terminal command: \`\`\` @@ -141,6 +115,9 @@ Please provide: 2. Explanation of each part/flag 3. Expected output and behavior`, }, + NEW_TASK: { + template: `\${userInput}`, + }, } as const type SupportPromptType = keyof typeof supportPromptConfigs @@ -158,15 +135,6 @@ export const supportPrompt = { export type { SupportPromptType } -// Expose labels and descriptions for UI -export const supportPromptLabels = Object.fromEntries( - Object.entries(supportPromptConfigs).map(([key, config]) => [key, config.label]), -) as Record - -export const supportPromptDescriptions = Object.fromEntries( - Object.entries(supportPromptConfigs).map(([key, config]) => [key, config.description]), -) as Record - export type CustomSupportPrompts = { [key: string]: string | undefined } diff --git a/webview-ui/src/i18n/locales/ca/prompts.json b/webview-ui/src/i18n/locales/ca/prompts.json index f876bd1f7e0..f9fb0ec4ecd 100644 --- a/webview-ui/src/i18n/locales/ca/prompts.json +++ b/webview-ui/src/i18n/locales/ca/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Explicar comanda del terminal", "description": "Obtingueu explicacions detallades de les comandes del terminal i les seves sortides. Disponible al menú contextual del terminal (clic dret al contingut seleccionat del terminal)." + }, + "NEW_TASK": { + "label": "Iniciar nova tasca", + "description": "Inicieu una nova tasca amb l'entrada proporcionada. Disponible a la paleta de comandes." } } }, diff --git a/webview-ui/src/i18n/locales/de/prompts.json b/webview-ui/src/i18n/locales/de/prompts.json index ee2517c3fcb..a19a3496492 100644 --- a/webview-ui/src/i18n/locales/de/prompts.json +++ b/webview-ui/src/i18n/locales/de/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Terminal-Befehl erklären", "description": "Erhalten Sie detaillierte Erklärungen zu Terminal-Befehlen und deren Ausgaben. Verfügbar im Kontextmenü des Terminals (Rechtsklick auf ausgewählten Terminal-Inhalt)." + }, + "NEW_TASK": { + "label": "Neue Aufgabe starten", + "description": "Starte eine neue Aufgabe mit deiner Eingabe. Verfügbar in der Befehlspalette." } } }, diff --git a/webview-ui/src/i18n/locales/en/prompts.json b/webview-ui/src/i18n/locales/en/prompts.json index 4adc3ead4be..4fac1daf774 100644 --- a/webview-ui/src/i18n/locales/en/prompts.json +++ b/webview-ui/src/i18n/locales/en/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Explain Terminal Command", "description": "Get detailed explanations of terminal commands and their outputs. Available in the terminal context menu (right-click on selected terminal content)." + }, + "NEW_TASK": { + "label": "Start New Task", + "description": "Start a new task with user input. Available in the Command Palette." } } }, diff --git a/webview-ui/src/i18n/locales/es/prompts.json b/webview-ui/src/i18n/locales/es/prompts.json index ba0b2937ebc..c9da5aed4f8 100644 --- a/webview-ui/src/i18n/locales/es/prompts.json +++ b/webview-ui/src/i18n/locales/es/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Explicar comando de terminal", "description": "Obtén explicaciones detalladas de comandos de terminal y sus salidas. Disponible en el menú contextual de la terminal (clic derecho en el contenido seleccionado de la terminal)." + }, + "NEW_TASK": { + "label": "Iniciar nueva tarea", + "description": "Inicia una nueva tarea con entrada del usuario. Disponible en la Paleta de comandos." } } }, diff --git a/webview-ui/src/i18n/locales/fr/prompts.json b/webview-ui/src/i18n/locales/fr/prompts.json index c4ac745b812..1428c445a9d 100644 --- a/webview-ui/src/i18n/locales/fr/prompts.json +++ b/webview-ui/src/i18n/locales/fr/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Expliquer la commande du terminal", "description": "Obtenez des explications détaillées sur les commandes du terminal et leurs sorties. Disponible dans le menu contextuel du terminal (clic droit sur le contenu sélectionné du terminal)." + }, + "NEW_TASK": { + "label": "Démarrer une nouvelle tâche", + "description": "Démarre une nouvelle tâche avec ton entrée. Disponible dans la palette de commandes." } } }, diff --git a/webview-ui/src/i18n/locales/hi/prompts.json b/webview-ui/src/i18n/locales/hi/prompts.json index c0c83afc2f3..87eaf11e4ed 100644 --- a/webview-ui/src/i18n/locales/hi/prompts.json +++ b/webview-ui/src/i18n/locales/hi/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "टर्मिनल कमांड समझाएँ", "description": "टर्मिनल कमांड और उनके आउटपुट के विस्तृत स्पष्टीकरण प्राप्त करें। टर्मिनल के कंटेक्स्ट मेनू (चयनित टर्मिनल सामग्री पर राइट-क्लिक) में उपलब्ध है।" + }, + "NEW_TASK": { + "label": "नया कार्य शुरू करें", + "description": "इनपुट के साथ नया कार्य शुरू करें। कमांड पैलेट में उपलब्ध है।" } } }, diff --git a/webview-ui/src/i18n/locales/it/prompts.json b/webview-ui/src/i18n/locales/it/prompts.json index 15d52b65d89..94812f94226 100644 --- a/webview-ui/src/i18n/locales/it/prompts.json +++ b/webview-ui/src/i18n/locales/it/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Spiega comando del terminale", "description": "Ottieni spiegazioni dettagliate sui comandi del terminale e sui loro output. Disponibile nel menu contestuale del terminale (clic destro sul contenuto selezionato del terminale)." + }, + "NEW_TASK": { + "label": "Avvia nuova attività", + "description": "Avvia una nuova attività con il tuo input. Disponibile nella palette dei comandi." } } }, diff --git a/webview-ui/src/i18n/locales/ja/prompts.json b/webview-ui/src/i18n/locales/ja/prompts.json index 87059150d73..09d3a79cfba 100644 --- a/webview-ui/src/i18n/locales/ja/prompts.json +++ b/webview-ui/src/i18n/locales/ja/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "ターミナルコマンドを説明", "description": "ターミナルコマンドとその出力の詳細な説明を得ることができます。ターミナルのコンテキストメニュー(選択したターミナルの内容で右クリック)から利用できます。" + }, + "NEW_TASK": { + "label": "新しいタスクを開始", + "description": "入力内容で新しいタスクを開始できます。コマンドパレットから利用できます。" } } }, diff --git a/webview-ui/src/i18n/locales/ko/prompts.json b/webview-ui/src/i18n/locales/ko/prompts.json index d07a0de3c7d..c8d2deebd1a 100644 --- a/webview-ui/src/i18n/locales/ko/prompts.json +++ b/webview-ui/src/i18n/locales/ko/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "터미널 명령 설명", "description": "터미널 명령과 그 출력에 대한 상세한 설명을 얻을 수 있습니다. 터미널 컨텍스트 메뉴(선택한 터미널 콘텐츠에서 우클릭)에서 이용 가능합니다." + }, + "NEW_TASK": { + "label": "새 작업 시작", + "description": "입력한 내용으로 새 작업을 시작할 수 있습니다. 명령 팔레트에서 이용 가능합니다." } } }, diff --git a/webview-ui/src/i18n/locales/pl/prompts.json b/webview-ui/src/i18n/locales/pl/prompts.json index 1ea10ea1412..8b4320b3c31 100644 --- a/webview-ui/src/i18n/locales/pl/prompts.json +++ b/webview-ui/src/i18n/locales/pl/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Wyjaśnij polecenie terminala", "description": "Uzyskaj szczegółowe wyjaśnienia poleceń terminala i ich wyników. Dostępne w menu kontekstowym terminala (prawy przycisk myszy na wybranej zawartości terminala)." + }, + "NEW_TASK": { + "label": "Rozpocznij nowe zadanie", + "description": "Rozpocznij nowe zadanie z wprowadzonymi danymi. Dostępne w palecie poleceń." } } }, diff --git a/webview-ui/src/i18n/locales/pt-BR/prompts.json b/webview-ui/src/i18n/locales/pt-BR/prompts.json index b65f9930fd4..3956c299dab 100644 --- a/webview-ui/src/i18n/locales/pt-BR/prompts.json +++ b/webview-ui/src/i18n/locales/pt-BR/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Explicar Comando do Terminal", "description": "Obtenha explicações detalhadas de comandos de terminal e suas saídas. Available in the terminal context menu (right-click on selected terminal content)." + }, + "NEW_TASK": { + "label": "Iniciar Nova Tarefa", + "description": "Inicie uma nova tarefa com a entrada fornecida. Disponível na paleta de comandos." } } }, diff --git a/webview-ui/src/i18n/locales/tr/prompts.json b/webview-ui/src/i18n/locales/tr/prompts.json index b9a6a808cdf..bf1d7eb9ceb 100644 --- a/webview-ui/src/i18n/locales/tr/prompts.json +++ b/webview-ui/src/i18n/locales/tr/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Terminal Komutunu Açıkla", "description": "Terminal komutları ve çıktıları hakkında ayrıntılı açıklamalar alın. Terminal bağlam menüsünde (seçili terminal içeriğine sağ tıklayın) kullanılabilir." + }, + "NEW_TASK": { + "label": "Yeni Görev Başlat", + "description": "Girdiyle yeni bir görev başlat. Komut paletinde kullanılabilir." } } }, diff --git a/webview-ui/src/i18n/locales/vi/prompts.json b/webview-ui/src/i18n/locales/vi/prompts.json index e541a38bc2f..061550e21b1 100644 --- a/webview-ui/src/i18n/locales/vi/prompts.json +++ b/webview-ui/src/i18n/locales/vi/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "Giải thích lệnh terminal", "description": "Nhận giải thích chi tiết về lệnh terminal và đầu ra của chúng. Có sẵn trong menu ngữ cảnh terminal (nhấp chuột phải vào nội dung terminal đã chọn)." + }, + "NEW_TASK": { + "label": "Bắt đầu tác vụ mới", + "description": "Bắt đầu tác vụ mới với nội dung đã nhập. Có sẵn trong bảng lệnh." } } }, diff --git a/webview-ui/src/i18n/locales/zh-CN/prompts.json b/webview-ui/src/i18n/locales/zh-CN/prompts.json index 0b9af777ba0..e80f9c8c6c6 100644 --- a/webview-ui/src/i18n/locales/zh-CN/prompts.json +++ b/webview-ui/src/i18n/locales/zh-CN/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "解释终端命令", "description": "获取对终端命令及其输出的详细解释。可在终端上下文菜单(右键点击选中的终端内容)中使用。" + }, + "NEW_TASK": { + "label": "开始新任务", + "description": "使用输入内容开始新任务。可在命令面板中使用。" } } }, diff --git a/webview-ui/src/i18n/locales/zh-TW/prompts.json b/webview-ui/src/i18n/locales/zh-TW/prompts.json index 0eb5c58d925..23df04b1c44 100644 --- a/webview-ui/src/i18n/locales/zh-TW/prompts.json +++ b/webview-ui/src/i18n/locales/zh-TW/prompts.json @@ -91,6 +91,10 @@ "TERMINAL_EXPLAIN": { "label": "解釋終端命令", "description": "獲取對終端命令及其輸出的詳細解釋。可在終端右鍵選單(右鍵點擊選中的終端內容)中使用。" + }, + "NEW_TASK": { + "label": "開始新工作", + "description": "使用輸入內容開始新工作。可在命令選擇區中使用。" } } },