vivekmind 0.15.6 → 1.0.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/LICENSE +1 -2
- package/README.md +7 -15
- package/bundled/qc-helper/SKILL.md +2 -2
- package/bundled/review/DESIGN.md +2 -2
- package/bundled/review/SKILL.md +18 -18
- package/cli.js +243 -243
- package/locales/ca.js +10 -10
- package/locales/de.js +10 -10
- package/locales/en.js +10 -10
- package/locales/fr.js +8 -8
- package/locales/ja.js +8 -8
- package/locales/pt.js +10 -10
- package/locales/ru.js +10 -10
- package/locales/zh-TW.js +10 -10
- package/locales/zh.js +10 -10
- package/package.json +4 -2
package/cli.js
CHANGED
|
@@ -147301,7 +147301,7 @@ var init_models = __esm({
|
|
|
147301
147301
|
DEFAULT_VIVEKMIND_MODEL = "coder-model";
|
|
147302
147302
|
DEFAULT_VIVEKMIND_FLASH_MODEL = "coder-model";
|
|
147303
147303
|
DEFAULT_VIVEKMIND_EMBEDDING_MODEL = "text-embedding-v4";
|
|
147304
|
-
MAINLINE_CODER_MODEL = "
|
|
147304
|
+
MAINLINE_CODER_MODEL = "vivekmind3.5-plus";
|
|
147305
147305
|
}
|
|
147306
147306
|
});
|
|
147307
147307
|
|
|
@@ -147313,10 +147313,10 @@ function normalize3(model) {
|
|
|
147313
147313
|
if (s5.includes(":") && !s5.match(/-v\d+:\d+$/)) {
|
|
147314
147314
|
s5 = s5.split(":").pop() ?? s5;
|
|
147315
147315
|
}
|
|
147316
|
-
s5 = s5.replace(/^(?:us\.|eu\.|ap\.)?(?:anthropic|meta|mistral|cohere|amazon|deepseek|
|
|
147316
|
+
s5 = s5.replace(/^(?:us\.|eu\.|ap\.)?(?:anthropic|meta|mistral|cohere|amazon|deepseek|vivekmind|zai|ai21|twelvelabs|writer|google)\./, "");
|
|
147317
147317
|
s5 = s5.replace(/\s+/g, "-");
|
|
147318
147318
|
s5 = s5.replace(/-preview/g, "");
|
|
147319
|
-
if (!s5.match(/^
|
|
147319
|
+
if (!s5.match(/^vivekmind-(?:plus|flash|vl-max)-latest$/) && !s5.match(/^kimi-k2-\d{4}$/)) {
|
|
147320
147320
|
s5 = s5.replace(/-(?:\d{4,}|\d+x\d+b|v\d+(?:\.\d+)*|(?<=-[^-]+-)\d+(?:\.\d+)+|latest|exp)$/g, "");
|
|
147321
147321
|
}
|
|
147322
147322
|
s5 = s5.replace(/-(?:\d?bit|int[48]|bf16|fp16|q[45]|quantized)$/g, "");
|
|
@@ -147415,17 +147415,17 @@ var init_tokenLimits = __esm({
|
|
|
147415
147415
|
// Alibaba / VivekMind
|
|
147416
147416
|
// -------------------
|
|
147417
147417
|
// Commercial API models (1,000,000 context)
|
|
147418
|
-
[/^
|
|
147419
|
-
[/^
|
|
147420
|
-
[/^
|
|
147421
|
-
[/^
|
|
147418
|
+
[/^vivekmind3-coder/, LIMITS["1m"]],
|
|
147419
|
+
[/^vivekmind3\.\d/, LIMITS["1m"]],
|
|
147420
|
+
[/^vivekmind-plus-latest$/, LIMITS["1m"]],
|
|
147421
|
+
[/^vivekmind-flash-latest$/, LIMITS["1m"]],
|
|
147422
147422
|
[/^coder-model$/, LIMITS["1m"]],
|
|
147423
147423
|
// Commercial API models (256K context)
|
|
147424
|
-
[/^
|
|
147425
|
-
// Open-source
|
|
147426
|
-
[/^
|
|
147424
|
+
[/^vivekmind3-max/, LIMITS["256k"]],
|
|
147425
|
+
// Open-source VivekMind3 variants: 256K native
|
|
147426
|
+
[/^vivekmind3-coder-/, LIMITS["256k"]],
|
|
147427
147427
|
// VivekMind fallback (VL, turbo, plus, 2.5, etc.): 128K
|
|
147428
|
-
[/^
|
|
147428
|
+
[/^vivekmind/, LIMITS["256k"]],
|
|
147429
147429
|
// -------------------
|
|
147430
147430
|
// DeepSeek
|
|
147431
147431
|
// -------------------
|
|
@@ -147531,10 +147531,10 @@ var init_tokenLimits = __esm({
|
|
|
147531
147531
|
[/^claude-/, LIMITS["64k"]],
|
|
147532
147532
|
// Claude fallback: 64K
|
|
147533
147533
|
// Alibaba / VivekMind
|
|
147534
|
-
[/^
|
|
147535
|
-
[/^
|
|
147534
|
+
[/^vivekmind3-coder/, LIMITS["64k"]],
|
|
147535
|
+
[/^vivekmind3\.\d/, LIMITS["64k"]],
|
|
147536
147536
|
[/^coder-model$/, LIMITS["64k"]],
|
|
147537
|
-
[/^
|
|
147537
|
+
[/^vivekmind/, LIMITS["32k"]],
|
|
147538
147538
|
// VivekMind fallback (VL, turbo, plus, etc.): 8K
|
|
147539
147539
|
// DeepSeek
|
|
147540
147540
|
[/^v3\.2/, LIMITS["8k"]],
|
|
@@ -147610,16 +147610,16 @@ var init_modalityDefaults = __esm({
|
|
|
147610
147610
|
// -------------------
|
|
147611
147611
|
// Alibaba / VivekMind
|
|
147612
147612
|
// -------------------
|
|
147613
|
-
//
|
|
147614
|
-
[/^
|
|
147615
|
-
[/^
|
|
147613
|
+
// VivekMind3.5-Plus, VivekMind3.6-Plus: image + video support
|
|
147614
|
+
[/^vivekmind3\.5-plus/, { image: true, video: true }],
|
|
147615
|
+
[/^vivekmind3\.6-plus/, { image: true, video: true }],
|
|
147616
147616
|
[/^coder-model$/, { image: true, video: true }],
|
|
147617
147617
|
// VivekMind VL (vision-language) models: image + video
|
|
147618
|
-
[/^
|
|
147619
|
-
[/^
|
|
147618
|
+
[/^vivekmind-vl-/, { image: true, video: true }],
|
|
147619
|
+
[/^vivekmind3-vl-/, { image: true, video: true }],
|
|
147620
147620
|
// VivekMind coder / text models: text-only
|
|
147621
|
-
[/^
|
|
147622
|
-
[/^
|
|
147621
|
+
[/^vivekmind3-coder-/, {}],
|
|
147622
|
+
[/^vivekmind/, {}],
|
|
147623
147623
|
// -------------------
|
|
147624
147624
|
// DeepSeek — text-only
|
|
147625
147625
|
// -------------------
|
|
@@ -156609,7 +156609,7 @@ var init_default = __esm({
|
|
|
156609
156609
|
}
|
|
156610
156610
|
buildHeaders() {
|
|
156611
156611
|
const version2 = this.cliConfig.getCliVersion() || "unknown";
|
|
156612
|
-
const userAgent2 = `
|
|
156612
|
+
const userAgent2 = `VivekMindCode/${version2} (${process.platform}; ${process.arch})`;
|
|
156613
156613
|
const { customHeaders } = this.contentGeneratorConfig;
|
|
156614
156614
|
const defaultHeaders = {
|
|
156615
156615
|
"User-Agent": userAgent2
|
|
@@ -156765,7 +156765,7 @@ var init_dashscope = __esm({
|
|
|
156765
156765
|
}
|
|
156766
156766
|
buildHeaders() {
|
|
156767
156767
|
const version2 = this.cliConfig.getCliVersion() || "unknown";
|
|
156768
|
-
const userAgent2 = `
|
|
156768
|
+
const userAgent2 = `VivekMindCode/${version2} (${process.platform}; ${process.arch})`;
|
|
156769
156769
|
const { authType, customHeaders } = this.contentGeneratorConfig;
|
|
156770
156770
|
const defaultHeaders = {
|
|
156771
156771
|
"User-Agent": userAgent2,
|
|
@@ -156921,12 +156921,12 @@ var init_dashscope = __esm({
|
|
|
156921
156921
|
*/
|
|
156922
156922
|
static VISION_MODEL_EXACT_MATCHES = /* @__PURE__ */ new Set(["coder-model"]);
|
|
156923
156923
|
static VISION_MODEL_PREFIX_PATTERNS = [
|
|
156924
|
-
"
|
|
156925
|
-
//
|
|
156926
|
-
"
|
|
156927
|
-
//
|
|
156928
|
-
"
|
|
156929
|
-
//
|
|
156924
|
+
"vivekmind-vl",
|
|
156925
|
+
// vivekmind-vl-max, vivekmind-vl-max-latest, etc.
|
|
156926
|
+
"vivekmind3-vl-plus",
|
|
156927
|
+
// vivekmind3-vl-plus variants
|
|
156928
|
+
"vivekmind3.5-plus"
|
|
156929
|
+
// vivekmind3.5-plus (has built-in vision capabilities)
|
|
156930
156930
|
];
|
|
156931
156931
|
isVisionModel(model) {
|
|
156932
156932
|
if (!model) {
|
|
@@ -172266,7 +172266,7 @@ var init_converter2 = __esm({
|
|
|
172266
172266
|
* Should be paired with `fillMissingThinkingSignatures` running first
|
|
172267
172267
|
* so that signature-less `thinking` blocks become compliant in place
|
|
172268
172268
|
* (preserving their original text), and this pass then sees them as
|
|
172269
|
-
* already-satisfying. https://github.com/
|
|
172269
|
+
* already-satisfying. https://github.com/VivekMindLM/vivekmind-cli/issues/3786
|
|
172270
172270
|
*/
|
|
172271
172271
|
injectEmptyThinkingOnToolUseTurns(messages) {
|
|
172272
172272
|
for (const message of messages) {
|
|
@@ -172426,7 +172426,7 @@ var init_anthropicContentGenerator = __esm({
|
|
|
172426
172426
|
}
|
|
172427
172427
|
buildHeaders() {
|
|
172428
172428
|
const version2 = this.cliConfig.getCliVersion() || "unknown";
|
|
172429
|
-
const userAgent2 = `
|
|
172429
|
+
const userAgent2 = `VivekMindCode/${version2} (${process.platform}; ${process.arch})`;
|
|
172430
172430
|
const { customHeaders } = this.contentGeneratorConfig;
|
|
172431
172431
|
const headers = { "User-Agent": userAgent2 };
|
|
172432
172432
|
if (customHeaders) {
|
|
@@ -172983,8 +172983,8 @@ __export(geminiContentGenerator_exports, {
|
|
|
172983
172983
|
createGeminiContentGenerator: () => createGeminiContentGenerator
|
|
172984
172984
|
});
|
|
172985
172985
|
function createGeminiContentGenerator(config2, gcConfig) {
|
|
172986
|
-
const version2 = "0.
|
|
172987
|
-
const userAgent2 = config2.userAgent || `
|
|
172986
|
+
const version2 = "1.0.0";
|
|
172987
|
+
const userAgent2 = config2.userAgent || `VivekMindCode/${version2} (${process.platform}; ${process.arch})`;
|
|
172988
172988
|
const baseHeaders = {
|
|
172989
172989
|
"User-Agent": userAgent2
|
|
172990
172990
|
};
|
|
@@ -203080,11 +203080,11 @@ var init_pricing = __esm({
|
|
|
203080
203080
|
"deepseek.v3.2": { inputPer1K: 14e-5, outputPer1K: 28e-5 },
|
|
203081
203081
|
"deepseek.r1-v1:0": { inputPer1K: 55e-5, outputPer1K: 219e-5 },
|
|
203082
203082
|
// VivekMind
|
|
203083
|
-
"
|
|
203084
|
-
"
|
|
203085
|
-
"
|
|
203086
|
-
"
|
|
203087
|
-
"
|
|
203083
|
+
"vivekmind.vivekmind3-coder-next": { inputPer1K: 3e-4, outputPer1K: 1e-3 },
|
|
203084
|
+
"vivekmind.vivekmind3-next-80b-a3b": { inputPer1K: 5e-4, outputPer1K: 15e-4 },
|
|
203085
|
+
"vivekmind.vivekmind3-32b-v1:0": { inputPer1K: 15e-5, outputPer1K: 45e-5 },
|
|
203086
|
+
"vivekmind.vivekmind3-vl-235b-a22b": { inputPer1K: 1e-3, outputPer1K: 3e-3 },
|
|
203087
|
+
"vivekmind.vivekmind3-coder-30b-a3b-v1:0": { inputPer1K: 15e-5, outputPer1K: 45e-5 },
|
|
203088
203088
|
// Z.AI (GLM)
|
|
203089
203089
|
"zai.glm-4.7-flash": { inputPer1K: 5e-5, outputPer1K: 5e-5 },
|
|
203090
203090
|
"zai.glm-5": { inputPer1K: 1e-3, outputPer1K: 3e-3 },
|
|
@@ -203535,7 +203535,7 @@ function isGenericQuotaExceededError(error41) {
|
|
|
203535
203535
|
}
|
|
203536
203536
|
return false;
|
|
203537
203537
|
}
|
|
203538
|
-
function
|
|
203538
|
+
function isVivekMindQuotaExceededError(error41) {
|
|
203539
203539
|
if (typeof error41 !== "object" || error41 === null) {
|
|
203540
203540
|
return false;
|
|
203541
203541
|
}
|
|
@@ -203550,7 +203550,7 @@ var init_quotaErrorDetection = __esm({
|
|
|
203550
203550
|
__name(isStructuredError, "isStructuredError");
|
|
203551
203551
|
__name(isProQuotaExceededError, "isProQuotaExceededError");
|
|
203552
203552
|
__name(isGenericQuotaExceededError, "isGenericQuotaExceededError");
|
|
203553
|
-
__name(
|
|
203553
|
+
__name(isVivekMindQuotaExceededError, "isVivekMindQuotaExceededError");
|
|
203554
203554
|
}
|
|
203555
203555
|
});
|
|
203556
203556
|
|
|
@@ -203618,7 +203618,7 @@ async function retryWithBackoff(fn, options2) {
|
|
|
203618
203618
|
return result;
|
|
203619
203619
|
} catch (error41) {
|
|
203620
203620
|
const errorStatus = getErrorStatus(error41);
|
|
203621
|
-
if (authType === AuthType2.VIVEKMIND_OAUTH &&
|
|
203621
|
+
if (authType === AuthType2.VIVEKMIND_OAUTH && isVivekMindQuotaExceededError(error41)) {
|
|
203622
203622
|
throw new Error(`VivekMind OAuth free tier has been discontinued as of 2026-04-15.
|
|
203623
203623
|
|
|
203624
203624
|
To continue using VivekMind, try one of these alternatives:
|
|
@@ -207446,7 +207446,7 @@ function getActionsSection() {
|
|
|
207446
207446
|
return `
|
|
207447
207447
|
# Executing actions with care
|
|
207448
207448
|
|
|
207449
|
-
Carefully consider the reversibility and blast radius of actions. Generally you can freely take local, reversible actions like editing files or running tests. But for actions that are hard to reverse, affect shared systems beyond your local environment, or could otherwise be risky or destructive, check with the user before proceeding. The cost of pausing to confirm is low, while the cost of an unwanted action (lost work, unintended messages sent, deleted branches) can be very high. For actions like these, consider the context, the action, and user instructions, and by default transparently communicate the action and ask for confirmation before proceeding. This default can be changed by user instructions - if explicitly asked to operate more autonomously, then you may proceed without confirmation, but still attend to the risks and consequences when taking actions. A user approving an action (like a git push) once does NOT mean that they approve it in all contexts, so unless actions are authorized in advance in durable instructions like
|
|
207449
|
+
Carefully consider the reversibility and blast radius of actions. Generally you can freely take local, reversible actions like editing files or running tests. But for actions that are hard to reverse, affect shared systems beyond your local environment, or could otherwise be risky or destructive, check with the user before proceeding. The cost of pausing to confirm is low, while the cost of an unwanted action (lost work, unintended messages sent, deleted branches) can be very high. For actions like these, consider the context, the action, and user instructions, and by default transparently communicate the action and ask for confirmation before proceeding. This default can be changed by user instructions - if explicitly asked to operate more autonomously, then you may proceed without confirmation, but still attend to the risks and consequences when taking actions. A user approving an action (like a git push) once does NOT mean that they approve it in all contexts, so unless actions are authorized in advance in durable instructions like VIVEKMIND.md files, always confirm first. Authorization stands for the scope specified, not beyond. Match the scope of your actions to what was actually requested.
|
|
207450
207450
|
|
|
207451
207451
|
Examples of the kind of risky actions that warrant user confirmation:
|
|
207452
207452
|
- Destructive operations: deleting files/branches, dropping database tables, killing processes, rm -rf, overwriting uncommitted changes
|
|
@@ -207543,10 +207543,10 @@ function getToolCallExamples(model) {
|
|
|
207543
207543
|
const toolCallStyle = process9.env["VIVEKMIND_CODE_TOOL_CALL_STYLE"];
|
|
207544
207544
|
if (toolCallStyle) {
|
|
207545
207545
|
switch (toolCallStyle.toLowerCase()) {
|
|
207546
|
-
case "
|
|
207547
|
-
return
|
|
207548
|
-
case "
|
|
207549
|
-
return
|
|
207546
|
+
case "vivekmind-clir":
|
|
207547
|
+
return vivekmindCoderToolCallExamples;
|
|
207548
|
+
case "vivekmind-vl":
|
|
207549
|
+
return vivekmindVlToolCallExamples;
|
|
207550
207550
|
case "general":
|
|
207551
207551
|
return generalToolCallExamples;
|
|
207552
207552
|
default:
|
|
@@ -207555,14 +207555,14 @@ function getToolCallExamples(model) {
|
|
|
207555
207555
|
}
|
|
207556
207556
|
}
|
|
207557
207557
|
if (model && model.length < 100) {
|
|
207558
|
-
if (/
|
|
207559
|
-
return
|
|
207558
|
+
if (/vivekmind[^-]*-coder/i.test(model)) {
|
|
207559
|
+
return vivekmindCoderToolCallExamples;
|
|
207560
207560
|
}
|
|
207561
|
-
if (/
|
|
207562
|
-
return
|
|
207561
|
+
if (/vivekmind[^-]*-vl/i.test(model)) {
|
|
207562
|
+
return vivekmindVlToolCallExamples;
|
|
207563
207563
|
}
|
|
207564
207564
|
if (/coder-model/i.test(model)) {
|
|
207565
|
-
return
|
|
207565
|
+
return vivekmindCoderToolCallExamples;
|
|
207566
207566
|
}
|
|
207567
207567
|
}
|
|
207568
207568
|
return generalToolCallExamples;
|
|
@@ -207583,7 +207583,7 @@ function getArenaSystemReminder(configFilePath2) {
|
|
|
207583
207583
|
function getInsightPrompt(type) {
|
|
207584
207584
|
return INSIGHT_PROMPTS[type];
|
|
207585
207585
|
}
|
|
207586
|
-
var debugLogger28, generalToolCallExamples,
|
|
207586
|
+
var debugLogger28, generalToolCallExamples, vivekmindCoderToolCallExamples, vivekmindVlToolCallExamples, INSIGHT_PROMPTS;
|
|
207587
207587
|
var init_prompts = __esm({
|
|
207588
207588
|
"packages/core/src/core/prompts.js"() {
|
|
207589
207589
|
"use strict";
|
|
@@ -207675,7 +207675,7 @@ I found the following 'app.config' files:
|
|
|
207675
207675
|
To help you check their settings, I can read their contents. Which one would you like to start with, or should I read all of them?
|
|
207676
207676
|
</example>
|
|
207677
207677
|
`.trim();
|
|
207678
|
-
|
|
207678
|
+
vivekmindCoderToolCallExamples = `
|
|
207679
207679
|
# Examples (Illustrating Tone and Workflow)
|
|
207680
207680
|
<example>
|
|
207681
207681
|
user: 1 + 2
|
|
@@ -207832,7 +207832,7 @@ I found the following 'app.config' files:
|
|
|
207832
207832
|
To help you check their settings, I can read their contents. Which one would you like to start with, or should I read all of them?
|
|
207833
207833
|
</example>
|
|
207834
207834
|
`.trim();
|
|
207835
|
-
|
|
207835
|
+
vivekmindVlToolCallExamples = `
|
|
207836
207836
|
# Examples (Illustrating Tone and Workflow)
|
|
207837
207837
|
<example>
|
|
207838
207838
|
user: 1 + 2
|
|
@@ -217677,11 +217677,11 @@ var init_model_capabilities = __esm({
|
|
|
217677
217677
|
"gemini-2.0-flash": GEMINI_VISION,
|
|
217678
217678
|
"gemini-1.5-pro": GEMINI_VISION,
|
|
217679
217679
|
"gemini-1.5-flash": GEMINI_VISION,
|
|
217680
|
-
"
|
|
217681
|
-
"
|
|
217680
|
+
"vivekmind3.5-plus": VIVEKMIND_VISION,
|
|
217681
|
+
"vivekmind3.6-plus": VIVEKMIND_VISION,
|
|
217682
217682
|
"coder-model": VIVEKMIND_VISION,
|
|
217683
|
-
"
|
|
217684
|
-
"
|
|
217683
|
+
"vivekmind-vl-": VIVEKMIND_VISION,
|
|
217684
|
+
"vivekmind3-vl-": VIVEKMIND_VISION,
|
|
217685
217685
|
"glm-4.5v": {
|
|
217686
217686
|
supportsVision: true,
|
|
217687
217687
|
maxImageSizeBytes: 10 * MB,
|
|
@@ -217791,7 +217791,7 @@ function resolveModelConfig(input) {
|
|
|
217791
217791
|
const warnings = [];
|
|
217792
217792
|
const sources = {};
|
|
217793
217793
|
if (authType === AuthType2.VIVEKMIND_OAUTH) {
|
|
217794
|
-
return
|
|
217794
|
+
return resolveVivekMindOAuthConfig(input, warnings);
|
|
217795
217795
|
}
|
|
217796
217796
|
const envMapping = authType ? AUTH_ENV_MAPPINGS[authType] : { model: [], apiKey: [], baseUrl: [] };
|
|
217797
217797
|
const modelLayers = [];
|
|
@@ -217876,7 +217876,7 @@ function resolveModelConfig(input) {
|
|
|
217876
217876
|
sources["authType"] = computedSource("provided by caller");
|
|
217877
217877
|
return { config: config2, sources, warnings };
|
|
217878
217878
|
}
|
|
217879
|
-
function
|
|
217879
|
+
function resolveVivekMindOAuthConfig(input, warnings) {
|
|
217880
217880
|
const { cli, settings, proxy: proxy2, modelProvider } = input;
|
|
217881
217881
|
const sources = {};
|
|
217882
217882
|
const allowedModels = new Set(VIVEKMIND_OAUTH_ALLOWED_MODELS);
|
|
@@ -217936,7 +217936,7 @@ var init_modelConfigResolver = __esm({
|
|
|
217936
217936
|
init_contentGenerator();
|
|
217937
217937
|
__name(applyTimeoutEnvOverride, "applyTimeoutEnvOverride");
|
|
217938
217938
|
__name(resolveModelConfig, "resolveModelConfig");
|
|
217939
|
-
__name(
|
|
217939
|
+
__name(resolveVivekMindOAuthConfig, "resolveVivekMindOAuthConfig");
|
|
217940
217940
|
__name(resolveGenerationConfig, "resolveGenerationConfig");
|
|
217941
217941
|
}
|
|
217942
217942
|
});
|
|
@@ -217965,8 +217965,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
217965
217965
|
if (region === CodingPlanRegion.CHINA) {
|
|
217966
217966
|
return [
|
|
217967
217967
|
{
|
|
217968
|
-
id: "
|
|
217969
|
-
name: "[ModelStudio Coding Plan]
|
|
217968
|
+
id: "vivekmind3.5-plus",
|
|
217969
|
+
name: "[ModelStudio Coding Plan] vivekmind3.5-plus",
|
|
217970
217970
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
217971
217971
|
envKey: CODING_PLAN_ENV_KEY,
|
|
217972
217972
|
generationConfig: {
|
|
@@ -217975,8 +217975,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
217975
217975
|
}
|
|
217976
217976
|
},
|
|
217977
217977
|
{
|
|
217978
|
-
id: "
|
|
217979
|
-
name: "[ModelStudio Coding Plan]
|
|
217978
|
+
id: "vivekmind3.6-plus",
|
|
217979
|
+
name: "[ModelStudio Coding Plan] vivekmind3.6-plus",
|
|
217980
217980
|
description: "Currently available to Pro subscribers only.",
|
|
217981
217981
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
217982
217982
|
envKey: CODING_PLAN_ENV_KEY,
|
|
@@ -218016,8 +218016,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218016
218016
|
}
|
|
218017
218017
|
},
|
|
218018
218018
|
{
|
|
218019
|
-
id: "
|
|
218020
|
-
name: "[ModelStudio Coding Plan]
|
|
218019
|
+
id: "vivekmind3-coder-plus",
|
|
218020
|
+
name: "[ModelStudio Coding Plan] vivekmind3-coder-plus",
|
|
218021
218021
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
218022
218022
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218023
218023
|
generationConfig: {
|
|
@@ -218025,8 +218025,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218025
218025
|
}
|
|
218026
218026
|
},
|
|
218027
218027
|
{
|
|
218028
|
-
id: "
|
|
218029
|
-
name: "[ModelStudio Coding Plan]
|
|
218028
|
+
id: "vivekmind3-coder-next",
|
|
218029
|
+
name: "[ModelStudio Coding Plan] vivekmind3-coder-next",
|
|
218030
218030
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
218031
218031
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218032
218032
|
generationConfig: {
|
|
@@ -218034,8 +218034,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218034
218034
|
}
|
|
218035
218035
|
},
|
|
218036
218036
|
{
|
|
218037
|
-
id: "
|
|
218038
|
-
name: "[ModelStudio Coding Plan]
|
|
218037
|
+
id: "vivekmind3-max-2026-01-23",
|
|
218038
|
+
name: "[ModelStudio Coding Plan] vivekmind3-max-2026-01-23",
|
|
218039
218039
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
218040
218040
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218041
218041
|
generationConfig: {
|
|
@@ -218057,8 +218057,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218057
218057
|
}
|
|
218058
218058
|
return [
|
|
218059
218059
|
{
|
|
218060
|
-
id: "
|
|
218061
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
218060
|
+
id: "vivekmind3.5-plus",
|
|
218061
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3.5-plus",
|
|
218062
218062
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
218063
218063
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218064
218064
|
generationConfig: {
|
|
@@ -218067,8 +218067,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218067
218067
|
}
|
|
218068
218068
|
},
|
|
218069
218069
|
{
|
|
218070
|
-
id: "
|
|
218071
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
218070
|
+
id: "vivekmind3.6-plus",
|
|
218071
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3.6-plus",
|
|
218072
218072
|
description: "Currently available to Pro subscribers only.",
|
|
218073
218073
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
218074
218074
|
envKey: CODING_PLAN_ENV_KEY,
|
|
@@ -218078,8 +218078,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218078
218078
|
}
|
|
218079
218079
|
},
|
|
218080
218080
|
{
|
|
218081
|
-
id: "
|
|
218082
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
218081
|
+
id: "vivekmind3-coder-plus",
|
|
218082
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-coder-plus",
|
|
218083
218083
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
218084
218084
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218085
218085
|
generationConfig: {
|
|
@@ -218087,8 +218087,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218087
218087
|
}
|
|
218088
218088
|
},
|
|
218089
218089
|
{
|
|
218090
|
-
id: "
|
|
218091
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
218090
|
+
id: "vivekmind3-coder-next",
|
|
218091
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-coder-next",
|
|
218092
218092
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
218093
218093
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218094
218094
|
generationConfig: {
|
|
@@ -218096,8 +218096,8 @@ function generateCodingPlanTemplate(region) {
|
|
|
218096
218096
|
}
|
|
218097
218097
|
},
|
|
218098
218098
|
{
|
|
218099
|
-
id: "
|
|
218100
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
218099
|
+
id: "vivekmind3-max-2026-01-23",
|
|
218100
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-max-2026-01-23",
|
|
218101
218101
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
218102
218102
|
envKey: CODING_PLAN_ENV_KEY,
|
|
218103
218103
|
generationConfig: {
|
|
@@ -250384,7 +250384,7 @@ var init_logger = __esm({
|
|
|
250384
250384
|
__name(this, "Logger");
|
|
250385
250385
|
}
|
|
250386
250386
|
storage;
|
|
250387
|
-
|
|
250387
|
+
vivekmindDir;
|
|
250388
250388
|
logFilePath;
|
|
250389
250389
|
sessionId;
|
|
250390
250390
|
messageId = 0;
|
|
@@ -250439,10 +250439,10 @@ var init_logger = __esm({
|
|
|
250439
250439
|
if (this.initialized) {
|
|
250440
250440
|
return;
|
|
250441
250441
|
}
|
|
250442
|
-
this.
|
|
250443
|
-
this.logFilePath = path33.join(this.
|
|
250442
|
+
this.vivekmindDir = this.storage.getProjectTempDir();
|
|
250443
|
+
this.logFilePath = path33.join(this.vivekmindDir, LOG_FILE_NAME);
|
|
250444
250444
|
try {
|
|
250445
|
-
await fs38.mkdir(this.
|
|
250445
|
+
await fs38.mkdir(this.vivekmindDir, { recursive: true });
|
|
250446
250446
|
let fileExisted = true;
|
|
250447
250447
|
try {
|
|
250448
250448
|
await fs38.access(this.logFilePath);
|
|
@@ -250527,11 +250527,11 @@ var init_logger = __esm({
|
|
|
250527
250527
|
if (!tag3.length) {
|
|
250528
250528
|
throw new Error("No checkpoint tag specified.");
|
|
250529
250529
|
}
|
|
250530
|
-
if (!this.
|
|
250530
|
+
if (!this.vivekmindDir) {
|
|
250531
250531
|
throw new Error("Checkpoint file path not set.");
|
|
250532
250532
|
}
|
|
250533
250533
|
const encodedTag = encodeTagName(tag3);
|
|
250534
|
-
return path33.join(this.
|
|
250534
|
+
return path33.join(this.vivekmindDir, `checkpoint-${encodedTag}.json`);
|
|
250535
250535
|
}
|
|
250536
250536
|
async _getCheckpointPath(tag3) {
|
|
250537
250537
|
const newPath = this._checkpointPath(tag3);
|
|
@@ -250544,7 +250544,7 @@ var init_logger = __esm({
|
|
|
250544
250544
|
throw error41;
|
|
250545
250545
|
}
|
|
250546
250546
|
}
|
|
250547
|
-
const oldPath = path33.join(this.
|
|
250547
|
+
const oldPath = path33.join(this.vivekmindDir, `checkpoint-${tag3}.json`);
|
|
250548
250548
|
try {
|
|
250549
250549
|
await fs38.access(oldPath);
|
|
250550
250550
|
return oldPath;
|
|
@@ -250592,7 +250592,7 @@ var init_logger = __esm({
|
|
|
250592
250592
|
}
|
|
250593
250593
|
}
|
|
250594
250594
|
async deleteCheckpoint(tag3) {
|
|
250595
|
-
if (!this.initialized || !this.
|
|
250595
|
+
if (!this.initialized || !this.vivekmindDir) {
|
|
250596
250596
|
this.debugLogger.error("Logger not initialized or checkpoint file path not set. Cannot delete checkpoint.");
|
|
250597
250597
|
return false;
|
|
250598
250598
|
}
|
|
@@ -250608,7 +250608,7 @@ var init_logger = __esm({
|
|
|
250608
250608
|
throw error41;
|
|
250609
250609
|
}
|
|
250610
250610
|
}
|
|
250611
|
-
const oldPath = path33.join(this.
|
|
250611
|
+
const oldPath = path33.join(this.vivekmindDir, `checkpoint-${tag3}.json`);
|
|
250612
250612
|
if (newPath !== oldPath) {
|
|
250613
250613
|
try {
|
|
250614
250614
|
await fs38.unlink(oldPath);
|
|
@@ -253775,7 +253775,7 @@ var init_mcp_client = __esm({
|
|
|
253775
253775
|
this.debugMode = debugMode;
|
|
253776
253776
|
this.sendSdkMcpMessage = sendSdkMcpMessage;
|
|
253777
253777
|
this.client = new Client({
|
|
253778
|
-
name: `
|
|
253778
|
+
name: `vivekmind-cli-mcp-client-${this.serverName}`,
|
|
253779
253779
|
version: "0.0.1"
|
|
253780
253780
|
});
|
|
253781
253781
|
}
|
|
@@ -268331,7 +268331,7 @@ var init_gitService = __esm({
|
|
|
268331
268331
|
const repoDir = this.getHistoryDir();
|
|
268332
268332
|
const gitConfigPath = path43.join(repoDir, ".gitconfig");
|
|
268333
268333
|
await fs45.mkdir(repoDir, { recursive: true });
|
|
268334
|
-
const gitConfigContent = "[user]\n name = VivekMind\n email = vivekmind@
|
|
268334
|
+
const gitConfigContent = "[user]\n name = VivekMind\n email = vivekmind@vivekmind.ai\n[commit]\n gpgsign = false\n";
|
|
268335
268335
|
await fs45.writeFile(gitConfigPath, gitConfigContent);
|
|
268336
268336
|
const repo = simpleGit(repoDir).env({
|
|
268337
268337
|
// Prevent git from using the user's global git config.
|
|
@@ -269987,7 +269987,7 @@ var init_prompt = __esm({
|
|
|
269987
269987
|
"- Code patterns, conventions, architecture, file paths, or project structure \u2014 these can be derived by reading the current project state.",
|
|
269988
269988
|
"- Git history, recent changes, or who-changed-what \u2014 `git log` / `git blame` are authoritative.",
|
|
269989
269989
|
"- Debugging solutions or fix recipes \u2014 the fix is in the code; the commit message has the context.",
|
|
269990
|
-
"- Anything already documented in
|
|
269990
|
+
"- Anything already documented in VIVEKMIND.md or AGENTS.md files.",
|
|
269991
269991
|
"- Ephemeral task details: in-progress work, temporary state, current conversation context.",
|
|
269992
269992
|
"",
|
|
269993
269993
|
"These exclusions apply even when the user explicitly asks you to save. If they ask you to save a PR list or activity summary, ask what was *surprising* or *non-obvious* about it \u2014 that is the part worth keeping."
|
|
@@ -282648,11 +282648,11 @@ async function downloadFromGitHubRelease(installMetadata, destination) {
|
|
|
282648
282648
|
if (entries.length === 2) {
|
|
282649
282649
|
const lonelyDir = entries.find((entry) => entry.isDirectory());
|
|
282650
282650
|
if (lonelyDir) {
|
|
282651
|
-
const
|
|
282651
|
+
const hasVivekMindConfig = fs71.existsSync(path62.join(destination, lonelyDir.name, EXTENSIONS_CONFIG_FILENAME));
|
|
282652
282652
|
const hasGeminiConfig = fs71.existsSync(path62.join(destination, lonelyDir.name, "gemini-extension.json"));
|
|
282653
282653
|
const hasMarketplaceConfig = fs71.existsSync(path62.join(destination, lonelyDir.name, ".claude-plugin/marketplace.json"));
|
|
282654
282654
|
const hasClaudePluginConfig = fs71.existsSync(path62.join(destination, lonelyDir.name, ".claude-plugin/plugin.json"));
|
|
282655
|
-
if (
|
|
282655
|
+
if (hasVivekMindConfig || hasGeminiConfig || hasMarketplaceConfig || hasClaudePluginConfig) {
|
|
282656
282656
|
const dirPathToExtract = path62.join(destination, lonelyDir.name);
|
|
282657
282657
|
const extractedDirFiles = await fs71.promises.readdir(dirPathToExtract);
|
|
282658
282658
|
for (const file2 of extractedDirFiles) {
|
|
@@ -282889,7 +282889,7 @@ var init_storage2 = __esm({
|
|
|
282889
282889
|
return storage.getExtensionsDir();
|
|
282890
282890
|
}
|
|
282891
282891
|
static async createTmpDir() {
|
|
282892
|
-
return await fs72.promises.mkdtemp(path63.join(os25.tmpdir(), "
|
|
282892
|
+
return await fs72.promises.mkdtemp(path63.join(os25.tmpdir(), "vivekmind-extension"));
|
|
282893
282893
|
}
|
|
282894
282894
|
};
|
|
282895
282895
|
}
|
|
@@ -285042,7 +285042,7 @@ var init_toml_to_markdown_converter = __esm({
|
|
|
285042
285042
|
// packages/core/src/extension/gemini-converter.js
|
|
285043
285043
|
import * as fs73 from "node:fs";
|
|
285044
285044
|
import * as path64 from "node:path";
|
|
285045
|
-
function
|
|
285045
|
+
function convertGeminiToVivekMindConfig(extensionDir) {
|
|
285046
285046
|
const configFilePath2 = path64.join(extensionDir, "gemini-extension.json");
|
|
285047
285047
|
const configContent = fs73.readFileSync(configFilePath2, "utf-8");
|
|
285048
285048
|
const geminiConfig = JSON.parse(configContent);
|
|
@@ -285059,7 +285059,7 @@ function convertGeminiToQwenConfig(extensionDir) {
|
|
|
285059
285059
|
};
|
|
285060
285060
|
}
|
|
285061
285061
|
async function convertGeminiExtensionPackage(extensionDir) {
|
|
285062
|
-
const geminiConfig =
|
|
285062
|
+
const geminiConfig = convertGeminiToVivekMindConfig(extensionDir);
|
|
285063
285063
|
const tmpDir = await ExtensionStorage.createTmpDir();
|
|
285064
285064
|
try {
|
|
285065
285065
|
await copyDirectory(extensionDir, tmpDir);
|
|
@@ -285067,8 +285067,8 @@ async function convertGeminiExtensionPackage(extensionDir) {
|
|
|
285067
285067
|
if (fs73.existsSync(commandsDir)) {
|
|
285068
285068
|
await convertCommandsDirectory(commandsDir);
|
|
285069
285069
|
}
|
|
285070
|
-
const
|
|
285071
|
-
fs73.writeFileSync(
|
|
285070
|
+
const vivekmindConfigPath = path64.join(tmpDir, "vivekmind-extension.json");
|
|
285071
|
+
fs73.writeFileSync(vivekmindConfigPath, JSON.stringify(geminiConfig, null, 2), "utf-8");
|
|
285072
285072
|
return {
|
|
285073
285073
|
config: geminiConfig,
|
|
285074
285074
|
convertedDir: tmpDir
|
|
@@ -285158,7 +285158,7 @@ var init_gemini_converter = __esm({
|
|
|
285158
285158
|
init_toml_to_markdown_converter();
|
|
285159
285159
|
init_debugLogger();
|
|
285160
285160
|
debugLogger63 = createDebugLogger("GEMINI_CONVERTER");
|
|
285161
|
-
__name(
|
|
285161
|
+
__name(convertGeminiToVivekMindConfig, "convertGeminiToVivekMindConfig");
|
|
285162
285162
|
__name(convertGeminiExtensionPackage, "convertGeminiExtensionPackage");
|
|
285163
285163
|
__name(copyDirectory, "copyDirectory");
|
|
285164
285164
|
__name(convertCommandsDirectory, "convertCommandsDirectory");
|
|
@@ -285310,24 +285310,24 @@ function parseStringOrArray(value) {
|
|
|
285310
285310
|
return void 0;
|
|
285311
285311
|
}
|
|
285312
285312
|
function convertClaudeAgentConfig(claudeAgent) {
|
|
285313
|
-
const
|
|
285313
|
+
const vivekmindAgent = {
|
|
285314
285314
|
name: claudeAgent.name,
|
|
285315
285315
|
description: claudeAgent.description
|
|
285316
285316
|
};
|
|
285317
285317
|
if (claudeAgent.color) {
|
|
285318
|
-
|
|
285318
|
+
vivekmindAgent["color"] = claudeAgent.color;
|
|
285319
285319
|
}
|
|
285320
285320
|
if (claudeAgent.systemPrompt) {
|
|
285321
|
-
|
|
285321
|
+
vivekmindAgent["systemPrompt"] = claudeAgent.systemPrompt;
|
|
285322
285322
|
}
|
|
285323
285323
|
if (claudeAgent.tools && claudeAgent.tools.length > 0) {
|
|
285324
|
-
|
|
285324
|
+
vivekmindAgent["tools"] = claudeBuildInToolsTransform(claudeAgent.tools);
|
|
285325
285325
|
}
|
|
285326
285326
|
if (claudeAgent.model) {
|
|
285327
|
-
|
|
285327
|
+
vivekmindAgent["model"] = claudeAgent.model;
|
|
285328
285328
|
}
|
|
285329
285329
|
if (claudeAgent.permissionMode) {
|
|
285330
|
-
const
|
|
285330
|
+
const claudeToVivekMindMode = {
|
|
285331
285331
|
default: "default",
|
|
285332
285332
|
plan: "plan",
|
|
285333
285333
|
acceptEdits: "auto-edit",
|
|
@@ -285335,19 +285335,19 @@ function convertClaudeAgentConfig(claudeAgent) {
|
|
|
285335
285335
|
bypassPermissions: "yolo",
|
|
285336
285336
|
auto: "auto-edit"
|
|
285337
285337
|
};
|
|
285338
|
-
const mapped =
|
|
285339
|
-
|
|
285338
|
+
const mapped = claudeToVivekMindMode[claudeAgent.permissionMode] ?? claudeAgent.permissionMode;
|
|
285339
|
+
vivekmindAgent["approvalMode"] = mapped;
|
|
285340
285340
|
}
|
|
285341
285341
|
if (claudeAgent.hooks) {
|
|
285342
|
-
|
|
285342
|
+
vivekmindAgent["hooks"] = claudeAgent.hooks;
|
|
285343
285343
|
}
|
|
285344
285344
|
if (claudeAgent.skills && claudeAgent.skills.length > 0) {
|
|
285345
|
-
|
|
285345
|
+
vivekmindAgent["skills"] = claudeAgent.skills;
|
|
285346
285346
|
}
|
|
285347
285347
|
if (claudeAgent.disallowedTools && claudeAgent.disallowedTools.length > 0) {
|
|
285348
|
-
|
|
285348
|
+
vivekmindAgent["disallowedTools"] = claudeAgent.disallowedTools;
|
|
285349
285349
|
}
|
|
285350
|
-
return
|
|
285350
|
+
return vivekmindAgent;
|
|
285351
285351
|
}
|
|
285352
285352
|
async function convertAgentFiles(agentsDir) {
|
|
285353
285353
|
if (!fs74.existsSync(agentsDir)) {
|
|
@@ -285380,15 +285380,15 @@ async function convertAgentFiles(agentsDir) {
|
|
|
285380
285380
|
color: frontmatter["color"],
|
|
285381
285381
|
systemPrompt: body2.trim()
|
|
285382
285382
|
};
|
|
285383
|
-
const
|
|
285383
|
+
const vivekmindAgent = convertClaudeAgentConfig(claudeAgent);
|
|
285384
285384
|
const newFrontmatter = {};
|
|
285385
|
-
for (const [key, value] of Object.entries(
|
|
285385
|
+
for (const [key, value] of Object.entries(vivekmindAgent)) {
|
|
285386
285386
|
if (key !== "systemPrompt" && value !== void 0) {
|
|
285387
285387
|
newFrontmatter[key] = value;
|
|
285388
285388
|
}
|
|
285389
285389
|
}
|
|
285390
285390
|
const newYaml = stringify2(newFrontmatter);
|
|
285391
|
-
const systemPrompt =
|
|
285391
|
+
const systemPrompt = vivekmindAgent["systemPrompt"] || body2.trim();
|
|
285392
285392
|
const newContent = `---
|
|
285393
285393
|
${newYaml}
|
|
285394
285394
|
---
|
|
@@ -285401,7 +285401,7 @@ ${systemPrompt}
|
|
|
285401
285401
|
}
|
|
285402
285402
|
}
|
|
285403
285403
|
}
|
|
285404
|
-
function
|
|
285404
|
+
function convertClaudeToVivekMindConfig(claudeConfig) {
|
|
285405
285405
|
if (!claudeConfig.name) {
|
|
285406
285406
|
throw new Error("Claude plugin config must have name field");
|
|
285407
285407
|
}
|
|
@@ -285515,11 +285515,11 @@ async function convertClaudePluginPackage(extensionDir, pluginName) {
|
|
|
285515
285515
|
}
|
|
285516
285516
|
const agentsDestDir = path65.join(tmpDir, "agents");
|
|
285517
285517
|
await convertAgentFiles(agentsDestDir);
|
|
285518
|
-
const
|
|
285519
|
-
const
|
|
285520
|
-
fs74.writeFileSync(
|
|
285518
|
+
const vivekmindConfig = convertClaudeToVivekMindConfig(mergedConfig);
|
|
285519
|
+
const vivekmindConfigPath = path65.join(tmpDir, "vivekmind-extension.json");
|
|
285520
|
+
fs74.writeFileSync(vivekmindConfigPath, JSON.stringify(vivekmindConfig, null, 2), "utf-8");
|
|
285521
285521
|
return {
|
|
285522
|
-
config:
|
|
285522
|
+
config: vivekmindConfig,
|
|
285523
285523
|
convertedDir: tmpDir
|
|
285524
285524
|
};
|
|
285525
285525
|
} catch (error41) {
|
|
@@ -285757,7 +285757,7 @@ var init_claude_converter = __esm({
|
|
|
285757
285757
|
__name(parseStringOrArray, "parseStringOrArray");
|
|
285758
285758
|
__name(convertClaudeAgentConfig, "convertClaudeAgentConfig");
|
|
285759
285759
|
__name(convertAgentFiles, "convertAgentFiles");
|
|
285760
|
-
__name(
|
|
285760
|
+
__name(convertClaudeToVivekMindConfig, "convertClaudeToVivekMindConfig");
|
|
285761
285761
|
__name(convertClaudePluginPackage, "convertClaudePluginPackage");
|
|
285762
285762
|
__name(collectResources, "collectResources");
|
|
285763
285763
|
__name(mergeClaudeConfigs, "mergeClaudeConfigs");
|
|
@@ -294553,7 +294553,7 @@ function filterMcpConfig(original) {
|
|
|
294553
294553
|
}
|
|
294554
294554
|
function getContextFileNames(config2) {
|
|
294555
294555
|
if (!config2.contextFileName || config2.contextFileName.length === 0) {
|
|
294556
|
-
return ["
|
|
294556
|
+
return ["VIVEKMIND.md"];
|
|
294557
294557
|
} else if (!Array.isArray(config2.contextFileName)) {
|
|
294558
294558
|
return [config2.contextFileName];
|
|
294559
294559
|
}
|
|
@@ -294588,7 +294588,7 @@ async function loadCommandsFromDir(dir) {
|
|
|
294588
294588
|
}
|
|
294589
294589
|
async function convertGeminiOrClaudeExtension(extensionDir, pluginName) {
|
|
294590
294590
|
let newExtensionDir = extensionDir;
|
|
294591
|
-
let originSource = "
|
|
294591
|
+
let originSource = "VivekMindCode";
|
|
294592
294592
|
const configFilePath2 = path71.join(extensionDir, EXTENSIONS_CONFIG_FILENAME);
|
|
294593
294593
|
if (fs80.existsSync(configFilePath2)) {
|
|
294594
294594
|
newExtensionDir = extensionDir;
|
|
@@ -295236,7 +295236,7 @@ var init_extensionManager = __esm({
|
|
|
295236
295236
|
const installMetadata = {
|
|
295237
295237
|
source: extension.path,
|
|
295238
295238
|
type: "local",
|
|
295239
|
-
originSource: extension.installMetadata?.originSource || "
|
|
295239
|
+
originSource: extension.installMetadata?.originSource || "VivekMindCode"
|
|
295240
295240
|
};
|
|
295241
295241
|
await this.installExtension(installMetadata, requestConsent, requestSetting);
|
|
295242
295242
|
} catch (_2) {
|
|
@@ -306104,7 +306104,7 @@ var init_overlayFs = __esm({
|
|
|
306104
306104
|
constructor(realCwd) {
|
|
306105
306105
|
this.realCwd = realCwd;
|
|
306106
306106
|
const id = randomUUID8().slice(0, 8);
|
|
306107
|
-
this.overlayDir = join35(tmpdir4(), "
|
|
306107
|
+
this.overlayDir = join35(tmpdir4(), "vivekmind-speculation", String(process.pid), id);
|
|
306108
306108
|
}
|
|
306109
306109
|
/** Get the overlay directory path */
|
|
306110
306110
|
getOverlayDir() {
|
|
@@ -311870,7 +311870,7 @@ async function loadServerHierarchicalMemory(currentWorkingDirectory, includeDire
|
|
|
311870
311870
|
${rulesContent}` : rulesContent;
|
|
311871
311871
|
}
|
|
311872
311872
|
if (!memoryContent && filePaths.length === 0 && ruleCount === 0) {
|
|
311873
|
-
logger4.debug("No
|
|
311873
|
+
logger4.debug("No VIVEKMIND.md files or rules found.");
|
|
311874
311874
|
}
|
|
311875
311875
|
return {
|
|
311876
311876
|
memoryContent,
|
|
@@ -312308,11 +312308,11 @@ var init_subagentGenerator = __esm({
|
|
|
312308
312308
|
init_sideQuery();
|
|
312309
312309
|
SYSTEM_PROMPT = `You are an elite AI agent architect specializing in crafting high-performance agent configurations. Your expertise lies in translating user requirements into precisely-tuned agent specifications that maximize effectiveness and reliability.
|
|
312310
312310
|
|
|
312311
|
-
**Important Context**: You may have access to project-specific instructions from
|
|
312311
|
+
**Important Context**: You may have access to project-specific instructions from VIVEKMIND.md files and other context that may include coding standards, project structure, and custom requirements. Consider this context when creating agents to ensure they align with the project's established patterns and practices.
|
|
312312
312312
|
|
|
312313
312313
|
When a user describes what they want an agent to do, you will:
|
|
312314
312314
|
|
|
312315
|
-
1. **Extract Core Intent**: Identify the fundamental purpose, key responsibilities, and success criteria for the agent. Look for both explicit requirements and implicit needs. Consider any project-specific context from
|
|
312315
|
+
1. **Extract Core Intent**: Identify the fundamental purpose, key responsibilities, and success criteria for the agent. Look for both explicit requirements and implicit needs. Consider any project-specific context from VIVEKMIND.md files. For agents that are meant to review code, you should assume that the user is asking to review recently written code and not the whole codebase, unless the user has explicitly instructed you otherwise.
|
|
312316
312316
|
|
|
312317
312317
|
2. **Design Expert Persona**: Create a compelling expert identity that embodies deep domain knowledge relevant to the task. The persona should inspire confidence and guide the agent's decision-making approach.
|
|
312318
312318
|
|
|
@@ -312322,7 +312322,7 @@ When a user describes what they want an agent to do, you will:
|
|
|
312322
312322
|
- Anticipates edge cases and provides guidance for handling them
|
|
312323
312323
|
- Incorporates any specific requirements or preferences mentioned by the user
|
|
312324
312324
|
- Defines output format expectations when relevant
|
|
312325
|
-
- Aligns with project-specific coding standards and patterns from
|
|
312325
|
+
- Aligns with project-specific coding standards and patterns from VIVEKMIND.md
|
|
312326
312326
|
|
|
312327
312327
|
4. **Optimize for Performance**: Include:
|
|
312328
312328
|
- Decision-making frameworks appropriate to the domain
|
|
@@ -312738,7 +312738,7 @@ var init_config3 = __esm({
|
|
|
312738
312738
|
usageStatisticsEnabled: true,
|
|
312739
312739
|
debugMode: false,
|
|
312740
312740
|
proxy: void 0,
|
|
312741
|
-
model: "
|
|
312741
|
+
model: "vivekmind-9001-super-duper",
|
|
312742
312742
|
targetDir: "/",
|
|
312743
312743
|
cwd: "/"
|
|
312744
312744
|
};
|
|
@@ -336859,7 +336859,7 @@ __export(src_exports2, {
|
|
|
336859
336859
|
connectToMcpServer: () => connectToMcpServer,
|
|
336860
336860
|
convertClaudeAgentConfig: () => convertClaudeAgentConfig,
|
|
336861
336861
|
convertClaudePluginPackage: () => convertClaudePluginPackage,
|
|
336862
|
-
|
|
336862
|
+
convertClaudeToVivekMindConfig: () => convertClaudeToVivekMindConfig,
|
|
336863
336863
|
convertColorToHex: () => convertColorToHex,
|
|
336864
336864
|
convertToFunctionResponse: () => convertToFunctionResponse,
|
|
336865
336865
|
convertTomlToMarkdown: () => convertTomlToMarkdown,
|
|
@@ -337056,7 +337056,6 @@ __export(src_exports2, {
|
|
|
337056
337056
|
isPerformanceMonitoringActive: () => isPerformanceMonitoringActive,
|
|
337057
337057
|
isPlanModeBlocked: () => isPlanModeBlocked,
|
|
337058
337058
|
isProQuotaExceededError: () => isProQuotaExceededError,
|
|
337059
|
-
isQwenQuotaExceededError: () => isQwenQuotaExceededError,
|
|
337060
337059
|
isRateLimitError: () => isRateLimitError,
|
|
337061
337060
|
isSchemaDepthError: () => isSchemaDepthError,
|
|
337062
337061
|
isScopedNpmPackage: () => isScopedNpmPackage,
|
|
@@ -337075,6 +337074,7 @@ __export(src_exports2, {
|
|
|
337075
337074
|
isTransientCapacityError: () => isTransientCapacityError,
|
|
337076
337075
|
isUnattendedMode: () => isUnattendedMode,
|
|
337077
337076
|
isValidNonThoughtTextPart: () => isValidNonThoughtTextPart,
|
|
337077
|
+
isVivekMindQuotaExceededError: () => isVivekMindQuotaExceededError,
|
|
337078
337078
|
isWindows: () => isWindows5,
|
|
337079
337079
|
isWithinRoot: () => isWithinRoot,
|
|
337080
337080
|
knownTokenLimit: () => knownTokenLimit,
|
|
@@ -376350,7 +376350,7 @@ var init_settingsSchema = __esm({
|
|
|
376350
376350
|
category: "Model",
|
|
376351
376351
|
requiresRestart: false,
|
|
376352
376352
|
default: "",
|
|
376353
|
-
description: "Model used for generating prompt suggestions and speculative execution. Leave empty to use the main model. A smaller/faster model (e.g.,
|
|
376353
|
+
description: "Model used for generating prompt suggestions and speculative execution. Leave empty to use the main model. A smaller/faster model (e.g., vivekmind3-coder-flash) reduces latency and cost.",
|
|
376354
376354
|
showInDialog: true
|
|
376355
376355
|
},
|
|
376356
376356
|
model: {
|
|
@@ -376488,7 +376488,7 @@ var init_settingsSchema = __esm({
|
|
|
376488
376488
|
category: "Generation Configuration",
|
|
376489
376489
|
requiresRestart: false,
|
|
376490
376490
|
default: false,
|
|
376491
|
-
description: 'When true, media (images / audio / video / files) returned by MCP tool calls is split into a follow-up user message instead of being embedded in the tool message. Required for strict OpenAI-compatible servers (e.g., LM Studio) that reject non-text content on `role: "tool"` messages with HTTP 400 "Invalid \'messages\' in payload". Default false preserves the prior behavior for permissive providers. See
|
|
376491
|
+
description: 'When true, media (images / audio / video / files) returned by MCP tool calls is split into a follow-up user message instead of being embedded in the tool message. Required for strict OpenAI-compatible servers (e.g., LM Studio) that reject non-text content on `role: "tool"` messages with HTTP 400 "Invalid \'messages\' in payload". Default false preserves the prior behavior for permissive providers. See VivekMindLM/vivekmind-cli#3616.',
|
|
376492
376492
|
parentKey: "generationConfig",
|
|
376493
376493
|
showInDialog: false
|
|
376494
376494
|
},
|
|
@@ -376526,7 +376526,7 @@ var init_settingsSchema = __esm({
|
|
|
376526
376526
|
category: "Model",
|
|
376527
376527
|
requiresRestart: false,
|
|
376528
376528
|
default: void 0,
|
|
376529
|
-
description: 'Optional per-model pricing for cost estimation in /stats model. Example: {"
|
|
376529
|
+
description: 'Optional per-model pricing for cost estimation in /stats model. Example: {"vivekmind3-coder": {"inputPerMillionTokens": 0.30, "outputPerMillionTokens": 1.20}}',
|
|
376530
376530
|
showInDialog: false
|
|
376531
376531
|
},
|
|
376532
376532
|
context: {
|
|
@@ -377562,7 +377562,7 @@ var init_ca2 = __esm({
|
|
|
377562
377562
|
// ============================================================================
|
|
377563
377563
|
// Ordres - General
|
|
377564
377564
|
// ============================================================================
|
|
377565
|
-
"Analyzes the project and creates a tailored
|
|
377565
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "Analitza el projecte i crea un fitxer VIVEKMIND.md personalitzat.",
|
|
377566
377566
|
"List available VivekMind tools. Usage: /tools [desc]": "Llistar les eines disponibles de VivekMind. \xDAs: /tools [desc]",
|
|
377567
377567
|
"List available skills.": "Llistar les habilitats disponibles.",
|
|
377568
377568
|
"Available VivekMind CLI tools:": "Eines del CLI de VivekMind disponibles:",
|
|
@@ -377870,7 +377870,7 @@ var init_ca2 = __esm({
|
|
|
377870
377870
|
local: "local",
|
|
377871
377871
|
remote: "remot",
|
|
377872
377872
|
"This extension will add the following commands: {{commands}}.": "Aquesta extensi\xF3 afegir\xE0 les ordres seg\xFCents: {{commands}}.",
|
|
377873
|
-
"This extension will append info to your
|
|
377873
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "Aquesta extensi\xF3 afegir\xE0 informaci\xF3 al vostre context VIVEKMIND.md usant {{fileName}}",
|
|
377874
377874
|
"This extension will exclude the following core tools: {{tools}}": "Aquesta extensi\xF3 exclour\xE0 les eines principals seg\xFCents: {{tools}}",
|
|
377875
377875
|
"This extension will install the following skills:": "Aquesta extensi\xF3 instal\xB7lar\xE0 les habilitats seg\xFCents:",
|
|
377876
377876
|
"This extension will install the following subagents:": "Aquesta extensi\xF3 instal\xB7lar\xE0 els subagents seg\xFCents:",
|
|
@@ -378361,7 +378361,7 @@ var init_ca2 = __esm({
|
|
|
378361
378361
|
"Please provide at least one path to add.": "Proporcioneu almenys un cam\xED per afegir.",
|
|
378362
378362
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "L'ordre /directory add no \xE9s compatible en perfils d'entorn a\xEFllat restrictius. En el seu lloc, useu --include-directories en iniciar la sessi\xF3.",
|
|
378363
378363
|
"Error adding '{{path}}': {{error}}": "Error en afegir '{{path}}': {{error}}",
|
|
378364
|
-
"Successfully added
|
|
378364
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "S'han afegit correctament els fitxers VIVEKMIND.md dels directoris seg\xFCents si n'hi ha:\n- {{directories}}",
|
|
378365
378365
|
"Error refreshing memory: {{error}}": "Error en actualitzar la mem\xF2ria: {{error}}",
|
|
378366
378366
|
"Successfully added directories:\n- {{directories}}": "S'han afegit correctament els directoris:\n- {{directories}}",
|
|
378367
378367
|
"Current workspace directories:\n{{directories}}": "Directoris actuals de l'espai de treball:\n{{directories}}",
|
|
@@ -378506,7 +378506,7 @@ var init_ca2 = __esm({
|
|
|
378506
378506
|
unknown: "desconegut",
|
|
378507
378507
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "Error en canviar al model '{{modelId}}'.\n\n{{error}}",
|
|
378508
378508
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 model h\xEDbrid eficient amb un rendiment de codificaci\xF3 l\xEDder",
|
|
378509
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
378509
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "L'\xFAltim model de visi\xF3 VivekMind d'Alibaba Cloud ModelStudio (versi\xF3: vivekmind3-vl-plus-2025-09-23)",
|
|
378510
378510
|
// ============================================================================
|
|
378511
378511
|
// Diàlegs - Permisos
|
|
378512
378512
|
// ============================================================================
|
|
@@ -378629,7 +378629,7 @@ var init_ca2 = __esm({
|
|
|
378629
378629
|
"You can switch permission mode quickly with Tab or /approval-mode.": "Podeu canviar r\xE0pidament el mode de permisos amb Tab o /approval-mode.",
|
|
378630
378630
|
"Try /insight to generate personalized insights from your chat history.": "Proveu /insight per generar idees personalitzades a partir del vostre historial de xat.",
|
|
378631
378631
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "Premeu Ctrl+O per canviar el mode compacte \u2014 amagueu la sortida de les eines i el pensament per a una vista m\xE9s neta.",
|
|
378632
|
-
"Add a
|
|
378632
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "Afegiu un fitxer VIVEKMIND.md per donar a VivekMind un context persistent del projecte.",
|
|
378633
378633
|
"Use /btw to ask a quick side question without disrupting the conversation.": "Useu /btw per fer una pregunta r\xE0pida sense interrompre la conversa.",
|
|
378634
378634
|
"Context is almost full! Run /compress now or start /new to continue.": "El context gaireb\xE9 \xE9s ple! Executeu /compress ara o inicieu /new per continuar.",
|
|
378635
378635
|
"Context is getting full. Use /compress to free up space.": "El context s'omple. Useu /compress per alliberar espai.",
|
|
@@ -379107,7 +379107,7 @@ var init_de2 = __esm({
|
|
|
379107
379107
|
// ============================================================================
|
|
379108
379108
|
// Commands - General
|
|
379109
379109
|
// ============================================================================
|
|
379110
|
-
"Analyzes the project and creates a tailored
|
|
379110
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "Analysiert das Projekt und erstellt eine ma\xDFgeschneiderte VIVEKMIND.md-Datei.",
|
|
379111
379111
|
"List available VivekMind tools. Usage: /tools [desc]": "Verf\xFCgbare VivekMind Werkzeuge auflisten. Verwendung: /tools [desc]",
|
|
379112
379112
|
"List available skills.": "Verf\xFCgbare Skills auflisten.",
|
|
379113
379113
|
"Available VivekMind CLI tools:": "Verf\xFCgbare VivekMind CLI-Werkzeuge:",
|
|
@@ -379361,7 +379361,7 @@ var init_de2 = __esm({
|
|
|
379361
379361
|
local: "lokal",
|
|
379362
379362
|
remote: "remote",
|
|
379363
379363
|
"This extension will add the following commands: {{commands}}.": "Diese Erweiterung wird folgende Befehle hinzuf\xFCgen: {{commands}}.",
|
|
379364
|
-
"This extension will append info to your
|
|
379364
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "Diese Erweiterung wird Informationen zu Ihrem VIVEKMIND.md-Kontext mit {{fileName}} hinzuf\xFCgen",
|
|
379365
379365
|
"This extension will exclude the following core tools: {{tools}}": "Diese Erweiterung wird folgende Kernwerkzeuge ausschlie\xDFen: {{tools}}",
|
|
379366
379366
|
"This extension will install the following skills:": "Diese Erweiterung wird folgende F\xE4higkeiten installieren:",
|
|
379367
379367
|
"This extension will install the following subagents:": "Diese Erweiterung wird folgende Unteragenten installieren:",
|
|
@@ -379778,7 +379778,7 @@ var init_de2 = __esm({
|
|
|
379778
379778
|
"Please provide at least one path to add.": "Bitte geben Sie mindestens einen Pfad zum Hinzuf\xFCgen an.",
|
|
379779
379779
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "Der Befehl /directory add wird in restriktiven Sandbox-Profilen nicht unterst\xFCtzt. Bitte verwenden Sie --include-directories beim Starten der Sitzung.",
|
|
379780
379780
|
"Error adding '{{path}}': {{error}}": "Fehler beim Hinzuf\xFCgen von '{{path}}': {{error}}",
|
|
379781
|
-
"Successfully added
|
|
379781
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "VIVEKMIND.md-Dateien aus folgenden Verzeichnissen erfolgreich hinzugef\xFCgt, falls vorhanden:\n- {{directories}}",
|
|
379782
379782
|
"Error refreshing memory: {{error}}": "Fehler beim Aktualisieren des Speichers: {{error}}",
|
|
379783
379783
|
"Successfully added directories:\n- {{directories}}": "Verzeichnisse erfolgreich hinzugef\xFCgt:\n- {{directories}}",
|
|
379784
379784
|
"Current workspace directories:\n{{directories}}": "Aktuelle Arbeitsbereichsverzeichnisse:\n{{directories}}",
|
|
@@ -380009,7 +380009,7 @@ var init_de2 = __esm({
|
|
|
380009
380009
|
unknown: "unbekannt",
|
|
380010
380010
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "Modell konnte nicht auf '{{modelId}}' umgestellt werden.\n\n{{error}}",
|
|
380011
380011
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 effizientes Hybridmodell mit f\xFChrender Programmierleistung",
|
|
380012
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
380012
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "Das neueste VivekMind Vision Modell von Alibaba Cloud ModelStudio (Version: vivekmind3-vl-plus-2025-09-23)",
|
|
380013
380013
|
// ============================================================================
|
|
380014
380014
|
// Dialogs - Permissions
|
|
380015
380015
|
// ============================================================================
|
|
@@ -380368,7 +380368,7 @@ var init_de2 = __esm({
|
|
|
380368
380368
|
"You can switch permission mode quickly with Tab or /approval-mode.": "Sie k\xF6nnen den Berechtigungsmodus schnell mit Tab oder /approval-mode wechseln.",
|
|
380369
380369
|
"Try /insight to generate personalized insights from your chat history.": "Probieren Sie /insight, um personalisierte Erkenntnisse aus Ihrem Chatverlauf zu erstellen.",
|
|
380370
380370
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "Strg+O dr\xFCcken, um den Kompaktmodus umzuschalten \u2014 Tool-Ausgabe und Denkprozess ausblenden.",
|
|
380371
|
-
"Add a
|
|
380371
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "F\xFCgen Sie eine VIVEKMIND.md-Datei hinzu, um VivekMind dauerhaften Projektkontext zu geben.",
|
|
380372
380372
|
"Use /btw to ask a quick side question without disrupting the conversation.": "Verwenden Sie /btw, um eine kurze Nebenfrage zu stellen, ohne die Unterhaltung zu unterbrechen.",
|
|
380373
380373
|
"Context is almost full! Run /compress now or start /new to continue.": "Der Kontext ist fast voll! F\xFChren Sie jetzt /compress aus oder starten Sie /new, um fortzufahren.",
|
|
380374
380374
|
"Context is getting full. Use /compress to free up space.": "Der Kontext f\xFCllt sich. Verwenden Sie /compress, um Platz freizugeben.",
|
|
@@ -380628,7 +380628,7 @@ var init_en3 = __esm({
|
|
|
380628
380628
|
// ============================================================================
|
|
380629
380629
|
// Commands - General
|
|
380630
380630
|
// ============================================================================
|
|
380631
|
-
"Analyzes the project and creates a tailored
|
|
380631
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "Analyzes the project and creates a tailored VIVEKMIND.md file.",
|
|
380632
380632
|
"List available VivekMind tools. Usage: /tools [desc]": "List available VivekMind tools. Usage: /tools [desc]",
|
|
380633
380633
|
"List available skills.": "List available skills.",
|
|
380634
380634
|
"Available VivekMind CLI tools:": "Available VivekMind CLI tools:",
|
|
@@ -380942,7 +380942,7 @@ var init_en3 = __esm({
|
|
|
380942
380942
|
local: "local",
|
|
380943
380943
|
remote: "remote",
|
|
380944
380944
|
"This extension will add the following commands: {{commands}}.": "This extension will add the following commands: {{commands}}.",
|
|
380945
|
-
"This extension will append info to your
|
|
380945
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "This extension will append info to your VIVEKMIND.md context using {{fileName}}",
|
|
380946
380946
|
"This extension will exclude the following core tools: {{tools}}": "This extension will exclude the following core tools: {{tools}}",
|
|
380947
380947
|
"This extension will install the following skills:": "This extension will install the following skills:",
|
|
380948
380948
|
"This extension will install the following subagents:": "This extension will install the following subagents:",
|
|
@@ -381449,7 +381449,7 @@ var init_en3 = __esm({
|
|
|
381449
381449
|
"Please provide at least one path to add.": "Please provide at least one path to add.",
|
|
381450
381450
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.",
|
|
381451
381451
|
"Error adding '{{path}}': {{error}}": "Error adding '{{path}}': {{error}}",
|
|
381452
|
-
"Successfully added
|
|
381452
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}",
|
|
381453
381453
|
"Error refreshing memory: {{error}}": "Error refreshing memory: {{error}}",
|
|
381454
381454
|
"Successfully added directories:\n- {{directories}}": "Successfully added directories:\n- {{directories}}",
|
|
381455
381455
|
"Current workspace directories:\n{{directories}}": "Current workspace directories:\n{{directories}}",
|
|
@@ -381595,7 +381595,7 @@ var init_en3 = __esm({
|
|
|
381595
381595
|
unknown: "unknown",
|
|
381596
381596
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "Failed to switch model to '{{modelId}}'.\n\n{{error}}",
|
|
381597
381597
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance",
|
|
381598
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
381598
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)",
|
|
381599
381599
|
// ============================================================================
|
|
381600
381600
|
// Dialogs - Permissions
|
|
381601
381601
|
// ============================================================================
|
|
@@ -381719,7 +381719,7 @@ var init_en3 = __esm({
|
|
|
381719
381719
|
"You can switch permission mode quickly with Tab or /approval-mode.": "You can switch permission mode quickly with Tab or /approval-mode.",
|
|
381720
381720
|
"Try /insight to generate personalized insights from your chat history.": "Try /insight to generate personalized insights from your chat history.",
|
|
381721
381721
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.",
|
|
381722
|
-
"Add a
|
|
381722
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "Add a VIVEKMIND.md file to give VivekMind persistent project context.",
|
|
381723
381723
|
"Use /btw to ask a quick side question without disrupting the conversation.": "Use /btw to ask a quick side question without disrupting the conversation.",
|
|
381724
381724
|
"Context is almost full! Run /compress now or start /new to continue.": "Context is almost full! Run /compress now or start /new to continue.",
|
|
381725
381725
|
"Context is getting full. Use /compress to free up space.": "Context is getting full. Use /compress to free up space.",
|
|
@@ -382215,7 +382215,7 @@ var init_fr2 = __esm({
|
|
|
382215
382215
|
// ============================================================================
|
|
382216
382216
|
// Commandes - Général
|
|
382217
382217
|
// ============================================================================
|
|
382218
|
-
"Analyzes the project and creates a tailored
|
|
382218
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "Analyse le projet et cr\xE9e un fichier VIVEKMIND.md personnalis\xE9.",
|
|
382219
382219
|
"List available VivekMind tools. Usage: /tools [desc]": "Lister les outils VivekMind disponibles. Utilisation : /tools [desc]",
|
|
382220
382220
|
"List available skills.": "Lister les comp\xE9tences disponibles.",
|
|
382221
382221
|
"Available VivekMind CLI tools:": "Outils VivekMind CLI disponibles :",
|
|
@@ -382523,7 +382523,7 @@ var init_fr2 = __esm({
|
|
|
382523
382523
|
local: "local",
|
|
382524
382524
|
remote: "distant",
|
|
382525
382525
|
"This extension will add the following commands: {{commands}}.": "Cette extension ajoutera les commandes suivantes : {{commands}}.",
|
|
382526
|
-
"This extension will append info to your
|
|
382526
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "Cette extension ajoutera des informations \xE0 votre contexte VIVEKMIND.md en utilisant {{fileName}}",
|
|
382527
382527
|
"This extension will exclude the following core tools: {{tools}}": "Cette extension exclura les outils principaux suivants : {{tools}}",
|
|
382528
382528
|
"This extension will install the following skills:": "Cette extension installera les comp\xE9tences suivantes :",
|
|
382529
382529
|
"This extension will install the following subagents:": "Cette extension installera les sous-agents suivants :",
|
|
@@ -382985,7 +382985,7 @@ var init_fr2 = __esm({
|
|
|
382985
382985
|
"Please provide at least one path to add.": "Veuillez fournir au moins un chemin \xE0 ajouter.",
|
|
382986
382986
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "La commande /directory add n'est pas prise en charge dans les profils de bac \xE0 sable restrictifs. Utilisez plut\xF4t --include-directories lors du d\xE9marrage de la session.",
|
|
382987
382987
|
"Error adding '{{path}}': {{error}}": "Erreur lors de l'ajout de '{{path}}' : {{error}}",
|
|
382988
|
-
"Successfully added
|
|
382988
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "Fichiers VIVEKMIND.md ajout\xE9s avec succ\xE8s depuis les r\xE9pertoires suivants s'ils existent :\n- {{directories}}",
|
|
382989
382989
|
"Error refreshing memory: {{error}}": "Erreur lors de l'actualisation de la m\xE9moire : {{error}}",
|
|
382990
382990
|
"Successfully added directories:\n- {{directories}}": "R\xE9pertoires ajout\xE9s avec succ\xE8s :\n- {{directories}}",
|
|
382991
382991
|
"Current workspace directories:\n{{directories}}": "R\xE9pertoires actuels de l'espace de travail :\n{{directories}}",
|
|
@@ -383131,7 +383131,7 @@ var init_fr2 = __esm({
|
|
|
383131
383131
|
unknown: "inconnu",
|
|
383132
383132
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "\xC9chec du changement de mod\xE8le vers '{{modelId}}'.\n\n{{error}}",
|
|
383133
383133
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 mod\xE8le hybride efficace avec des performances de codage de pointe",
|
|
383134
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
383134
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "Le dernier mod\xE8le VivekMind Vision d'Alibaba Cloud ModelStudio (version : vivekmind3-vl-plus-2025-09-23)",
|
|
383135
383135
|
// ============================================================================
|
|
383136
383136
|
// Boîtes de dialogue - Permissions
|
|
383137
383137
|
// ============================================================================
|
|
@@ -383707,7 +383707,7 @@ var init_ja2 = __esm({
|
|
|
383707
383707
|
// ============================================================================
|
|
383708
383708
|
// Commands - General
|
|
383709
383709
|
// ============================================================================
|
|
383710
|
-
"Analyzes the project and creates a tailored
|
|
383710
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u5206\u6790\u3057\u3001\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3055\u308C\u305F VIVEKMIND.md \u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210",
|
|
383711
383711
|
"List available VivekMind tools. Usage: /tools [desc]": "\u5229\u7528\u53EF\u80FD\u306A VivekMind \u30C4\u30FC\u30EB\u3092\u4E00\u89A7\u8868\u793A\u3002\u4F7F\u3044\u65B9: /tools [desc]",
|
|
383712
383712
|
"List available skills.": "\u5229\u7528\u53EF\u80FD\u306A\u30B9\u30AD\u30EB\u3092\u4E00\u89A7\u8868\u793A\u3059\u308B\u3002",
|
|
383713
383713
|
"Available VivekMind CLI tools:": "\u5229\u7528\u53EF\u80FD\u306A VivekMind CLI \u30C4\u30FC\u30EB:",
|
|
@@ -384239,7 +384239,7 @@ var init_ja2 = __esm({
|
|
|
384239
384239
|
"Please provide at least one path to add.": "\u8FFD\u52A0\u3059\u308B\u30D1\u30B9\u3092\u5C11\u306A\u304F\u3068\u30821\u3064\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",
|
|
384240
384240
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "\u5236\u9650\u7684\u306A\u30B5\u30F3\u30C9\u30DC\u30C3\u30AF\u30B9\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB\u3067\u306F /directory add \u30B3\u30DE\u30F3\u30C9\u306F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002\u4EE3\u308F\u308A\u306B\u30BB\u30C3\u30B7\u30E7\u30F3\u958B\u59CB\u6642\u306B --include-directories \u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044",
|
|
384241
384241
|
"Error adding '{{path}}': {{error}}": "'{{path}}' \u306E\u8FFD\u52A0\u4E2D\u306B\u30A8\u30E9\u30FC: {{error}}",
|
|
384242
|
-
"Successfully added
|
|
384242
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "\u4EE5\u4E0B\u306E\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u304B\u3089 VIVEKMIND.md \u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\u3057\u307E\u3057\u305F(\u5B58\u5728\u3059\u308B\u5834\u5408):\n- {{directories}}",
|
|
384243
384243
|
"Error refreshing memory: {{error}}": "\u30E1\u30E2\u30EA\u306E\u66F4\u65B0\u4E2D\u306B\u30A8\u30E9\u30FC: {{error}}",
|
|
384244
384244
|
"Successfully added directories:\n- {{directories}}": "\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u3092\u6B63\u5E38\u306B\u8FFD\u52A0\u3057\u307E\u3057\u305F:\n- {{directories}}",
|
|
384245
384245
|
"Current workspace directories:\n{{directories}}": "\u73FE\u5728\u306E\u30EF\u30FC\u30AF\u30B9\u30DA\u30FC\u30B9\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA:\n{{directories}}",
|
|
@@ -384443,7 +384443,7 @@ var init_ja2 = __esm({
|
|
|
384443
384443
|
none: "\u306A\u3057",
|
|
384444
384444
|
unknown: "\u4E0D\u660E",
|
|
384445
384445
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 \u52B9\u7387\u7684\u306A\u30CF\u30A4\u30D6\u30EA\u30C3\u30C9\u30E2\u30C7\u30EB\u3001\u696D\u754C\u30C8\u30C3\u30D7\u30AF\u30E9\u30B9\u306E\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u6027\u80FD",
|
|
384446
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
384446
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "Alibaba Cloud ModelStudio\u306E\u6700\u65B0VivekMind Vision\u30E2\u30C7\u30EB(\u30D0\u30FC\u30B8\u30E7\u30F3: vivekmind3-vl-plus-2025-09-23)",
|
|
384447
384447
|
// Dialogs - Permissions
|
|
384448
384448
|
"Manage folder trust settings": "\u30D5\u30A9\u30EB\u30C0\u4FE1\u983C\u8A2D\u5B9A\u3092\u7BA1\u7406",
|
|
384449
384449
|
"Manage permission rules": "\u6A29\u9650\u30EB\u30FC\u30EB\u3092\u7BA1\u7406",
|
|
@@ -384552,7 +384552,7 @@ var init_ja2 = __esm({
|
|
|
384552
384552
|
"You can switch permission mode quickly with Tab or /approval-mode.": "Tab \u307E\u305F\u306F /approval-mode \u3067\u6A29\u9650\u30E2\u30FC\u30C9\u3092\u3059\u3070\u3084\u304F\u5207\u308A\u66FF\u3048\u3089\u308C\u307E\u3059\u3002",
|
|
384553
384553
|
"Try /insight to generate personalized insights from your chat history.": "/insight \u3067\u30C1\u30E3\u30C3\u30C8\u5C65\u6B74\u304B\u3089\u30D1\u30FC\u30BD\u30CA\u30E9\u30A4\u30BA\u3055\u308C\u305F\u30A4\u30F3\u30B5\u30A4\u30C8\u3092\u751F\u6210\u3067\u304D\u307E\u3059\u3002",
|
|
384554
384554
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "Ctrl+O \u3067\u30B3\u30F3\u30D1\u30AF\u30C8\u30E2\u30FC\u30C9\u3092\u5207\u308A\u66FF\u3048 \u2014 \u30C4\u30FC\u30EB\u51FA\u529B\u3068\u601D\u8003\u3092\u975E\u8868\u793A\u306B\u3057\u3066\u3059\u3063\u304D\u308A\u8868\u793A\u3002",
|
|
384555
|
-
"Add a
|
|
384555
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "VIVEKMIND.md \u30D5\u30A1\u30A4\u30EB\u3092\u8FFD\u52A0\u3059\u308B\u3068\u3001VivekMind \u306B\u6C38\u7D9A\u7684\u306A\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u4E0E\u3048\u3089\u308C\u307E\u3059\u3002",
|
|
384556
384556
|
"Use /btw to ask a quick side question without disrupting the conversation.": "\u4F1A\u8A71\u3092\u4E2D\u65AD\u305B\u305A\u306B /btw \u3067\u3061\u3087\u3063\u3068\u3057\u305F\u6A2A\u9053\u306E\u8CEA\u554F\u304C\u3067\u304D\u307E\u3059\u3002",
|
|
384557
384557
|
"Context is almost full! Run /compress now or start /new to continue.": "\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u304C\u3082\u3046\u3059\u3050\u3044\u3063\u3071\u3044\u3067\u3059\uFF01\u4ECA\u3059\u3050 /compress \u3092\u5B9F\u884C\u3059\u308B\u304B\u3001/new \u3092\u958B\u59CB\u3057\u3066\u7D9A\u3051\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
384558
384558
|
"Context is getting full. Use /compress to free up space.": "\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u304C\u57CB\u307E\u308A\u3064\u3064\u3042\u308A\u307E\u3059\u3002/compress \u3092\u4F7F\u3063\u3066\u7A7A\u304D\u3092\u5897\u3084\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
@@ -384903,7 +384903,7 @@ var init_pt2 = __esm({
|
|
|
384903
384903
|
// ============================================================================
|
|
384904
384904
|
// Commands - General
|
|
384905
384905
|
// ============================================================================
|
|
384906
|
-
"Analyzes the project and creates a tailored
|
|
384906
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "Analisa o projeto e cria um arquivo VIVEKMIND.md personalizado.",
|
|
384907
384907
|
"List available VivekMind tools. Usage: /tools [desc]": "Listar ferramentas VivekMind dispon\xEDveis. Uso: /tools [desc]",
|
|
384908
384908
|
"List available skills.": "Listar habilidades dispon\xEDveis.",
|
|
384909
384909
|
"Available VivekMind CLI tools:": "Ferramentas CLI do VivekMind dispon\xEDveis:",
|
|
@@ -385165,7 +385165,7 @@ var init_pt2 = __esm({
|
|
|
385165
385165
|
local: "local",
|
|
385166
385166
|
remote: "remoto",
|
|
385167
385167
|
"This extension will add the following commands: {{commands}}.": "Esta extens\xE3o adicionar\xE1 os seguintes comandos: {{commands}}.",
|
|
385168
|
-
"This extension will append info to your
|
|
385168
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "Esta extens\xE3o anexar\xE1 informa\xE7\xF5es ao seu contexto VIVEKMIND.md usando {{fileName}}",
|
|
385169
385169
|
"This extension will exclude the following core tools: {{tools}}": "Esta extens\xE3o excluir\xE1 as seguintes ferramentas principais: {{tools}}",
|
|
385170
385170
|
"This extension will install the following skills:": "Esta extens\xE3o instalar\xE1 as seguintes habilidades:",
|
|
385171
385171
|
"This extension will install the following subagents:": "Esta extens\xE3o instalar\xE1 os seguintes subagentes:",
|
|
@@ -385571,7 +385571,7 @@ var init_pt2 = __esm({
|
|
|
385571
385571
|
"Please provide at least one path to add.": "Forne\xE7a pelo menos um caminho para adicionar.",
|
|
385572
385572
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "O comando /directory add n\xE3o \xE9 suportado em perfis de sandbox restritivos. Use --include-directories ao iniciar a sess\xE3o.",
|
|
385573
385573
|
"Error adding '{{path}}': {{error}}": "Erro ao adicionar '{{path}}': {{error}}",
|
|
385574
|
-
"Successfully added
|
|
385574
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "Arquivos VIVEKMIND.md adicionados com sucesso dos seguintes diret\xF3rios, se houverem:\n- {{directories}}",
|
|
385575
385575
|
"Error refreshing memory: {{error}}": "Erro ao atualizar mem\xF3ria: {{error}}",
|
|
385576
385576
|
"Successfully added directories:\n- {{directories}}": "Diret\xF3rios adicionados com sucesso:\n- {{directories}}",
|
|
385577
385577
|
"Current workspace directories:\n{{directories}}": "Diret\xF3rios atuais do workspace:\n{{directories}}",
|
|
@@ -385803,7 +385803,7 @@ var init_pt2 = __esm({
|
|
|
385803
385803
|
unknown: "desconhecido",
|
|
385804
385804
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "Falha ao trocar o modelo para '{{modelId}}'.\n\n{{error}}",
|
|
385805
385805
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 modelo h\xEDbrido eficiente com desempenho l\xEDder em programa\xE7\xE3o",
|
|
385806
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
385806
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "O modelo VivekMind Vision mais recente do Alibaba Cloud ModelStudio (vers\xE3o: vivekmind3-vl-plus-2025-09-23)",
|
|
385807
385807
|
// ============================================================================
|
|
385808
385808
|
// Dialogs - Permissions
|
|
385809
385809
|
// ============================================================================
|
|
@@ -385926,7 +385926,7 @@ var init_pt2 = __esm({
|
|
|
385926
385926
|
"You can switch permission mode quickly with Shift+Tab or /approval-mode.": "Voc\xEA pode alternar o modo de permiss\xE3o rapidamente com Shift+Tab ou /approval-mode.",
|
|
385927
385927
|
"Try /insight to generate personalized insights from your chat history.": "Experimente /insight para gerar insights personalizados do seu hist\xF3rico de conversas.",
|
|
385928
385928
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "Pressione Ctrl+O para alternar o modo compacto \u2014 ocultar sa\xEDda de ferramentas e racioc\xEDnio.",
|
|
385929
|
-
"Add a
|
|
385929
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "Adicione um arquivo VIVEKMIND.md para dar ao VivekMind um contexto persistente do projeto.",
|
|
385930
385930
|
"Use /btw to ask a quick side question without disrupting the conversation.": "Use /btw para fazer uma pergunta lateral r\xE1pida sem interromper a conversa.",
|
|
385931
385931
|
"Context is almost full! Run /compress now or start /new to continue.": "O contexto est\xE1 quase cheio! Execute /compress agora ou inicie /new para continuar.",
|
|
385932
385932
|
"Context is getting full. Use /compress to free up space.": "O contexto est\xE1 ficando cheio. Use /compress para liberar espa\xE7o.",
|
|
@@ -386413,7 +386413,7 @@ var init_ru2 = __esm({
|
|
|
386413
386413
|
// ============================================================================
|
|
386414
386414
|
// Команды - Общие
|
|
386415
386415
|
// ============================================================================
|
|
386416
|
-
"Analyzes the project and creates a tailored
|
|
386416
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "\u0410\u043D\u0430\u043B\u0438\u0437 \u043F\u0440\u043E\u0435\u043A\u0442\u0430 \u0438 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u0435 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u043E\u0433\u043E \u0444\u0430\u0439\u043B\u0430 VIVEKMIND.md",
|
|
386417
386417
|
"List available VivekMind tools. Usage: /tools [desc]": "\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432 VivekMind. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /tools [desc]",
|
|
386418
386418
|
"List available skills.": "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u043D\u0430\u0432\u044B\u043A\u0438.",
|
|
386419
386419
|
"Available VivekMind CLI tools:": "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u044B VivekMind CLI:",
|
|
@@ -386669,7 +386669,7 @@ var init_ru2 = __esm({
|
|
|
386669
386669
|
local: "\u043B\u043E\u043A\u0430\u043B\u044C\u043D\u044B\u0439",
|
|
386670
386670
|
remote: "\u0443\u0434\u0430\u043B\u0451\u043D\u043D\u044B\u0439",
|
|
386671
386671
|
"This extension will add the following commands: {{commands}}.": "\u042D\u0442\u043E \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u043A\u043E\u043C\u0430\u043D\u0434\u044B: {{commands}}.",
|
|
386672
|
-
"This extension will append info to your
|
|
386672
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "\u042D\u0442\u043E \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435 \u0434\u043E\u0431\u0430\u0432\u0438\u0442 \u0438\u043D\u0444\u043E\u0440\u043C\u0430\u0446\u0438\u044E \u0432 \u0432\u0430\u0448 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 VIVEKMIND.md \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E {{fileName}}",
|
|
386673
386673
|
"This extension will exclude the following core tools: {{tools}}": "\u042D\u0442\u043E \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435 \u0438\u0441\u043A\u043B\u044E\u0447\u0438\u0442 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u043E\u0441\u043D\u043E\u0432\u043D\u044B\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u044B: {{tools}}",
|
|
386674
386674
|
"This extension will install the following skills:": "\u042D\u0442\u043E \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u043D\u0430\u0432\u044B\u043A\u0438:",
|
|
386675
386675
|
"This extension will install the following subagents:": "\u042D\u0442\u043E \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u0435 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0435 \u043F\u043E\u0434\u0430\u0433\u0435\u043D\u0442\u044B:",
|
|
@@ -387086,7 +387086,7 @@ var init_ru2 = __esm({
|
|
|
387086
387086
|
"Please provide at least one path to add.": "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0443\u043A\u0430\u0436\u0438\u0442\u0435 \u0445\u043E\u0442\u044F \u0431\u044B \u043E\u0434\u0438\u043D \u043F\u0443\u0442\u044C \u0434\u043B\u044F \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u044F.",
|
|
387087
387087
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "\u041A\u043E\u043C\u0430\u043D\u0434\u0430 /directory add \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F \u0432 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0445 \u043F\u0440\u043E\u0444\u0438\u043B\u044F\u0445 \u043F\u0435\u0441\u043E\u0447\u043D\u0438\u0446\u044B. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 --include-directories \u043F\u0440\u0438 \u0437\u0430\u043F\u0443\u0441\u043A\u0435 \u0441\u0435\u0441\u0441\u0438\u0438.",
|
|
387088
387088
|
"Error adding '{{path}}': {{error}}": "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0438 '{{path}}': {{error}}",
|
|
387089
|
-
"Successfully added
|
|
387089
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0444\u0430\u0439\u043B\u044B VIVEKMIND.md \u0438\u0437 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0445 \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0439 (\u0435\u0441\u043B\u0438 \u043E\u043D\u0438 \u0435\u0441\u0442\u044C):\n- {{directories}}",
|
|
387090
387090
|
"Error refreshing memory: {{error}}": "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0438 \u043F\u0430\u043C\u044F\u0442\u0438: {{error}}",
|
|
387091
387091
|
"Successfully added directories:\n- {{directories}}": "\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0438:\n- {{directories}}",
|
|
387092
387092
|
"Current workspace directories:\n{{directories}}": "\u0422\u0435\u043A\u0443\u0449\u0438\u0435 \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0438 \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u043F\u0440\u043E\u0441\u0442\u0440\u0430\u043D\u0441\u0442\u0432\u0430:\n{{directories}}",
|
|
@@ -387259,7 +387259,7 @@ var init_ru2 = __esm({
|
|
|
387259
387259
|
unknown: "\u043D\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043D\u043E",
|
|
387260
387260
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C\u0441\u044F \u043D\u0430 \u043C\u043E\u0434\u0435\u043B\u044C '{{modelId}}'.\n\n{{error}}",
|
|
387261
387261
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 \u044D\u0444\u0444\u0435\u043A\u0442\u0438\u0432\u043D\u0430\u044F \u0433\u0438\u0431\u0440\u0438\u0434\u043D\u0430\u044F \u043C\u043E\u0434\u0435\u043B\u044C \u0441 \u043B\u0438\u0434\u0438\u0440\u0443\u044E\u0449\u0435\u0439 \u043F\u0440\u043E\u0438\u0437\u0432\u043E\u0434\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C\u044E \u0432 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0438",
|
|
387262
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
387262
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u044F\u044F \u043C\u043E\u0434\u0435\u043B\u044C VivekMind Vision \u043E\u0442 Alibaba Cloud ModelStudio (\u0432\u0435\u0440\u0441\u0438\u044F: vivekmind3-vl-plus-2025-09-23)",
|
|
387263
387263
|
// ============================================================================
|
|
387264
387264
|
// Диалоги - Разрешения
|
|
387265
387265
|
// ============================================================================
|
|
@@ -387619,7 +387619,7 @@ var init_ru2 = __esm({
|
|
|
387619
387619
|
"You can switch permission mode quickly with Tab or /approval-mode.": "\u0412\u044B \u043C\u043E\u0436\u0435\u0442\u0435 \u0431\u044B\u0441\u0442\u0440\u043E \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0430\u0442\u044C \u0440\u0435\u0436\u0438\u043C \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u0439 \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E Tab \u0438\u043B\u0438 /approval-mode.",
|
|
387620
387620
|
"Try /insight to generate personalized insights from your chat history.": "\u041F\u043E\u043F\u0440\u043E\u0431\u0443\u0439\u0442\u0435 /insight, \u0447\u0442\u043E\u0431\u044B \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u0438\u0437\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0435 \u0432\u044B\u0432\u043E\u0434\u044B \u0438\u0437 \u0438\u0441\u0442\u043E\u0440\u0438\u0438 \u0447\u0430\u0442\u043E\u0432.",
|
|
387621
387621
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "\u041D\u0430\u0436\u043C\u0438\u0442\u0435 Ctrl+O \u0434\u043B\u044F \u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u044F \u043A\u043E\u043C\u043F\u0430\u043A\u0442\u043D\u043E\u0433\u043E \u0440\u0435\u0436\u0438\u043C\u0430 \u2014 \u0441\u043A\u0440\u044B\u0442\u044C \u0432\u044B\u0432\u043E\u0434 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u0438 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u044F.",
|
|
387622
|
-
"Add a
|
|
387622
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "\u0414\u043E\u0431\u0430\u0432\u044C\u0442\u0435 \u0444\u0430\u0439\u043B VIVEKMIND.md, \u0447\u0442\u043E\u0431\u044B \u043F\u0440\u0435\u0434\u043E\u0441\u0442\u0430\u0432\u0438\u0442\u044C VivekMind \u043F\u043E\u0441\u0442\u043E\u044F\u043D\u043D\u044B\u0439 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 \u043F\u0440\u043E\u0435\u043A\u0442\u0430.",
|
|
387623
387623
|
"Use /btw to ask a quick side question without disrupting the conversation.": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 /btw, \u0447\u0442\u043E\u0431\u044B \u0437\u0430\u0434\u0430\u0442\u044C \u043A\u043E\u0440\u043E\u0442\u043A\u0438\u0439 \u043F\u043E\u0431\u043E\u0447\u043D\u044B\u0439 \u0432\u043E\u043F\u0440\u043E\u0441, \u043D\u0435 \u043F\u0440\u0435\u0440\u044B\u0432\u0430\u044F \u043E\u0441\u043D\u043E\u0432\u043D\u043E\u0439 \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440.",
|
|
387624
387624
|
"Context is almost full! Run /compress now or start /new to continue.": "\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 \u043F\u043E\u0447\u0442\u0438 \u0437\u0430\u043F\u043E\u043B\u043D\u0435\u043D! \u0412\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u0435 /compress \u0441\u0435\u0439\u0447\u0430\u0441 \u0438\u043B\u0438 \u043D\u0430\u0447\u043D\u0438\u0442\u0435 /new, \u0447\u0442\u043E\u0431\u044B \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C.",
|
|
387625
387625
|
"Context is getting full. Use /compress to free up space.": "\u041A\u043E\u043D\u0442\u0435\u043A\u0441\u0442 \u0437\u0430\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 /compress, \u0447\u0442\u043E\u0431\u044B \u043E\u0441\u0432\u043E\u0431\u043E\u0434\u0438\u0442\u044C \u043C\u0435\u0441\u0442\u043E.",
|
|
@@ -387926,7 +387926,7 @@ var init_zh_TW2 = __esm({
|
|
|
387926
387926
|
Proxy: "\u4EE3\u7406",
|
|
387927
387927
|
"Memory Usage": "\u5167\u5B58\u4F7F\u7528",
|
|
387928
387928
|
"IDE Client": "IDE \u5BA2\u6236\u7AEF",
|
|
387929
|
-
"Analyzes the project and creates a tailored
|
|
387929
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "\u5206\u6790\u9805\u76EE\u4E26\u5275\u5EFA\u5B9A\u88FD\u7684 VIVEKMIND.md \u6587\u4EF6",
|
|
387930
387930
|
"List available VivekMind tools. Usage: /tools [desc]": "\u5217\u51FA\u53EF\u7528\u7684 VivekMind \u5DE5\u5177\u3002\u7528\u6CD5\uFF1A/tools [desc]",
|
|
387931
387931
|
"List available skills.": "\u5217\u51FA\u53EF\u7528\u6280\u80FD\u3002",
|
|
387932
387932
|
"Available VivekMind CLI tools:": "\u53EF\u7528\u7684 VivekMind CLI \u5DE5\u5177\uFF1A",
|
|
@@ -388216,7 +388216,7 @@ var init_zh_TW2 = __esm({
|
|
|
388216
388216
|
local: "\u672C\u5730",
|
|
388217
388217
|
remote: "\u9060\u7A0B",
|
|
388218
388218
|
"This extension will add the following commands: {{commands}}.": "\u6B64\u64F4\u5C55\u5C07\u6DFB\u52A0\u4EE5\u4E0B\u547D\u4EE4\uFF1A{{commands}}\u3002",
|
|
388219
|
-
"This extension will append info to your
|
|
388219
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "\u6B64\u64F4\u5C55\u5C07\u4F7F\u7528 {{fileName}} \u5411\u60A8\u7684 VIVEKMIND.md \u4E0A\u4E0B\u6587\u8FFD\u52A0\u4FE1\u606F",
|
|
388220
388220
|
"This extension will exclude the following core tools: {{tools}}": "\u6B64\u64F4\u5C55\u5C07\u6392\u9664\u4EE5\u4E0B\u6838\u5FC3\u5DE5\u5177\uFF1A{{tools}}",
|
|
388221
388221
|
"This extension will install the following skills:": "\u6B64\u64F4\u5C55\u5C07\u5B89\u88DD\u4EE5\u4E0B\u6280\u80FD\uFF1A",
|
|
388222
388222
|
"This extension will install the following subagents:": "\u6B64\u64F4\u5C55\u5C07\u5B89\u88DD\u4EE5\u4E0B\u5B50\u667A\u80FD\u9AD4\uFF1A",
|
|
@@ -388659,7 +388659,7 @@ var init_zh_TW2 = __esm({
|
|
|
388659
388659
|
"Please provide at least one path to add.": "\u8ACB\u63D0\u4F9B\u81F3\u5C11\u4E00\u500B\u8981\u6DFB\u52A0\u7684\u8DEF\u5F91\u3002",
|
|
388660
388660
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "/directory add \u547D\u4EE4\u5728\u9650\u5236\u6027\u6C99\u7BB1\u914D\u7F6E\u6587\u4EF6\u4E2D\u4E0D\u53D7\u652F\u6301\u3002\u8ACB\u6539\u7232\u5728\u5553\u52D5\u6703\u8A71\u6642\u4F7F\u7528 --include-directories\u3002",
|
|
388661
388661
|
"Error adding '{{path}}': {{error}}": "\u6DFB\u52A0 '{{path}}' \u6642\u51FA\u932F\uFF1A{{error}}",
|
|
388662
|
-
"Successfully added
|
|
388662
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "\u5982\u679C\u5B58\u5728\uFF0C\u5DF2\u6210\u529F\u5F9E\u4EE5\u4E0B\u76EE\u9304\u6DFB\u52A0 VIVEKMIND.md \u6587\u4EF6\uFF1A\n- {{directories}}",
|
|
388663
388663
|
"Error refreshing memory: {{error}}": "\u5237\u65B0\u5167\u5B58\u6642\u51FA\u932F\uFF1A{{error}}",
|
|
388664
388664
|
"Successfully added directories:\n- {{directories}}": "\u6210\u529F\u6DFB\u52A0\u76EE\u9304\uFF1A\n- {{directories}}",
|
|
388665
388665
|
"Current workspace directories:\n{{directories}}": "\u7576\u524D\u5DE5\u4F5C\u5340\u76EE\u9304\uFF1A\n{{directories}}",
|
|
@@ -388784,7 +388784,7 @@ var init_zh_TW2 = __esm({
|
|
|
388784
388784
|
unknown: "\u672A\u77E5",
|
|
388785
388785
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "\u7121\u6CD5\u5207\u63DB\u5230\u6A21\u578B '{{modelId}}'.\n\n{{error}}",
|
|
388786
388786
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 \u9AD8\u6548\u6DF7\u5408\u67B6\u69CB\uFF0C\u7DE8\u7A0B\u6027\u80FD\u696D\u754C\u9818\u5148",
|
|
388787
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
388787
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "\u4F86\u81EA\u963F\u91CC\u96F2 ModelStudio \u7684\u6700\u65B0 VivekMind Vision \u6A21\u578B\uFF08\u7248\u672C\uFF1Avivekmind3-vl-plus-2025-09-23\uFF09",
|
|
388788
388788
|
"Manage folder trust settings": "\u7BA1\u7406\u6587\u4EF6\u593E\u4FE1\u4EFB\u8A2D\u7F6E",
|
|
388789
388789
|
"Manage permission rules": "\u7BA1\u7406\u6B0A\u9650\u898F\u5247",
|
|
388790
388790
|
Allow: "\u5141\u8A31",
|
|
@@ -388895,7 +388895,7 @@ var init_zh_TW2 = __esm({
|
|
|
388895
388895
|
"You can switch permission mode quickly with Tab or /approval-mode.": "\u6309 Tab \u6216\u8F38\u5165 /approval-mode \u53EF\u5FEB\u901F\u5207\u63DB\u6B0A\u9650\u6A21\u5F0F\u3002",
|
|
388896
388896
|
"Try /insight to generate personalized insights from your chat history.": "\u8A66\u8A66 /insight\uFF0C\u5F9E\u804A\u5929\u8A18\u9304\u4E2D\u751F\u6210\u500B\u6027\u5316\u6D1E\u5BDF\u3002",
|
|
388897
388897
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "\u6309 Ctrl+O \u5207\u63DB\u7DCA\u6E4A\u6A21\u5F0F \u2500\u2500 \u96B1\u85CF\u5DE5\u5177\u8F38\u51FA\u548C\u601D\u8003\u904E\u7A0B\uFF0C\u754C\u9762\u66F4\u7C21\u6F54\u3002",
|
|
388898
|
-
"Add a
|
|
388898
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "\u6DFB\u52A0 VIVEKMIND.md \u6587\u4EF6\uFF0C\u7232 VivekMind \u63D0\u4F9B\u6301\u4E45\u7684\u9805\u76EE\u4E0A\u4E0B\u6587\u3002",
|
|
388899
388899
|
"Use /btw to ask a quick side question without disrupting the conversation.": "\u7528 /btw \u5FEB\u901F\u554F\u4E00\u500B\u5C0F\u554F\u984C\uFF0C\u4E0D\u6703\u6253\u65B7\u7576\u524D\u5C0D\u8A71\u3002",
|
|
388900
388900
|
"Context is almost full! Run /compress now or start /new to continue.": "\u4E0A\u4E0B\u6587\u5373\u5C07\u7528\u6EFF\uFF01\u8ACB\u7ACB\u5373\u57F7\u884C /compress \u6216\u4F7F\u7528 /new \u958B\u5553\u65B0\u6703\u8A71\u3002",
|
|
388901
388901
|
"Context is getting full. Use /compress to free up space.": "\u4E0A\u4E0B\u6587\u7A7A\u9593\u4E0D\u8DB3\uFF0C\u7528 /compress \u91CB\u653E\u7A7A\u9593\u3002",
|
|
@@ -389246,7 +389246,7 @@ var init_zh = __esm({
|
|
|
389246
389246
|
// ============================================================================
|
|
389247
389247
|
// Commands - General
|
|
389248
389248
|
// ============================================================================
|
|
389249
|
-
"Analyzes the project and creates a tailored
|
|
389249
|
+
"Analyzes the project and creates a tailored VIVEKMIND.md file.": "\u5206\u6790\u9879\u76EE\u5E76\u521B\u5EFA\u5B9A\u5236\u7684 VIVEKMIND.md \u6587\u4EF6",
|
|
389250
389250
|
"List available VivekMind tools. Usage: /tools [desc]": "\u5217\u51FA\u53EF\u7528\u7684 VivekMind \u5DE5\u5177\u3002\u7528\u6CD5\uFF1A/tools [desc]",
|
|
389251
389251
|
"List available skills.": "\u5217\u51FA\u53EF\u7528\u6280\u80FD\u3002",
|
|
389252
389252
|
"Available VivekMind CLI tools:": "\u53EF\u7528\u7684 VivekMind CLI \u5DE5\u5177\uFF1A",
|
|
@@ -389559,7 +389559,7 @@ var init_zh = __esm({
|
|
|
389559
389559
|
local: "\u672C\u5730",
|
|
389560
389560
|
remote: "\u8FDC\u7A0B",
|
|
389561
389561
|
"This extension will add the following commands: {{commands}}.": "\u6B64\u6269\u5C55\u5C06\u6DFB\u52A0\u4EE5\u4E0B\u547D\u4EE4\uFF1A{{commands}}\u3002",
|
|
389562
|
-
"This extension will append info to your
|
|
389562
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}": "\u6B64\u6269\u5C55\u5C06\u4F7F\u7528 {{fileName}} \u5411\u60A8\u7684 VIVEKMIND.md \u4E0A\u4E0B\u6587\u8FFD\u52A0\u4FE1\u606F",
|
|
389563
389563
|
"This extension will exclude the following core tools: {{tools}}": "\u6B64\u6269\u5C55\u5C06\u6392\u9664\u4EE5\u4E0B\u6838\u5FC3\u5DE5\u5177\uFF1A{{tools}}",
|
|
389564
389564
|
"This extension will install the following skills:": "\u6B64\u6269\u5C55\u5C06\u5B89\u88C5\u4EE5\u4E0B\u6280\u80FD\uFF1A",
|
|
389565
389565
|
"This extension will install the following subagents:": "\u6B64\u6269\u5C55\u5C06\u5B89\u88C5\u4EE5\u4E0B\u5B50\u667A\u80FD\u4F53\uFF1A",
|
|
@@ -390068,7 +390068,7 @@ var init_zh = __esm({
|
|
|
390068
390068
|
"Please provide at least one path to add.": "\u8BF7\u63D0\u4F9B\u81F3\u5C11\u4E00\u4E2A\u8981\u6DFB\u52A0\u7684\u8DEF\u5F84\u3002",
|
|
390069
390069
|
"The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "/directory add \u547D\u4EE4\u5728\u9650\u5236\u6027\u6C99\u7BB1\u914D\u7F6E\u6587\u4EF6\u4E2D\u4E0D\u53D7\u652F\u6301\u3002\u8BF7\u6539\u4E3A\u5728\u542F\u52A8\u4F1A\u8BDD\u65F6\u4F7F\u7528 --include-directories\u3002",
|
|
390070
390070
|
"Error adding '{{path}}': {{error}}": "\u6DFB\u52A0 '{{path}}' \u65F6\u51FA\u9519\uFF1A{{error}}",
|
|
390071
|
-
"Successfully added
|
|
390071
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}": "\u5982\u679C\u5B58\u5728\uFF0C\u5DF2\u6210\u529F\u4ECE\u4EE5\u4E0B\u76EE\u5F55\u6DFB\u52A0 VIVEKMIND.md \u6587\u4EF6\uFF1A\n- {{directories}}",
|
|
390072
390072
|
"Error refreshing memory: {{error}}": "\u5237\u65B0\u5185\u5B58\u65F6\u51FA\u9519\uFF1A{{error}}",
|
|
390073
390073
|
"Successfully added directories:\n- {{directories}}": "\u6210\u529F\u6DFB\u52A0\u76EE\u5F55\uFF1A\n- {{directories}}",
|
|
390074
390074
|
"Current workspace directories:\n{{directories}}": "\u5F53\u524D\u5DE5\u4F5C\u533A\u76EE\u5F55\uFF1A\n{{directories}}",
|
|
@@ -390213,7 +390213,7 @@ var init_zh = __esm({
|
|
|
390213
390213
|
unknown: "\u672A\u77E5",
|
|
390214
390214
|
"Failed to switch model to '{{modelId}}'.\n\n{{error}}": "\u65E0\u6CD5\u5207\u6362\u5230\u6A21\u578B '{{modelId}}'.\n\n{{error}}",
|
|
390215
390215
|
"VivekMind 3.6 Plus \u2014 efficient hybrid model with leading coding performance": "VivekMind 3.6 Plus \u2014 \u9AD8\u6548\u6DF7\u5408\u67B6\u6784\uFF0C\u7F16\u7A0B\u6027\u80FD\u4E1A\u754C\u9886\u5148",
|
|
390216
|
-
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version:
|
|
390216
|
+
"The latest VivekMind Vision model from Alibaba Cloud ModelStudio (version: vivekmind3-vl-plus-2025-09-23)": "\u6765\u81EA\u963F\u91CC\u4E91 ModelStudio \u7684\u6700\u65B0 VivekMind Vision \u6A21\u578B\uFF08\u7248\u672C\uFF1Avivekmind3-vl-plus-2025-09-23\uFF09",
|
|
390217
390217
|
// ============================================================================
|
|
390218
390218
|
// Dialogs - Permissions
|
|
390219
390219
|
// ============================================================================
|
|
@@ -390337,7 +390337,7 @@ var init_zh = __esm({
|
|
|
390337
390337
|
"You can switch permission mode quickly with Tab or /approval-mode.": "\u6309 Tab \u6216\u8F93\u5165 /approval-mode \u53EF\u5FEB\u901F\u5207\u6362\u6743\u9650\u6A21\u5F0F\u3002",
|
|
390338
390338
|
"Try /insight to generate personalized insights from your chat history.": "\u8BD5\u8BD5 /insight\uFF0C\u4ECE\u804A\u5929\u8BB0\u5F55\u4E2D\u751F\u6210\u4E2A\u6027\u5316\u6D1E\u5BDF\u3002",
|
|
390339
390339
|
"Press Ctrl+O to toggle compact mode \u2014 hide tool output and thinking for a cleaner view.": "\u6309 Ctrl+O \u5207\u6362\u7D27\u51D1\u6A21\u5F0F \u2500\u2500 \u9690\u85CF\u5DE5\u5177\u8F93\u51FA\u548C\u601D\u8003\u8FC7\u7A0B\uFF0C\u754C\u9762\u66F4\u7B80\u6D01\u3002",
|
|
390340
|
-
"Add a
|
|
390340
|
+
"Add a VIVEKMIND.md file to give VivekMind persistent project context.": "\u6DFB\u52A0 VIVEKMIND.md \u6587\u4EF6\uFF0C\u4E3A VivekMind \u63D0\u4F9B\u6301\u4E45\u7684\u9879\u76EE\u4E0A\u4E0B\u6587\u3002",
|
|
390341
390341
|
"Use /btw to ask a quick side question without disrupting the conversation.": "\u7528 /btw \u5FEB\u901F\u95EE\u4E00\u4E2A\u5C0F\u95EE\u9898\uFF0C\u4E0D\u4F1A\u6253\u65AD\u5F53\u524D\u5BF9\u8BDD\u3002",
|
|
390342
390342
|
"Context is almost full! Run /compress now or start /new to continue.": "\u4E0A\u4E0B\u6587\u5373\u5C06\u7528\u6EE1\uFF01\u8BF7\u7ACB\u5373\u6267\u884C /compress \u6216\u4F7F\u7528 /new \u5F00\u542F\u65B0\u4F1A\u8BDD\u3002",
|
|
390343
390343
|
"Context is getting full. Use /compress to free up space.": "\u4E0A\u4E0B\u6587\u7A7A\u95F4\u4E0D\u8DB3\uFF0C\u7528 /compress \u91CA\u653E\u7A7A\u95F4\u3002",
|
|
@@ -493160,7 +493160,7 @@ function extensionConsentString(extensionConfig, commands5 = [], skills = [], su
|
|
|
493160
493160
|
const fileName = Array.isArray(extensionConfig.contextFileName) ? extensionConfig.contextFileName.join(", ") : extensionConfig.contextFileName;
|
|
493161
493161
|
output.push(
|
|
493162
493162
|
t4(
|
|
493163
|
-
"This extension will append info to your
|
|
493163
|
+
"This extension will append info to your VIVEKMIND.md context using {{fileName}}",
|
|
493164
493164
|
{ fileName }
|
|
493165
493165
|
)
|
|
493166
493166
|
);
|
|
@@ -499151,8 +499151,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499151
499151
|
if (region === "china" /* CHINA */) {
|
|
499152
499152
|
return [
|
|
499153
499153
|
{
|
|
499154
|
-
id: "
|
|
499155
|
-
name: "[ModelStudio Coding Plan]
|
|
499154
|
+
id: "vivekmind3.5-plus",
|
|
499155
|
+
name: "[ModelStudio Coding Plan] vivekmind3.5-plus",
|
|
499156
499156
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
499157
499157
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499158
499158
|
generationConfig: {
|
|
@@ -499163,8 +499163,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499163
499163
|
}
|
|
499164
499164
|
},
|
|
499165
499165
|
{
|
|
499166
|
-
id: "
|
|
499167
|
-
name: "[ModelStudio Coding Plan]
|
|
499166
|
+
id: "vivekmind3.6-plus",
|
|
499167
|
+
name: "[ModelStudio Coding Plan] vivekmind3.6-plus",
|
|
499168
499168
|
description: "Currently available to Pro subscribers only.",
|
|
499169
499169
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
499170
499170
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
@@ -499212,8 +499212,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499212
499212
|
}
|
|
499213
499213
|
},
|
|
499214
499214
|
{
|
|
499215
|
-
id: "
|
|
499216
|
-
name: "[ModelStudio Coding Plan]
|
|
499215
|
+
id: "vivekmind3-coder-plus",
|
|
499216
|
+
name: "[ModelStudio Coding Plan] vivekmind3-coder-plus",
|
|
499217
499217
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
499218
499218
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499219
499219
|
generationConfig: {
|
|
@@ -499221,8 +499221,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499221
499221
|
}
|
|
499222
499222
|
},
|
|
499223
499223
|
{
|
|
499224
|
-
id: "
|
|
499225
|
-
name: "[ModelStudio Coding Plan]
|
|
499224
|
+
id: "vivekmind3-coder-next",
|
|
499225
|
+
name: "[ModelStudio Coding Plan] vivekmind3-coder-next",
|
|
499226
499226
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
499227
499227
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499228
499228
|
generationConfig: {
|
|
@@ -499230,8 +499230,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499230
499230
|
}
|
|
499231
499231
|
},
|
|
499232
499232
|
{
|
|
499233
|
-
id: "
|
|
499234
|
-
name: "[ModelStudio Coding Plan]
|
|
499233
|
+
id: "vivekmind3-max-2026-01-23",
|
|
499234
|
+
name: "[ModelStudio Coding Plan] vivekmind3-max-2026-01-23",
|
|
499235
499235
|
baseUrl: "https://coding.dashscope.aliyuncs.com/v1",
|
|
499236
499236
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499237
499237
|
generationConfig: {
|
|
@@ -499257,8 +499257,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499257
499257
|
}
|
|
499258
499258
|
return [
|
|
499259
499259
|
{
|
|
499260
|
-
id: "
|
|
499261
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
499260
|
+
id: "vivekmind3.5-plus",
|
|
499261
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3.5-plus",
|
|
499262
499262
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
499263
499263
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499264
499264
|
generationConfig: {
|
|
@@ -499269,8 +499269,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499269
499269
|
}
|
|
499270
499270
|
},
|
|
499271
499271
|
{
|
|
499272
|
-
id: "
|
|
499273
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
499272
|
+
id: "vivekmind3.6-plus",
|
|
499273
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3.6-plus",
|
|
499274
499274
|
description: "Currently available to Pro subscribers only.",
|
|
499275
499275
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
499276
499276
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
@@ -499282,8 +499282,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499282
499282
|
}
|
|
499283
499283
|
},
|
|
499284
499284
|
{
|
|
499285
|
-
id: "
|
|
499286
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
499285
|
+
id: "vivekmind3-coder-plus",
|
|
499286
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-coder-plus",
|
|
499287
499287
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
499288
499288
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499289
499289
|
generationConfig: {
|
|
@@ -499291,8 +499291,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499291
499291
|
}
|
|
499292
499292
|
},
|
|
499293
499293
|
{
|
|
499294
|
-
id: "
|
|
499295
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
499294
|
+
id: "vivekmind3-coder-next",
|
|
499295
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-coder-next",
|
|
499296
499296
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
499297
499297
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499298
499298
|
generationConfig: {
|
|
@@ -499300,8 +499300,8 @@ function generateCodingPlanTemplate2(region) {
|
|
|
499300
499300
|
}
|
|
499301
499301
|
},
|
|
499302
499302
|
{
|
|
499303
|
-
id: "
|
|
499304
|
-
name: "[ModelStudio Coding Plan for Global/Intl]
|
|
499303
|
+
id: "vivekmind3-max-2026-01-23",
|
|
499304
|
+
name: "[ModelStudio Coding Plan for Global/Intl] vivekmind3-max-2026-01-23",
|
|
499305
499305
|
baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
|
|
499306
499306
|
envKey: CODING_PLAN_ENV_KEY2,
|
|
499307
499307
|
generationConfig: {
|
|
@@ -499737,7 +499737,7 @@ function buildOpenRouterHeaders() {
|
|
|
499737
499737
|
};
|
|
499738
499738
|
}
|
|
499739
499739
|
__name(buildOpenRouterHeaders, "buildOpenRouterHeaders");
|
|
499740
|
-
var OPENROUTER_MODEL_PRIORITY_PREFIXES = ["
|
|
499740
|
+
var OPENROUTER_MODEL_PRIORITY_PREFIXES = ["vivekmind/", "glm/", "minimax/"];
|
|
499741
499741
|
var OPENROUTER_RECOMMENDED_MODEL_LIMIT = 16;
|
|
499742
499742
|
var OPENROUTER_FREE_MODEL_ID_HINT = ":free";
|
|
499743
499743
|
function getPreferredOpenRouterModelId(models) {
|
|
@@ -500555,7 +500555,7 @@ __name(handleAlibabaStandardApiKeyAuth, "handleAlibabaStandardApiKeyAuth");
|
|
|
500555
500555
|
function handleCustomApiKeyAuth() {
|
|
500556
500556
|
writeStdoutLine(
|
|
500557
500557
|
t4(
|
|
500558
|
-
"\nYou can configure your API key and models in settings.json.\nRefer to the documentation for setup instructions:\n https://
|
|
500558
|
+
"\nYou can configure your API key and models in settings.json.\nRefer to the documentation for setup instructions:\n https://vivekmindlm.github.io/vivekmind-docs/en/users/configuration/model-providers/\n"
|
|
500559
500559
|
)
|
|
500560
500560
|
);
|
|
500561
500561
|
process.exit(0);
|
|
@@ -500591,7 +500591,7 @@ async function promptForStandardRegion() {
|
|
|
500591
500591
|
}
|
|
500592
500592
|
__name(promptForStandardRegion, "promptForStandardRegion");
|
|
500593
500593
|
async function promptForModelIds() {
|
|
500594
|
-
const defaultModels = "
|
|
500594
|
+
const defaultModels = "vivekmind3.5-plus,glm-5,kimi-k2.5";
|
|
500595
500595
|
return promptForInput(
|
|
500596
500596
|
t4("Enter model IDs (comma-separated, default: {{default}}): ", {
|
|
500597
500597
|
default: defaultModels
|
|
@@ -501307,7 +501307,7 @@ __name(getPackageJson, "getPackageJson");
|
|
|
501307
501307
|
// packages/cli/src/utils/version.ts
|
|
501308
501308
|
async function getCliVersion() {
|
|
501309
501309
|
const pkgJson = await getPackageJson();
|
|
501310
|
-
return "0.
|
|
501310
|
+
return "1.0.0";
|
|
501311
501311
|
}
|
|
501312
501312
|
__name(getCliVersion, "getCliVersion");
|
|
501313
501313
|
|
|
@@ -508079,14 +508079,14 @@ ${section}`);
|
|
|
508079
508079
|
loaded.push("AGENTS.md");
|
|
508080
508080
|
}
|
|
508081
508081
|
}
|
|
508082
|
-
const contextMd = showFile(baseRef, "
|
|
508082
|
+
const contextMd = showFile(baseRef, "VIVEKMIND.md");
|
|
508083
508083
|
if (contextMd) {
|
|
508084
508084
|
const section = extractCodeReviewSection(contextMd);
|
|
508085
508085
|
if (section) {
|
|
508086
|
-
sections.push(`### From
|
|
508086
|
+
sections.push(`### From VIVEKMIND.md
|
|
508087
508087
|
|
|
508088
508088
|
${section}`);
|
|
508089
|
-
loaded.push("
|
|
508089
|
+
loaded.push("VIVEKMIND.md");
|
|
508090
508090
|
}
|
|
508091
508091
|
}
|
|
508092
508092
|
return {
|
|
@@ -508111,7 +508111,7 @@ async function runLoadRules(args2) {
|
|
|
508111
508111
|
__name(runLoadRules, "runLoadRules");
|
|
508112
508112
|
var loadRulesCommand = {
|
|
508113
508113
|
command: "load-rules <base_ref>",
|
|
508114
|
-
describe: "Read project review rules from the base branch (.vivekmind/review-rules.md, .github/copilot-instructions.md, AGENTS.md,
|
|
508114
|
+
describe: "Read project review rules from the base branch (.vivekmind/review-rules.md, .github/copilot-instructions.md, AGENTS.md, VIVEKMIND.md) and write a combined Markdown file",
|
|
508115
508115
|
builder: /* @__PURE__ */ __name((yargs) => yargs.positional("base_ref", {
|
|
508116
508116
|
type: "string",
|
|
508117
508117
|
demandOption: true,
|
|
@@ -511153,7 +511153,7 @@ var XCode = new Theme(
|
|
|
511153
511153
|
xcodeColors
|
|
511154
511154
|
);
|
|
511155
511155
|
|
|
511156
|
-
// packages/cli/src/ui/themes/
|
|
511156
|
+
// packages/cli/src/ui/themes/vivekmind-light.ts
|
|
511157
511157
|
init_esbuild_shims();
|
|
511158
511158
|
init_theme();
|
|
511159
511159
|
|
|
@@ -511260,7 +511260,7 @@ var ansiSemanticColors = {
|
|
|
511260
511260
|
}
|
|
511261
511261
|
};
|
|
511262
511262
|
|
|
511263
|
-
// packages/cli/src/ui/themes/
|
|
511263
|
+
// packages/cli/src/ui/themes/vivekmind-light.ts
|
|
511264
511264
|
var vivekmindLightColors = {
|
|
511265
511265
|
type: "light",
|
|
511266
511266
|
Background: "#f8f9fa",
|
|
@@ -511393,7 +511393,7 @@ var VivekMindLight = new Theme(
|
|
|
511393
511393
|
lightSemanticColors
|
|
511394
511394
|
);
|
|
511395
511395
|
|
|
511396
|
-
// packages/cli/src/ui/themes/
|
|
511396
|
+
// packages/cli/src/ui/themes/vivekmind-dark.ts
|
|
511397
511397
|
init_esbuild_shims();
|
|
511398
511398
|
init_theme();
|
|
511399
511399
|
var vivekmindDarkColors = {
|
|
@@ -512976,7 +512976,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds, options2) => {
|
|
|
512976
512976
|
|
|
512977
512977
|
// packages/cli/src/generated/git-commit.ts
|
|
512978
512978
|
init_esbuild_shims();
|
|
512979
|
-
var GIT_COMMIT_INFO = "
|
|
512979
|
+
var GIT_COMMIT_INFO = "ea0a15ca8";
|
|
512980
512980
|
|
|
512981
512981
|
// packages/cli/src/utils/systemInfo.ts
|
|
512982
512982
|
async function getNpmVersion() {
|
|
@@ -513017,7 +513017,7 @@ function getSandboxEnv(stripPrefix = false) {
|
|
|
513017
513017
|
return "no sandbox";
|
|
513018
513018
|
}
|
|
513019
513019
|
if (stripPrefix) {
|
|
513020
|
-
return sandbox.replace(/^(?:vivekmind|
|
|
513020
|
+
return sandbox.replace(/^(?:vivekmind|vivekmind)-(?:code-)?/, "");
|
|
513021
513021
|
}
|
|
513022
513022
|
return sandbox;
|
|
513023
513023
|
}
|
|
@@ -513658,7 +513658,7 @@ function buildArenaExecutionInput(parsed, config2) {
|
|
|
513658
513658
|
return {
|
|
513659
513659
|
type: "message",
|
|
513660
513660
|
messageType: "error",
|
|
513661
|
-
content: 'Usage: /arena start --models model1,model2 <task>\n\nOptions:\n --models [authType:]model1,[authType:]model2\n Models to compete (required, at least 2)\n Format: authType:modelId or just modelId\n\nExamples:\n /arena start --models openai:gpt-4o,anthropic:claude-3 "implement sorting"\n /arena start --models
|
|
513661
|
+
content: 'Usage: /arena start --models model1,model2 <task>\n\nOptions:\n --models [authType:]model1,[authType:]model2\n Models to compete (required, at least 2)\n Format: authType:modelId or just modelId\n\nExamples:\n /arena start --models openai:gpt-4o,anthropic:claude-3 "implement sorting"\n /arena start --models vivekmind-clir-plus,kimi-for-coding "fix the bug"'
|
|
513662
513662
|
};
|
|
513663
513663
|
}
|
|
513664
513664
|
if (parsed.models.length < 2) {
|
|
@@ -515150,7 +515150,7 @@ var docsCommand = {
|
|
|
515150
515150
|
supportedModes: ["interactive", "non_interactive", "acp"],
|
|
515151
515151
|
action: /* @__PURE__ */ __name(async (context2) => {
|
|
515152
515152
|
const langPath = getCurrentLanguage()?.startsWith("zh") ? "zh" : "en";
|
|
515153
|
-
const docsUrl = `https://
|
|
515153
|
+
const docsUrl = `https://vivekmindlm.github.io/vivekmind-docs/${langPath}`;
|
|
515154
515154
|
if (context2.executionMode !== "interactive") {
|
|
515155
515155
|
return {
|
|
515156
515156
|
type: "message",
|
|
@@ -515771,7 +515771,7 @@ var directoryCommand = {
|
|
|
515771
515771
|
{
|
|
515772
515772
|
type: "info" /* INFO */,
|
|
515773
515773
|
text: t4(
|
|
515774
|
-
"Successfully added
|
|
515774
|
+
"Successfully added VIVEKMIND.md files from the following directories if there are:\n- {{directories}}",
|
|
515775
515775
|
{
|
|
515776
515776
|
directories: added.join("\n- ")
|
|
515777
515777
|
}
|
|
@@ -517426,7 +517426,7 @@ var INSIGHT_CSS = '*,:before,:after,::backdrop{--tw-border-spacing-x: 0;--tw-bor
|
|
|
517426
517426
|
|
|
517427
517427
|
// packages/web-templates/src/generated/exportHtmlTemplate.js
|
|
517428
517428
|
init_esbuild_shims();
|
|
517429
|
-
var HTML_TEMPLATE = '<!doctype html>\n<html lang="en" class="dark">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <link\n rel="icon"\n type="image/svg+xml"\n href="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20141.38%20140%22%3E%0A%20%20%3Cpath%0A%20%20%20%20fill%3D%22%23000000%22%0A%20%20%20%20d%3D%22m140.93%2085-16.35-28.33-1.93-3.34%208.66-15a3.323%203.323%200%200%200%200-3.34l-9.62-16.67c-.3-.51-.72-.93-1.22-1.22s-1.07-.45-1.67-.45H82.23l-8.66-15a3.33%203.33%200%200%200-2.89-1.67H51.43c-.59%200-1.17.16-1.66.45-.5.29-.92.71-1.22%201.22L32.19%2029.98l-1.92%203.33H12.96c-.59%200-1.17.16-1.66.45-.5.29-.93.71-1.22%201.22L.45%2051.66a3.323%203.323%200%200%200%200%203.34l18.28%2031.67-8.66%2015a3.32%203.32%200%200%200%200%203.34l9.62%2016.67c.3.51.72.93%201.22%201.22s1.07.45%201.67.45h36.56l8.66%2015a3.35%203.35%200%200%200%202.89%201.67h19.25a3.34%203.34%200%200%200%202.89-1.67l18.28-31.67h17.32c.6%200%201.17-.16%201.67-.45s.92-.71%201.22-1.22l9.62-16.67a3.323%203.323%200%200%200%200-3.34ZM51.44%203.33%2061.07%2020l-9.63%2016.66h76.98l-9.62%2016.66H45.67l-11.54-20zM57.21%20120H22.58l9.63-16.67h19.25l-38.5-66.67h19.25l9.62%2016.67L68.78%20100l-11.55%2020Zm61.59-33.34-9.62-16.67-38.49%2066.67-9.63-16.67%209.63-16.66%2026.94-46.67h23.1l17.32%2030z%22%0A%20%20%2F%3E%0A%3C%2Fsvg%3E"\n />\n <script\n crossorigin\n src="https://unpkg.com/react@18.2.0/umd/react.production.min.js"\n ></script>\n <script\n crossorigin\n src="https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js"\n ></script>\n <script>\n const withKey = (props, key) =>\n key == null ? props : Object.assign({}, props, { key });\n const jsx = (type, props, key) =>\n React.createElement(type, withKey(props, key));\n const jsxRuntime = {\n Fragment: React.Fragment,\n jsx,\n jsxs: jsx,\n jsxDEV: jsx,\n };\n window.ReactJSXRuntime = jsxRuntime;\n window[\'react/jsx-runtime\'] = jsxRuntime;\n window[\'react/jsx-dev-runtime\'] = jsxRuntime;\n </script>\n <script src="https://unpkg.com/@vivekmind/webui@latest/dist/index.umd.js"></script>\n <link\n rel="stylesheet"\n href="https://unpkg.com/@vivekmind/webui@latest/dist/styles.css"\n />\n <title>VivekMind Chat Export</title>\n <style>\n @font-face {\n font-family: "Press Start 2P";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url("data:font/woff2;base64,d09GMgABAAAAAALQAAwAAAAABfwAAAKBAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCgGYABUEQgKgkSCDAsOAAE2AiQDDgQgBYRKByAb4QTIBB76Oev9JKW02x5ClpELSxHm1M0JQ+OBJAtDpAAVUQ7i///V+A/YgLVswlGo/7a+lmW3sfnUvoBFcUKzUFEnKo08S0F2T8TiAAJQieDvSGUVdW3smBv2LuCGjSpG3jQTD/m9OI5lTDomdQG1hkoMkCJu1ZYsmL42dEu7W8q5gUan/J6yyO+FX5NO5qQPxaqGnEINZ2q7kDf0+i4UigAXdiQUNMppoJnOzcxnDMwX5lXzinnJPDtkzhQFwjTx0DGrx1zkoNhIYr5LTKHjclcs+z3Frrh2ue3Kvk6bxzoRJLsIQpWcQhW27bgJwoUHYXNi2WWnVRUWaVNS0XMJ1eIUHlSX0l3l7BZOOos1ySk7NUWl6+eobG3Nfpj96g8EvukB3Qjouo4+O6svG9/0b8ZyKmfoZj9gzBqq8I2MS7Pf2JquL9vZwHJ51djyD01vbVHRDxSslvFBZwMHjQvexMxIvz3oyftul2+k9yBS+xGM+l+d+Pvo/zH5fVXMRvsHhG4u9/dRsgQyF67l9+jYgZuy+Ath2O6EUzU7E6BxF41nQk2cgkN8IIlOPKecMgWccSrE4XdaOECf00oUaeTm34EpvHhZIodEEllllBWmWcJLyQmsPjNHAousMEkijVRQR5OgNc4qq7TiZZg89pJCE/G0MM4kPuYqqIOKrQw3WmQBjVQSSLLm1H1NiGmCN21uwK/JpZRuWignd/klmbWXFEtZZIn1o8cmkaDqX5JIJgWNNqYYR9s0GsRFZhhntKJSjI+KTaFDZ+MoRllkjHWK2ADCxilLQGTkJZo4NAJMDwhAiK0CJD+jjKFRwWBapYFh5rdzfogQC/m1XLplXiEFEwAA") format("woff2");\n }\n :root{--bg-primary: #18181b;--bg-secondary: #27272a;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--border-color: #3f3f46;--accent-color: #3b82f6}body{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;margin:0;padding:0;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}.page-wrapper{min-height:100vh;display:flex;flex-direction:column;align-items:center}.header{width:100%;padding:16px 24px;border-bottom:1px solid var(--border-color);background-color:#18181bf2;backdrop-filter:blur(8px);position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box}.header-left{display:flex;align-items:center;gap:12px}.logo-icon{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.logo-icon svg{width:100%;height:100%}.logo{display:flex;flex-direction:column;line-height:1}.logo-text{font-family:"Press Start 2P",cursive;font-weight:400;font-size:24px;letter-spacing:-.05em;position:relative;color:#fff}.logo-text-inner{background:linear-gradient(to right,#60a5fa,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;position:relative;z-index:2}.logo-text:before,.logo-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:none;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(96,165,250,.3)}.logo-text:before{transform:translate(2px,2px);-webkit-text-stroke:1px rgba(168,85,247,.3)}.logo-text:after{transform:translate(4px,4px);opacity:.4}.logo-sub{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;margin-top:4px}.badge{font-size:11px;padding:2px 8px;border-radius:999px;background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);font-weight:500}.meta{display:flex;gap:24px;font-size:13px;color:var(--text-secondary)}.meta-item{display:flex;align-items:center;gap:8px}.meta-label{color:#71717a}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-secondary);border-radius:5px;border:2px solid var(--bg-primary)}::-webkit-scrollbar-thumb:hover{background:#52525b}@media (max-width: 768px){.chat-container{max-width:100%;padding:20px 16px}.header{padding:12px 16px;flex-direction:column;align-items:flex-start;gap:12px}.header-left{width:100%;justify-content:space-between}.meta{width:100%;flex-direction:column;gap:6px}}@media (max-width: 480px){.chat-container{padding:16px 12px}}.content-wrapper{display:flex;width:100%;max-width:1600px;height:calc(100vh - 73px)}.chat-container{flex:1;min-width:0;overflow-y:auto;padding:24px;box-sizing:border-box}.metadata-sidebar{width:320px;min-width:320px;padding:12px;border-right:1px solid var(--border-color);background-color:var(--bg-secondary);display:flex;flex-direction:column;gap:12px;overflow-y:auto;height:100%;box-sizing:border-box}.metadata-section{display:flex;flex-direction:column;gap:8px}.metadata-section-title{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;padding-bottom:4px;border-bottom:1px solid var(--border-color)}.metadata-section-small{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-color)}.metadata-item{display:flex;flex-direction:column;gap:2px}.metadata-item-empty{font-size:12px;color:#71717a;margin:0;padding:4px 0}.metadata-content{display:flex;flex-direction:column;gap:2px;min-width:0}.metadata-content .metadata-label{font-size:10px;color:#71717a}.metadata-content .metadata-value{font-size:12px;color:var(--text-primary);word-break:break-all;line-height:1.3;cursor:pointer}.metadata-content .metadata-value.multiline{white-space:pre-wrap}.metadata-content .metadata-value.text-green{color:#22c55e}.metadata-content .metadata-value.text-red{color:#ef4444}.metadata-value-with-copy{display:flex;align-items:center;gap:8px}.metadata-value-with-copy .metadata-value{flex:1;min-width:0}.copy-button{display:inline-flex;align-items:center;justify-content:center;padding:4px;background:transparent;border:1px solid var(--border-color, #3f3f46);border-radius:4px;color:var(--text-secondary, #a1a1aa);cursor:pointer;transition:all .15s ease;flex-shrink:0}.copy-button:hover{background:var(--bg-hover, #27272a);color:var(--text-primary, #f4f4f5);border-color:var(--border-hover, #52525b)}.copy-button:active{transform:scale(.95)}@media (max-width: 1024px){.metadata-sidebar{width:320px;min-width:320px;padding:10px}}@media (max-width: 768px){.content-wrapper{flex-direction:column;height:auto}.chat-container{height:auto;min-height:50vh}.metadata-sidebar{width:100%;min-width:100%;height:auto;max-height:none;border-right:none;border-top:1px solid var(--border-color);padding:12px;gap:12px}.metadata-section{flex-direction:row;flex-wrap:wrap;gap:12px}.metadata-section-title{width:100%;border-bottom:none;padding-bottom:0}.metadata-item{flex:1;min-width:140px}.metadata-section-small{margin-top:0;padding-top:0;border-top:none}}.modal-overlay{position:fixed;inset:0;z-index:1000;background-color:#0009;display:flex;align-items:center;justify-content:center;padding:24px}.modal-container{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:4px 8px;border-radius:6px;line-height:1;transition:background-color .15s,color .15s}.modal-close:hover{background-color:var(--border-color);color:var(--text-primary)}.modal-content{margin:0;padding:16px;overflow:auto;font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}\n </style>\n </head>\n <body>\n <div id="app"></div>\n\n <script id="chat-data" type="application/json"></script>\n <script>\n (()=>{var m=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 141.38 140">\n <path\n fill="#000000"\n d="m140.93 85-16.35-28.33-1.93-3.34 8.66-15a3.323 3.323 0 0 0 0-3.34l-9.62-16.67c-.3-.51-.72-.93-1.22-1.22s-1.07-.45-1.67-.45H82.23l-8.66-15a3.33 3.33 0 0 0-2.89-1.67H51.43c-.59 0-1.17.16-1.66.45-.5.29-.92.71-1.22 1.22L32.19 29.98l-1.92 3.33H12.96c-.59 0-1.17.16-1.66.45-.5.29-.93.71-1.22 1.22L.45 51.66a3.323 3.323 0 0 0 0 3.34l18.28 31.67-8.66 15a3.32 3.32 0 0 0 0 3.34l9.62 16.67c.3.51.72.93 1.22 1.22s1.07.45 1.67.45h36.56l8.66 15a3.35 3.35 0 0 0 2.89 1.67h19.25a3.34 3.34 0 0 0 2.89-1.67l18.28-31.67h17.32c.6 0 1.17-.16 1.67-.45s.92-.71 1.22-1.22l9.62-16.67a3.323 3.323 0 0 0 0-3.34ZM51.44 3.33 61.07 20l-9.63 16.66h76.98l-9.62 16.66H45.67l-11.54-20zM57.21 120H22.58l9.63-16.67h19.25l-38.5-66.67h19.25l9.62 16.67L68.78 100l-11.55 20Zm61.59-33.34-9.62-16.67-38.49 66.67-9.63-16.67 9.63-16.66 26.94-46.67h23.1l17.32 30z"\n />\n</svg>\n`;var i=window.React,u=({state:e,onClose:t})=>(i.useEffect(()=>{if(e.visible){let a=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=a}}},[e.visible]),e.visible?i.createElement("div",{className:"modal-overlay",onClick:t},i.createElement("div",{className:"modal-container",onClick:a=>a.stopPropagation()},i.createElement("div",{className:"modal-header"},i.createElement("span",{className:"modal-title font-mono"},e.fileName),i.createElement("button",{className:"modal-close",onClick:t,"aria-label":"Close"},"\\u2715")),i.createElement("pre",{className:"modal-content"},e.content))):null),b=()=>{let[e,t]=i.useState({visible:!1,content:"",fileName:""}),a=i.useCallback((r,s="temp")=>{t({visible:!0,content:r,fileName:s})},[]),l=i.useCallback(()=>{t(r=>({...r,visible:!1}))},[]);return{modalState:e,openModal:a,closeModal:l}};var P=window.React,h=()=>{let{modalState:e,openModal:t,closeModal:a}=b();return{platformContext:P.useMemo(()=>({platform:"web",postMessage:r=>{console.log("Posted message:",r)},onMessage:r=>(window.addEventListener("message",r),()=>window.removeEventListener("message",r)),openFile:r=>{console.log("Opening file:",r)},openTempFile:t,getResourceUrl:()=>{},features:{canOpenFile:!1,canOpenTempFile:!0,canCopy:!0}}),[t]),modalState:e,closeModal:a}};var o=({label:e,value:t,valueClass:a})=>t==null||t===""?null:React.createElement("div",{className:"metadata-item"},React.createElement("div",{className:"metadata-content"},React.createElement("span",{className:"metadata-label"},e),React.createElement("span",{className:`metadata-value ${a||""}`,title:typeof t=="string"?t:void 0},t)));var v=e=>!!e&&typeof e=="object",w=()=>{let e=document.getElementById("chat-data");if(!(e!=null&&e.textContent))return{};try{let t=JSON.parse(e.textContent);return t&&typeof t=="object"?t:{}}catch(t){return console.error("Failed to parse chat data.",t),{}}};var y=e=>{if(!e)return"-";try{return new Date(e).toLocaleString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch(t){return e}},M=e=>{if(!e)return"-";try{let a=new Date(e).getTime();if(Number.isNaN(a))return"-";let r=Math.max(0,new Date().getTime()-a),s=Math.floor(r/1e3),d=Math.floor(s/60),c=Math.floor(d/60),p=Math.floor(c/24),f=Math.floor(p/7),x=Math.floor(p/30),g=Math.floor(p/365);return s<60?"just now":d<60?`${d} minute${d===1?"":"s"} ago`:c<24?`${c} hour${c===1?"":"s"} ago`:p<7?`${p} day${p===1?"":"s"} ago`:f<4?`${f} week${f===1?"":"s"} ago`:x<12?`${x} month${x===1?"":"s"} ago`:`${g} year${g===1?"":"s"} ago`}catch(t){return"-"}};var k=e=>{if(e!=null)return e>=1e6?`${(e/1e6).toFixed(e%1e6===0?0:1)}m`:e>=1e3?`${(e/1e3).toFixed(e%1e3===0?0:1)}k`:e.toString()};var C=({metadata:e})=>React.createElement("aside",{className:"metadata-sidebar"},React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"Session Info"),React.createElement(o,{label:"Session created",value:M(e.startTime)}),React.createElement(o,{label:"Project",value:e.cwd,valueClass:"multiline"}),e.gitRepo&&React.createElement(o,{label:"Repository",value:e.gitRepo}),e.gitBranch&&React.createElement(o,{label:"Branch",value:e.gitBranch}),e.model&&React.createElement(o,{label:"Model",value:e.model}),e.channel&&React.createElement(o,{label:"Channel",value:e.channel})),React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"Statistics"),React.createElement(o,{label:"Prompts",value:e.promptCount}),e.contextUsagePercent!==void 0&&e.contextWindowSize!==void 0&&React.createElement(o,{label:"Context",value:`${e.contextUsagePercent>100?">100":e.contextUsagePercent}% of ${k(e.contextWindowSize)}`,valueClass:e.contextUsagePercent>100?"text-red":void 0}),e.totalTokens!==void 0&&React.createElement(o,{label:"Tokens",value:e.totalTokens.toLocaleString()})),React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"File Operations"),e.filesWritten!==void 0&&e.filesWritten>0&&React.createElement(o,{label:"Files modified",value:e.filesWritten}),e.linesAdded!==void 0&&e.linesAdded>0&&React.createElement(o,{label:"Added",value:`+${e.linesAdded}`,valueClass:"text-green"}),e.linesRemoved!==void 0&&e.linesRemoved>0&&React.createElement(o,{label:"Removed",value:`-${e.linesRemoved}`,valueClass:"text-red"}),(e.filesWritten===void 0||e.filesWritten===0)&&(e.linesAdded===void 0||e.linesAdded===0)&&(e.linesRemoved===void 0||e.linesRemoved===0)&&React.createElement("p",{className:"metadata-item metadata-item-empty"},"No file changes")),React.createElement("div",{className:"metadata-section metadata-section-small"},React.createElement(o,{label:"Session ID",value:e.sessionId,valueClass:"font-mono"}),React.createElement(o,{label:"Export Time",value:y(e.exportTime)})));var z=window.ReactDOM,n=window.React,{ChatViewer:$,PlatformProvider:D}=QwenCodeWebUI,T=m?m.replace(/<svg([^>]*)>/,\'<svg$1><defs><linearGradient id="vivekmind-logo-gradient" x1="0%" y1="0%" x2="100%" y2="0%"><stop offset="0%" stop-color="#60a5fa" /><stop offset="100%" stop-color="#a855f7" /></linearGradient></defs>\').replace(/fill="[^"]*"/,\'fill="url(#vivekmind-logo-gradient)"\'):m,j=()=>{let e=w(),a=(Array.isArray(e.messages)?e.messages:[]).filter(v).filter(c=>c.type!=="system"),l=e.metadata,{platformContext:r,modalState:s,closeModal:d}=h();return n.createElement("div",{className:"page-wrapper"},n.createElement("header",{className:"header"},n.createElement("div",{className:"header-left"},n.createElement("div",{className:"logo-icon","aria-hidden":"true",dangerouslySetInnerHTML:{__html:T}}),n.createElement("div",{className:"logo"},n.createElement("div",{className:"logo-text","data-text":"QWEN"},n.createElement("span",{className:"logo-text-inner"},"QWEN"))))),n.createElement("div",{className:"content-wrapper"},n.createElement("div",{className:"chat-container"},n.createElement(D,{value:r},n.createElement($,{messages:a,autoScroll:!1,theme:"dark"}))),l&&n.createElement(C,{metadata:l})),n.createElement(u,{state:s,onClose:d}))},N=document.getElementById("app");N?z.createRoot(N).render(n.createElement(j,null)):console.error("App container not found.");})();;\n </script>\n </body>\n</html>\n';
|
|
517429
|
+
var HTML_TEMPLATE = '<!doctype html>\n<html lang="en" class="dark">\n <head>\n <meta charset="UTF-8" />\n <meta name="viewport" content="width=device-width, initial-scale=1.0" />\n <link\n rel="icon"\n type="image/svg+xml"\n href="data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20141.38%20140%22%3E%0A%20%20%3Cpath%0A%20%20%20%20fill%3D%22%23000000%22%0A%20%20%20%20d%3D%22m140.93%2085-16.35-28.33-1.93-3.34%208.66-15a3.323%203.323%200%200%200%200-3.34l-9.62-16.67c-.3-.51-.72-.93-1.22-1.22s-1.07-.45-1.67-.45H82.23l-8.66-15a3.33%203.33%200%200%200-2.89-1.67H51.43c-.59%200-1.17.16-1.66.45-.5.29-.92.71-1.22%201.22L32.19%2029.98l-1.92%203.33H12.96c-.59%200-1.17.16-1.66.45-.5.29-.93.71-1.22%201.22L.45%2051.66a3.323%203.323%200%200%200%200%203.34l18.28%2031.67-8.66%2015a3.32%203.32%200%200%200%200%203.34l9.62%2016.67c.3.51.72.93%201.22%201.22s1.07.45%201.67.45h36.56l8.66%2015a3.35%203.35%200%200%200%202.89%201.67h19.25a3.34%203.34%200%200%200%202.89-1.67l18.28-31.67h17.32c.6%200%201.17-.16%201.67-.45s.92-.71%201.22-1.22l9.62-16.67a3.323%203.323%200%200%200%200-3.34ZM51.44%203.33%2061.07%2020l-9.63%2016.66h76.98l-9.62%2016.66H45.67l-11.54-20zM57.21%20120H22.58l9.63-16.67h19.25l-38.5-66.67h19.25l9.62%2016.67L68.78%20100l-11.55%2020Zm61.59-33.34-9.62-16.67-38.49%2066.67-9.63-16.67%209.63-16.66%2026.94-46.67h23.1l17.32%2030z%22%0A%20%20%2F%3E%0A%3C%2Fsvg%3E"\n />\n <script\n crossorigin\n src="https://unpkg.com/react@18.2.0/umd/react.production.min.js"\n ></script>\n <script\n crossorigin\n src="https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js"\n ></script>\n <script>\n const withKey = (props, key) =>\n key == null ? props : Object.assign({}, props, { key });\n const jsx = (type, props, key) =>\n React.createElement(type, withKey(props, key));\n const jsxRuntime = {\n Fragment: React.Fragment,\n jsx,\n jsxs: jsx,\n jsxDEV: jsx,\n };\n window.ReactJSXRuntime = jsxRuntime;\n window[\'react/jsx-runtime\'] = jsxRuntime;\n window[\'react/jsx-dev-runtime\'] = jsxRuntime;\n </script>\n <script src="https://unpkg.com/@vivekmind/webui@latest/dist/index.umd.js"></script>\n <link\n rel="stylesheet"\n href="https://unpkg.com/@vivekmind/webui@latest/dist/styles.css"\n />\n <title>VivekMind Chat Export</title>\n <style>\n @font-face {\n font-family: "Press Start 2P";\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url("data:font/woff2;base64,d09GMgABAAAAAALQAAwAAAAABfwAAAKBAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHCgGYABUEQgKgkSCDAsOAAE2AiQDDgQgBYRKByAb4QTIBB76Oev9JKW02x5ClpELSxHm1M0JQ+OBJAtDpAAVUQ7i///V+A/YgLVswlGo/7a+lmW3sfnUvoBFcUKzUFEnKo08S0F2T8TiAAJQieDvSGUVdW3smBv2LuCGjSpG3jQTD/m9OI5lTDomdQG1hkoMkCJu1ZYsmL42dEu7W8q5gUan/J6yyO+FX5NO5qQPxaqGnEINZ2q7kDf0+i4UigAXdiQUNMppoJnOzcxnDMwX5lXzinnJPDtkzhQFwjTx0DGrx1zkoNhIYr5LTKHjclcs+z3Frrh2ue3Kvk6bxzoRJLsIQpWcQhW27bgJwoUHYXNi2WWnVRUWaVNS0XMJ1eIUHlSX0l3l7BZOOos1ySk7NUWl6+eobG3Nfpj96g8EvukB3Qjouo4+O6svG9/0b8ZyKmfoZj9gzBqq8I2MS7Pf2JquL9vZwHJ51djyD01vbVHRDxSslvFBZwMHjQvexMxIvz3oyftul2+k9yBS+xGM+l+d+Pvo/zH5fVXMRvsHhG4u9/dRsgQyF67l9+jYgZuy+Ath2O6EUzU7E6BxF41nQk2cgkN8IIlOPKecMgWccSrE4XdaOECf00oUaeTm34EpvHhZIodEEllllBWmWcJLyQmsPjNHAousMEkijVRQR5OgNc4qq7TiZZg89pJCE/G0MM4kPuYqqIOKrQw3WmQBjVQSSLLm1H1NiGmCN21uwK/JpZRuWignd/klmbWXFEtZZIn1o8cmkaDqX5JIJgWNNqYYR9s0GsRFZhhntKJSjI+KTaFDZ+MoRllkjHWK2ADCxilLQGTkJZo4NAJMDwhAiK0CJD+jjKFRwWBapYFh5rdzfogQC/m1XLplXiEFEwAA") format("woff2");\n }\n :root{--bg-primary: #18181b;--bg-secondary: #27272a;--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--border-color: #3f3f46;--accent-color: #3b82f6}body{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;margin:0;padding:0;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}.page-wrapper{min-height:100vh;display:flex;flex-direction:column;align-items:center}.header{width:100%;padding:16px 24px;border-bottom:1px solid var(--border-color);background-color:#18181bf2;backdrop-filter:blur(8px);position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box}.header-left{display:flex;align-items:center;gap:12px}.logo-icon{width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.logo-icon svg{width:100%;height:100%}.logo{display:flex;flex-direction:column;line-height:1}.logo-text{font-family:"Press Start 2P",cursive;font-weight:400;font-size:24px;letter-spacing:-.05em;position:relative;color:#fff}.logo-text-inner{background:linear-gradient(to right,#60a5fa,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;position:relative;z-index:2}.logo-text:before,.logo-text:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:none;-webkit-text-fill-color:transparent;-webkit-text-stroke:1px rgba(96,165,250,.3)}.logo-text:before{transform:translate(2px,2px);-webkit-text-stroke:1px rgba(168,85,247,.3)}.logo-text:after{transform:translate(4px,4px);opacity:.4}.logo-sub{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;margin-top:4px}.badge{font-size:11px;padding:2px 8px;border-radius:999px;background-color:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);font-weight:500}.meta{display:flex;gap:24px;font-size:13px;color:var(--text-secondary)}.meta-item{display:flex;align-items:center;gap:8px}.meta-label{color:#71717a}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-secondary);border-radius:5px;border:2px solid var(--bg-primary)}::-webkit-scrollbar-thumb:hover{background:#52525b}@media (max-width: 768px){.chat-container{max-width:100%;padding:20px 16px}.header{padding:12px 16px;flex-direction:column;align-items:flex-start;gap:12px}.header-left{width:100%;justify-content:space-between}.meta{width:100%;flex-direction:column;gap:6px}}@media (max-width: 480px){.chat-container{padding:16px 12px}}.content-wrapper{display:flex;width:100%;max-width:1600px;height:calc(100vh - 73px)}.chat-container{flex:1;min-width:0;overflow-y:auto;padding:24px;box-sizing:border-box}.metadata-sidebar{width:320px;min-width:320px;padding:12px;border-right:1px solid var(--border-color);background-color:var(--bg-secondary);display:flex;flex-direction:column;gap:12px;overflow-y:auto;height:100%;box-sizing:border-box}.metadata-section{display:flex;flex-direction:column;gap:8px}.metadata-section-title{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;padding-bottom:4px;border-bottom:1px solid var(--border-color)}.metadata-section-small{margin-top:auto;padding-top:12px;border-top:1px solid var(--border-color)}.metadata-item{display:flex;flex-direction:column;gap:2px}.metadata-item-empty{font-size:12px;color:#71717a;margin:0;padding:4px 0}.metadata-content{display:flex;flex-direction:column;gap:2px;min-width:0}.metadata-content .metadata-label{font-size:10px;color:#71717a}.metadata-content .metadata-value{font-size:12px;color:var(--text-primary);word-break:break-all;line-height:1.3;cursor:pointer}.metadata-content .metadata-value.multiline{white-space:pre-wrap}.metadata-content .metadata-value.text-green{color:#22c55e}.metadata-content .metadata-value.text-red{color:#ef4444}.metadata-value-with-copy{display:flex;align-items:center;gap:8px}.metadata-value-with-copy .metadata-value{flex:1;min-width:0}.copy-button{display:inline-flex;align-items:center;justify-content:center;padding:4px;background:transparent;border:1px solid var(--border-color, #3f3f46);border-radius:4px;color:var(--text-secondary, #a1a1aa);cursor:pointer;transition:all .15s ease;flex-shrink:0}.copy-button:hover{background:var(--bg-hover, #27272a);color:var(--text-primary, #f4f4f5);border-color:var(--border-hover, #52525b)}.copy-button:active{transform:scale(.95)}@media (max-width: 1024px){.metadata-sidebar{width:320px;min-width:320px;padding:10px}}@media (max-width: 768px){.content-wrapper{flex-direction:column;height:auto}.chat-container{height:auto;min-height:50vh}.metadata-sidebar{width:100%;min-width:100%;height:auto;max-height:none;border-right:none;border-top:1px solid var(--border-color);padding:12px;gap:12px}.metadata-section{flex-direction:row;flex-wrap:wrap;gap:12px}.metadata-section-title{width:100%;border-bottom:none;padding-bottom:0}.metadata-item{flex:1;min-width:140px}.metadata-section-small{margin-top:0;padding-top:0;border-top:none}}.modal-overlay{position:fixed;inset:0;z-index:1000;background-color:#0009;display:flex;align-items:center;justify-content:center;padding:24px}.modal-container{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:4px 8px;border-radius:6px;line-height:1;transition:background-color .15s,color .15s}.modal-close:hover{background-color:var(--border-color);color:var(--text-primary)}.modal-content{margin:0;padding:16px;overflow:auto;font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}\n </style>\n </head>\n <body>\n <div id="app"></div>\n\n <script id="chat-data" type="application/json"></script>\n <script>\n (()=>{var m=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 141.38 140">\n <path\n fill="#000000"\n d="m140.93 85-16.35-28.33-1.93-3.34 8.66-15a3.323 3.323 0 0 0 0-3.34l-9.62-16.67c-.3-.51-.72-.93-1.22-1.22s-1.07-.45-1.67-.45H82.23l-8.66-15a3.33 3.33 0 0 0-2.89-1.67H51.43c-.59 0-1.17.16-1.66.45-.5.29-.92.71-1.22 1.22L32.19 29.98l-1.92 3.33H12.96c-.59 0-1.17.16-1.66.45-.5.29-.93.71-1.22 1.22L.45 51.66a3.323 3.323 0 0 0 0 3.34l18.28 31.67-8.66 15a3.32 3.32 0 0 0 0 3.34l9.62 16.67c.3.51.72.93 1.22 1.22s1.07.45 1.67.45h36.56l8.66 15a3.35 3.35 0 0 0 2.89 1.67h19.25a3.34 3.34 0 0 0 2.89-1.67l18.28-31.67h17.32c.6 0 1.17-.16 1.67-.45s.92-.71 1.22-1.22l9.62-16.67a3.323 3.323 0 0 0 0-3.34ZM51.44 3.33 61.07 20l-9.63 16.66h76.98l-9.62 16.66H45.67l-11.54-20zM57.21 120H22.58l9.63-16.67h19.25l-38.5-66.67h19.25l9.62 16.67L68.78 100l-11.55 20Zm61.59-33.34-9.62-16.67-38.49 66.67-9.63-16.67 9.63-16.66 26.94-46.67h23.1l17.32 30z"\n />\n</svg>\n`;var i=window.React,u=({state:e,onClose:t})=>(i.useEffect(()=>{if(e.visible){let a=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=a}}},[e.visible]),e.visible?i.createElement("div",{className:"modal-overlay",onClick:t},i.createElement("div",{className:"modal-container",onClick:a=>a.stopPropagation()},i.createElement("div",{className:"modal-header"},i.createElement("span",{className:"modal-title font-mono"},e.fileName),i.createElement("button",{className:"modal-close",onClick:t,"aria-label":"Close"},"\\u2715")),i.createElement("pre",{className:"modal-content"},e.content))):null),b=()=>{let[e,t]=i.useState({visible:!1,content:"",fileName:""}),a=i.useCallback((r,s="temp")=>{t({visible:!0,content:r,fileName:s})},[]),l=i.useCallback(()=>{t(r=>({...r,visible:!1}))},[]);return{modalState:e,openModal:a,closeModal:l}};var P=window.React,h=()=>{let{modalState:e,openModal:t,closeModal:a}=b();return{platformContext:P.useMemo(()=>({platform:"web",postMessage:r=>{console.log("Posted message:",r)},onMessage:r=>(window.addEventListener("message",r),()=>window.removeEventListener("message",r)),openFile:r=>{console.log("Opening file:",r)},openTempFile:t,getResourceUrl:()=>{},features:{canOpenFile:!1,canOpenTempFile:!0,canCopy:!0}}),[t]),modalState:e,closeModal:a}};var o=({label:e,value:t,valueClass:a})=>t==null||t===""?null:React.createElement("div",{className:"metadata-item"},React.createElement("div",{className:"metadata-content"},React.createElement("span",{className:"metadata-label"},e),React.createElement("span",{className:`metadata-value ${a||""}`,title:typeof t=="string"?t:void 0},t)));var v=e=>!!e&&typeof e=="object",w=()=>{let e=document.getElementById("chat-data");if(!(e!=null&&e.textContent))return{};try{let t=JSON.parse(e.textContent);return t&&typeof t=="object"?t:{}}catch(t){return console.error("Failed to parse chat data.",t),{}}};var y=e=>{if(!e)return"-";try{return new Date(e).toLocaleString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch(t){return e}},M=e=>{if(!e)return"-";try{let a=new Date(e).getTime();if(Number.isNaN(a))return"-";let r=Math.max(0,new Date().getTime()-a),s=Math.floor(r/1e3),d=Math.floor(s/60),c=Math.floor(d/60),p=Math.floor(c/24),f=Math.floor(p/7),x=Math.floor(p/30),g=Math.floor(p/365);return s<60?"just now":d<60?`${d} minute${d===1?"":"s"} ago`:c<24?`${c} hour${c===1?"":"s"} ago`:p<7?`${p} day${p===1?"":"s"} ago`:f<4?`${f} week${f===1?"":"s"} ago`:x<12?`${x} month${x===1?"":"s"} ago`:`${g} year${g===1?"":"s"} ago`}catch(t){return"-"}};var k=e=>{if(e!=null)return e>=1e6?`${(e/1e6).toFixed(e%1e6===0?0:1)}m`:e>=1e3?`${(e/1e3).toFixed(e%1e3===0?0:1)}k`:e.toString()};var C=({metadata:e})=>React.createElement("aside",{className:"metadata-sidebar"},React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"Session Info"),React.createElement(o,{label:"Session created",value:M(e.startTime)}),React.createElement(o,{label:"Project",value:e.cwd,valueClass:"multiline"}),e.gitRepo&&React.createElement(o,{label:"Repository",value:e.gitRepo}),e.gitBranch&&React.createElement(o,{label:"Branch",value:e.gitBranch}),e.model&&React.createElement(o,{label:"Model",value:e.model}),e.channel&&React.createElement(o,{label:"Channel",value:e.channel})),React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"Statistics"),React.createElement(o,{label:"Prompts",value:e.promptCount}),e.contextUsagePercent!==void 0&&e.contextWindowSize!==void 0&&React.createElement(o,{label:"Context",value:`${e.contextUsagePercent>100?">100":e.contextUsagePercent}% of ${k(e.contextWindowSize)}`,valueClass:e.contextUsagePercent>100?"text-red":void 0}),e.totalTokens!==void 0&&React.createElement(o,{label:"Tokens",value:e.totalTokens.toLocaleString()})),React.createElement("div",{className:"metadata-section"},React.createElement("h3",{className:"metadata-section-title"},"File Operations"),e.filesWritten!==void 0&&e.filesWritten>0&&React.createElement(o,{label:"Files modified",value:e.filesWritten}),e.linesAdded!==void 0&&e.linesAdded>0&&React.createElement(o,{label:"Added",value:`+${e.linesAdded}`,valueClass:"text-green"}),e.linesRemoved!==void 0&&e.linesRemoved>0&&React.createElement(o,{label:"Removed",value:`-${e.linesRemoved}`,valueClass:"text-red"}),(e.filesWritten===void 0||e.filesWritten===0)&&(e.linesAdded===void 0||e.linesAdded===0)&&(e.linesRemoved===void 0||e.linesRemoved===0)&&React.createElement("p",{className:"metadata-item metadata-item-empty"},"No file changes")),React.createElement("div",{className:"metadata-section metadata-section-small"},React.createElement(o,{label:"Session ID",value:e.sessionId,valueClass:"font-mono"}),React.createElement(o,{label:"Export Time",value:y(e.exportTime)})));var z=window.ReactDOM,n=window.React,{ChatViewer:$,PlatformProvider:D}=VivekMindWebUI,T=m?m.replace(/<svg([^>]*)>/,\'<svg$1><defs><linearGradient id="vivekmind-logo-gradient" x1="0%" y1="0%" x2="100%" y2="0%"><stop offset="0%" stop-color="#60a5fa" /><stop offset="100%" stop-color="#a855f7" /></linearGradient></defs>\').replace(/fill="[^"]*"/,\'fill="url(#vivekmind-logo-gradient)"\'):m,j=()=>{let e=w(),a=(Array.isArray(e.messages)?e.messages:[]).filter(v).filter(c=>c.type!=="system"),l=e.metadata,{platformContext:r,modalState:s,closeModal:d}=h();return n.createElement("div",{className:"page-wrapper"},n.createElement("header",{className:"header"},n.createElement("div",{className:"header-left"},n.createElement("div",{className:"logo-icon","aria-hidden":"true",dangerouslySetInnerHTML:{__html:T}}),n.createElement("div",{className:"logo"},n.createElement("div",{className:"logo-text","data-text":"QWEN"},n.createElement("span",{className:"logo-text-inner"},"QWEN"))))),n.createElement("div",{className:"content-wrapper"},n.createElement("div",{className:"chat-container"},n.createElement(D,{value:r},n.createElement($,{messages:a,autoScroll:!1,theme:"dark"}))),l&&n.createElement(C,{metadata:l})),n.createElement(u,{state:s,onClose:d}))},N=document.getElementById("app");N?z.createRoot(N).render(n.createElement(j,null)):console.error("App container not found.");})();;\n </script>\n </body>\n</html>\n';
|
|
517430
517430
|
|
|
517431
517431
|
// packages/cli/src/ui/utils/export/formatters/html.ts
|
|
517432
517432
|
function escapeJsonForHtml(json3) {
|
|
@@ -518561,7 +518561,7 @@ init_i18n();
|
|
|
518561
518561
|
var initCommand = {
|
|
518562
518562
|
name: "init",
|
|
518563
518563
|
get description() {
|
|
518564
|
-
return t4("Analyzes the project and creates a tailored
|
|
518564
|
+
return t4("Analyzes the project and creates a tailored VIVEKMIND.md file.");
|
|
518565
518565
|
},
|
|
518566
518566
|
kind: "built-in" /* BUILT_IN */,
|
|
518567
518567
|
supportedModes: ["interactive", "non_interactive", "acp"],
|
|
@@ -519216,7 +519216,7 @@ ${fact}`
|
|
|
519216
519216
|
}
|
|
519217
519217
|
return {
|
|
519218
519218
|
type: "submit_prompt",
|
|
519219
|
-
content: `Please save the following fact to memory (e.g. append to
|
|
519219
|
+
content: `Please save the following fact to memory (e.g. append to VIVEKMIND.md in the project root):
|
|
519220
519220
|
|
|
519221
519221
|
${fact}`
|
|
519222
519222
|
};
|
|
@@ -521030,11 +521030,11 @@ init_i18n();
|
|
|
521030
521030
|
init_src3();
|
|
521031
521031
|
var debugLogger127 = createDebugLogger("SETUP_GITHUB");
|
|
521032
521032
|
var GITHUB_WORKFLOW_PATHS = [
|
|
521033
|
-
"
|
|
521034
|
-
"
|
|
521035
|
-
"issue-triage/
|
|
521036
|
-
"issue-triage/
|
|
521037
|
-
"pr-review/
|
|
521033
|
+
"vivekmind-dispatch/vivekmind-dispatch.yml",
|
|
521034
|
+
"vivekmind-assistant/vivekmind-invoke.yml",
|
|
521035
|
+
"issue-triage/vivekmind-triage.yml",
|
|
521036
|
+
"issue-triage/vivekmind-scheduled-triage.yml",
|
|
521037
|
+
"pr-review/vivekmind-review.yml"
|
|
521038
521038
|
];
|
|
521039
521039
|
function getOpenUrlsCommands(readmeUrl) {
|
|
521040
521040
|
const openCmd = getUrlOpenCommand();
|
|
@@ -521126,7 +521126,7 @@ var setupGithubCommand = {
|
|
|
521126
521126
|
for (const workflow of GITHUB_WORKFLOW_PATHS) {
|
|
521127
521127
|
downloads.push(
|
|
521128
521128
|
(async () => {
|
|
521129
|
-
const endpoint = `https://raw.githubusercontent.com/
|
|
521129
|
+
const endpoint = `https://raw.githubusercontent.com/VivekMindLM/vivekmind-cli-action/refs/tags/${releaseTag}/examples/workflows/${workflow}`;
|
|
521130
521130
|
const response = await fetch(endpoint, {
|
|
521131
521131
|
method: "GET",
|
|
521132
521132
|
dispatcher: proxy2 ? new import_undici6.ProxyAgent(proxy2) : void 0,
|
|
@@ -557710,20 +557710,20 @@ function AuthDialog() {
|
|
|
557710
557710
|
[AuthType2.USE_VERTEX_AI]: "gemini-3-pro,gemini-2.5-pro,gemini-2.5-flash",
|
|
557711
557711
|
[AuthType2.USE_ANTHROPIC_VERTEX_AI]: "claude-opus-4-7,claude-sonnet-4-6,claude-haiku-4-5-20251001",
|
|
557712
557712
|
[AuthType2.USE_AZURE_OPENAI]: "gpt-5.2,gpt-4.1,gpt-4o,o3",
|
|
557713
|
-
[AuthType2.USE_BEDROCK]: "anthropic.claude-opus-4-7,anthropic.claude-sonnet-4-6,anthropic.claude-haiku-4-5-20251001-v1:0,
|
|
557714
|
-
[AuthType2.USE_OLLAMA]: "llama3.3:70b,
|
|
557713
|
+
[AuthType2.USE_BEDROCK]: "anthropic.claude-opus-4-7,anthropic.claude-sonnet-4-6,anthropic.claude-haiku-4-5-20251001-v1:0,vivekmind.vivekmind3-coder-next,vivekmind.vivekmind3-coder-30b-a3b-v1:0,deepseek.v3.2,deepseek.r1-v1:0,zai.glm-5,zai.glm-4.7,mistral.devstral-2-123b,mistral.mistral-large-3-675b-instruct,amazon.nova-pro-v1:0,amazon.nova-2-sonic-v1:0,meta.llama4-maverick-17b-instruct-v1:0,meta.llama4-scout-17b-instruct-v1:0,nvidia.nemotron-super-3-120b,moonshotai.kimi-k2.5",
|
|
557714
|
+
[AuthType2.USE_OLLAMA]: "llama3.3:70b,vivekmind2.5-coder:32b,deepseek-r1:70b",
|
|
557715
557715
|
[AuthType2.USE_LM_STUDIO]: "loaded-model",
|
|
557716
557716
|
[AuthType2.USE_GROQ]: "llama-3.3-70b-versatile,llama-3.1-8b-instant,deepseek-r1-distill-llama-70b",
|
|
557717
557717
|
[AuthType2.USE_MISTRAL]: "mistral-large-2411,codestral-2505,pixtral-large-2502",
|
|
557718
557718
|
[AuthType2.USE_DEEPSEEK]: "deepseek-chat,deepseek-reasoner,deepseek-coder",
|
|
557719
|
-
[AuthType2.USE_TOGETHER]: "meta-llama/Llama-3.3-70B-Instruct-Turbo,deepseek-ai/DeepSeek-V3,
|
|
557719
|
+
[AuthType2.USE_TOGETHER]: "meta-llama/Llama-3.3-70B-Instruct-Turbo,deepseek-ai/DeepSeek-V3,VivekMind/VivekMind3-235B-A22B",
|
|
557720
557720
|
[AuthType2.USE_OPENROUTER]: "anthropic/claude-opus-4-7,openai/gpt-5.2,google/gemini-3-pro,deepseek/deepseek-r1",
|
|
557721
557721
|
[AuthType2.USE_XAI]: "grok-4,grok-4-fast",
|
|
557722
|
-
[AuthType2.USE_DASHSCOPE]: "
|
|
557722
|
+
[AuthType2.USE_DASHSCOPE]: "vivekmind3-coder-plus,vivekmind-max,vivekmind-vl-max",
|
|
557723
557723
|
[AuthType2.USE_COHERE]: "command-r-plus,command-r",
|
|
557724
557724
|
[AuthType2.USE_PERPLEXITY]: "sonar-pro,sonar-reasoning-pro",
|
|
557725
557725
|
[AuthType2.USE_FIREWORKS]: "accounts/fireworks/models/llama4-maverick-instruct-basic,accounts/fireworks/models/deepseek-v3",
|
|
557726
|
-
[AuthType2.USE_SILICONFLOW]: "deepseek-ai/DeepSeek-V3,
|
|
557726
|
+
[AuthType2.USE_SILICONFLOW]: "deepseek-ai/DeepSeek-V3,VivekMind/VivekMind3-235B-A22B,meta-llama/Meta-Llama-3.1-405B-Instruct",
|
|
557727
557727
|
[AuthType2.USE_HF]: "meta-llama/Llama-3.3-70B-Instruct,mistralai/Mistral-Large-2411",
|
|
557728
557728
|
[AuthType2.USE_NOVITA]: "meta-llama/llama-3.1-70b-instruct,deepseek/deepseek-v3",
|
|
557729
557729
|
[AuthType2.USE_WATSONX]: "meta-llama/llama-4-maverick-instruct,ibm/granite-34b-code-instruct"
|
|
@@ -560240,7 +560240,7 @@ __name(MultiSelect, "MultiSelect");
|
|
|
560240
560240
|
// packages/cli/src/ui/components/arena/ArenaStartDialog.tsx
|
|
560241
560241
|
init_i18n();
|
|
560242
560242
|
var import_jsx_runtime90 = __toESM(require_jsx_runtime(), 1);
|
|
560243
|
-
var MODEL_PROVIDERS_DOCUMENTATION_URL = "https://
|
|
560243
|
+
var MODEL_PROVIDERS_DOCUMENTATION_URL = "https://vivekmindlm.github.io/vivekmind-docs/en/users/configuration/settings/#modelproviders";
|
|
560244
560244
|
function ArenaStartDialog({
|
|
560245
560245
|
onClose,
|
|
560246
560246
|
onConfirm
|
|
@@ -560252,16 +560252,16 @@ function ArenaStartDialog({
|
|
|
560252
560252
|
const selectableModels = allModels.filter((model) => !model.isRuntimeModel);
|
|
560253
560253
|
return selectableModels.map((model) => {
|
|
560254
560254
|
const token2 = `${model.authType}:${model.id}`;
|
|
560255
|
-
const
|
|
560255
|
+
const isVivekMindOauth = model.authType === AuthType2.VIVEKMIND_OAUTH;
|
|
560256
560256
|
return {
|
|
560257
560257
|
key: token2,
|
|
560258
560258
|
value: token2,
|
|
560259
560259
|
label: `[${model.authType}] ${model.label}`,
|
|
560260
|
-
disabled:
|
|
560260
|
+
disabled: isVivekMindOauth
|
|
560261
560261
|
};
|
|
560262
560262
|
});
|
|
560263
560263
|
}, [config2]);
|
|
560264
|
-
const
|
|
560264
|
+
const hasDisabledVivekMindOauth = modelItems.some((item) => item.disabled);
|
|
560265
560265
|
const selectableModelCount = modelItems.filter(
|
|
560266
560266
|
(item) => !item.disabled
|
|
560267
560267
|
).length;
|
|
@@ -560307,8 +560307,8 @@ function ArenaStartDialog({
|
|
|
560307
560307
|
}
|
|
560308
560308
|
) }),
|
|
560309
560309
|
errorMessage && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.status.error, children: errorMessage }) }),
|
|
560310
|
-
(
|
|
560311
|
-
|
|
560310
|
+
(hasDisabledVivekMindOauth || needsMoreModels) && /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Box_default, { marginTop: 1, flexDirection: "column", children: [
|
|
560311
|
+
hasDisabledVivekMindOauth && /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.status.warning, children: t4("Note: vivekmind-oauth models are not supported in Arena.") }),
|
|
560312
560312
|
needsMoreModels && /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(import_jsx_runtime90.Fragment, { children: [
|
|
560313
560313
|
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.status.warning, children: t4("Arena requires at least 2 models. To add more:") }),
|
|
560314
560314
|
/* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.status.warning, children: t4(
|
|
@@ -565260,14 +565260,14 @@ function MemoryDialog({ onClose }) {
|
|
|
565260
565260
|
() => path138.join(
|
|
565261
565261
|
os51.homedir(),
|
|
565262
565262
|
VIVEKMIND_DIR,
|
|
565263
|
-
getAllGeminiMdFilenames()[0] ?? "
|
|
565263
|
+
getAllGeminiMdFilenames()[0] ?? "VIVEKMIND.md"
|
|
565264
565264
|
),
|
|
565265
565265
|
[]
|
|
565266
565266
|
);
|
|
565267
565267
|
const projectMemoryPath = (0, import_react111.useMemo)(
|
|
565268
565268
|
() => path138.join(
|
|
565269
565269
|
config2.getWorkingDir(),
|
|
565270
|
-
getAllGeminiMdFilenames()[0] ?? "
|
|
565270
|
+
getAllGeminiMdFilenames()[0] ?? "VIVEKMIND.md"
|
|
565271
565271
|
),
|
|
565272
565272
|
[config2]
|
|
565273
565273
|
);
|
|
@@ -565334,12 +565334,12 @@ function MemoryDialog({ onClose }) {
|
|
|
565334
565334
|
case "project":
|
|
565335
565335
|
return resolvePreferredMemoryFile(
|
|
565336
565336
|
config2.getWorkingDir(),
|
|
565337
|
-
getAllGeminiMdFilenames()[0] ?? "
|
|
565337
|
+
getAllGeminiMdFilenames()[0] ?? "VIVEKMIND.md"
|
|
565338
565338
|
);
|
|
565339
565339
|
case "global":
|
|
565340
565340
|
return resolvePreferredMemoryFile(
|
|
565341
565341
|
path138.join(os51.homedir(), VIVEKMIND_DIR),
|
|
565342
|
-
getAllGeminiMdFilenames()[0] ?? "
|
|
565342
|
+
getAllGeminiMdFilenames()[0] ?? "VIVEKMIND.md"
|
|
565343
565343
|
);
|
|
565344
565344
|
case "managed":
|
|
565345
565345
|
return managedMemoryPath;
|
|
@@ -582165,8 +582165,8 @@ var tipRegistry = [
|
|
|
582165
582165
|
priority: 70
|
|
582166
582166
|
},
|
|
582167
582167
|
{
|
|
582168
|
-
id: "new-user-
|
|
582169
|
-
content: "Add a
|
|
582168
|
+
id: "new-user-vivekmindmd",
|
|
582169
|
+
content: "Add a VIVEKMIND.md file to give VivekMind persistent project context.",
|
|
582170
582170
|
trigger: "startup",
|
|
582171
582171
|
isRelevant: /* @__PURE__ */ __name((ctx) => ctx.sessionCount < 10, "isRelevant"),
|
|
582172
582172
|
cooldownPrompts: 0,
|
|
@@ -588845,7 +588845,7 @@ var VivekMindAgent = class {
|
|
|
588845
588845
|
async initialize(args2) {
|
|
588846
588846
|
this.clientCapabilities = args2.clientCapabilities;
|
|
588847
588847
|
const authMethods = buildAuthMethods();
|
|
588848
|
-
const version2 = "0.
|
|
588848
|
+
const version2 = "1.0.0";
|
|
588849
588849
|
return {
|
|
588850
588850
|
protocolVersion: PROTOCOL_VERSION,
|
|
588851
588851
|
agentInfo: {
|