@roo-code/types 1.35.0 → 1.37.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +150 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +731 -116
- package/dist/index.d.ts +731 -116
- package/dist/index.js +144 -10
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -31,6 +31,9 @@ __export(index_exports, {
|
|
|
31
31
|
CODEBASE_INDEX_DEFAULTS: () => CODEBASE_INDEX_DEFAULTS,
|
|
32
32
|
DEEP_SEEK_DEFAULT_TEMPERATURE: () => DEEP_SEEK_DEFAULT_TEMPERATURE,
|
|
33
33
|
DEFAULT_CONSECUTIVE_MISTAKE_LIMIT: () => DEFAULT_CONSECUTIVE_MISTAKE_LIMIT,
|
|
34
|
+
DEFAULT_MODES: () => DEFAULT_MODES,
|
|
35
|
+
DEFAULT_TERMINAL_OUTPUT_CHARACTER_LIMIT: () => DEFAULT_TERMINAL_OUTPUT_CHARACTER_LIMIT,
|
|
36
|
+
DEFAULT_WRITE_DELAY_MS: () => DEFAULT_WRITE_DELAY_MS,
|
|
34
37
|
EVALS_SETTINGS: () => EVALS_SETTINGS,
|
|
35
38
|
EVALS_TIMEOUT: () => EVALS_TIMEOUT,
|
|
36
39
|
GLAMA_DEFAULT_TEMPERATURE: () => GLAMA_DEFAULT_TEMPERATURE,
|
|
@@ -42,6 +45,7 @@ __export(index_exports, {
|
|
|
42
45
|
LMSTUDIO_DEFAULT_TEMPERATURE: () => LMSTUDIO_DEFAULT_TEMPERATURE,
|
|
43
46
|
MISTRAL_DEFAULT_TEMPERATURE: () => MISTRAL_DEFAULT_TEMPERATURE,
|
|
44
47
|
MODEL_ID_KEYS: () => MODEL_ID_KEYS,
|
|
48
|
+
MOONSHOT_DEFAULT_TEMPERATURE: () => MOONSHOT_DEFAULT_TEMPERATURE,
|
|
45
49
|
OPENAI_AZURE_AI_INFERENCE_PATH: () => OPENAI_AZURE_AI_INFERENCE_PATH,
|
|
46
50
|
OPENAI_NATIVE_DEFAULT_TEMPERATURE: () => OPENAI_NATIVE_DEFAULT_TEMPERATURE,
|
|
47
51
|
OPENROUTER_DEFAULT_PROVIDER_NAME: () => OPENROUTER_DEFAULT_PROVIDER_NAME,
|
|
@@ -131,6 +135,8 @@ __export(index_exports, {
|
|
|
131
135
|
modelInfoSchema: () => modelInfoSchema,
|
|
132
136
|
modelParameters: () => modelParameters,
|
|
133
137
|
modelParametersSchema: () => modelParametersSchema,
|
|
138
|
+
moonshotDefaultModelId: () => moonshotDefaultModelId,
|
|
139
|
+
moonshotModels: () => moonshotModels,
|
|
134
140
|
ollamaDefaultModelId: () => ollamaDefaultModelId,
|
|
135
141
|
ollamaDefaultModelInfo: () => ollamaDefaultModelInfo,
|
|
136
142
|
openAiModelInfoSaneDefaults: () => openAiModelInfoSaneDefaults,
|
|
@@ -839,6 +845,15 @@ var chutesModels = {
|
|
|
839
845
|
outputPrice: 0,
|
|
840
846
|
description: "DeepSeek V3 (0324) model."
|
|
841
847
|
},
|
|
848
|
+
"Qwen/Qwen3-235B-A22B-Instruct-2507": {
|
|
849
|
+
maxTokens: 32768,
|
|
850
|
+
contextWindow: 262144,
|
|
851
|
+
supportsImages: false,
|
|
852
|
+
supportsPromptCache: false,
|
|
853
|
+
inputPrice: 0,
|
|
854
|
+
outputPrice: 0,
|
|
855
|
+
description: "Qwen3 235B A22B Instruct 2507 model with 262K context window."
|
|
856
|
+
},
|
|
842
857
|
"Qwen/Qwen3-235B-A22B": {
|
|
843
858
|
maxTokens: 32768,
|
|
844
859
|
contextWindow: 40960,
|
|
@@ -1539,6 +1554,27 @@ var mistralModels = {
|
|
|
1539
1554
|
};
|
|
1540
1555
|
var MISTRAL_DEFAULT_TEMPERATURE = 0;
|
|
1541
1556
|
|
|
1557
|
+
// src/providers/moonshot.ts
|
|
1558
|
+
var moonshotDefaultModelId = "kimi-k2-0711-preview";
|
|
1559
|
+
var moonshotModels = {
|
|
1560
|
+
"kimi-k2-0711-preview": {
|
|
1561
|
+
maxTokens: 32e3,
|
|
1562
|
+
contextWindow: 131072,
|
|
1563
|
+
supportsImages: false,
|
|
1564
|
+
supportsPromptCache: true,
|
|
1565
|
+
inputPrice: 0.6,
|
|
1566
|
+
// $0.60 per million tokens (cache miss)
|
|
1567
|
+
outputPrice: 2.5,
|
|
1568
|
+
// $2.50 per million tokens
|
|
1569
|
+
cacheWritesPrice: 0,
|
|
1570
|
+
// $0 per million tokens (cache miss)
|
|
1571
|
+
cacheReadsPrice: 0.15,
|
|
1572
|
+
// $0.15 per million tokens (cache hit)
|
|
1573
|
+
description: `Kimi K2 is a state-of-the-art mixture-of-experts (MoE) language model with 32 billion activated parameters and 1 trillion total parameters.`
|
|
1574
|
+
}
|
|
1575
|
+
};
|
|
1576
|
+
var MOONSHOT_DEFAULT_TEMPERATURE = 0.6;
|
|
1577
|
+
|
|
1542
1578
|
// src/providers/ollama.ts
|
|
1543
1579
|
var ollamaDefaultModelId = "devstral:24b";
|
|
1544
1580
|
var ollamaDefaultModelInfo = {
|
|
@@ -2115,6 +2151,15 @@ var vertexModels = {
|
|
|
2115
2151
|
cacheWritesPrice: 1,
|
|
2116
2152
|
maxThinkingTokens: 24576,
|
|
2117
2153
|
supportsReasoningBudget: true
|
|
2154
|
+
},
|
|
2155
|
+
"llama-4-maverick-17b-128e-instruct-maas": {
|
|
2156
|
+
maxTokens: 8192,
|
|
2157
|
+
contextWindow: 131072,
|
|
2158
|
+
supportsImages: false,
|
|
2159
|
+
supportsPromptCache: false,
|
|
2160
|
+
inputPrice: 0.35,
|
|
2161
|
+
outputPrice: 1.15,
|
|
2162
|
+
description: "Meta Llama 4 Maverick 17B Instruct model, 128K context."
|
|
2118
2163
|
}
|
|
2119
2164
|
};
|
|
2120
2165
|
var VERTEX_REGIONS = [
|
|
@@ -2396,7 +2441,7 @@ var CODEBASE_INDEX_DEFAULTS = {
|
|
|
2396
2441
|
var codebaseIndexConfigSchema = import_zod.z.object({
|
|
2397
2442
|
codebaseIndexEnabled: import_zod.z.boolean().optional(),
|
|
2398
2443
|
codebaseIndexQdrantUrl: import_zod.z.string().optional(),
|
|
2399
|
-
codebaseIndexEmbedderProvider: import_zod.z.enum(["openai", "ollama", "openai-compatible", "gemini"]).optional(),
|
|
2444
|
+
codebaseIndexEmbedderProvider: import_zod.z.enum(["openai", "ollama", "openai-compatible", "gemini", "mistral"]).optional(),
|
|
2400
2445
|
codebaseIndexEmbedderBaseUrl: import_zod.z.string().optional(),
|
|
2401
2446
|
codebaseIndexEmbedderModelId: import_zod.z.string().optional(),
|
|
2402
2447
|
codebaseIndexEmbedderModelDimension: import_zod.z.number().optional(),
|
|
@@ -2410,7 +2455,8 @@ var codebaseIndexModelsSchema = import_zod.z.object({
|
|
|
2410
2455
|
openai: import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional(),
|
|
2411
2456
|
ollama: import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional(),
|
|
2412
2457
|
"openai-compatible": import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional(),
|
|
2413
|
-
gemini: import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional()
|
|
2458
|
+
gemini: import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional(),
|
|
2459
|
+
mistral: import_zod.z.record(import_zod.z.string(), import_zod.z.object({ dimension: import_zod.z.number() })).optional()
|
|
2414
2460
|
});
|
|
2415
2461
|
var codebaseIndexProviderSchema = import_zod.z.object({
|
|
2416
2462
|
codeIndexOpenAiKey: import_zod.z.string().optional(),
|
|
@@ -2418,7 +2464,8 @@ var codebaseIndexProviderSchema = import_zod.z.object({
|
|
|
2418
2464
|
codebaseIndexOpenAiCompatibleBaseUrl: import_zod.z.string().optional(),
|
|
2419
2465
|
codebaseIndexOpenAiCompatibleApiKey: import_zod.z.string().optional(),
|
|
2420
2466
|
codebaseIndexOpenAiCompatibleModelDimension: import_zod.z.number().optional(),
|
|
2421
|
-
codebaseIndexGeminiApiKey: import_zod.z.string().optional()
|
|
2467
|
+
codebaseIndexGeminiApiKey: import_zod.z.string().optional(),
|
|
2468
|
+
codebaseIndexMistralApiKey: import_zod.z.string().optional()
|
|
2422
2469
|
});
|
|
2423
2470
|
|
|
2424
2471
|
// src/cloud.ts
|
|
@@ -2484,6 +2531,7 @@ var providerNames = [
|
|
|
2484
2531
|
"gemini-cli",
|
|
2485
2532
|
"openai-native",
|
|
2486
2533
|
"mistral",
|
|
2534
|
+
"moonshot",
|
|
2487
2535
|
"deepseek",
|
|
2488
2536
|
"unbound",
|
|
2489
2537
|
"requesty",
|
|
@@ -2492,7 +2540,8 @@ var providerNames = [
|
|
|
2492
2540
|
"xai",
|
|
2493
2541
|
"groq",
|
|
2494
2542
|
"chutes",
|
|
2495
|
-
"litellm"
|
|
2543
|
+
"litellm",
|
|
2544
|
+
"huggingface"
|
|
2496
2545
|
];
|
|
2497
2546
|
var providerNamesSchema = import_zod3.z.enum(providerNames);
|
|
2498
2547
|
var providerSettingsEntrySchema = import_zod3.z.object({
|
|
@@ -2504,6 +2553,7 @@ var DEFAULT_CONSECUTIVE_MISTAKE_LIMIT = 3;
|
|
|
2504
2553
|
var baseProviderSettingsSchema = import_zod3.z.object({
|
|
2505
2554
|
includeMaxTokens: import_zod3.z.boolean().optional(),
|
|
2506
2555
|
diffEnabled: import_zod3.z.boolean().optional(),
|
|
2556
|
+
todoListEnabled: import_zod3.z.boolean().optional(),
|
|
2507
2557
|
fuzzyMatchThreshold: import_zod3.z.number().optional(),
|
|
2508
2558
|
modelTemperature: import_zod3.z.number().nullish(),
|
|
2509
2559
|
rateLimitSeconds: import_zod3.z.number().optional(),
|
|
@@ -2609,6 +2659,10 @@ var deepSeekSchema = apiModelIdProviderModelSchema.extend({
|
|
|
2609
2659
|
deepSeekBaseUrl: import_zod3.z.string().optional(),
|
|
2610
2660
|
deepSeekApiKey: import_zod3.z.string().optional()
|
|
2611
2661
|
});
|
|
2662
|
+
var moonshotSchema = apiModelIdProviderModelSchema.extend({
|
|
2663
|
+
moonshotBaseUrl: import_zod3.z.union([import_zod3.z.literal("https://api.moonshot.ai/v1"), import_zod3.z.literal("https://api.moonshot.cn/v1")]).optional(),
|
|
2664
|
+
moonshotApiKey: import_zod3.z.string().optional()
|
|
2665
|
+
});
|
|
2612
2666
|
var unboundSchema = baseProviderSettingsSchema.extend({
|
|
2613
2667
|
unboundApiKey: import_zod3.z.string().optional(),
|
|
2614
2668
|
unboundModelId: import_zod3.z.string().optional()
|
|
@@ -2627,6 +2681,11 @@ var xaiSchema = apiModelIdProviderModelSchema.extend({
|
|
|
2627
2681
|
var groqSchema = apiModelIdProviderModelSchema.extend({
|
|
2628
2682
|
groqApiKey: import_zod3.z.string().optional()
|
|
2629
2683
|
});
|
|
2684
|
+
var huggingFaceSchema = baseProviderSettingsSchema.extend({
|
|
2685
|
+
huggingFaceApiKey: import_zod3.z.string().optional(),
|
|
2686
|
+
huggingFaceModelId: import_zod3.z.string().optional(),
|
|
2687
|
+
huggingFaceInferenceProvider: import_zod3.z.string().optional()
|
|
2688
|
+
});
|
|
2630
2689
|
var chutesSchema = apiModelIdProviderModelSchema.extend({
|
|
2631
2690
|
chutesApiKey: import_zod3.z.string().optional()
|
|
2632
2691
|
});
|
|
@@ -2654,12 +2713,14 @@ var providerSettingsSchemaDiscriminated = import_zod3.z.discriminatedUnion("apiP
|
|
|
2654
2713
|
openAiNativeSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("openai-native") })),
|
|
2655
2714
|
mistralSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("mistral") })),
|
|
2656
2715
|
deepSeekSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("deepseek") })),
|
|
2716
|
+
moonshotSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("moonshot") })),
|
|
2657
2717
|
unboundSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("unbound") })),
|
|
2658
2718
|
requestySchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("requesty") })),
|
|
2659
2719
|
humanRelaySchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("human-relay") })),
|
|
2660
2720
|
fakeAiSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("fake-ai") })),
|
|
2661
2721
|
xaiSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("xai") })),
|
|
2662
2722
|
groqSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("groq") })),
|
|
2723
|
+
huggingFaceSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("huggingface") })),
|
|
2663
2724
|
chutesSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("chutes") })),
|
|
2664
2725
|
litellmSchema.merge(import_zod3.z.object({ apiProvider: import_zod3.z.literal("litellm") })),
|
|
2665
2726
|
defaultSchema
|
|
@@ -2681,12 +2742,14 @@ var providerSettingsSchema = import_zod3.z.object({
|
|
|
2681
2742
|
...openAiNativeSchema.shape,
|
|
2682
2743
|
...mistralSchema.shape,
|
|
2683
2744
|
...deepSeekSchema.shape,
|
|
2745
|
+
...moonshotSchema.shape,
|
|
2684
2746
|
...unboundSchema.shape,
|
|
2685
2747
|
...requestySchema.shape,
|
|
2686
2748
|
...humanRelaySchema.shape,
|
|
2687
2749
|
...fakeAiSchema.shape,
|
|
2688
2750
|
...xaiSchema.shape,
|
|
2689
2751
|
...groqSchema.shape,
|
|
2752
|
+
...huggingFaceSchema.shape,
|
|
2690
2753
|
...chutesSchema.shape,
|
|
2691
2754
|
...litellmSchema.shape,
|
|
2692
2755
|
...codebaseIndexProviderSchema.shape
|
|
@@ -2702,18 +2765,19 @@ var MODEL_ID_KEYS = [
|
|
|
2702
2765
|
"lmStudioDraftModelId",
|
|
2703
2766
|
"unboundModelId",
|
|
2704
2767
|
"requestyModelId",
|
|
2705
|
-
"litellmModelId"
|
|
2768
|
+
"litellmModelId",
|
|
2769
|
+
"huggingFaceModelId"
|
|
2706
2770
|
];
|
|
2707
2771
|
var getModelId = (settings) => {
|
|
2708
2772
|
const modelIdKey = MODEL_ID_KEYS.find((key) => settings[key]);
|
|
2709
2773
|
return modelIdKey ? settings[modelIdKey] : void 0;
|
|
2710
2774
|
};
|
|
2711
|
-
var ANTHROPIC_STYLE_PROVIDERS = ["anthropic", "claude-code"];
|
|
2775
|
+
var ANTHROPIC_STYLE_PROVIDERS = ["anthropic", "claude-code", "bedrock"];
|
|
2712
2776
|
var getApiProtocol = (provider, modelId) => {
|
|
2713
2777
|
if (provider && ANTHROPIC_STYLE_PROVIDERS.includes(provider)) {
|
|
2714
2778
|
return "anthropic";
|
|
2715
2779
|
}
|
|
2716
|
-
if (provider &&
|
|
2780
|
+
if (provider && provider === "vertex" && modelId && modelId.toLowerCase().includes("claude")) {
|
|
2717
2781
|
return "anthropic";
|
|
2718
2782
|
}
|
|
2719
2783
|
return "openai";
|
|
@@ -3072,6 +3136,52 @@ var promptComponentSchema = import_zod9.z.object({
|
|
|
3072
3136
|
});
|
|
3073
3137
|
var customModePromptsSchema = import_zod9.z.record(import_zod9.z.string(), promptComponentSchema.optional());
|
|
3074
3138
|
var customSupportPromptsSchema = import_zod9.z.record(import_zod9.z.string(), import_zod9.z.string().optional());
|
|
3139
|
+
var DEFAULT_MODES = [
|
|
3140
|
+
{
|
|
3141
|
+
slug: "architect",
|
|
3142
|
+
name: "\u{1F3D7}\uFE0F Architect",
|
|
3143
|
+
roleDefinition: "You are Roo, an experienced technical leader who is inquisitive and an excellent planner. Your goal is to gather information and get context to create a detailed plan for accomplishing the user's task, which the user will review and approve before they switch into another mode to implement the solution.",
|
|
3144
|
+
whenToUse: "Use this mode when you need to plan, design, or strategize before implementation. Perfect for breaking down complex problems, creating technical specifications, designing system architecture, or brainstorming solutions before coding.",
|
|
3145
|
+
description: "Plan and design before implementation",
|
|
3146
|
+
groups: ["read", ["edit", { fileRegex: "\\.md$", description: "Markdown files only" }], "browser", "mcp"],
|
|
3147
|
+
customInstructions: "1. Do some information gathering (using provided tools) to get more context about the task.\n\n2. You should also ask the user clarifying questions to get a better understanding of the task.\n\n3. Once you've gained more context about the user's request, break down the task into clear, actionable steps and create a todo list using the `update_todo_list` tool. Each todo item should be:\n - Specific and actionable\n - Listed in logical execution order\n - Focused on a single, well-defined outcome\n - Clear enough that another mode could execute it independently\n\n **Note:** If the `update_todo_list` tool is not available, write the plan to a markdown file (e.g., `plan.md` or `todo.md`) instead.\n\n4. As you gather more information or discover new requirements, update the todo list to reflect the current understanding of what needs to be accomplished.\n\n5. Ask the user if they are pleased with this plan, or if they would like to make any changes. Think of this as a brainstorming session where you can discuss the task and refine the todo list.\n\n6. Include Mermaid diagrams if they help clarify complex workflows or system architecture. Please avoid using double quotes (\"\") and parentheses () inside square brackets ([]) in Mermaid diagrams, as this can cause parsing errors.\n\n7. Use the switch_mode tool to request that the user switch to another mode to implement the solution.\n\n**IMPORTANT: Focus on creating clear, actionable todo lists rather than lengthy markdown documents. Use the todo list as your primary planning tool to track and organize the work that needs to be done.**"
|
|
3148
|
+
},
|
|
3149
|
+
{
|
|
3150
|
+
slug: "code",
|
|
3151
|
+
name: "\u{1F4BB} Code",
|
|
3152
|
+
roleDefinition: "You are Roo, a highly skilled software engineer with extensive knowledge in many programming languages, frameworks, design patterns, and best practices.",
|
|
3153
|
+
whenToUse: "Use this mode when you need to write, modify, or refactor code. Ideal for implementing features, fixing bugs, creating new files, or making code improvements across any programming language or framework.",
|
|
3154
|
+
description: "Write, modify, and refactor code",
|
|
3155
|
+
groups: ["read", "edit", "browser", "command", "mcp"]
|
|
3156
|
+
},
|
|
3157
|
+
{
|
|
3158
|
+
slug: "ask",
|
|
3159
|
+
name: "\u2753 Ask",
|
|
3160
|
+
roleDefinition: "You are Roo, a knowledgeable technical assistant focused on answering questions and providing information about software development, technology, and related topics.",
|
|
3161
|
+
whenToUse: "Use this mode when you need explanations, documentation, or answers to technical questions. Best for understanding concepts, analyzing existing code, getting recommendations, or learning about technologies without making changes.",
|
|
3162
|
+
description: "Get answers and explanations",
|
|
3163
|
+
groups: ["read", "browser", "mcp"],
|
|
3164
|
+
customInstructions: "You can analyze code, explain concepts, and access external resources. Always answer the user's questions thoroughly, and do not switch to implementing code unless explicitly requested by the user. Include Mermaid diagrams when they clarify your response."
|
|
3165
|
+
},
|
|
3166
|
+
{
|
|
3167
|
+
slug: "debug",
|
|
3168
|
+
name: "\u{1FAB2} Debug",
|
|
3169
|
+
roleDefinition: "You are Roo, an expert software debugger specializing in systematic problem diagnosis and resolution.",
|
|
3170
|
+
whenToUse: "Use this mode when you're troubleshooting issues, investigating errors, or diagnosing problems. Specialized in systematic debugging, adding logging, analyzing stack traces, and identifying root causes before applying fixes.",
|
|
3171
|
+
description: "Diagnose and fix software issues",
|
|
3172
|
+
groups: ["read", "edit", "browser", "command", "mcp"],
|
|
3173
|
+
customInstructions: "Reflect on 5-7 different possible sources of the problem, distill those down to 1-2 most likely sources, and then add logs to validate your assumptions. Explicitly ask the user to confirm the diagnosis before fixing the problem."
|
|
3174
|
+
},
|
|
3175
|
+
{
|
|
3176
|
+
slug: "orchestrator",
|
|
3177
|
+
name: "\u{1FA83} Orchestrator",
|
|
3178
|
+
roleDefinition: "You are Roo, a strategic workflow orchestrator who coordinates complex tasks by delegating them to appropriate specialized modes. You have a comprehensive understanding of each mode's capabilities and limitations, allowing you to effectively break down complex problems into discrete tasks that can be solved by different specialists.",
|
|
3179
|
+
whenToUse: "Use this mode for complex, multi-step projects that require coordination across different specialties. Ideal when you need to break down large tasks into subtasks, manage workflows, or coordinate work that spans multiple domains or expertise areas.",
|
|
3180
|
+
description: "Coordinate tasks across multiple modes",
|
|
3181
|
+
groups: [],
|
|
3182
|
+
customInstructions: "Your role is to coordinate complex workflows by delegating tasks to specialized modes. As an orchestrator, you should:\n\n1. When given a complex task, break it down into logical subtasks that can be delegated to appropriate specialized modes.\n\n2. For each subtask, use the `new_task` tool to delegate. Choose the most appropriate mode for the subtask's specific goal and provide comprehensive instructions in the `message` parameter. These instructions must include:\n * All necessary context from the parent task or previous subtasks required to complete the work.\n * A clearly defined scope, specifying exactly what the subtask should accomplish.\n * An explicit statement that the subtask should *only* perform the work outlined in these instructions and not deviate.\n * An instruction for the subtask to signal completion by using the `attempt_completion` tool, providing a concise yet thorough summary of the outcome in the `result` parameter, keeping in mind that this summary will be the source of truth used to keep track of what was completed on this project.\n * A statement that these specific instructions supersede any conflicting general instructions the subtask's mode might have.\n\n3. Track and manage the progress of all subtasks. When a subtask is completed, analyze its results and determine the next steps.\n\n4. Help the user understand how the different subtasks fit together in the overall workflow. Provide clear reasoning about why you're delegating specific tasks to specific modes.\n\n5. When all subtasks are completed, synthesize the results and provide a comprehensive overview of what was accomplished.\n\n6. Ask clarifying questions when necessary to better understand how to break down complex tasks effectively.\n\n7. Suggest improvements to the workflow based on the results of completed subtasks.\n\nUse subtasks to maintain clarity. If a request significantly shifts focus or requires a different expertise (mode), consider creating a subtask rather than overloading the current one."
|
|
3183
|
+
}
|
|
3184
|
+
];
|
|
3075
3185
|
|
|
3076
3186
|
// src/vscode.ts
|
|
3077
3187
|
var import_zod10 = require("zod");
|
|
@@ -3123,6 +3233,8 @@ var languagesSchema = import_zod10.z.enum(languages);
|
|
|
3123
3233
|
var isLanguage = (value) => languages.includes(value);
|
|
3124
3234
|
|
|
3125
3235
|
// src/global-settings.ts
|
|
3236
|
+
var DEFAULT_WRITE_DELAY_MS = 1e3;
|
|
3237
|
+
var DEFAULT_TERMINAL_OUTPUT_CHARACTER_LIMIT = 5e4;
|
|
3126
3238
|
var globalSettingsSchema = import_zod11.z.object({
|
|
3127
3239
|
currentApiConfigName: import_zod11.z.string().optional(),
|
|
3128
3240
|
listApiConfigMeta: import_zod11.z.array(providerSettingsEntrySchema).optional(),
|
|
@@ -3138,7 +3250,7 @@ var globalSettingsSchema = import_zod11.z.object({
|
|
|
3138
3250
|
alwaysAllowWrite: import_zod11.z.boolean().optional(),
|
|
3139
3251
|
alwaysAllowWriteOutsideWorkspace: import_zod11.z.boolean().optional(),
|
|
3140
3252
|
alwaysAllowWriteProtected: import_zod11.z.boolean().optional(),
|
|
3141
|
-
writeDelayMs: import_zod11.z.number().optional(),
|
|
3253
|
+
writeDelayMs: import_zod11.z.number().min(0).optional(),
|
|
3142
3254
|
alwaysAllowBrowser: import_zod11.z.boolean().optional(),
|
|
3143
3255
|
alwaysApproveResubmit: import_zod11.z.boolean().optional(),
|
|
3144
3256
|
requestDelaySeconds: import_zod11.z.number().optional(),
|
|
@@ -3152,11 +3264,22 @@ var globalSettingsSchema = import_zod11.z.object({
|
|
|
3152
3264
|
allowedCommands: import_zod11.z.array(import_zod11.z.string()).optional(),
|
|
3153
3265
|
deniedCommands: import_zod11.z.array(import_zod11.z.string()).optional(),
|
|
3154
3266
|
commandExecutionTimeout: import_zod11.z.number().optional(),
|
|
3267
|
+
commandTimeoutAllowlist: import_zod11.z.array(import_zod11.z.string()).optional(),
|
|
3155
3268
|
preventCompletionWithOpenTodos: import_zod11.z.boolean().optional(),
|
|
3156
3269
|
allowedMaxRequests: import_zod11.z.number().nullish(),
|
|
3157
3270
|
autoCondenseContext: import_zod11.z.boolean().optional(),
|
|
3158
3271
|
autoCondenseContextPercent: import_zod11.z.number().optional(),
|
|
3159
3272
|
maxConcurrentFileReads: import_zod11.z.number().optional(),
|
|
3273
|
+
/**
|
|
3274
|
+
* Whether to include diagnostic messages (errors, warnings) in tool outputs
|
|
3275
|
+
* @default true
|
|
3276
|
+
*/
|
|
3277
|
+
includeDiagnosticMessages: import_zod11.z.boolean().optional(),
|
|
3278
|
+
/**
|
|
3279
|
+
* Maximum number of diagnostic messages to include in tool outputs
|
|
3280
|
+
* @default 50
|
|
3281
|
+
*/
|
|
3282
|
+
maxDiagnosticMessages: import_zod11.z.number().optional(),
|
|
3160
3283
|
browserToolEnabled: import_zod11.z.boolean().optional(),
|
|
3161
3284
|
browserViewportSize: import_zod11.z.string().optional(),
|
|
3162
3285
|
screenshotQuality: import_zod11.z.number().optional(),
|
|
@@ -3173,6 +3296,7 @@ var globalSettingsSchema = import_zod11.z.object({
|
|
|
3173
3296
|
showRooIgnoredFiles: import_zod11.z.boolean().optional(),
|
|
3174
3297
|
maxReadFileLine: import_zod11.z.number().optional(),
|
|
3175
3298
|
terminalOutputLineLimit: import_zod11.z.number().optional(),
|
|
3299
|
+
terminalOutputCharacterLimit: import_zod11.z.number().optional(),
|
|
3176
3300
|
terminalShellIntegrationTimeout: import_zod11.z.number().optional(),
|
|
3177
3301
|
terminalShellIntegrationDisabled: import_zod11.z.boolean().optional(),
|
|
3178
3302
|
terminalCommandDelay: import_zod11.z.number().optional(),
|
|
@@ -3182,6 +3306,7 @@ var globalSettingsSchema = import_zod11.z.object({
|
|
|
3182
3306
|
terminalZshP10k: import_zod11.z.boolean().optional(),
|
|
3183
3307
|
terminalZdotdir: import_zod11.z.boolean().optional(),
|
|
3184
3308
|
terminalCompressProgressBar: import_zod11.z.boolean().optional(),
|
|
3309
|
+
diagnosticsEnabled: import_zod11.z.boolean().optional(),
|
|
3185
3310
|
rateLimitSeconds: import_zod11.z.number().optional(),
|
|
3186
3311
|
diffEnabled: import_zod11.z.boolean().optional(),
|
|
3187
3312
|
fuzzyMatchThreshold: import_zod11.z.number().optional(),
|
|
@@ -3217,6 +3342,7 @@ var SECRET_STATE_KEYS = [
|
|
|
3217
3342
|
"geminiApiKey",
|
|
3218
3343
|
"openAiNativeApiKey",
|
|
3219
3344
|
"deepSeekApiKey",
|
|
3345
|
+
"moonshotApiKey",
|
|
3220
3346
|
"mistralApiKey",
|
|
3221
3347
|
"unboundApiKey",
|
|
3222
3348
|
"requestyApiKey",
|
|
@@ -3227,7 +3353,9 @@ var SECRET_STATE_KEYS = [
|
|
|
3227
3353
|
"codeIndexOpenAiKey",
|
|
3228
3354
|
"codeIndexQdrantApiKey",
|
|
3229
3355
|
"codebaseIndexOpenAiCompatibleApiKey",
|
|
3230
|
-
"codebaseIndexGeminiApiKey"
|
|
3356
|
+
"codebaseIndexGeminiApiKey",
|
|
3357
|
+
"codebaseIndexMistralApiKey",
|
|
3358
|
+
"huggingFaceApiKey"
|
|
3231
3359
|
];
|
|
3232
3360
|
var isSecretStateKey = (key) => SECRET_STATE_KEYS.includes(key);
|
|
3233
3361
|
var GLOBAL_STATE_KEYS = [...GLOBAL_SETTINGS_KEYS, ...PROVIDER_SETTINGS_KEYS].filter(
|
|
@@ -3257,7 +3385,8 @@ var EVALS_SETTINGS = {
|
|
|
3257
3385
|
alwaysAllowUpdateTodoList: true,
|
|
3258
3386
|
followupAutoApproveTimeoutMs: 0,
|
|
3259
3387
|
allowedCommands: ["*"],
|
|
3260
|
-
commandExecutionTimeout:
|
|
3388
|
+
commandExecutionTimeout: 20,
|
|
3389
|
+
commandTimeoutAllowlist: [],
|
|
3261
3390
|
preventCompletionWithOpenTodos: false,
|
|
3262
3391
|
browserToolEnabled: false,
|
|
3263
3392
|
browserViewportSize: "900x600",
|
|
@@ -3268,6 +3397,7 @@ var EVALS_SETTINGS = {
|
|
|
3268
3397
|
soundEnabled: false,
|
|
3269
3398
|
soundVolume: 0.5,
|
|
3270
3399
|
terminalOutputLineLimit: 500,
|
|
3400
|
+
terminalOutputCharacterLimit: DEFAULT_TERMINAL_OUTPUT_CHARACTER_LIMIT,
|
|
3271
3401
|
terminalShellIntegrationTimeout: 3e4,
|
|
3272
3402
|
terminalCommandDelay: 0,
|
|
3273
3403
|
terminalPowershellCounter: false,
|
|
@@ -3277,6 +3407,7 @@ var EVALS_SETTINGS = {
|
|
|
3277
3407
|
terminalZdotdir: true,
|
|
3278
3408
|
terminalCompressProgressBar: true,
|
|
3279
3409
|
terminalShellIntegrationDisabled: true,
|
|
3410
|
+
diagnosticsEnabled: true,
|
|
3280
3411
|
diffEnabled: true,
|
|
3281
3412
|
fuzzyMatchThreshold: 1,
|
|
3282
3413
|
enableCheckpoints: false,
|
|
@@ -3286,10 +3417,13 @@ var EVALS_SETTINGS = {
|
|
|
3286
3417
|
showRooIgnoredFiles: true,
|
|
3287
3418
|
maxReadFileLine: -1,
|
|
3288
3419
|
// -1 to enable full file reading.
|
|
3420
|
+
includeDiagnosticMessages: true,
|
|
3421
|
+
maxDiagnosticMessages: 50,
|
|
3289
3422
|
language: "en",
|
|
3290
3423
|
telemetrySetting: "enabled",
|
|
3291
3424
|
mcpEnabled: false,
|
|
3292
3425
|
mode: "code",
|
|
3426
|
+
// "architect",
|
|
3293
3427
|
customModes: []
|
|
3294
3428
|
};
|
|
3295
3429
|
var EVALS_TIMEOUT = 5 * 60 * 1e3;
|
|
@@ -3674,6 +3808,9 @@ var todoItemSchema = import_zod18.z.object({
|
|
|
3674
3808
|
CODEBASE_INDEX_DEFAULTS,
|
|
3675
3809
|
DEEP_SEEK_DEFAULT_TEMPERATURE,
|
|
3676
3810
|
DEFAULT_CONSECUTIVE_MISTAKE_LIMIT,
|
|
3811
|
+
DEFAULT_MODES,
|
|
3812
|
+
DEFAULT_TERMINAL_OUTPUT_CHARACTER_LIMIT,
|
|
3813
|
+
DEFAULT_WRITE_DELAY_MS,
|
|
3677
3814
|
EVALS_SETTINGS,
|
|
3678
3815
|
EVALS_TIMEOUT,
|
|
3679
3816
|
GLAMA_DEFAULT_TEMPERATURE,
|
|
@@ -3685,6 +3822,7 @@ var todoItemSchema = import_zod18.z.object({
|
|
|
3685
3822
|
LMSTUDIO_DEFAULT_TEMPERATURE,
|
|
3686
3823
|
MISTRAL_DEFAULT_TEMPERATURE,
|
|
3687
3824
|
MODEL_ID_KEYS,
|
|
3825
|
+
MOONSHOT_DEFAULT_TEMPERATURE,
|
|
3688
3826
|
OPENAI_AZURE_AI_INFERENCE_PATH,
|
|
3689
3827
|
OPENAI_NATIVE_DEFAULT_TEMPERATURE,
|
|
3690
3828
|
OPENROUTER_DEFAULT_PROVIDER_NAME,
|
|
@@ -3774,6 +3912,8 @@ var todoItemSchema = import_zod18.z.object({
|
|
|
3774
3912
|
modelInfoSchema,
|
|
3775
3913
|
modelParameters,
|
|
3776
3914
|
modelParametersSchema,
|
|
3915
|
+
moonshotDefaultModelId,
|
|
3916
|
+
moonshotModels,
|
|
3777
3917
|
ollamaDefaultModelId,
|
|
3778
3918
|
ollamaDefaultModelInfo,
|
|
3779
3919
|
openAiModelInfoSaneDefaults,
|