@rdmind/rdmind 0.0.28-alpha.12 → 0.0.28-alpha.14
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/cli.js +93 -41
- package/locales/en.js +2 -2
- package/locales/zh.js +2 -2
- package/package.json +2 -2
package/cli.js
CHANGED
|
@@ -147562,7 +147562,7 @@ function createContentGeneratorConfig(config, authType, generationConfig) {
|
|
|
147562
147562
|
};
|
|
147563
147563
|
}
|
|
147564
147564
|
async function createContentGenerator(config, gcConfig, sessionId2, isInitialAuth) {
|
|
147565
|
-
const version2 = "0.0.28-alpha.
|
|
147565
|
+
const version2 = "0.0.28-alpha.14";
|
|
147566
147566
|
const userAgent2 = `QwenCode/${version2} (${process.platform}; ${process.arch})`;
|
|
147567
147567
|
const baseHeaders = {
|
|
147568
147568
|
"User-Agent": userAgent2
|
|
@@ -163077,7 +163077,7 @@ var init_coreToolScheduler = __esm({
|
|
|
163077
163077
|
(excludedTool) => excludedTool.toLowerCase().trim() === normalizedToolName
|
|
163078
163078
|
);
|
|
163079
163079
|
if (excludedMatch) {
|
|
163080
|
-
const permissionErrorMessage = `
|
|
163080
|
+
const permissionErrorMessage = `RDMind requires permission to use ${excludedMatch}, but that permission was declined.`;
|
|
163081
163081
|
return {
|
|
163082
163082
|
status: "error",
|
|
163083
163083
|
request: reqInfo,
|
|
@@ -163184,7 +163184,7 @@ var init_coreToolScheduler = __esm({
|
|
|
163184
163184
|
} else {
|
|
163185
163185
|
const shouldAutoDeny = !this.config.isInteractive() && !this.config.getIdeMode() && !this.config.getExperimentalZedIntegration();
|
|
163186
163186
|
if (shouldAutoDeny) {
|
|
163187
|
-
const errorMessage = `
|
|
163187
|
+
const errorMessage = `RDMind requires permission to use "${reqInfo.name}", but that permission was declined.`;
|
|
163188
163188
|
this.setStatusInternal(
|
|
163189
163189
|
reqInfo.callId,
|
|
163190
163190
|
"error",
|
|
@@ -222083,8 +222083,8 @@ var init_git_commit = __esm({
|
|
|
222083
222083
|
"packages/core/src/generated/git-commit.ts"() {
|
|
222084
222084
|
"use strict";
|
|
222085
222085
|
init_esbuild_shims();
|
|
222086
|
-
GIT_COMMIT_INFO = "
|
|
222087
|
-
CLI_VERSION = "0.0.28-alpha.
|
|
222086
|
+
GIT_COMMIT_INFO = "b4320675";
|
|
222087
|
+
CLI_VERSION = "0.0.28-alpha.14";
|
|
222088
222088
|
}
|
|
222089
222089
|
});
|
|
222090
222090
|
|
|
@@ -287534,7 +287534,7 @@ var init_en2 = __esm({
|
|
|
287534
287534
|
"to show tool parameter schemas": "to show tool parameter schemas",
|
|
287535
287535
|
"to hide descriptions": "to hide descriptions",
|
|
287536
287536
|
"to authenticate with OAuth-enabled servers": "to authenticate with OAuth-enabled servers",
|
|
287537
|
-
Press: "Press",
|
|
287537
|
+
"Press key": "Press key",
|
|
287538
287538
|
"to toggle tool descriptions on/off": "to toggle tool descriptions on/off",
|
|
287539
287539
|
"Starting OAuth authentication for MCP server '{{name}}'...": "Starting OAuth authentication for MCP server '{{name}}'...",
|
|
287540
287540
|
"Restarting MCP servers...": "Restarting MCP servers...",
|
|
@@ -287551,7 +287551,7 @@ var init_en2 = __esm({
|
|
|
287551
287551
|
"open documentation": "open documentation",
|
|
287552
287552
|
Create: "Create",
|
|
287553
287553
|
"to customize your interactions with RDMind": "to customize your interactions with RDMind",
|
|
287554
|
-
|
|
287554
|
+
Press: "Press",
|
|
287555
287555
|
"twice to clear input,": "twice to clear input,",
|
|
287556
287556
|
"for new line,": "for new line,",
|
|
287557
287557
|
"to exit RDMind": "to exit RDMind",
|
|
@@ -288387,7 +288387,7 @@ var init_zh = __esm({
|
|
|
288387
288387
|
"to show tool parameter schemas": "\u663E\u793A\u5DE5\u5177\u53C2\u6570\u67B6\u6784",
|
|
288388
288388
|
"to hide descriptions": "\u9690\u85CF\u63CF\u8FF0",
|
|
288389
288389
|
"to authenticate with OAuth-enabled servers": "\u4F7F\u7528\u652F\u6301 OAuth \u7684\u670D\u52A1\u5668\u8FDB\u884C\u8BA4\u8BC1",
|
|
288390
|
-
Press: "\u6309",
|
|
288390
|
+
"Press key": "\u6309",
|
|
288391
288391
|
"to toggle tool descriptions on/off": "\u5207\u6362\u5DE5\u5177\u63CF\u8FF0\u5F00\u5173",
|
|
288392
288392
|
"Starting OAuth authentication for MCP server '{{name}}'...": "\u6B63\u5728\u4E3A MCP \u670D\u52A1\u5668 '{{name}}' \u542F\u52A8 OAuth \u8BA4\u8BC1...",
|
|
288393
288393
|
"Restarting MCP servers...": "\u6B63\u5728\u91CD\u542F MCP \u670D\u52A1\u5668...",
|
|
@@ -288404,7 +288404,7 @@ var init_zh = __esm({
|
|
|
288404
288404
|
"open documentation": "\u6253\u5F00\u6587\u6863",
|
|
288405
288405
|
Create: "\u521B\u5EFA",
|
|
288406
288406
|
"to customize your interactions with RDMind": "\u81EA\u5B9A\u4E49\u4F60\u4E0E RDMind \u7684\u4EA4\u4E92\u65B9\u5F0F",
|
|
288407
|
-
|
|
288407
|
+
Press: "\u6309",
|
|
288408
288408
|
"twice to clear input,": "\u6E05\u7A7A\u8F93\u5165\u6846\uFF0C",
|
|
288409
288409
|
"for new line,": "\u6362\u884C\uFF0C",
|
|
288410
288410
|
"to exit RDMind": "\u9000\u51FARDMind",
|
|
@@ -303702,7 +303702,7 @@ async function isL4Repository(workspaceRoot) {
|
|
|
303702
303702
|
}
|
|
303703
303703
|
}
|
|
303704
303704
|
async function checkRepositoryRiskLevel(gitRepoUrl) {
|
|
303705
|
-
const apiUrl = "http://pallas
|
|
303705
|
+
const apiUrl = "http://pallas.devops.xiaohongshu.com/pallas/rdmind/cli/repo-risk-level";
|
|
303706
303706
|
try {
|
|
303707
303707
|
const response = await fetch(
|
|
303708
303708
|
`${apiUrl}?gitRepoUrl=${encodeURIComponent(gitRepoUrl)}`,
|
|
@@ -316022,7 +316022,7 @@ var newCommand = {
|
|
|
316022
316022
|
// packages/cli/src/commands/extensions.tsx
|
|
316023
316023
|
var extensionsCommand = {
|
|
316024
316024
|
command: "extensions <command>",
|
|
316025
|
-
describe: "Manage
|
|
316025
|
+
describe: "Manage RDMind extensions.",
|
|
316026
316026
|
builder: /* @__PURE__ */ __name((yargs) => yargs.command(installCommand).command(uninstallCommand).command(listCommand).command(updateCommand).command(disableCommand).command(enableCommand).command(linkCommand).command(newCommand).demandCommand(1, "You need at least one command before continuing.").version(false), "builder"),
|
|
316027
316027
|
handler: /* @__PURE__ */ __name(() => {
|
|
316028
316028
|
}, "handler")
|
|
@@ -316291,7 +316291,7 @@ __name(getPackageJson, "getPackageJson");
|
|
|
316291
316291
|
// packages/cli/src/utils/version.ts
|
|
316292
316292
|
async function getCliVersion() {
|
|
316293
316293
|
const pkgJson = await getPackageJson();
|
|
316294
|
-
return "0.0.28-alpha.
|
|
316294
|
+
return "0.0.28-alpha.14";
|
|
316295
316295
|
}
|
|
316296
316296
|
__name(getCliVersion, "getCliVersion");
|
|
316297
316297
|
|
|
@@ -320314,7 +320314,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds) => {
|
|
|
320314
320314
|
|
|
320315
320315
|
// packages/cli/src/generated/git-commit.ts
|
|
320316
320316
|
init_esbuild_shims();
|
|
320317
|
-
var GIT_COMMIT_INFO2 = "
|
|
320317
|
+
var GIT_COMMIT_INFO2 = "b4320675";
|
|
320318
320318
|
|
|
320319
320319
|
// packages/cli/src/utils/systemInfo.ts
|
|
320320
320320
|
async function getNpmVersion() {
|
|
@@ -322471,7 +322471,7 @@ var ideCommand = /* @__PURE__ */ __name(async () => {
|
|
|
322471
322471
|
type: "message",
|
|
322472
322472
|
messageType: "error",
|
|
322473
322473
|
content: t2(
|
|
322474
|
-
"IDE integration is not supported in your current environment. To use this feature, run
|
|
322474
|
+
"IDE integration is not supported in your current environment. To use this feature, run RDMind in one of these supported IDEs: VS Code or VS Code forks."
|
|
322475
322475
|
)
|
|
322476
322476
|
}), "action")
|
|
322477
322477
|
};
|
|
@@ -354234,7 +354234,7 @@ var McpStatus = /* @__PURE__ */ __name(({
|
|
|
354234
354234
|
/* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(Text3, { children: [
|
|
354235
354235
|
" ",
|
|
354236
354236
|
"- ",
|
|
354237
|
-
t2("Press"),
|
|
354237
|
+
t2("Press key"),
|
|
354238
354238
|
" ",
|
|
354239
354239
|
/* @__PURE__ */ (0, import_jsx_runtime52.jsx)(Text3, { color: theme.text.accent, children: "Ctrl+T" }),
|
|
354240
354240
|
" ",
|
|
@@ -354726,7 +354726,7 @@ var Tips = /* @__PURE__ */ __name(({ config }) => {
|
|
|
354726
354726
|
/* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(Text3, { color: theme.text.primary, children: [
|
|
354727
354727
|
geminiMdFileCount === 0 ? "4." : "3.",
|
|
354728
354728
|
" ",
|
|
354729
|
-
t2("
|
|
354729
|
+
t2("Press"),
|
|
354730
354730
|
" ",
|
|
354731
354731
|
/* @__PURE__ */ (0, import_jsx_runtime59.jsx)(Text3, { bold: true, color: theme.text.accent, children: "Esc" }),
|
|
354732
354732
|
" ",
|
|
@@ -355049,7 +355049,7 @@ var FolderTrustDialog = /* @__PURE__ */ __name(({
|
|
|
355049
355049
|
children: [
|
|
355050
355050
|
/* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(Box_default, { flexDirection: "column", marginBottom: 1, children: [
|
|
355051
355051
|
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Text3, { bold: true, color: theme.text.primary, children: "Do you trust this folder?" }),
|
|
355052
|
-
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Text3, { color: theme.text.primary, children: "Trusting a folder allows
|
|
355052
|
+
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Text3, { color: theme.text.primary, children: "Trusting a folder allows RDMind to execute commands it suggests. This is a security feature to prevent accidental execution in untrusted directories." })
|
|
355053
355053
|
] }),
|
|
355054
355054
|
/* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
|
|
355055
355055
|
RadioButtonSelect,
|
|
@@ -355062,7 +355062,7 @@ var FolderTrustDialog = /* @__PURE__ */ __name(({
|
|
|
355062
355062
|
]
|
|
355063
355063
|
}
|
|
355064
355064
|
),
|
|
355065
|
-
isRestarting && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Box_default, { marginLeft: 1, marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Text3, { color: theme.status.warning, children: "
|
|
355065
|
+
isRestarting && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Box_default, { marginLeft: 1, marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Text3, { color: theme.status.warning, children: "RDMind is restarting to apply the trust changes..." }) })
|
|
355066
355066
|
] });
|
|
355067
355067
|
}, "FolderTrustDialog");
|
|
355068
355068
|
|
|
@@ -357205,12 +357205,12 @@ function WorkspaceMigrationDialog(props) {
|
|
|
357205
357205
|
borderColor: theme.border.default,
|
|
357206
357206
|
padding: 1,
|
|
357207
357207
|
children: failedExtensions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(import_jsx_runtime76.Fragment, { children: [
|
|
357208
|
-
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Text3, { color: theme.text.primary, children: "The following extensions failed to migrate. Please try installing them manually. To see other changes,
|
|
357208
|
+
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Text3, { color: theme.text.primary, children: "The following extensions failed to migrate. Please try installing them manually. To see other changes, RDMind must be restarted. Press 'q' to quit." }),
|
|
357209
357209
|
/* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Box_default, { flexDirection: "column", marginTop: 1, marginLeft: 2, children: failedExtensions.map((failed) => /* @__PURE__ */ (0, import_jsx_runtime76.jsxs)(Text3, { children: [
|
|
357210
357210
|
"- ",
|
|
357211
357211
|
failed
|
|
357212
357212
|
] }, failed)) })
|
|
357213
|
-
] }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Text3, { color: theme.text.primary, children: "Migration complete. To see changes,
|
|
357213
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime76.jsx)(Text3, { color: theme.text.primary, children: "Migration complete. To see changes, RDMind must be restarted. Press 'q' to quit." })
|
|
357214
357214
|
}
|
|
357215
357215
|
);
|
|
357216
357216
|
}
|
|
@@ -369588,6 +369588,8 @@ var WebSocketClient = class {
|
|
|
369588
369588
|
reconnectTimer = null;
|
|
369589
369589
|
heartbeatTimer = null;
|
|
369590
369590
|
heartbeatTimeoutTimer = null;
|
|
369591
|
+
pluginSyncTimer = null;
|
|
369592
|
+
// 插件同步定时器
|
|
369591
369593
|
closedByUser = false;
|
|
369592
369594
|
socketId = null;
|
|
369593
369595
|
/**
|
|
@@ -369604,6 +369606,7 @@ var WebSocketClient = class {
|
|
|
369604
369606
|
this.closedByUser = true;
|
|
369605
369607
|
this.clearReconnectTimer();
|
|
369606
369608
|
this.clearHeartbeatTimers();
|
|
369609
|
+
this.stopPluginSync();
|
|
369607
369610
|
if (this.ws && (this.ws.readyState === wrapper_default.OPEN || this.ws.readyState === wrapper_default.CONNECTING)) {
|
|
369608
369611
|
try {
|
|
369609
369612
|
this.ws.close(1e3, "client shutdown");
|
|
@@ -369639,16 +369642,79 @@ var WebSocketClient = class {
|
|
|
369639
369642
|
} else {
|
|
369640
369643
|
console.info("[ws] connected");
|
|
369641
369644
|
}
|
|
369642
|
-
if (this.options.debug) {
|
|
369643
|
-
setDebugMode2(true);
|
|
369644
|
-
}
|
|
369645
|
-
syncPlugins().catch((error) => {
|
|
369646
|
-
console.error("\u63D2\u4EF6\u540C\u6B65\u5931\u8D25:", error);
|
|
369647
|
-
});
|
|
369648
369645
|
if (this.ws && this.options.registrationPayload) {
|
|
369649
369646
|
this.sendAuth(this.options.registrationPayload);
|
|
369650
369647
|
}
|
|
369651
369648
|
this.startHeartbeat();
|
|
369649
|
+
this.startPluginSync();
|
|
369650
|
+
}
|
|
369651
|
+
/**
|
|
369652
|
+
* 启动插件同步定时器
|
|
369653
|
+
*/
|
|
369654
|
+
startPluginSync() {
|
|
369655
|
+
this.stopPluginSync();
|
|
369656
|
+
this.pluginSyncTimer = setInterval(() => {
|
|
369657
|
+
this.performPluginSync();
|
|
369658
|
+
}, 3e3);
|
|
369659
|
+
}
|
|
369660
|
+
/**
|
|
369661
|
+
* 停止插件同步定时器
|
|
369662
|
+
*/
|
|
369663
|
+
stopPluginSync() {
|
|
369664
|
+
if (this.pluginSyncTimer) {
|
|
369665
|
+
clearInterval(this.pluginSyncTimer);
|
|
369666
|
+
this.pluginSyncTimer = null;
|
|
369667
|
+
}
|
|
369668
|
+
}
|
|
369669
|
+
/**
|
|
369670
|
+
* 执行插件同步
|
|
369671
|
+
*/
|
|
369672
|
+
async performPluginSync() {
|
|
369673
|
+
const ssoLoggedIn = this.isSSOLoggedIn();
|
|
369674
|
+
if (ssoLoggedIn) {
|
|
369675
|
+
if (this.options.debug) {
|
|
369676
|
+
console.debug("[ws] \u6267\u884C\u63D2\u4EF6\u540C\u6B65");
|
|
369677
|
+
console.debug("[ws] - SSO\u767B\u5F55\u72B6\u6001:", ssoLoggedIn);
|
|
369678
|
+
}
|
|
369679
|
+
if (this.options.debug) {
|
|
369680
|
+
setDebugMode2(true);
|
|
369681
|
+
}
|
|
369682
|
+
syncPlugins().catch((error) => {
|
|
369683
|
+
console.error("\u63D2\u4EF6\u540C\u6B65\u5931\u8D25:", error);
|
|
369684
|
+
});
|
|
369685
|
+
} else if (this.options.debug) {
|
|
369686
|
+
console.debug("[ws] \u63D2\u4EF6\u540C\u6B65\u6761\u4EF6\u5C1A\u672A\u6EE1\u8DB3");
|
|
369687
|
+
console.debug("[ws] - SSO\u767B\u5F55\u72B6\u6001:", ssoLoggedIn);
|
|
369688
|
+
}
|
|
369689
|
+
}
|
|
369690
|
+
onClose(code2, reason) {
|
|
369691
|
+
if (this.options.debug) {
|
|
369692
|
+
console.debug(
|
|
369693
|
+
`[ws] closed code=${code2} reason=${reason.toString("utf8")}`
|
|
369694
|
+
);
|
|
369695
|
+
}
|
|
369696
|
+
this.clearHeartbeatTimers();
|
|
369697
|
+
this.stopPluginSync();
|
|
369698
|
+
this.socketId = null;
|
|
369699
|
+
setSocketId(null);
|
|
369700
|
+
this.ws = null;
|
|
369701
|
+
if (!this.closedByUser) {
|
|
369702
|
+
this.scheduleReconnect();
|
|
369703
|
+
}
|
|
369704
|
+
}
|
|
369705
|
+
/**
|
|
369706
|
+
* 检查SSO凭证文件是否存在
|
|
369707
|
+
*/
|
|
369708
|
+
isSSOLoggedIn() {
|
|
369709
|
+
try {
|
|
369710
|
+
const credsPath = path114.join(os43.homedir(), ".rdmind", "xhs_sso_creds.json");
|
|
369711
|
+
return fs100.existsSync(credsPath);
|
|
369712
|
+
} catch (err) {
|
|
369713
|
+
if (this.options.debug) {
|
|
369714
|
+
console.debug("[ws] \u68C0\u67E5SSO\u767B\u5F55\u72B6\u6001\u65F6\u51FA\u9519:", err);
|
|
369715
|
+
}
|
|
369716
|
+
return false;
|
|
369717
|
+
}
|
|
369652
369718
|
}
|
|
369653
369719
|
/**
|
|
369654
369720
|
* 发送 auth 请求
|
|
@@ -369834,20 +369900,6 @@ var WebSocketClient = class {
|
|
|
369834
369900
|
console.warn("[ws] error");
|
|
369835
369901
|
}
|
|
369836
369902
|
}
|
|
369837
|
-
onClose(code2, reason) {
|
|
369838
|
-
if (this.options.debug) {
|
|
369839
|
-
console.debug(
|
|
369840
|
-
`[ws] closed code=${code2} reason=${reason.toString("utf8")}`
|
|
369841
|
-
);
|
|
369842
|
-
}
|
|
369843
|
-
this.clearHeartbeatTimers();
|
|
369844
|
-
this.socketId = null;
|
|
369845
|
-
setSocketId(null);
|
|
369846
|
-
this.ws = null;
|
|
369847
|
-
if (!this.closedByUser) {
|
|
369848
|
-
this.scheduleReconnect();
|
|
369849
|
-
}
|
|
369850
|
-
}
|
|
369851
369903
|
scheduleReconnect() {
|
|
369852
369904
|
if (this.closedByUser) return;
|
|
369853
369905
|
this.clearReconnectTimer();
|
|
@@ -371994,7 +372046,7 @@ async function start_sandbox(config, nodeArgs = [], cliConfig, cliArgs = []) {
|
|
|
371994
372046
|
sandboxProcess?.on("close", (code2, signal) => {
|
|
371995
372047
|
process.stdin.resume();
|
|
371996
372048
|
if (code2 !== 0 && code2 !== null) {
|
|
371997
|
-
console.
|
|
372049
|
+
console.error(
|
|
371998
372050
|
`Sandbox process exited with code: ${code2}, signal: ${signal}`
|
|
371999
372051
|
);
|
|
372000
372052
|
}
|
package/locales/en.js
CHANGED
|
@@ -867,7 +867,7 @@ export default {
|
|
|
867
867
|
'to hide descriptions': 'to hide descriptions',
|
|
868
868
|
'to authenticate with OAuth-enabled servers':
|
|
869
869
|
'to authenticate with OAuth-enabled servers',
|
|
870
|
-
Press: 'Press',
|
|
870
|
+
'Press key': 'Press key',
|
|
871
871
|
'to toggle tool descriptions on/off': 'to toggle tool descriptions on/off',
|
|
872
872
|
"Starting OAuth authentication for MCP server '{{name}}'...":
|
|
873
873
|
"Starting OAuth authentication for MCP server '{{name}}'...",
|
|
@@ -887,7 +887,7 @@ export default {
|
|
|
887
887
|
Create: 'Create',
|
|
888
888
|
'to customize your interactions with RDMind':
|
|
889
889
|
'to customize your interactions with RDMind',
|
|
890
|
-
|
|
890
|
+
Press: 'Press',
|
|
891
891
|
'twice to clear input,': 'twice to clear input,',
|
|
892
892
|
'for new line,': 'for new line,',
|
|
893
893
|
'to exit RDMind': 'to exit RDMind',
|
package/locales/zh.js
CHANGED
|
@@ -817,7 +817,7 @@ export default {
|
|
|
817
817
|
'to hide descriptions': '隐藏描述',
|
|
818
818
|
'to authenticate with OAuth-enabled servers':
|
|
819
819
|
'使用支持 OAuth 的服务器进行认证',
|
|
820
|
-
Press: '按',
|
|
820
|
+
'Press key': '按',
|
|
821
821
|
'to toggle tool descriptions on/off': '切换工具描述开关',
|
|
822
822
|
"Starting OAuth authentication for MCP server '{{name}}'...":
|
|
823
823
|
"正在为 MCP 服务器 '{{name}}' 启动 OAuth 认证...",
|
|
@@ -837,7 +837,7 @@ export default {
|
|
|
837
837
|
Create: '创建',
|
|
838
838
|
'to customize your interactions with RDMind':
|
|
839
839
|
'自定义你与 RDMind 的交互方式',
|
|
840
|
-
|
|
840
|
+
Press: '按',
|
|
841
841
|
'twice to clear input,': '清空输入框,',
|
|
842
842
|
'for new line,': '换行,',
|
|
843
843
|
'to exit RDMind': '退出RDMind',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rdmind/rdmind",
|
|
3
|
-
"version": "0.0.28-alpha.
|
|
3
|
+
"version": "0.0.28-alpha.14",
|
|
4
4
|
"description": "RDMind - AI-powered coding assistant",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "cli.js",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"locales"
|
|
21
21
|
],
|
|
22
22
|
"config": {
|
|
23
|
-
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.0.28-alpha.
|
|
23
|
+
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.0.28-alpha.14"
|
|
24
24
|
},
|
|
25
25
|
"publishConfig": {
|
|
26
26
|
"access": "public"
|