reasonix 0.48.1 → 0.49.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/dashboard/dist/app.js +123 -16
- package/dashboard/dist/app.js.map +1 -1
- package/dist/cli/{acp-QJGGHQLA.js → acp-WFQIC6SO.js} +18 -18
- package/dist/cli/chat-D32JGNVH.js +51 -0
- package/dist/cli/{chunk-TIJ4ZHD6.js → chunk-23ZPCIPR.js} +12 -9
- package/dist/cli/chunk-23ZPCIPR.js.map +1 -0
- package/dist/cli/{chunk-TKVXTQ3T.js → chunk-3ZZXQ3CZ.js} +27 -27
- package/dist/cli/chunk-3ZZXQ3CZ.js.map +1 -0
- package/dist/cli/{chunk-H2F4LDNH.js → chunk-7AST3QQ3.js} +2 -2
- package/dist/cli/{chunk-XMR2VCGT.js → chunk-7JTKBJ2G.js} +3 -3
- package/dist/cli/{chunk-X53B3JIX.js → chunk-7X4JJOO7.js} +2 -61
- package/dist/cli/{chunk-X53B3JIX.js.map → chunk-7X4JJOO7.js.map} +1 -1
- package/dist/cli/{chunk-WKOXKCF3.js → chunk-ASOLXV67.js} +3 -3
- package/dist/cli/{chunk-43ROGEX2.js → chunk-AWEULQG6.js} +10 -9
- package/dist/cli/{chunk-43ROGEX2.js.map → chunk-AWEULQG6.js.map} +1 -1
- package/dist/cli/{chunk-5AW6NIHU.js → chunk-DFX5ZH5L.js} +2 -2
- package/dist/cli/{chunk-4E2BHJU4.js → chunk-GNS7BAT2.js} +2 -2
- package/dist/cli/{chunk-5U5LMMFF.js → chunk-J2IHQGPQ.js} +12 -6
- package/dist/cli/chunk-J2IHQGPQ.js.map +1 -0
- package/dist/cli/{chunk-O3AGYTG2.js → chunk-JGTX4RRQ.js} +3 -3
- package/dist/cli/{chunk-SLAFMXAZ.js → chunk-JNTMOX7G.js} +2 -2
- package/dist/cli/{chunk-RCLS63KE.js → chunk-MGTBP7GG.js} +2 -2
- package/dist/cli/{chunk-JFBGSWQB.js → chunk-MQWO32ZD.js} +323 -159
- package/dist/cli/chunk-MQWO32ZD.js.map +1 -0
- package/dist/cli/{chunk-FD7SNDWW.js → chunk-O5LIHAMP.js} +8 -4
- package/dist/cli/chunk-O5LIHAMP.js.map +1 -0
- package/dist/cli/{chunk-PJIQIYTV.js → chunk-PB3MAFEI.js} +3 -3
- package/dist/cli/{chunk-NQZ5U37J.js → chunk-PEMG6CUB.js} +2 -2
- package/dist/cli/{chunk-KH5JIJJD.js → chunk-PXBQ6IZ7.js} +3 -3
- package/dist/cli/{chunk-J2TQAWOM.js → chunk-Q46B3Z7H.js} +25 -10
- package/dist/cli/{chunk-J2TQAWOM.js.map → chunk-Q46B3Z7H.js.map} +1 -1
- package/dist/cli/{chunk-DABAOQSV.js → chunk-QF32ROX2.js} +1260 -1754
- package/dist/cli/chunk-QF32ROX2.js.map +1 -0
- package/dist/cli/{chunk-IKSYVBBZ.js → chunk-QX5TWXRZ.js} +2 -2
- package/dist/cli/{chunk-R7U44O3Y.js → chunk-TAIKVL35.js} +2 -2
- package/dist/cli/{chunk-B5CZL2SE.js → chunk-TEDWJKEI.js} +4 -9
- package/dist/cli/chunk-TEDWJKEI.js.map +1 -0
- package/dist/cli/{chunk-EO6RPTJG.js → chunk-U5XQDCK7.js} +5 -5
- package/dist/cli/{chunk-SWUMD2LX.js → chunk-W46ZMNKO.js} +3 -3
- package/dist/cli/{chunk-FPME5QOO.js → chunk-WMTMMSXU.js} +166 -5
- package/dist/cli/chunk-WMTMMSXU.js.map +1 -0
- package/dist/cli/{chunk-PIC5HJRD.js → chunk-YEF7C4XI.js} +154 -86
- package/dist/cli/chunk-YEF7C4XI.js.map +1 -0
- package/dist/cli/{chunk-3FULTFRB.js → chunk-ZAEJWKXB.js} +2 -2
- package/dist/cli/chunk-ZWHSHFDP.js +6173 -0
- package/dist/cli/chunk-ZWHSHFDP.js.map +1 -0
- package/dist/cli/{code-OKA5YPOH.js → code-R4IHI7SR.js} +30 -30
- package/dist/cli/{commands-3U6PUVSS.js → commands-DRHFCYMO.js} +4 -4
- package/dist/cli/{commit-HFB7SRBU.js → commit-AG5KB4YP.js} +3 -3
- package/dist/cli/{desktop-G7UMW3CJ.js → desktop-JGL6GORA.js} +19 -19
- package/dist/cli/{diff-PGXW4YZD.js → diff-4Z7ETWZO.js} +9 -9
- package/dist/cli/{doctor-WWJFLVCB.js → doctor-VA3RHQLB.js} +9 -9
- package/dist/cli/index.js +37 -36
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/{mcp-Y3VKIK3T.js → mcp-LZO4HXFA.js} +34 -23
- package/dist/cli/mcp-LZO4HXFA.js.map +1 -0
- package/dist/cli/{mcp-browse-4IN2QIFR.js → mcp-browse-C3GXVMYZ.js} +3 -3
- package/dist/cli/{mcp-inspect-BUXFXDHB.js → mcp-inspect-ZMYUNFDS.js} +2 -2
- package/dist/cli/{prompt-US57R6BA.js → prompt-MC3U5KRP.js} +5 -5
- package/dist/cli/{prune-sessions-SEWX7GP6.js → prune-sessions-OEPFH4N6.js} +11 -7
- package/dist/cli/prune-sessions-OEPFH4N6.js.map +1 -0
- package/dist/cli/{replay-EQJMZRB3.js → replay-4TP7ZUMZ.js} +10 -10
- package/dist/cli/{run-KVEI66TR.js → run-6MXQYBOE.js} +16 -15
- package/dist/cli/run-6MXQYBOE.js.map +1 -0
- package/dist/cli/{server-D6C4GHWN.js → server-Z3IMJNNI.js} +63 -12
- package/dist/cli/server-Z3IMJNNI.js.map +1 -0
- package/dist/cli/{sessions-TGVS2RQZ.js → sessions-NXQ5SAV7.js} +18 -18
- package/dist/cli/sessions-NXQ5SAV7.js.map +1 -0
- package/dist/cli/{setup-WLKX6GGG.js → setup-LHZELI6I.js} +6 -6
- package/dist/cli/{stats-TCD7Q6MB.js → stats-SUIJ3QWY.js} +6 -6
- package/dist/cli/{version-BCWWS2OU.js → version-BIFONEUB.js} +13 -13
- package/dist/index.d.ts +63 -15
- package/dist/index.js +855 -360
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/dist/cli/chat-ZXF227MP.js +0 -51
- package/dist/cli/chunk-5U5LMMFF.js.map +0 -1
- package/dist/cli/chunk-6FRNXWDZ.js +0 -2265
- package/dist/cli/chunk-6FRNXWDZ.js.map +0 -1
- package/dist/cli/chunk-B5CZL2SE.js.map +0 -1
- package/dist/cli/chunk-DABAOQSV.js.map +0 -1
- package/dist/cli/chunk-FD7SNDWW.js.map +0 -1
- package/dist/cli/chunk-FPME5QOO.js.map +0 -1
- package/dist/cli/chunk-JFBGSWQB.js.map +0 -1
- package/dist/cli/chunk-PIC5HJRD.js.map +0 -1
- package/dist/cli/chunk-TIJ4ZHD6.js.map +0 -1
- package/dist/cli/chunk-TKVXTQ3T.js.map +0 -1
- package/dist/cli/mcp-Y3VKIK3T.js.map +0 -1
- package/dist/cli/prune-sessions-SEWX7GP6.js.map +0 -1
- package/dist/cli/run-KVEI66TR.js.map +0 -1
- package/dist/cli/server-D6C4GHWN.js.map +0 -1
- package/dist/cli/sessions-TGVS2RQZ.js.map +0 -1
- /package/dist/cli/{acp-QJGGHQLA.js.map → acp-WFQIC6SO.js.map} +0 -0
- /package/dist/cli/{chat-ZXF227MP.js.map → chat-D32JGNVH.js.map} +0 -0
- /package/dist/cli/{chunk-H2F4LDNH.js.map → chunk-7AST3QQ3.js.map} +0 -0
- /package/dist/cli/{chunk-XMR2VCGT.js.map → chunk-7JTKBJ2G.js.map} +0 -0
- /package/dist/cli/{chunk-WKOXKCF3.js.map → chunk-ASOLXV67.js.map} +0 -0
- /package/dist/cli/{chunk-5AW6NIHU.js.map → chunk-DFX5ZH5L.js.map} +0 -0
- /package/dist/cli/{chunk-4E2BHJU4.js.map → chunk-GNS7BAT2.js.map} +0 -0
- /package/dist/cli/{chunk-O3AGYTG2.js.map → chunk-JGTX4RRQ.js.map} +0 -0
- /package/dist/cli/{chunk-SLAFMXAZ.js.map → chunk-JNTMOX7G.js.map} +0 -0
- /package/dist/cli/{chunk-RCLS63KE.js.map → chunk-MGTBP7GG.js.map} +0 -0
- /package/dist/cli/{chunk-PJIQIYTV.js.map → chunk-PB3MAFEI.js.map} +0 -0
- /package/dist/cli/{chunk-NQZ5U37J.js.map → chunk-PEMG6CUB.js.map} +0 -0
- /package/dist/cli/{chunk-KH5JIJJD.js.map → chunk-PXBQ6IZ7.js.map} +0 -0
- /package/dist/cli/{chunk-IKSYVBBZ.js.map → chunk-QX5TWXRZ.js.map} +0 -0
- /package/dist/cli/{chunk-R7U44O3Y.js.map → chunk-TAIKVL35.js.map} +0 -0
- /package/dist/cli/{chunk-EO6RPTJG.js.map → chunk-U5XQDCK7.js.map} +0 -0
- /package/dist/cli/{chunk-SWUMD2LX.js.map → chunk-W46ZMNKO.js.map} +0 -0
- /package/dist/cli/{chunk-3FULTFRB.js.map → chunk-ZAEJWKXB.js.map} +0 -0
- /package/dist/cli/{code-OKA5YPOH.js.map → code-R4IHI7SR.js.map} +0 -0
- /package/dist/cli/{commands-3U6PUVSS.js.map → commands-DRHFCYMO.js.map} +0 -0
- /package/dist/cli/{commit-HFB7SRBU.js.map → commit-AG5KB4YP.js.map} +0 -0
- /package/dist/cli/{desktop-G7UMW3CJ.js.map → desktop-JGL6GORA.js.map} +0 -0
- /package/dist/cli/{diff-PGXW4YZD.js.map → diff-4Z7ETWZO.js.map} +0 -0
- /package/dist/cli/{doctor-WWJFLVCB.js.map → doctor-VA3RHQLB.js.map} +0 -0
- /package/dist/cli/{mcp-browse-4IN2QIFR.js.map → mcp-browse-C3GXVMYZ.js.map} +0 -0
- /package/dist/cli/{mcp-inspect-BUXFXDHB.js.map → mcp-inspect-ZMYUNFDS.js.map} +0 -0
- /package/dist/cli/{prompt-US57R6BA.js.map → prompt-MC3U5KRP.js.map} +0 -0
- /package/dist/cli/{replay-EQJMZRB3.js.map → replay-4TP7ZUMZ.js.map} +0 -0
- /package/dist/cli/{setup-WLKX6GGG.js.map → setup-LHZELI6I.js.map} +0 -0
- /package/dist/cli/{stats-TCD7Q6MB.js.map → stats-SUIJ3QWY.js.map} +0 -0
- /package/dist/cli/{version-BCWWS2OU.js.map → version-BIFONEUB.js.map} +0 -0
|
@@ -3,7 +3,7 @@ import { createRequire as __cr } from 'node:module'; if (typeof globalThis.requi
|
|
|
3
3
|
import {
|
|
4
4
|
loadLanguage,
|
|
5
5
|
saveLanguage
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-WMTMMSXU.js";
|
|
7
7
|
|
|
8
8
|
// src/i18n/EN.ts
|
|
9
9
|
var EN = {
|
|
@@ -48,7 +48,17 @@ var EN = {
|
|
|
48
48
|
missingApiKey: "DEEPSEEK_API_KEY is not set and stdin is not a TTY (cannot prompt).\nSet the env var, or run `reasonix chat` once interactively to save a key.\n"
|
|
49
49
|
},
|
|
50
50
|
sessions: {
|
|
51
|
-
emptyHint: "no saved sessions yet \u2014 run `reasonix chat` (sessions are auto-saved unless --no-session)."
|
|
51
|
+
emptyHint: "no saved sessions yet \u2014 run `reasonix chat` (sessions are auto-saved unless --no-session).",
|
|
52
|
+
listHeader: "Saved sessions (~/.reasonix/sessions/):",
|
|
53
|
+
inspectHint: "Inspect: reasonix sessions <name>",
|
|
54
|
+
resumeHint: "Resume: reasonix chat --session <name>",
|
|
55
|
+
noSession: 'no session named "{name}" (or it\u2019s empty).',
|
|
56
|
+
lookedAt: "looked at: {path}",
|
|
57
|
+
noIdleSessions: "no sessions idle \u2265{days} days. Nothing pruned.",
|
|
58
|
+
wouldPrune: "would prune {count} session(s) idle \u2265{days} days:",
|
|
59
|
+
dryRunHint: "re-run without --dry-run to actually delete.",
|
|
60
|
+
prunedCount: "pruned {count} session(s) idle \u2265{days} days:",
|
|
61
|
+
daysInvalid: "--days must be a positive integer (got {days})."
|
|
52
62
|
},
|
|
53
63
|
ui: {
|
|
54
64
|
welcome: "Run `reasonix` any time to start chatting \u2014 your settings are remembered.",
|
|
@@ -152,10 +162,6 @@ var EN = {
|
|
|
152
162
|
title: "copy / paste",
|
|
153
163
|
rows: [
|
|
154
164
|
{ key: "select text", text: "drag to select \u2014 terminal-native (no modifier needed)" },
|
|
155
|
-
{
|
|
156
|
-
key: "/copy",
|
|
157
|
-
text: "vim/tmux-style copy mode \u2014 works in SSH/mosh/tmux where drag-select can't extend past the viewport"
|
|
158
|
-
},
|
|
159
165
|
{
|
|
160
166
|
key: "copy",
|
|
161
167
|
text: "Ctrl+Shift+C (Win/Linux) \xB7 Cmd+C (macOS) \u2014 or auto-copy-on-select if your terminal does it"
|
|
@@ -246,9 +252,6 @@ var EN = {
|
|
|
246
252
|
},
|
|
247
253
|
slash: {
|
|
248
254
|
help: { description: "show the full command reference" },
|
|
249
|
-
copy: {
|
|
250
|
-
description: "open vim/tmux-style copy mode \u2014 j/k navigate, v select, y yank to clipboard"
|
|
251
|
-
},
|
|
252
255
|
status: { description: "current model, flags, context, session" },
|
|
253
256
|
preset: {
|
|
254
257
|
description: "model bundle \u2014 auto escalates flash \u2192 pro, flash/pro lock",
|
|
@@ -400,8 +403,8 @@ var EN = {
|
|
|
400
403
|
argsHint: "<question>"
|
|
401
404
|
},
|
|
402
405
|
"search-engine": {
|
|
403
|
-
description: "switch web search backend \u2014
|
|
404
|
-
argsHint: "<
|
|
406
|
+
description: "switch web search backend \u2014 bing (default, works from CN without proxy), searxng (self-hosted), metaso (free 100/d), tavily (free 1000/mo), perplexity (AI-native), or exa (AI-native)",
|
|
407
|
+
argsHint: "<bing|searxng|metaso|tavily|perplexity|exa> [<key>]"
|
|
405
408
|
}
|
|
406
409
|
},
|
|
407
410
|
wizard: {
|
|
@@ -564,6 +567,8 @@ var EN = {
|
|
|
564
567
|
verboseOn: "\u25B8 verbose mode on \u2014 full reasoning + tool output",
|
|
565
568
|
verboseOff: "\u25B8 verbose mode off \u2014 head/tail elision restored",
|
|
566
569
|
commandFailed: "! command failed",
|
|
570
|
+
steerInjected: "\u25B8 steering queued \u2014 will be added after the current step",
|
|
571
|
+
steerCommandRejected: "\u25B8 commands are disabled while steering a busy turn",
|
|
567
572
|
btwUsage: "\u25B8 /btw <question> \u2014 ask a side question without polluting the conversation context.",
|
|
568
573
|
btwHeader: "\u226B btw",
|
|
569
574
|
btwFailed: "/btw failed",
|
|
@@ -609,7 +614,9 @@ var EN = {
|
|
|
609
614
|
editHistoryAlreadyReverted: "(already reverted \u2014 /history shows the batch-level status)",
|
|
610
615
|
editHistoryRevertFile: "/undo {id} {path} \u2192 revert just this file",
|
|
611
616
|
mcpFailed: "MCP {name} failed",
|
|
612
|
-
mcpWarn: "MCP {name} warn"
|
|
617
|
+
mcpWarn: "MCP {name} warn",
|
|
618
|
+
unknownTheme: "unknown theme: {name}\navailable: {choices}",
|
|
619
|
+
themeSaved: "theme saved: {name}\nactive on next launch: {active}"
|
|
613
620
|
},
|
|
614
621
|
hooks: {
|
|
615
622
|
head: "hook {tag} `{cmd}` {decision}{truncTag}",
|
|
@@ -653,6 +660,7 @@ var EN = {
|
|
|
653
660
|
balance402: "Out of balance (DeepSeek 402): {inner}. Top up at https://platform.deepseek.com/top_up \u2014 the panel header shows your balance once it's non-zero.",
|
|
654
661
|
badparam422: "Invalid parameter (DeepSeek 422): {inner}",
|
|
655
662
|
badrequest400: "Bad request (DeepSeek 400): {inner}",
|
|
663
|
+
concurrency429: "DeepSeek concurrency limit hit (429): {inner}. The account has too many in-flight requests (cap: 500 for v4-pro, 2500 for v4-flash, summed across API keys account-wide). Usually means another Reasonix process is sharing the same key, or a parallel subagent fan-out overshot. Wait a few seconds and retry, reduce parallelism, or request a higher cap at https://platform.deepseek.com.",
|
|
656
664
|
deepseek5xxHead: "DeepSeek service unavailable ({status}) \u2014 this is a DeepSeek-side problem, not Reasonix. Already retried 4\xD7 with backoff.",
|
|
657
665
|
deepseek5xxReachable: " DeepSeek's main API answered our health check, but /chat/completions is failing \u2014 partial outage on their side.",
|
|
658
666
|
deepseek5xxUnreachable: " DeepSeek API is unreachable from your network \u2014 could be a wider DS outage or a local network issue.",
|
|
@@ -938,6 +946,9 @@ var EN = {
|
|
|
938
946
|
activeNone: "\u25B8 active plan: (none)",
|
|
939
947
|
noArchives: "no archived plans yet for this session \u2014 they auto-archive when every step is done",
|
|
940
948
|
archivedHeader: "Archived ({count}):",
|
|
949
|
+
evidencePending: " ! evidence pending \u2014 current step needs verification/diff/checkpoint/manual evidence",
|
|
950
|
+
evidenceLine: " evidence {stepId}: {summary}",
|
|
951
|
+
archivedEvidenceLine: " evidence: {summary}",
|
|
941
952
|
replayNoSession: "no session attached \u2014 `/replay` is per-session. Run `reasonix code` in a project to get a session.",
|
|
942
953
|
replayNoArchives: "no archived plans yet for this session \u2014 `/replay` lights up once a plan completes (auto-archives when every step is done).",
|
|
943
954
|
replayInvalidIndex: "invalid index \u2014 `/replay` takes 1..{max} (newest = 1). Use `/plans` to see the list.",
|
|
@@ -1032,7 +1043,7 @@ var EN = {
|
|
|
1032
1043
|
currentEngine: "Current web search engine: {engine}",
|
|
1033
1044
|
endpoint: "SearXNG endpoint: {url}",
|
|
1034
1045
|
usageHeader: "Usage:",
|
|
1035
|
-
|
|
1046
|
+
usageBing: " /search-engine bing use Bing (default, works from CN without proxy)",
|
|
1036
1047
|
usageSearxng: " /search-engine searxng use SearXNG at default endpoint",
|
|
1037
1048
|
usageSearxngUrl: " /search-engine searxng <url> use SearXNG at custom endpoint",
|
|
1038
1049
|
usageMetaso: " /search-engine metaso use Metaso API (100/d free, configure your own API key for more)",
|
|
@@ -1128,7 +1139,9 @@ var EN = {
|
|
|
1128
1139
|
editorFailed: "external editor:",
|
|
1129
1140
|
editorMissing: "no $EDITOR / $VISUAL / $GIT_EDITOR set \u2014 export one (e.g. `export EDITOR=nano`) and retry",
|
|
1130
1141
|
editorExited: "editor exited with code {code}",
|
|
1131
|
-
typeaheadStaged: "\u25B8 {count} line(s) staged \xB7 esc recall"
|
|
1142
|
+
typeaheadStaged: "\u25B8 {count} line(s) staged \xB7 esc recall",
|
|
1143
|
+
steerPlaceholder: "type to steer the current task \u2014 commands are disabled while busy",
|
|
1144
|
+
steerHint: "send \u2014 injected mid-turn"
|
|
1132
1145
|
},
|
|
1133
1146
|
pathConfirm: {
|
|
1134
1147
|
title: "Outside-sandbox path",
|
|
@@ -1147,7 +1160,13 @@ var EN = {
|
|
|
1147
1160
|
denyDesc: "press Tab to add context telling the model why",
|
|
1148
1161
|
pathLabel: "path",
|
|
1149
1162
|
sandboxLabel: "sandbox",
|
|
1150
|
-
allowPrefixLabel: "prefix"
|
|
1163
|
+
allowPrefixLabel: "prefix",
|
|
1164
|
+
promptTitleRead: "Access path \u2014 read",
|
|
1165
|
+
promptTitleWrite: "Access path \u2014 write",
|
|
1166
|
+
actionAllowRead: "Allow read",
|
|
1167
|
+
actionAllowWrite: "Allow write",
|
|
1168
|
+
actionAlwaysAllow: "Always allow \u2014 {prefix}",
|
|
1169
|
+
actionDeny: "Deny"
|
|
1151
1170
|
},
|
|
1152
1171
|
shellConfirm: {
|
|
1153
1172
|
title: "Shell command",
|
|
@@ -1169,7 +1188,12 @@ var EN = {
|
|
|
1169
1188
|
timeoutLabel: "timeout",
|
|
1170
1189
|
waitLabel: "wait",
|
|
1171
1190
|
previewMore: "\u2026 {n} more line hidden \u2014 press esc, ask the model to split it",
|
|
1172
|
-
previewMorePlural: "\u2026 {n} more lines hidden \u2014 press esc, ask the model to split it"
|
|
1191
|
+
previewMorePlural: "\u2026 {n} more lines hidden \u2014 press esc, ask the model to split it",
|
|
1192
|
+
promptTitleRunCommand: "Run command",
|
|
1193
|
+
promptTitleRunBackground: "Run background command",
|
|
1194
|
+
actionRunOnce: "Run once",
|
|
1195
|
+
actionAlwaysAllow: "Always allow \u2014 {prefix}",
|
|
1196
|
+
actionDeny: "Deny"
|
|
1173
1197
|
},
|
|
1174
1198
|
editConfirm: {
|
|
1175
1199
|
footer: "[y/Enter] apply \xB7 [n] reject with reason \xB7 [a] apply rest \xB7 [A] flip AUTO \xB7 [\u2191\u2193/Space] scroll \xB7 [Esc] abort",
|
|
@@ -1310,37 +1334,37 @@ var EN = {
|
|
|
1310
1334
|
probeFailed: "probe failed \u2014 {message}"
|
|
1311
1335
|
},
|
|
1312
1336
|
webErrors: {
|
|
1313
|
-
status: "web_search {status} \u2014 try: the search backend returned an error; rephrase the query, or switch engine with /search-engine
|
|
1337
|
+
status: "web_search {status} \u2014 try: the search backend returned an error; rephrase the query, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1314
1338
|
rateLimit429: "web_search 429 \u2014 try: wait 10s before retrying, or rephrase the query; the search backend is rate-limiting this client",
|
|
1315
|
-
forbidden403: "web_search 403 \u2014 try: the search backend is blocking this client; switch engine with /search-engine
|
|
1339
|
+
forbidden403: "web_search 403 \u2014 try: the search backend is blocking this client; switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa, or wait and retry later",
|
|
1316
1340
|
serverError5xx: "web_search {status} \u2014 try: open the search URL in a browser; if it loads this is transient and a retry in 30s may help",
|
|
1317
|
-
|
|
1318
|
-
|
|
1341
|
+
bingBlocked: "web_search: Bing anti-bot page \u2014 rate-limited or blocked \u2014 try: wait 30s and retry, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1342
|
+
bingNoResults: "web_search: 0 results but response doesn't look like a real empty page ({chars} chars, first 120: {preview}) \u2014 try: rephrase the query with simpler terms, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1319
1343
|
invalidEndpoint: 'web_search: invalid SearXNG endpoint "{endpoint}" \u2014 try: set a valid URL with /search-endpoint http://host:port',
|
|
1320
1344
|
endpointMustBeHttp: "web_search: SearXNG endpoint must be http(s), got {protocol} \u2014 try: set a valid URL with /search-endpoint http://host:port",
|
|
1321
|
-
cannotReach: "web_search: Cannot reach SearXNG server at {endpoint} \u2014 try: install and start SearXNG (https://github.com/searxng/searxng, e.g. `docker run -d -p 8080:8080 searxng/searxng`), or switch to another engine with /search-engine
|
|
1322
|
-
searxngNoResults: "web_search: 0 results but SearXNG response doesn't look like an empty results page ({chars} chars) \u2014 try: rephrase the query with simpler terms, or switch engine with /search-engine
|
|
1345
|
+
cannotReach: "web_search: Cannot reach SearXNG server at {endpoint} \u2014 try: install and start SearXNG (https://github.com/searxng/searxng, e.g. `docker run -d -p 8080:8080 searxng/searxng`), or switch to another engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1346
|
+
searxngNoResults: "web_search: 0 results but SearXNG response doesn't look like an empty results page ({chars} chars) \u2014 try: rephrase the query with simpler terms, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1323
1347
|
metasoMissingKey: "web_search: Metaso requires an API key \u2014 set METASO_API_KEY or configure one with /search-engine metaso <key>. Get one at https://metaso.cn/search-api/playground",
|
|
1324
1348
|
metasoDailyLimit: "web_search: Metaso daily search limit reached \u2014 set METASO_API_KEY or get a key at https://metaso.cn/search-api/playground",
|
|
1325
1349
|
metasoUnauthorized: "web_search: Metaso API key rejected \u2014 check METASO_API_KEY or get one at https://metaso.cn/search-api/playground",
|
|
1326
1350
|
metasoRateLimit: "web_search: Metaso rate-limited \u2014 wait and retry, or get your own API key at https://metaso.cn/search-api/playground",
|
|
1327
|
-
metasoServerError: "web_search: Metaso server error ({status}) \u2014 try again later, or switch engine with /search-engine
|
|
1351
|
+
metasoServerError: "web_search: Metaso server error ({status}) \u2014 try again later, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1328
1352
|
metasoParseError: "web_search: Metaso returned unparseable response (HTTP {status}) \u2014 try again later",
|
|
1329
1353
|
metasoApiError: "web_search: Metaso API error (code {code}: {message}) \u2014 try again later",
|
|
1330
1354
|
tavilyMissingKey: "web_search: Tavily backend requires an API key \u2014 set TAVILY_API_KEY env var or `tavilyApiKey` in ~/.reasonix/config.json; free 1000/mo signup at https://tavily.com",
|
|
1331
1355
|
tavilyUnauthorized: "web_search: Tavily API key rejected \u2014 check TAVILY_API_KEY or get one at https://tavily.com",
|
|
1332
|
-
tavilyRateLimit: "web_search: Tavily rate-limited or monthly quota exceeded \u2014 wait, switch engine with /search-engine
|
|
1333
|
-
tavilyServerError: "web_search: Tavily server error ({status}) \u2014 try again later, or switch engine with /search-engine
|
|
1356
|
+
tavilyRateLimit: "web_search: Tavily rate-limited or monthly quota exceeded \u2014 wait, switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa, or upgrade your Tavily plan",
|
|
1357
|
+
tavilyServerError: "web_search: Tavily server error ({status}) \u2014 try again later, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1334
1358
|
tavilyParseError: "web_search: Tavily returned unparseable response (HTTP {status}) \u2014 try again later",
|
|
1335
1359
|
perplexityMissingKey: "web_search: Perplexity backend requires an API key \u2014 set PERPLEXITY_API_KEY env var or `perplexityApiKey` in ~/.reasonix/config.json; get one at https://perplexity.ai/settings/api",
|
|
1336
1360
|
perplexityUnauthorized: "web_search: Perplexity API key rejected \u2014 check PERPLEXITY_API_KEY or get one at https://perplexity.ai/settings/api",
|
|
1337
|
-
perplexityRateLimit: "web_search: Perplexity rate-limited \u2014 wait and retry, or switch engine with /search-engine
|
|
1338
|
-
perplexityServerError: "web_search: Perplexity server error ({status}) \u2014 try again later, or switch engine with /search-engine
|
|
1361
|
+
perplexityRateLimit: "web_search: Perplexity rate-limited \u2014 wait and retry, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1362
|
+
perplexityServerError: "web_search: Perplexity server error ({status}) \u2014 try again later, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1339
1363
|
perplexityParseError: "web_search: Perplexity returned unparseable response (HTTP {status}) \u2014 try again later",
|
|
1340
1364
|
exaMissingKey: "web_search: Exa backend requires an API key \u2014 set EXA_API_KEY env var or `exaApiKey` in ~/.reasonix/config.json; free 1000/mo signup at https://exa.ai",
|
|
1341
1365
|
exaUnauthorized: "web_search: Exa API key rejected \u2014 check EXA_API_KEY or get one at https://exa.ai",
|
|
1342
1366
|
exaRateLimit: "web_search: Exa API rate-limited or monthly quota exceeded \u2014 wait or upgrade at https://exa.ai/pricing",
|
|
1343
|
-
exaServerError: "web_search: Exa server error ({status}) \u2014 try again later, or switch engine with /search-engine
|
|
1367
|
+
exaServerError: "web_search: Exa server error ({status}) \u2014 try again later, or switch engine with /search-engine bing|searxng|metaso|tavily|perplexity|exa",
|
|
1344
1368
|
exaParseError: "web_search: Exa returned unparseable response (HTTP {status}) \u2014 try again later",
|
|
1345
1369
|
fetchStatus: "web_fetch {status} for {url} \u2014 try: confirm the URL resolves in a browser; status suggests the host returned an error page",
|
|
1346
1370
|
fetchRateLimit429: "web_fetch 429 for {url} \u2014 try: wait 10s before retrying; the host is rate-limiting this client",
|
|
@@ -1432,19 +1456,6 @@ var EN = {
|
|
|
1432
1456
|
categoryProject: "project",
|
|
1433
1457
|
categoryReference: "reference"
|
|
1434
1458
|
},
|
|
1435
|
-
copyMode: {
|
|
1436
|
-
title: "\u2500\u2500 COPY MODE \u2500\u2500",
|
|
1437
|
-
help: "j/k or \u2191/\u2193 move \xB7 v select \xB7 y yank \xB7 g/G top/bottom \xB7 q quit",
|
|
1438
|
-
statusBar: "line {cur}/{total} \xB7 selection: {sel}",
|
|
1439
|
-
statusYanked: "yanked {size} chars (osc52={osc52})",
|
|
1440
|
-
statusEmpty: "nothing selected",
|
|
1441
|
-
empty: "(no chat content yet \u2014 say something to the model first)",
|
|
1442
|
-
labelUser: "you",
|
|
1443
|
-
labelAssistant: "assistant",
|
|
1444
|
-
labelReasoning: "reasoning",
|
|
1445
|
-
yankedToast: "\u25B8 copied {size} chars to clipboard (osc52)",
|
|
1446
|
-
yankedToastFile: "\u25B8 copied {size} chars \xB7 file: {path}"
|
|
1447
|
-
},
|
|
1448
1459
|
mcpHealth: {
|
|
1449
1460
|
noData: "no inspect data",
|
|
1450
1461
|
healthy: "healthy \xB7 {ms}ms",
|
|
@@ -1596,9 +1607,11 @@ var EN = {
|
|
|
1596
1607
|
groupSystem: "System",
|
|
1597
1608
|
descEnter: "Send message",
|
|
1598
1609
|
descShiftEnter: "New line",
|
|
1610
|
+
descCtrlEnter: "New line",
|
|
1611
|
+
descCtrlJ: "New line",
|
|
1599
1612
|
descCtrlU: "Clear input",
|
|
1600
1613
|
descCtrlW: "Delete word",
|
|
1601
|
-
descCtrlP: "
|
|
1614
|
+
descCtrlP: "Show/hide shortcuts",
|
|
1602
1615
|
descCtrlX: "Open in editor",
|
|
1603
1616
|
descArrows: "Input history",
|
|
1604
1617
|
descPgUpDown: "Scroll page",
|
|
@@ -1612,9 +1625,30 @@ var EN = {
|
|
|
1612
1625
|
descCtrlC: "Quit",
|
|
1613
1626
|
descEsc: "Stop / Cancel",
|
|
1614
1627
|
descCtrlR: "Toggle verbose",
|
|
1615
|
-
descCtrlO: "Expand
|
|
1628
|
+
descCtrlO: "Expand reply (streaming only)",
|
|
1616
1629
|
descHelp: "Show all commands",
|
|
1617
1630
|
descShiftTab: "Switch edit mode"
|
|
1631
|
+
},
|
|
1632
|
+
mcpCli: {
|
|
1633
|
+
bundledCatalog: "Bundled MCP servers (offline catalog):",
|
|
1634
|
+
justFetched: "just fetched",
|
|
1635
|
+
cachedAge: "cached, {age}",
|
|
1636
|
+
moreAvailable: "more available",
|
|
1637
|
+
allLoaded: "all loaded",
|
|
1638
|
+
morePagesAvailable: "\u25B8 more pages available \u2014 `reasonix mcp list --pages <n>` or --all",
|
|
1639
|
+
installHint: "Install: reasonix mcp install <name>",
|
|
1640
|
+
usageSearch: "usage: reasonix mcp search <query>",
|
|
1641
|
+
usageInstall: "usage: reasonix mcp install <name>",
|
|
1642
|
+
noMatchesFor: 'No matches for "{q}" across {count} loaded entries ({source})',
|
|
1643
|
+
matchCount: '{count} match(es) for "{q}" in {source} registry ({loaded} entries scanned):',
|
|
1644
|
+
moreLoaded: "\u2026 {count} more loaded \u2014 use `reasonix mcp search <query>` to filter",
|
|
1645
|
+
moreMatches: "\u2026 {count} more matches",
|
|
1646
|
+
installed: "Installed: {spec}",
|
|
1647
|
+
noServerFound: 'No MCP server named "{target}" found after walking {pages} page(s) of the {source} registry.',
|
|
1648
|
+
noServerTryMore: "Try: reasonix mcp install {target} --max-pages 100",
|
|
1649
|
+
noInstallMeta: 'Could not derive install metadata for "{name}" \u2014 try `npx -y @smithery/cli install {name}` directly.',
|
|
1650
|
+
buildSpecFailed: "Cannot build install spec for {name}: {message}",
|
|
1651
|
+
alreadyInstalled: "Already installed: {spec}"
|
|
1618
1652
|
}
|
|
1619
1653
|
};
|
|
1620
1654
|
|
|
@@ -1661,7 +1695,17 @@ var zhCN = {
|
|
|
1661
1695
|
missingApiKey: "\u672A\u8BBE\u7F6E DEEPSEEK_API_KEY \u4E14\u6807\u51C6\u8F93\u5165\u4E0D\u662F TTY\uFF08\u65E0\u6CD5\u4EA4\u4E92\u5F0F\u8F93\u5165\uFF09\u3002\n\u8BF7\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\uFF0C\u6216\u5148\u8FD0\u884C `reasonix chat` \u4EA4\u4E92\u4E00\u6B21\u4EE5\u4FDD\u5B58\u5BC6\u94A5\u3002\n"
|
|
1662
1696
|
},
|
|
1663
1697
|
sessions: {
|
|
1664
|
-
emptyHint: "\u6682\u65E0\u5DF2\u4FDD\u5B58\u7684\u4F1A\u8BDD \u2014 \u8FD0\u884C `reasonix chat`\uFF08\u4F1A\u8BDD\u4F1A\u81EA\u52A8\u4FDD\u5B58\uFF0C\u9664\u975E\u4F7F\u7528\u4E86 --no-session\uFF09\u3002"
|
|
1698
|
+
emptyHint: "\u6682\u65E0\u5DF2\u4FDD\u5B58\u7684\u4F1A\u8BDD \u2014 \u8FD0\u884C `reasonix chat`\uFF08\u4F1A\u8BDD\u4F1A\u81EA\u52A8\u4FDD\u5B58\uFF0C\u9664\u975E\u4F7F\u7528\u4E86 --no-session\uFF09\u3002",
|
|
1699
|
+
listHeader: "\u4FDD\u5B58\u7684\u4F1A\u8BDD (~/.reasonix/sessions/)\uFF1A",
|
|
1700
|
+
inspectHint: "\u67E5\u770B\uFF1Areasonix sessions <name>",
|
|
1701
|
+
resumeHint: "\u6062\u590D\uFF1Areasonix chat --session <name>",
|
|
1702
|
+
noSession: '\u627E\u4E0D\u5230\u4F1A\u8BDD "{name}"\uFF08\u6216\u4E3A\u7A7A\uFF09\u3002',
|
|
1703
|
+
lookedAt: "\u4F4D\u7F6E\uFF1A{path}",
|
|
1704
|
+
noIdleSessions: "\u6CA1\u6709\u95F2\u7F6E \u2265{days} \u5929\u7684\u4F1A\u8BDD\u3002\u65E0\u9700\u6E05\u7406\u3002",
|
|
1705
|
+
wouldPrune: "\u5C06\u6E05\u7406 {count} \u4E2A\u95F2\u7F6E \u2265{days} \u5929\u7684\u4F1A\u8BDD\uFF1A",
|
|
1706
|
+
dryRunHint: "\u53BB\u6389 --dry-run \u53EF\u5B9E\u9645\u6267\u884C\u5220\u9664\u3002",
|
|
1707
|
+
prunedCount: "\u5DF2\u6E05\u7406 {count} \u4E2A\u95F2\u7F6E \u2265{days} \u5929\u7684\u4F1A\u8BDD\uFF1A",
|
|
1708
|
+
daysInvalid: "--days \u5FC5\u987B\u662F\u6B63\u6574\u6570\uFF08\u4F20\u5165\u4E86 {days}\uFF09\u3002"
|
|
1665
1709
|
},
|
|
1666
1710
|
ui: {
|
|
1667
1711
|
welcome: "\u968F\u65F6\u8FD0\u884C `reasonix` \u5F00\u59CB\u804A\u5929 \u2014 \u60A8\u7684\u8BBE\u7F6E\u5C06\u88AB\u8BB0\u4F4F\u3002",
|
|
@@ -1759,10 +1803,6 @@ var zhCN = {
|
|
|
1759
1803
|
title: "\u590D\u5236 / \u7C98\u8D34",
|
|
1760
1804
|
rows: [
|
|
1761
1805
|
{ key: "\u9009\u4E2D\u6587\u5B57", text: "\u76F4\u63A5\u62D6\u52A8 \u2014 \u7EC8\u7AEF\u539F\u751F\uFF08\u4E0D\u9700\u8981\u4EFB\u4F55\u4FEE\u9970\u952E\uFF09" },
|
|
1762
|
-
{
|
|
1763
|
-
key: "/copy",
|
|
1764
|
-
text: "vim/tmux \u98CE\u683C\u590D\u5236\u6A21\u5F0F \u2014 SSH / mosh / tmux \u4E0B\u62D6\u9009\u8D8A\u8FC7\u53EF\u89C6\u533A\u65E0\u6548\u65F6\u7528\u8FD9\u4E2A"
|
|
1765
|
-
},
|
|
1766
1806
|
{
|
|
1767
1807
|
key: "\u590D\u5236",
|
|
1768
1808
|
text: "Ctrl+Shift+C\uFF08Win/Linux\uFF09\xB7 Cmd+C\uFF08macOS\uFF09\u2014 \u6216\u9009\u4E2D\u5373\u590D\u5236\uFF08\u770B\u7EC8\u7AEF\u8BBE\u7F6E\uFF09"
|
|
@@ -1853,9 +1893,6 @@ var zhCN = {
|
|
|
1853
1893
|
},
|
|
1854
1894
|
slash: {
|
|
1855
1895
|
help: { description: "\u663E\u793A\u5B8C\u6574\u547D\u4EE4\u53C2\u8003" },
|
|
1856
|
-
copy: {
|
|
1857
|
-
description: "\u8FDB\u5165 vim/tmux \u98CE\u683C\u590D\u5236\u6A21\u5F0F \u2014 j/k \u79FB\u52A8\u3001v \u8D77\u9009\u533A\u3001y \u590D\u5236\u5230\u526A\u8D34\u677F"
|
|
1858
|
-
},
|
|
1859
1896
|
status: { description: "\u5F53\u524D\u6A21\u578B\u3001\u6807\u5FD7\u3001\u4E0A\u4E0B\u6587\u3001\u4F1A\u8BDD" },
|
|
1860
1897
|
preset: {
|
|
1861
1898
|
description: "\u6A21\u578B\u7EC4\u5408 \u2014 \u81EA\u52A8\u5728 flash \u2192 pro \u4E4B\u95F4\u5207\u6362\uFF0C\u6216\u9501\u5B9A flash/pro",
|
|
@@ -2011,8 +2048,8 @@ var zhCN = {
|
|
|
2011
2048
|
argsHint: "<question>"
|
|
2012
2049
|
},
|
|
2013
2050
|
"search-engine": {
|
|
2014
|
-
description: "\u5207\u6362\u7F51\u7EDC\u641C\u7D22\u540E\u7AEF \u2014
|
|
2015
|
-
argsHint: "<
|
|
2051
|
+
description: "\u5207\u6362\u7F51\u7EDC\u641C\u7D22\u540E\u7AEF \u2014 bing\uFF08\u9ED8\u8BA4\uFF0C\u56FD\u5185\u88F8 IP \u76F4\u8FDE\uFF09\u3001searxng\uFF08\u81EA\u6258\u7BA1\uFF09\u3001metaso\uFF08\u6BCF\u65E5 100 \u6B21\uFF09\u3001tavily\uFF08\u6BCF\u6708 1000 \u6B21\u514D\u8D39\uFF09\u3001perplexity\uFF08AI \u76F4\u63A5\u56DE\u7B54\uFF09\u6216 exa\uFF08AI \u76F4\u63A5\u56DE\u7B54\uFF09",
|
|
2052
|
+
argsHint: "<bing|searxng|metaso|tavily|perplexity|exa> [<key>]"
|
|
2016
2053
|
}
|
|
2017
2054
|
},
|
|
2018
2055
|
wizard: {
|
|
@@ -2175,6 +2212,8 @@ var zhCN = {
|
|
|
2175
2212
|
verboseOn: "\u25B8 \u8BE6\u7EC6\u6A21\u5F0F\u5DF2\u5F00 \u2014 \u663E\u793A\u5B8C\u6574\u63A8\u7406 + \u5DE5\u5177\u8F93\u51FA",
|
|
2176
2213
|
verboseOff: "\u25B8 \u8BE6\u7EC6\u6A21\u5F0F\u5DF2\u5173 \u2014 \u6062\u590D\u5934\u5C3E\u7701\u7565",
|
|
2177
2214
|
commandFailed: "! \u547D\u4EE4\u5931\u8D25",
|
|
2215
|
+
steerInjected: "\u25B8 \u5DF2\u52A0\u5165\u5F15\u5BFC\u961F\u5217 \u2014 \u5C06\u5728\u5F53\u524D\u6B65\u9AA4\u540E\u6CE8\u5165",
|
|
2216
|
+
steerCommandRejected: "\u25B8 \u5F53\u524D\u8F6E\u6B21\u5FD9\u788C\u65F6\u4E0D\u80FD\u63D0\u4EA4\u547D\u4EE4\uFF0C\u53EA\u80FD\u8F93\u5165\u666E\u901A\u5F15\u5BFC\u6D88\u606F",
|
|
2178
2217
|
btwUsage: "\u25B8 /btw <\u95EE\u9898> \u2014 \u987A\u4FBF\u95EE\u4E2A\u9898\u5916\u8BDD\uFF0C\u4E0D\u4F1A\u5199\u5165\u5F53\u524D\u4F1A\u8BDD\u4E0A\u4E0B\u6587\u3002",
|
|
2179
2218
|
btwHeader: "\u226B btw",
|
|
2180
2219
|
btwFailed: "/btw \u8C03\u7528\u5931\u8D25",
|
|
@@ -2220,7 +2259,9 @@ var zhCN = {
|
|
|
2220
2259
|
editHistoryAlreadyReverted: "\uFF08\u5DF2\u64A4\u9500 \u2014 /history \u663E\u793A\u6279\u6B21\u7EA7\u72B6\u6001\uFF09",
|
|
2221
2260
|
editHistoryRevertFile: "/undo {id} {path} \u2192 \u4EC5\u8FD8\u539F\u6B64\u6587\u4EF6",
|
|
2222
2261
|
mcpFailed: "MCP {name} \u5931\u8D25",
|
|
2223
|
-
mcpWarn: "MCP {name} \u8B66\u544A"
|
|
2262
|
+
mcpWarn: "MCP {name} \u8B66\u544A",
|
|
2263
|
+
unknownTheme: "\u672A\u77E5\u4E3B\u9898\uFF1A{name}\n\u53EF\u7528\u4E3B\u9898\uFF1A{choices}",
|
|
2264
|
+
themeSaved: "\u4E3B\u9898\u5DF2\u4FDD\u5B58\uFF1A{name}\n\u4E0B\u6B21\u542F\u52A8\u751F\u6548\uFF1A{active}"
|
|
2224
2265
|
},
|
|
2225
2266
|
hooks: {
|
|
2226
2267
|
head: "\u94A9\u5B50 {tag} `{cmd}` {decision}{truncTag}",
|
|
@@ -2264,6 +2305,7 @@ var zhCN = {
|
|
|
2264
2305
|
balance402: "\u4F59\u989D\u4E0D\u8DB3\uFF08DeepSeek 402\uFF09\uFF1A{inner}\u3002\u5728 https://platform.deepseek.com/top_up \u5145\u503C \u2014 \u4F59\u989D\u975E\u96F6\u65F6\u9762\u677F\u9876\u680F\u4F1A\u663E\u793A\u3002",
|
|
2265
2306
|
badparam422: "\u53C2\u6570\u9519\u8BEF\uFF08DeepSeek 422\uFF09\uFF1A{inner}",
|
|
2266
2307
|
badrequest400: "\u8BF7\u6C42\u9519\u8BEF\uFF08DeepSeek 400\uFF09\uFF1A{inner}",
|
|
2308
|
+
concurrency429: "DeepSeek \u5E76\u53D1\u8D85\u9650\uFF08429\uFF09\uFF1A{inner}\u3002\u8D26\u53F7\u5728\u8DD1\u7684\u8BF7\u6C42\u8D85\u8FC7\u4E0A\u9650\uFF08v4-pro 500\u3001v4-flash 2500\uFF0C\u8D26\u53F7\u4E0B\u6240\u6709 API key \u7D2F\u52A0\uFF09\u3002\u901A\u5E38\u662F\u540C\u4E00\u8D26\u53F7\u5F00\u4E86\u591A\u4E2A Reasonix \u8FDB\u7A0B\uFF0C\u6216\u8005\u5E76\u884C subagent \u4E00\u6B21\u53D1\u592A\u591A\u3002\u7B49\u51E0\u79D2\u91CD\u8BD5\u3001\u51CF\u5C11\u5E76\u884C\uFF0C\u6216\u5728 https://platform.deepseek.com \u7533\u8BF7\u6269\u5BB9\u3002",
|
|
2267
2309
|
deepseek5xxHead: "DeepSeek \u670D\u52A1\u4E0D\u53EF\u7528\uFF08{status}\uFF09 \u2014 \u8FD9\u662F DeepSeek \u670D\u52A1\u7AEF\u95EE\u9898\uFF0C\u4E0D\u662F Reasonix \u6545\u969C\u3002\u5DF2\u6309\u6307\u6570\u9000\u907F\u91CD\u8BD5 4 \u6B21\u3002",
|
|
2268
2310
|
deepseek5xxReachable: " DeepSeek \u4E3B API \u5065\u5EB7\u68C0\u67E5\u901A\u8FC7\uFF0C\u4F46 /chat/completions \u5728\u6302 \u2014 \u4ED6\u4EEC\u90A3\u8FB9\u90E8\u5206\u670D\u52A1\u5F02\u5E38\u3002",
|
|
2269
2311
|
deepseek5xxUnreachable: " \u65E0\u6CD5\u4ECE\u4F60\u7684\u7F51\u7EDC\u8BBF\u95EE DeepSeek API \u2014 \u53EF\u80FD\u662F DS \u6574\u4F53\u6545\u969C\uFF0C\u4E5F\u53EF\u80FD\u662F\u672C\u5730\u7F51\u7EDC\u95EE\u9898\u3002",
|
|
@@ -2549,6 +2591,9 @@ var zhCN = {
|
|
|
2549
2591
|
activeNone: "\u25B8 \u6D3B\u8DC3\u8BA1\u5212\uFF1A\uFF08\u65E0\uFF09",
|
|
2550
2592
|
noArchives: "\u6B64\u4F1A\u8BDD\u5C1A\u65E0\u5F52\u6863\u8BA1\u5212 \u2014 \u5F53\u6BCF\u4E2A\u6B65\u9AA4\u5B8C\u6210\u65F6\u81EA\u52A8\u5F52\u6863",
|
|
2551
2593
|
archivedHeader: "\u5DF2\u5F52\u6863\uFF08{count}\uFF09\uFF1A",
|
|
2594
|
+
evidencePending: " ! \u7B49\u5F85 evidence \u2014 \u5F53\u524D\u6B65\u9AA4\u9700\u8981 verification/diff/checkpoint/manual evidence",
|
|
2595
|
+
evidenceLine: " evidence {stepId}: {summary}",
|
|
2596
|
+
archivedEvidenceLine: " evidence: {summary}",
|
|
2552
2597
|
replayNoSession: "\u672A\u9644\u52A0\u4F1A\u8BDD \u2014 `/replay` \u662F\u6309\u4F1A\u8BDD\u7684\u3002\u5728\u9879\u76EE\u4E2D\u8FD0\u884C `reasonix code` \u4EE5\u83B7\u53D6\u4F1A\u8BDD\u3002",
|
|
2553
2598
|
replayNoArchives: "\u6B64\u4F1A\u8BDD\u5C1A\u65E0\u5F52\u6863\u8BA1\u5212 \u2014 `/replay` \u5728\u8BA1\u5212\u5B8C\u6210\u540E\u542F\u7528\uFF08\u6BCF\u4E2A\u6B65\u9AA4\u5B8C\u6210\u65F6\u81EA\u52A8\u5F52\u6863\uFF09\u3002",
|
|
2554
2599
|
replayInvalidIndex: "\u65E0\u6548\u7D22\u5F15 \u2014 `/replay` \u63A5\u53D7 1..{max}\uFF08\u6700\u65B0 = 1\uFF09\u3002\u4F7F\u7528 `/plans` \u67E5\u770B\u5217\u8868\u3002",
|
|
@@ -2643,7 +2688,7 @@ var zhCN = {
|
|
|
2643
2688
|
currentEngine: "\u5F53\u524D\u7F51\u9875\u641C\u7D22\u5F15\u64CE\uFF1A{engine}",
|
|
2644
2689
|
endpoint: "SearXNG \u7AEF\u70B9\uFF1A{url}",
|
|
2645
2690
|
usageHeader: "\u7528\u6CD5\uFF1A",
|
|
2646
|
-
|
|
2691
|
+
usageBing: " /search-engine bing \u4F7F\u7528 Bing\uFF08\u9ED8\u8BA4\uFF0C\u56FD\u5185\u88F8 IP \u76F4\u8FDE\uFF0C\u65E0\u9700\u4EE3\u7406\uFF09",
|
|
2647
2692
|
usageSearxng: " /search-engine searxng \u4F7F\u7528 SearXNG \u9ED8\u8BA4\u7AEF\u70B9",
|
|
2648
2693
|
usageSearxngUrl: " /search-engine searxng <url> \u4F7F\u7528 SearXNG \u81EA\u5B9A\u4E49\u7AEF\u70B9",
|
|
2649
2694
|
usageMetaso: " /search-engine metaso \u4F7F\u7528 Metaso API\uFF08\u6BCF\u5929 100 \u6B21\u514D\u8D39\uFF0C\u914D\u7F6E\u4F60\u81EA\u5DF1\u7684 API \u5BC6\u94A5\u53EF\u63D0\u5347\u9650\u989D\uFF09",
|
|
@@ -2739,7 +2784,9 @@ var zhCN = {
|
|
|
2739
2784
|
editorFailed: "\u5916\u90E8\u7F16\u8F91\u5668\uFF1A",
|
|
2740
2785
|
editorMissing: "\u672A\u8BBE\u7F6E $EDITOR / $VISUAL / $GIT_EDITOR \u2014 \u8BF7\u5BFC\u51FA\u73AF\u5883\u53D8\u91CF\uFF08\u4F8B\u5982 `export EDITOR=nano`\uFF09\u540E\u91CD\u8BD5",
|
|
2741
2786
|
editorExited: "\u7F16\u8F91\u5668\u5F02\u5E38\u9000\u51FA\uFF0C\u8FD4\u56DE\u7801 {code}",
|
|
2742
|
-
typeaheadStaged: "\u25B8 {count} \u884C\u5DF2\u6682\u5B58 \xB7 esc \u53EC\u56DE"
|
|
2787
|
+
typeaheadStaged: "\u25B8 {count} \u884C\u5DF2\u6682\u5B58 \xB7 esc \u53EC\u56DE",
|
|
2788
|
+
steerPlaceholder: "\u8F93\u5165\u6D88\u606F\u4EE5\u5F15\u5BFC\u5F53\u524D\u4EFB\u52A1 \u2014 \u5FD9\u788C\u65F6\u4E0D\u652F\u6301\u547D\u4EE4",
|
|
2789
|
+
steerHint: "\u53D1\u9001 \u2014 \u56DE\u5408\u5185\u6CE8\u5165"
|
|
2743
2790
|
},
|
|
2744
2791
|
pathConfirm: {
|
|
2745
2792
|
title: "\u6C99\u7BB1\u5916\u8DEF\u5F84",
|
|
@@ -2758,7 +2805,13 @@ var zhCN = {
|
|
|
2758
2805
|
denyDesc: "\u6309 Tab \u6DFB\u52A0\u8BF4\u660E\uFF0C\u544A\u8BC9\u6A21\u578B\u539F\u56E0",
|
|
2759
2806
|
pathLabel: "\u8DEF\u5F84",
|
|
2760
2807
|
sandboxLabel: "\u6C99\u7BB1",
|
|
2761
|
-
allowPrefixLabel: "\u524D\u7F00"
|
|
2808
|
+
allowPrefixLabel: "\u524D\u7F00",
|
|
2809
|
+
promptTitleRead: "\u8BBF\u95EE\u8DEF\u5F84 \u2014 \u8BFB\u53D6",
|
|
2810
|
+
promptTitleWrite: "\u8BBF\u95EE\u8DEF\u5F84 \u2014 \u5199\u5165",
|
|
2811
|
+
actionAllowRead: "\u5141\u8BB8\u8BFB\u53D6",
|
|
2812
|
+
actionAllowWrite: "\u5141\u8BB8\u5199\u5165",
|
|
2813
|
+
actionAlwaysAllow: "\u59CB\u7EC8\u5141\u8BB8 \u2014 {prefix}",
|
|
2814
|
+
actionDeny: "\u62D2\u7EDD"
|
|
2762
2815
|
},
|
|
2763
2816
|
shellConfirm: {
|
|
2764
2817
|
title: "Shell \u547D\u4EE4",
|
|
@@ -2780,7 +2833,12 @@ var zhCN = {
|
|
|
2780
2833
|
timeoutLabel: "\u8D85\u65F6",
|
|
2781
2834
|
waitLabel: "\u7B49\u5F85",
|
|
2782
2835
|
previewMore: "\u2026 \u8FD8\u6709 {n} \u884C\u672A\u663E\u793A \u2014 \u6309 esc \u53D6\u6D88\uFF0C\u8BA9\u6A21\u578B\u62C6\u5206\u540E\u518D\u8BD5",
|
|
2783
|
-
previewMorePlural: "\u2026 \u8FD8\u6709 {n} \u884C\u672A\u663E\u793A \u2014 \u6309 esc \u53D6\u6D88\uFF0C\u8BA9\u6A21\u578B\u62C6\u5206\u540E\u518D\u8BD5"
|
|
2836
|
+
previewMorePlural: "\u2026 \u8FD8\u6709 {n} \u884C\u672A\u663E\u793A \u2014 \u6309 esc \u53D6\u6D88\uFF0C\u8BA9\u6A21\u578B\u62C6\u5206\u540E\u518D\u8BD5",
|
|
2837
|
+
promptTitleRunCommand: "\u8FD0\u884C\u547D\u4EE4",
|
|
2838
|
+
promptTitleRunBackground: "\u8FD0\u884C\u540E\u53F0\u547D\u4EE4",
|
|
2839
|
+
actionRunOnce: "\u8FD0\u884C\u4E00\u6B21",
|
|
2840
|
+
actionAlwaysAllow: "\u59CB\u7EC8\u5141\u8BB8 \u2014 {prefix}",
|
|
2841
|
+
actionDeny: "\u62D2\u7EDD"
|
|
2784
2842
|
},
|
|
2785
2843
|
editConfirm: {
|
|
2786
2844
|
footer: "[y/Enter] \u5E94\u7528 \xB7 [n] \u62D2\u7EDD\u5E76\u8BF4\u660E \xB7 [a] \u5E94\u7528\u5269\u4F59 \xB7 [A] \u5207\u6362 AUTO \xB7 [\u2191\u2193/Space] \u6EDA\u52A8 \xB7 [Esc] \u4E2D\u6B62",
|
|
@@ -2921,37 +2979,37 @@ var zhCN = {
|
|
|
2921
2979
|
probeFailed: "\u63A2\u6D4B\u5931\u8D25 \u2014 {message}"
|
|
2922
2980
|
},
|
|
2923
2981
|
webErrors: {
|
|
2924
|
-
status: "web_search {status} \u2014 try: \u641C\u7D22\u540E\u7AEF\u8FD4\u56DE\u9519\u8BEF\uFF1B\u8BF7\u6539\u5199\u67E5\u8BE2\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
2982
|
+
status: "web_search {status} \u2014 try: \u641C\u7D22\u540E\u7AEF\u8FD4\u56DE\u9519\u8BEF\uFF1B\u8BF7\u6539\u5199\u67E5\u8BE2\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2925
2983
|
rateLimit429: "web_search 429 \u2014 try: \u7B49\u5F85 10 \u79D2\u540E\u91CD\u8BD5\uFF0C\u6216\u6539\u5199\u67E5\u8BE2\uFF1B\u641C\u7D22\u540E\u7AEF\u6B63\u5728\u5BF9\u8BE5\u5BA2\u6237\u7AEF\u8FDB\u884C\u9650\u6D41",
|
|
2926
|
-
forbidden403: "web_search 403 \u2014 try: \u641C\u7D22\u540E\u7AEF\u62D2\u7EDD\u8BE5\u5BA2\u6237\u7AEF\u8BBF\u95EE\uFF1B\u4F7F\u7528 /search-engine
|
|
2984
|
+
forbidden403: "web_search 403 \u2014 try: \u641C\u7D22\u540E\u7AEF\u62D2\u7EDD\u8BE5\u5BA2\u6237\u7AEF\u8BBF\u95EE\uFF1B\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE\uFF0C\u6216\u7A0D\u540E\u91CD\u8BD5",
|
|
2927
2985
|
serverError5xx: "web_search {status} \u2014 try: \u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00\u641C\u7D22 URL\uFF1B\u82E5\u80FD\u52A0\u8F7D\u5219\u5C5E\u4E34\u65F6\u6545\u969C\uFF0C\u7B49 30 \u79D2\u91CD\u8BD5\u5373\u53EF",
|
|
2928
|
-
|
|
2929
|
-
|
|
2986
|
+
bingBlocked: "web_search: Bing \u53CD\u722C\u9875\u9762 \u2014 \u9891\u7387\u9650\u5236\u6216\u88AB\u5C4F\u853D \u2014 try: \u7B49\u5F85 30 \u79D2\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2987
|
+
bingNoResults: "web_search: \u8FD4\u56DE 0 \u6761\u7ED3\u679C\u4F46\u54CD\u5E94\u770B\u8D77\u6765\u4E0D\u662F\u6B63\u5E38\u7A7A\u7ED3\u679C\u9875\uFF08{chars} \u5B57\u7B26\uFF0C\u524D 120 \u5B57\u7B26\uFF1A{preview}\uFF09\u2014 try: \u4F7F\u7528\u66F4\u7B80\u5355\u7684\u5173\u952E\u8BCD\u6539\u5199\u67E5\u8BE2\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2930
2988
|
invalidEndpoint: 'web_search: \u65E0\u6548\u7684 SearXNG \u7AEF\u70B9 "{endpoint}" \u2014 try: \u4F7F\u7528 /search-endpoint http://host:port \u8BBE\u7F6E\u6709\u6548\u7684 URL',
|
|
2931
2989
|
endpointMustBeHttp: "web_search: SearXNG \u7AEF\u70B9\u5FC5\u987B\u662F http(s) \u534F\u8BAE\uFF0C\u5F53\u524D\u4E3A {protocol} \u2014 try: \u4F7F\u7528 /search-endpoint http://host:port \u8BBE\u7F6E\u6709\u6548\u7684 URL",
|
|
2932
|
-
cannotReach: "web_search: \u65E0\u6CD5\u8BBF\u95EE SearXNG \u670D\u52A1\u5668 {endpoint} \u2014 try: \u5B89\u88C5\u5E76\u542F\u52A8 SearXNG\uFF08https://github.com/searxng/searxng\uFF0C\u4F8B\u5982 `docker run -d -p 8080:8080 searxng/searxng`\uFF09\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
2933
|
-
searxngNoResults: "web_search: \u8FD4\u56DE 0 \u6761\u7ED3\u679C\u4F46 SearXNG \u54CD\u5E94\u770B\u8D77\u6765\u4E0D\u662F\u6B63\u5E38\u7A7A\u7ED3\u679C\u9875\uFF08{chars} \u5B57\u7B26\uFF09\u2014 try: \u4F7F\u7528\u66F4\u7B80\u5355\u7684\u5173\u952E\u8BCD\u6539\u5199\u67E5\u8BE2\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
2990
|
+
cannotReach: "web_search: \u65E0\u6CD5\u8BBF\u95EE SearXNG \u670D\u52A1\u5668 {endpoint} \u2014 try: \u5B89\u88C5\u5E76\u542F\u52A8 SearXNG\uFF08https://github.com/searxng/searxng\uFF0C\u4F8B\u5982 `docker run -d -p 8080:8080 searxng/searxng`\uFF09\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2991
|
+
searxngNoResults: "web_search: \u8FD4\u56DE 0 \u6761\u7ED3\u679C\u4F46 SearXNG \u54CD\u5E94\u770B\u8D77\u6765\u4E0D\u662F\u6B63\u5E38\u7A7A\u7ED3\u679C\u9875\uFF08{chars} \u5B57\u7B26\uFF09\u2014 try: \u4F7F\u7528\u66F4\u7B80\u5355\u7684\u5173\u952E\u8BCD\u6539\u5199\u67E5\u8BE2\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2934
2992
|
metasoMissingKey: "web_search: Metaso \u9700\u8981 API \u5BC6\u94A5 \u2014 \u8BBE\u7F6E METASO_API_KEY\uFF0C\u6216\u4F7F\u7528 /search-engine metaso <key> \u914D\u7F6E\uFF1B\u53EF\u5728 https://metaso.cn/search-api/playground \u83B7\u53D6\u5BC6\u94A5",
|
|
2935
2993
|
metasoDailyLimit: "web_search: Metaso \u6BCF\u65E5\u641C\u7D22\u6B21\u6570\u5DF2\u8FBE\u4E0A\u9650 \u2014 \u8BBE\u7F6E METASO_API_KEY\uFF0C\u6216\u5728 https://metaso.cn/search-api/playground \u83B7\u53D6\u5BC6\u94A5",
|
|
2936
2994
|
metasoUnauthorized: "web_search: Metaso API \u5BC6\u94A5\u88AB\u62D2\u7EDD \u2014 \u68C0\u67E5 METASO_API_KEY\uFF0C\u6216\u5728 https://metaso.cn/search-api/playground \u83B7\u53D6\u5BC6\u94A5",
|
|
2937
2995
|
metasoRateLimit: "web_search: Metaso \u8BF7\u6C42\u9891\u7387\u9650\u5236 \u2014 \u7B49\u5F85\u540E\u91CD\u8BD5\uFF0C\u6216\u5728 https://metaso.cn/search-api/playground \u83B7\u53D6\u81EA\u5DF1\u7684\u5BC6\u94A5",
|
|
2938
|
-
metasoServerError: "web_search: Metaso \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
2996
|
+
metasoServerError: "web_search: Metaso \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2939
2997
|
metasoParseError: "web_search: Metaso \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790\u7684\u54CD\u5E94\uFF08HTTP {status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5",
|
|
2940
2998
|
metasoApiError: "web_search: Metaso API \u9519\u8BEF\uFF08code {code}: {message}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5",
|
|
2941
2999
|
tavilyMissingKey: "web_search: Tavily \u540E\u7AEF\u9700\u8981 API \u5BC6\u94A5 \u2014 \u8BBE\u7F6E TAVILY_API_KEY \u73AF\u5883\u53D8\u91CF\uFF0C\u6216\u5728 ~/.reasonix/config.json \u4E2D\u914D\u7F6E `tavilyApiKey`\uFF1Bhttps://tavily.com \u6BCF\u6708 1000 \u6B21\u514D\u8D39",
|
|
2942
3000
|
tavilyUnauthorized: "web_search: Tavily API \u5BC6\u94A5\u88AB\u62D2\u7EDD \u2014 \u68C0\u67E5 TAVILY_API_KEY\uFF0C\u6216\u5728 https://tavily.com \u83B7\u53D6\u5BC6\u94A5",
|
|
2943
|
-
tavilyRateLimit: "web_search: Tavily \u8BF7\u6C42\u9891\u7387\u9650\u5236\u6216\u6708\u5EA6\u914D\u989D\u7528\u5C3D \u2014 \u7B49\u5F85\u3001\u7528 /search-engine
|
|
2944
|
-
tavilyServerError: "web_search: Tavily \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
3001
|
+
tavilyRateLimit: "web_search: Tavily \u8BF7\u6C42\u9891\u7387\u9650\u5236\u6216\u6708\u5EA6\u914D\u989D\u7528\u5C3D \u2014 \u7B49\u5F85\u3001\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE\uFF0C\u6216\u5347\u7EA7 Tavily \u8BA1\u5212",
|
|
3002
|
+
tavilyServerError: "web_search: Tavily \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2945
3003
|
tavilyParseError: "web_search: Tavily \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790\u7684\u54CD\u5E94\uFF08HTTP {status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5",
|
|
2946
3004
|
perplexityMissingKey: "web_search: Perplexity \u540E\u7AEF\u9700\u8981 API \u5BC6\u94A5 \u2014 \u8BBE\u7F6E PERPLEXITY_API_KEY \u73AF\u5883\u53D8\u91CF\uFF0C\u6216\u5728 ~/.reasonix/config.json \u4E2D\u914D\u7F6E `perplexityApiKey`\uFF1B\u5728 https://perplexity.ai/settings/api \u83B7\u53D6\u5BC6\u94A5",
|
|
2947
3005
|
perplexityUnauthorized: "web_search: Perplexity API \u5BC6\u94A5\u88AB\u62D2\u7EDD \u2014 \u68C0\u67E5 PERPLEXITY_API_KEY\uFF0C\u6216\u5728 https://perplexity.ai/settings/api \u83B7\u53D6\u5BC6\u94A5",
|
|
2948
|
-
perplexityRateLimit: "web_search: Perplexity \u8BF7\u6C42\u9891\u7387\u9650\u5236 \u2014 \u7B49\u5F85\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
2949
|
-
perplexityServerError: "web_search: Perplexity \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
3006
|
+
perplexityRateLimit: "web_search: Perplexity \u8BF7\u6C42\u9891\u7387\u9650\u5236 \u2014 \u7B49\u5F85\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
3007
|
+
perplexityServerError: "web_search: Perplexity \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2950
3008
|
perplexityParseError: "web_search: Perplexity \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790\u7684\u54CD\u5E94\uFF08HTTP {status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5",
|
|
2951
3009
|
exaMissingKey: "web_search: Exa \u540E\u7AEF\u9700\u8981 API \u5BC6\u94A5 \u2014 \u8BBE\u7F6E EXA_API_KEY \u73AF\u5883\u53D8\u91CF\uFF0C\u6216\u5728 ~/.reasonix/config.json \u4E2D\u914D\u7F6E `exaApiKey`\uFF1Bhttps://exa.ai \u6BCF\u6708 1000 \u6B21\u514D\u8D39",
|
|
2952
3010
|
exaUnauthorized: "web_search: Exa API \u5BC6\u94A5\u88AB\u62D2\u7EDD \u2014 \u68C0\u67E5 EXA_API_KEY\uFF0C\u6216\u5728 https://exa.ai \u83B7\u53D6\u5BC6\u94A5",
|
|
2953
3011
|
exaRateLimit: "web_search: Exa \u8BF7\u6C42\u9891\u7387\u9650\u5236\u6216\u6708\u5EA6\u914D\u989D\u7528\u5C3D \u2014 \u7B49\u5F85\u5347\u7EA7\uFF0C\u6216\u5728 https://exa.ai/pricing \u67E5\u770B\u8BA1\u5212",
|
|
2954
|
-
exaServerError: "web_search: Exa \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine
|
|
3012
|
+
exaServerError: "web_search: Exa \u670D\u52A1\u5668\u9519\u8BEF\uFF08{status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5\uFF0C\u6216\u4F7F\u7528 /search-engine bing|searxng|metaso|tavily|perplexity|exa \u5207\u6362\u5F15\u64CE",
|
|
2955
3013
|
exaParseError: "web_search: Exa \u8FD4\u56DE\u65E0\u6CD5\u89E3\u6790\u7684\u54CD\u5E94\uFF08HTTP {status}\uFF09\u2014 \u7A0D\u540E\u91CD\u8BD5",
|
|
2956
3014
|
fetchStatus: "web_fetch {status} for {url} \u2014 try: \u5728\u6D4F\u89C8\u5668\u4E2D\u786E\u8BA4\u8BE5 URL \u80FD\u5426\u8BBF\u95EE\uFF1B\u8BE5\u72B6\u6001\u7801\u8868\u660E\u76EE\u6807\u4E3B\u673A\u8FD4\u56DE\u4E86\u9519\u8BEF\u9875\u9762",
|
|
2957
3015
|
fetchRateLimit429: "web_fetch 429 for {url} \u2014 try: \u7B49\u5F85 10 \u79D2\u540E\u91CD\u8BD5\uFF1B\u76EE\u6807\u4E3B\u673A\u6B63\u5728\u5BF9\u8BE5\u5BA2\u6237\u7AEF\u8FDB\u884C\u9650\u6D41",
|
|
@@ -3043,19 +3101,6 @@ var zhCN = {
|
|
|
3043
3101
|
categoryProject: "\u9879\u76EE",
|
|
3044
3102
|
categoryReference: "\u53C2\u8003"
|
|
3045
3103
|
},
|
|
3046
|
-
copyMode: {
|
|
3047
|
-
title: "\u2500\u2500 \u590D\u5236\u6A21\u5F0F \u2500\u2500",
|
|
3048
|
-
help: "j/k \u6216 \u2191/\u2193 \u79FB\u52A8 \xB7 v \u8D77\u9009\u533A \xB7 y \u590D\u5236 \xB7 g/G \u9876/\u5E95 \xB7 q \u9000\u51FA",
|
|
3049
|
-
statusBar: "\u7B2C {cur}/{total} \u884C \xB7 \u9009\u533A\uFF1A{sel}",
|
|
3050
|
-
statusYanked: "\u5DF2\u590D\u5236 {size} \u5B57\u7B26\uFF08osc52={osc52}\uFF09",
|
|
3051
|
-
statusEmpty: "\u672A\u9009\u4E2D\u5185\u5BB9",
|
|
3052
|
-
empty: "\uFF08\u8FD8\u6CA1\u6709\u804A\u5929\u5185\u5BB9 \u2014 \u5148\u548C\u6A21\u578B\u8BF4\u70B9\u4EC0\u4E48\uFF09",
|
|
3053
|
-
labelUser: "\u4F60",
|
|
3054
|
-
labelAssistant: "\u52A9\u624B",
|
|
3055
|
-
labelReasoning: "\u63A8\u7406",
|
|
3056
|
-
yankedToast: "\u25B8 \u5DF2\u590D\u5236 {size} \u5B57\u7B26\u5230\u526A\u8D34\u677F (osc52)",
|
|
3057
|
-
yankedToastFile: "\u25B8 \u5DF2\u590D\u5236 {size} \u5B57\u7B26 \xB7 \u6587\u4EF6\uFF1A{path}"
|
|
3058
|
-
},
|
|
3059
3104
|
mcpHealth: {
|
|
3060
3105
|
noData: "\u65E0\u68C0\u67E5\u6570\u636E",
|
|
3061
3106
|
healthy: "\u6B63\u5E38 \xB7 {ms}ms",
|
|
@@ -3207,9 +3252,11 @@ var zhCN = {
|
|
|
3207
3252
|
groupSystem: "\u7CFB\u7EDF",
|
|
3208
3253
|
descEnter: "\u53D1\u9001\u6D88\u606F",
|
|
3209
3254
|
descShiftEnter: "\u6362\u884C",
|
|
3255
|
+
descCtrlEnter: "\u6362\u884C",
|
|
3256
|
+
descCtrlJ: "\u6362\u884C",
|
|
3210
3257
|
descCtrlU: "\u6E05\u7A7A\u8F93\u5165",
|
|
3211
3258
|
descCtrlW: "\u5220\u9664\u5355\u8BCD",
|
|
3212
|
-
descCtrlP: "\
|
|
3259
|
+
descCtrlP: "\u663E\u793A/\u9690\u85CF\u5FEB\u6377\u952E",
|
|
3213
3260
|
descCtrlX: "\u5728\u7F16\u8F91\u5668\u4E2D\u6253\u5F00",
|
|
3214
3261
|
descArrows: "\u6D4F\u89C8\u8F93\u5165\u5386\u53F2",
|
|
3215
3262
|
descPgUpDown: "\u7FFB\u9875",
|
|
@@ -3223,9 +3270,30 @@ var zhCN = {
|
|
|
3223
3270
|
descCtrlC: "\u9000\u51FA",
|
|
3224
3271
|
descEsc: "\u505C\u6B62/\u53D6\u6D88",
|
|
3225
3272
|
descCtrlR: "\u5207\u6362\u8BE6\u7EC6\u6A21\u5F0F",
|
|
3226
|
-
descCtrlO: "\u5C55\u5F00\u6D41\u5F0F\u8F93\u51FA",
|
|
3273
|
+
descCtrlO: "\u5C55\u5F00\u56DE\u590D\uFF08\u4EC5\u6D41\u5F0F\u8F93\u51FA\u671F\u95F4\uFF09",
|
|
3227
3274
|
descHelp: "\u663E\u793A\u6240\u6709\u547D\u4EE4",
|
|
3228
3275
|
descShiftTab: "\u5207\u6362\u7F16\u8F91\u6A21\u5F0F"
|
|
3276
|
+
},
|
|
3277
|
+
mcpCli: {
|
|
3278
|
+
bundledCatalog: "\u5DF2\u6253\u5305\u7684 MCP \u670D\u52A1\u5668\uFF08\u79BB\u7EBF\u76EE\u5F55\uFF09\uFF1A",
|
|
3279
|
+
justFetched: "\u521A\u521A\u83B7\u53D6",
|
|
3280
|
+
cachedAge: "\u7F13\u5B58\uFF0C{age}",
|
|
3281
|
+
moreAvailable: "\u8FD8\u6709\u66F4\u591A",
|
|
3282
|
+
allLoaded: "\u5DF2\u5168\u90E8\u52A0\u8F7D",
|
|
3283
|
+
morePagesAvailable: "\u25B8 \u8FD8\u6709\u66F4\u591A\u9875\u53EF\u7528 \u2014 `reasonix mcp list --pages <n>` \u6216 --all",
|
|
3284
|
+
installHint: "\u5B89\u88C5\uFF1Areasonix mcp install <name>",
|
|
3285
|
+
usageSearch: "\u7528\u6CD5\uFF1Areasonix mcp search <query>",
|
|
3286
|
+
usageInstall: "\u7528\u6CD5\uFF1Areasonix mcp install <name>",
|
|
3287
|
+
noMatchesFor: '\u672A\u627E\u5230 "{q}" \u7684\u5339\u914D\u9879\uFF08\u5DF2\u68C0\u7D22 {count} \u6761\u8BB0\u5F55\uFF0C\u6765\u6E90\uFF1A{source}\uFF09',
|
|
3288
|
+
matchCount: '\u5728 {source} \u4E2D\u627E\u5230 {count} \u6761 "{q}" \u7684\u5339\u914D\u9879\uFF08\u5DF2\u626B\u63CF {loaded} \u6761\u8BB0\u5F55\uFF09\uFF1A',
|
|
3289
|
+
moreLoaded: "\u2026 \u8FD8\u6709 {count} \u6761\u5DF2\u52A0\u8F7D \u2014 \u4F7F\u7528 `reasonix mcp search <query>` \u7B5B\u9009",
|
|
3290
|
+
moreMatches: "\u2026 \u8FD8\u6709 {count} \u6761\u5339\u914D\u9879",
|
|
3291
|
+
installed: "\u5DF2\u5B89\u88C5\uFF1A{spec}",
|
|
3292
|
+
noServerFound: '\u5728 {source} \u4E2D\u904D\u5386\u4E86 {pages} \u9875\u540E\u672A\u627E\u5230\u540D\u4E3A "{target}" \u7684 MCP \u670D\u52A1\u5668\u3002',
|
|
3293
|
+
noServerTryMore: "\u8BD5\u8BD5\uFF1Areasonix mcp install {target} --max-pages 100",
|
|
3294
|
+
noInstallMeta: '\u65E0\u6CD5\u4E3A "{name}" \u83B7\u53D6\u5B89\u88C5\u5143\u6570\u636E \u2014 \u8BD5\u8BD5 `npx -y @smithery/cli install {name}`\u3002',
|
|
3295
|
+
buildSpecFailed: "\u65E0\u6CD5\u4E3A {name} \u6784\u5EFA\u5B89\u88C5 spec\uFF1A{message}",
|
|
3296
|
+
alreadyInstalled: "\u5DF2\u5B89\u88C5\uFF1A{spec}"
|
|
3229
3297
|
}
|
|
3230
3298
|
};
|
|
3231
3299
|
|
|
@@ -3316,4 +3384,4 @@ export {
|
|
|
3316
3384
|
tObj,
|
|
3317
3385
|
t
|
|
3318
3386
|
};
|
|
3319
|
-
//# sourceMappingURL=chunk-
|
|
3387
|
+
//# sourceMappingURL=chunk-YEF7C4XI.js.map
|