sema-core 2.0.16 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/conf/config.d.ts +2 -0
- package/dist/conf/config.d.ts.map +1 -1
- package/dist/conf/config.js +4 -1
- package/dist/conf/config.js.map +1 -1
- package/dist/core/Conversation.js +4 -4
- package/dist/core/Conversation.js.map +1 -1
- package/dist/core/RunTools.d.ts.map +1 -1
- package/dist/core/RunTools.js +43 -8
- package/dist/core/RunTools.js.map +1 -1
- package/dist/core/SemaCore.d.ts +7 -0
- package/dist/core/SemaCore.d.ts.map +1 -1
- package/dist/core/SemaCore.js +9 -0
- package/dist/core/SemaCore.js.map +1 -1
- package/dist/core/SemaEngine.d.ts.map +1 -1
- package/dist/core/SemaEngine.js +22 -10
- package/dist/core/SemaEngine.js.map +1 -1
- package/dist/core/SemaSession.d.ts +3 -11
- package/dist/core/SemaSession.d.ts.map +1 -1
- package/dist/core/SemaSession.js +2 -10
- package/dist/core/SemaSession.js.map +1 -1
- package/dist/core/SessionPool.d.ts.map +1 -1
- package/dist/core/SessionPool.js +3 -2
- package/dist/core/SessionPool.js.map +1 -1
- package/dist/events/types.d.ts +2 -0
- package/dist/events/types.d.ts.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/manager/ConfManager.d.ts +9 -1
- package/dist/manager/ConfManager.d.ts.map +1 -1
- package/dist/manager/ConfManager.js +23 -6
- package/dist/manager/ConfManager.js.map +1 -1
- package/dist/manager/ModelManager.d.ts +30 -2
- package/dist/manager/ModelManager.d.ts.map +1 -1
- package/dist/manager/ModelManager.js +103 -32
- package/dist/manager/ModelManager.js.map +1 -1
- package/dist/manager/PermissionManager.d.ts.map +1 -1
- package/dist/manager/PermissionManager.js +50 -36
- package/dist/manager/PermissionManager.js.map +1 -1
- package/dist/manager/UsageStatsManager.d.ts +79 -0
- package/dist/manager/UsageStatsManager.d.ts.map +1 -0
- package/dist/manager/UsageStatsManager.js +402 -0
- package/dist/manager/UsageStatsManager.js.map +1 -0
- package/dist/prompt/compact.d.ts +17 -2
- package/dist/prompt/compact.d.ts.map +1 -1
- package/dist/prompt/compact.js +19 -3
- package/dist/prompt/compact.js.map +1 -1
- package/dist/prompt/inputPredict.d.ts +1 -1
- package/dist/prompt/inputPredict.d.ts.map +1 -1
- package/dist/prompt/inputPredict.js +9 -8
- package/dist/prompt/inputPredict.js.map +1 -1
- package/dist/prompt/permission.d.ts.map +1 -1
- package/dist/prompt/permission.js +11 -1
- package/dist/prompt/permission.js.map +1 -1
- package/dist/prompt/tools/fetchUrl.d.ts +1 -1
- package/dist/prompt/tools/fetchUrl.d.ts.map +1 -1
- package/dist/prompt/tools/fetchUrl.js +3 -0
- package/dist/prompt/tools/fetchUrl.js.map +1 -1
- package/dist/services/agents/agentsManager.d.ts.map +1 -1
- package/dist/services/agents/agentsManager.js +3 -2
- package/dist/services/agents/agentsManager.js.map +1 -1
- package/dist/services/api/adapt/openai.d.ts.map +1 -1
- package/dist/services/api/adapt/openai.js +25 -4
- package/dist/services/api/adapt/openai.js.map +1 -1
- package/dist/services/api/adapt/util.d.ts +15 -0
- package/dist/services/api/adapt/util.d.ts.map +1 -1
- package/dist/services/api/adapt/util.js +54 -2
- package/dist/services/api/adapt/util.js.map +1 -1
- package/dist/services/api/apiUtil.d.ts.map +1 -1
- package/dist/services/api/apiUtil.js +8 -7
- package/dist/services/api/apiUtil.js.map +1 -1
- package/dist/services/api/queryLLM.d.ts.map +1 -1
- package/dist/services/api/queryLLM.js +35 -16
- package/dist/services/api/queryLLM.js.map +1 -1
- package/dist/services/commands/commandsManager.d.ts.map +1 -1
- package/dist/services/commands/commandsManager.js +3 -2
- package/dist/services/commands/commandsManager.js.map +1 -1
- package/dist/services/commands/runCommand.d.ts.map +1 -1
- package/dist/services/commands/runCommand.js +4 -3
- package/dist/services/commands/runCommand.js.map +1 -1
- package/dist/services/hooks/hookTriggers.d.ts.map +1 -1
- package/dist/services/hooks/hookTriggers.js +3 -2
- package/dist/services/hooks/hookTriggers.js.map +1 -1
- package/dist/services/mcp/MCPClient.d.ts.map +1 -1
- package/dist/services/mcp/MCPClient.js +18 -8
- package/dist/services/mcp/MCPClient.js.map +1 -1
- package/dist/services/mcp/MCPManager.d.ts +8 -7
- package/dist/services/mcp/MCPManager.d.ts.map +1 -1
- package/dist/services/mcp/MCPManager.js +118 -53
- package/dist/services/mcp/MCPManager.js.map +1 -1
- package/dist/services/mcp/MCPToolAdapter.d.ts.map +1 -1
- package/dist/services/mcp/MCPToolAdapter.js +128 -22
- package/dist/services/mcp/MCPToolAdapter.js.map +1 -1
- package/dist/services/plugins/pluginsManager.d.ts.map +1 -1
- package/dist/services/plugins/pluginsManager.js +12 -11
- package/dist/services/plugins/pluginsManager.js.map +1 -1
- package/dist/tools/FetchUrl.d.ts.map +1 -1
- package/dist/tools/FetchUrl.js +10 -3
- package/dist/tools/FetchUrl.js.map +1 -1
- package/dist/tools/ListCrons.d.ts +1 -0
- package/dist/tools/ListCrons.d.ts.map +1 -1
- package/dist/tools/ListCrons.js +1 -0
- package/dist/tools/ListCrons.js.map +1 -1
- package/dist/tools/LoadTools.js +1 -1
- package/dist/tools/PeekBgJob.d.ts +2 -2
- package/dist/tools/PlanToAgent.d.ts.map +1 -1
- package/dist/tools/PlanToAgent.js +7 -4
- package/dist/tools/PlanToAgent.js.map +1 -1
- package/dist/tools/RunShell.d.ts.map +1 -1
- package/dist/tools/RunShell.js +4 -16
- package/dist/tools/RunShell.js.map +1 -1
- package/dist/tools/base/Tool.d.ts +1 -0
- package/dist/tools/base/Tool.d.ts.map +1 -1
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +7 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/mcp.d.ts +7 -0
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/model.d.ts +3 -0
- package/dist/types/model.d.ts.map +1 -1
- package/dist/types/session.d.ts +6 -2
- package/dist/types/session.d.ts.map +1 -1
- package/dist/util/compact.d.ts +11 -9
- package/dist/util/compact.d.ts.map +1 -1
- package/dist/util/compact.js +294 -65
- package/dist/util/compact.js.map +1 -1
- package/dist/util/fetchUrl.d.ts +1 -0
- package/dist/util/fetchUrl.d.ts.map +1 -1
- package/dist/util/fetchUrl.js +34 -4
- package/dist/util/fetchUrl.js.map +1 -1
- package/dist/util/i18n/de.d.ts +92 -0
- package/dist/util/i18n/de.d.ts.map +1 -0
- package/dist/util/i18n/de.js +104 -0
- package/dist/util/i18n/de.js.map +1 -0
- package/dist/util/i18n/en.d.ts +92 -0
- package/dist/util/i18n/en.d.ts.map +1 -0
- package/dist/util/i18n/en.js +104 -0
- package/dist/util/i18n/en.js.map +1 -0
- package/dist/util/i18n/fr.d.ts +92 -0
- package/dist/util/i18n/fr.d.ts.map +1 -0
- package/dist/util/i18n/fr.js +104 -0
- package/dist/util/i18n/fr.js.map +1 -0
- package/dist/util/i18n/index.d.ts +7 -0
- package/dist/util/i18n/index.d.ts.map +1 -0
- package/dist/util/i18n/index.js +36 -0
- package/dist/util/i18n/index.js.map +1 -0
- package/dist/util/i18n/it.d.ts +92 -0
- package/dist/util/i18n/it.d.ts.map +1 -0
- package/dist/util/i18n/it.js +104 -0
- package/dist/util/i18n/it.js.map +1 -0
- package/dist/util/i18n/zh.d.ts +96 -0
- package/dist/util/i18n/zh.d.ts.map +1 -0
- package/dist/util/i18n/zh.js +107 -0
- package/dist/util/i18n/zh.js.map +1 -0
- package/dist/util/i18n.d.ts +98 -0
- package/dist/util/i18n.d.ts.map +1 -0
- package/dist/util/i18n.js +228 -0
- package/dist/util/i18n.js.map +1 -0
- package/dist/util/message.d.ts.map +1 -1
- package/dist/util/message.js +3 -0
- package/dist/util/message.js.map +1 -1
- package/dist/util/model.d.ts.map +1 -1
- package/dist/util/model.js +9 -3
- package/dist/util/model.js.map +1 -1
- package/dist/util/shell.d.ts.map +1 -1
- package/dist/util/shell.js +6 -1
- package/dist/util/shell.js.map +1 -1
- package/dist/util/shellSafety.d.ts +14 -2
- package/dist/util/shellSafety.d.ts.map +1 -1
- package/dist/util/shellSafety.js +300 -3
- package/dist/util/shellSafety.js.map +1 -1
- package/dist/util/tokens.d.ts +10 -2
- package/dist/util/tokens.d.ts.map +1 -1
- package/dist/util/tokens.js +19 -15
- package/dist/util/tokens.js.map +1 -1
- package/package.json +3 -1
package/dist/util/fetchUrl.js
CHANGED
|
@@ -1,18 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FETCH_URL_MAX_MARKDOWN_LEN = void 0;
|
|
3
|
+
exports.FETCH_URL_DIRECT_RETURN_LEN = exports.FETCH_URL_MAX_MARKDOWN_LEN = void 0;
|
|
4
4
|
exports.fetchUrlAsMarkdown = fetchUrlAsMarkdown;
|
|
5
5
|
exports.injectPromptIntoMarkdown = injectPromptIntoMarkdown;
|
|
6
6
|
const log_1 = require("./log");
|
|
7
7
|
const fetchUrl_1 = require("../prompt/tools/fetchUrl");
|
|
8
8
|
const queryLLM_1 = require("../services/api/queryLLM");
|
|
9
|
+
const ConfManager_1 = require("../manager/ConfManager");
|
|
9
10
|
const MAX_CONTENT_BYTES = 5 * 1024 * 1024; // 5MB
|
|
10
11
|
const TIMEOUT_MS = 30_000;
|
|
12
|
+
const TOOL_USER_AGENT = 'sema-code-core/1.0 fetch_url';
|
|
13
|
+
// 浏览器身份的 User-Agent:仅在 coreConfig.fetchUrlBrowserUserAgent 打开时使用。
|
|
14
|
+
// 平台段是 Chrome 自己冻结的固定值(Mac 一律报 Intel/10_15_7,Win11 也报 NT 10.0),照抄即可;
|
|
15
|
+
// 不探测本机装了什么浏览器,只用 Chrome 一种标识。
|
|
16
|
+
const CHROME_MAJOR = 152; // 随发版定期抬高
|
|
17
|
+
const platformSegment = {
|
|
18
|
+
darwin: 'Macintosh; Intel Mac OS X 10_15_7',
|
|
19
|
+
win32: 'Windows NT 10.0; Win64; x64',
|
|
20
|
+
linux: 'X11; Linux x86_64',
|
|
21
|
+
}[process.platform] ?? 'X11; Linux x86_64';
|
|
22
|
+
const BROWSER_USER_AGENT = `Mozilla/5.0 (${platformSegment}) AppleWebKit/537.36 (KHTML, like Gecko) ` +
|
|
23
|
+
`Chrome/${CHROME_MAJOR}.0.0.0 Safari/537.36`;
|
|
24
|
+
function resolveUserAgent() {
|
|
25
|
+
const coreConfig = (0, ConfManager_1.getConfManager)().getCoreConfig();
|
|
26
|
+
return coreConfig?.fetchUrlBrowserUserAgent ? BROWSER_USER_AGENT : TOOL_USER_AGENT;
|
|
27
|
+
}
|
|
28
|
+
// 喂给 quick 模型前的截断上限
|
|
11
29
|
exports.FETCH_URL_MAX_MARKDOWN_LEN = 50_000;
|
|
30
|
+
// 转换后内容短于此值直接原样返回,不经 quick 模型整理。
|
|
31
|
+
// 按字符计:纯中文约 1 字 1 token,英文约 4 字符 1 token。8000 覆盖短文、文档页、验证页,长文交 quick 模型按 prompt 提炼。
|
|
32
|
+
exports.FETCH_URL_DIRECT_RETURN_LEN = 8_000;
|
|
12
33
|
function createTurndown() {
|
|
13
34
|
const mod = require('turndown');
|
|
14
35
|
const Ctor = mod.default ?? mod;
|
|
15
|
-
|
|
36
|
+
const td = new Ctor();
|
|
37
|
+
// Drop script/style/noscript/template blocks: turndown keeps their text by default,
|
|
38
|
+
// and on script-heavy pages that pushes the article past the truncation limit.
|
|
39
|
+
td.remove(['script', 'style', 'noscript', 'template']);
|
|
40
|
+
return td;
|
|
41
|
+
}
|
|
42
|
+
// 去掉行尾空白、把连续空行压成一个:微信等页面每段之间都是空行,turndown 输出里空白能占到六分之一,
|
|
43
|
+
// 白白占用直接返回阈值和模型上下文。只动行尾不动行首,避免破坏缩进代码块和嵌套列表。
|
|
44
|
+
function normalizeMarkdownWhitespace(md) {
|
|
45
|
+
return md.replace(/[ \t]+$/gm, '').replace(/\n{3,}/g, '\n\n').trim();
|
|
16
46
|
}
|
|
17
47
|
async function fetchUrlAsMarkdown(url, abortController) {
|
|
18
48
|
try {
|
|
@@ -42,7 +72,7 @@ async function fetchUrlAsMarkdown(url, abortController) {
|
|
|
42
72
|
redirect: 'follow',
|
|
43
73
|
headers: {
|
|
44
74
|
Accept: 'text/markdown, text/html, */*',
|
|
45
|
-
'User-Agent':
|
|
75
|
+
'User-Agent': resolveUserAgent(),
|
|
46
76
|
},
|
|
47
77
|
});
|
|
48
78
|
}
|
|
@@ -69,7 +99,7 @@ async function fetchUrlAsMarkdown(url, abortController) {
|
|
|
69
99
|
let content = rawBuffer.toString('utf-8');
|
|
70
100
|
if (contentType.includes('text/html')) {
|
|
71
101
|
try {
|
|
72
|
-
content = createTurndown().turndown(content);
|
|
102
|
+
content = normalizeMarkdownWhitespace(createTurndown().turndown(content));
|
|
73
103
|
}
|
|
74
104
|
catch { }
|
|
75
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchUrl.js","sourceRoot":"","sources":["../../src/util/fetchUrl.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"fetchUrl.js","sourceRoot":"","sources":["../../src/util/fetchUrl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export declare const de: {
|
|
2
|
+
readonly 'permission.agree': "Erlauben";
|
|
3
|
+
readonly 'permission.refuse': "Ablehnen";
|
|
4
|
+
readonly 'permission.approve': "Zustimmen";
|
|
5
|
+
readonly 'permission.allowShellPrefix': "Erlauben und in diesem Projekt nicht mehr nach Befehlen fragen, die mit `{prefix}` beginnen";
|
|
6
|
+
readonly 'permission.allowShellExact': "Erlauben und in diesem Projekt nicht mehr nach `{command}` fragen";
|
|
7
|
+
readonly 'permission.allowShellThis': "Erlauben und in diesem Projekt nicht mehr nach diesem Befehl fragen";
|
|
8
|
+
readonly 'permission.allowEdit': "Erlauben und in dieser Sitzung nicht mehr nach Dateibearbeitungen fragen";
|
|
9
|
+
readonly 'permission.allowReadDir': "Erlauben und in dieser Sitzung nicht mehr nach Lesezugriffen unter {dir} fragen";
|
|
10
|
+
readonly 'permission.allowSkill': "Erlauben und in diesem Projekt nicht mehr nach dem Skill {skill} fragen";
|
|
11
|
+
readonly 'permission.allowSkillAny': "Erlauben und in diesem Projekt nicht mehr nach dem Skill-Tool fragen";
|
|
12
|
+
readonly 'permission.allowMcp': "Erlauben und in diesem Projekt nicht mehr nach {tool} fragen";
|
|
13
|
+
readonly 'permission.allowFetchDomain': "Erlauben und in diesem Projekt nicht mehr nach {domain} fragen";
|
|
14
|
+
readonly 'permission.allowFetchThis': "Erlauben und in diesem Projekt nicht mehr nach dieser Domain fragen";
|
|
15
|
+
readonly 'permission.allowGeneric': "Zustimmen und in diesem Projekt nicht mehr nach {tool} fragen";
|
|
16
|
+
readonly 'permission.autoApproved': "Durch Modellprüfung erlaubt · Automatikmodus";
|
|
17
|
+
readonly 'plan.startEditing': "Jetzt mit dem Programmieren beginnen";
|
|
18
|
+
readonly 'plan.clearContextAndStart': "Kontext zurücksetzen und mit dem Programmieren beginnen";
|
|
19
|
+
readonly 'plan.implementPrompt': "Setze den folgenden Plan um:";
|
|
20
|
+
readonly 'error.unknown': "Unbekannter Fehler";
|
|
21
|
+
readonly 'error.apiAuth': "API-Authentifizierung fehlgeschlagen. Prüfe, ob der API-Schlüssel korrekt ist";
|
|
22
|
+
readonly 'error.apiForbidden': "API-Zugriff verweigert. Prüfe die Berechtigungen des API-Schlüssels";
|
|
23
|
+
readonly 'error.apiRateLimit': "API-Ratenlimit überschritten. Versuche es später erneut";
|
|
24
|
+
readonly 'error.apiParse': "Fehlerhafte API-Antwort. Daten konnten nicht verarbeitet werden";
|
|
25
|
+
readonly 'error.network': "Netzwerkfehler. Prüfe deine Verbindung";
|
|
26
|
+
readonly 'error.contextTooLong': "Kontextlänge überschritten";
|
|
27
|
+
readonly 'error.truncatedToolArgs': "Die Ausgabe hat das Limit für Ausgabetokens erreicht und Tool-Argumente wurden abgeschnitten. Erhöhe ggf. die maximalen Ausgabetokens des Modells";
|
|
28
|
+
readonly 'error.truncatedContent': "Die Ausgabe hat das Limit für Ausgabetokens erreicht und der Inhalt wurde abgeschnitten. Erhöhe ggf. die maximalen Ausgabetokens des Modells";
|
|
29
|
+
readonly 'error.emptyResponse': "Die API hat eine leere Antwort geliefert. Versuche es noch einmal; schlägt es weiterhin fehl, versuche es später erneut.";
|
|
30
|
+
readonly 'error.noModels': "Kein Modell konfiguriert. Füge zuerst ein Modell hinzu";
|
|
31
|
+
readonly 'error.modelResolve': "Modell konnte nicht aufgelöst werden: {pointer}";
|
|
32
|
+
readonly 'error.modelConfLoad': "Die Modellkonfigurationsdatei konnte nicht geladen werden. Lösche sie und füge das Modell erneut hinzu";
|
|
33
|
+
readonly 'error.compactFailed': "Komprimierung fehlgeschlagen: {error}";
|
|
34
|
+
readonly 'error.compactEmptyHistory': "Verlauf ist leer, Komprimierung übersprungen";
|
|
35
|
+
readonly 'error.compactNoSummary': "Komprimierung hat keine gültige Zusammenfassung erzeugt: {kind}";
|
|
36
|
+
readonly 'error.streamTimeout': "Zeitüberschreitung bei der LLM-Streaming-Anfrage ({minutes} min)";
|
|
37
|
+
readonly 'error.streamIdleTimeout': "Leerlauf-Zeitüberschreitung bei der LLM-Streaming-Anfrage ({minutes} min ohne neue Daten)";
|
|
38
|
+
readonly 'error.toolValidation': "Validierung der Tool-Eingabe fehlgeschlagen";
|
|
39
|
+
readonly 'error.promptBlockedByHook': "Eingabe wurde vom UserPromptSubmit-Hook blockiert";
|
|
40
|
+
readonly 'session.busyRewind': "Sitzung ist beschäftigt. Warte, bis sie frei ist, bevor du zurücksetzt";
|
|
41
|
+
readonly 'session.busyFork': "Sitzung ist beschäftigt. Warte, bis sie frei ist, bevor du verzweigst";
|
|
42
|
+
readonly 'session.msgNotFound': "Nachricht nicht gefunden: {uuid}";
|
|
43
|
+
readonly 'session.notRewindable': "Diese Nachricht ist keine zurücksetzbare Benutzereingabe: {uuid}";
|
|
44
|
+
readonly 'session.notForkable': "Diese Nachricht ist keine verzweigbare Benutzereingabe: {uuid}";
|
|
45
|
+
readonly 'session.noForkHistory': "Kein Verlauf zum Verzweigen vorhanden";
|
|
46
|
+
readonly 'session.limitReached': "Sitzungslimit erreicht ({max}). Schließe zuerst eine bestehende Sitzung";
|
|
47
|
+
readonly 'session.initFailed': "Initialisierung der Sitzung fehlgeschlagen: {error}";
|
|
48
|
+
readonly 'hook.timeout': "Zeitüberschreitung beim Hook ({seconds}s), abgebrochen: {command}";
|
|
49
|
+
readonly 'hook.blockIgnored': "Das Ereignis {event} kann nicht blockiert werden; die Block-Ausgabe des Hooks wurde ignoriert: {command}";
|
|
50
|
+
readonly 'model.testSuccess': "✓ Verbindungstest erfolgreich. Die API-Konfiguration ist korrekt.";
|
|
51
|
+
readonly 'model.testNoYes': "✗ Unerwartete API-Antwort, keine YES-Markierung gefunden. Antwort: {response}";
|
|
52
|
+
readonly 'model.testHttpError': "✗ Die API hat einen Fehler zurückgegeben ({status}): {body}";
|
|
53
|
+
readonly 'model.connectFailed': "Verbindung fehlgeschlagen: {error}";
|
|
54
|
+
readonly 'model.responseTimeout': "Zeitüberschreitung bei der Modellantwort. Prüfe das Netzwerk und den Modelldienst";
|
|
55
|
+
readonly 'model.listEmpty': "Die Modellliste ist leer";
|
|
56
|
+
readonly 'model.listFailed': "Modellliste konnte nicht abgerufen werden ({status})";
|
|
57
|
+
readonly 'model.testFailed': "API-Verbindungstest fehlgeschlagen: {error}";
|
|
58
|
+
readonly 'model.debugCommand': "Debug-Befehl:";
|
|
59
|
+
readonly 'model.validateError': "Fehler bei der API-Validierung: {error}";
|
|
60
|
+
readonly 'model.invalidProvider': "Ungültiger Anbietername: {error}";
|
|
61
|
+
readonly 'model.providerNameLength': "Muss 2–20 Zeichen lang sein";
|
|
62
|
+
readonly 'model.providerNameFormat': "Nur Kleinbuchstaben, Ziffern und Bindestriche; muss mit einem Buchstaben beginnen und darf nicht mit einem Bindestrich enden";
|
|
63
|
+
readonly 'model.invalidName': "Ungültiger Modellname: {name}. Erwartet wird \"modelName[provider]\"";
|
|
64
|
+
readonly 'model.notFound': "Modell nicht gefunden: {name}";
|
|
65
|
+
readonly 'model.inUseByPointer': "Das Modell wird von den Zeigern {pointers} verwendet und kann nicht gelöscht werden";
|
|
66
|
+
readonly 'model.mainNotFound': "main-Modell nicht gefunden: {name}";
|
|
67
|
+
readonly 'model.quickNotFound': "quick-Modell nicht gefunden: {name}";
|
|
68
|
+
readonly 'model.saveFailed': "Modellkonfiguration konnte nicht gespeichert werden";
|
|
69
|
+
readonly 'mcp.connectTimeout': "Zeitüberschreitung bei der Verbindung ({seconds}s)";
|
|
70
|
+
readonly 'mcp.capabilitiesTimeout': "Zeitüberschreitung beim Abrufen der Fähigkeiten ({seconds}s)";
|
|
71
|
+
readonly 'mcp.closeTimeout': "Zeitüberschreitung beim Schließen des Clients";
|
|
72
|
+
readonly 'mcp.notConnected': "MCP-Server [{name}] ist nicht verbunden";
|
|
73
|
+
readonly 'mcp.stdioNeedsCommand': "Der stdio-Transport erfordert \"command\"";
|
|
74
|
+
readonly 'mcp.sseNeedsUrl': "Der sse-Transport erfordert \"url\"";
|
|
75
|
+
readonly 'mcp.httpNeedsUrl': "Der http-Transport erfordert \"url\"";
|
|
76
|
+
readonly 'mcp.unsupportedTransport': "Nicht unterstützter Transport: {transport}";
|
|
77
|
+
readonly 'plugin.gitCloneFailed': "git clone fehlgeschlagen [{repo}]: {stderr}";
|
|
78
|
+
readonly 'plugin.gitPullFailed': "git pull fehlgeschlagen [{dir}]: {stderr}";
|
|
79
|
+
readonly 'plugin.marketplaceNameFromRepo': "Marketplace-Name konnte aus {repo} nicht gelesen werden. Stelle sicher, dass marketplace.json existiert";
|
|
80
|
+
readonly 'plugin.marketplaceNameMissing': "Marketplace-Name konnte nicht gelesen werden. Stelle sicher, dass marketplace.json existiert";
|
|
81
|
+
readonly 'plugin.dirNotFound': "Verzeichnis nicht gefunden: {dir}";
|
|
82
|
+
readonly 'plugin.marketplaceNotFound': "Marketplace nicht gefunden: {name}";
|
|
83
|
+
readonly 'plugin.marketplaceNotGithub': "Marketplace [{name}] ist keine GitHub-Quelle und kann nicht aktualisiert werden";
|
|
84
|
+
readonly 'plugin.marketplaceUnreadable': "Marketplace-Informationen konnten nicht gelesen werden: {name}";
|
|
85
|
+
readonly 'plugin.notInMarketplace': "Plugin [{plugin}] im Marketplace [{name}] nicht gefunden";
|
|
86
|
+
readonly 'plugin.gitClonePluginFailed': "git clone des Plugins fehlgeschlagen [{url}]: {stderr}";
|
|
87
|
+
readonly 'agent.addMissingFields': "Agent konnte nicht hinzugefügt werden: Pflichtfeld name, prompt oder description fehlt";
|
|
88
|
+
readonly 'agent.addInvalidLocate': "Agent konnte nicht hinzugefügt werden: locate muss 'project' oder 'user' sein";
|
|
89
|
+
readonly 'command.addMissingFields': "Command konnte nicht hinzugefügt werden: Pflichtfeld name, description oder prompt fehlt";
|
|
90
|
+
readonly 'command.addInvalidLocate': "Command konnte nicht hinzugefügt werden: locate muss 'project' oder 'user' sein";
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=de.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"de.d.ts","sourceRoot":"","sources":["../../../src/util/i18n/de.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2G6B,CAAA"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.de = void 0;
|
|
4
|
+
exports.de = {
|
|
5
|
+
// ---- 权限面板 ----
|
|
6
|
+
'permission.agree': 'Erlauben',
|
|
7
|
+
'permission.refuse': 'Ablehnen',
|
|
8
|
+
'permission.approve': 'Zustimmen',
|
|
9
|
+
'permission.allowShellPrefix': 'Erlauben und in diesem Projekt nicht mehr nach Befehlen fragen, die mit `{prefix}` beginnen',
|
|
10
|
+
'permission.allowShellExact': 'Erlauben und in diesem Projekt nicht mehr nach `{command}` fragen',
|
|
11
|
+
'permission.allowShellThis': 'Erlauben und in diesem Projekt nicht mehr nach diesem Befehl fragen',
|
|
12
|
+
'permission.allowEdit': 'Erlauben und in dieser Sitzung nicht mehr nach Dateibearbeitungen fragen',
|
|
13
|
+
'permission.allowReadDir': 'Erlauben und in dieser Sitzung nicht mehr nach Lesezugriffen unter {dir} fragen',
|
|
14
|
+
'permission.allowSkill': 'Erlauben und in diesem Projekt nicht mehr nach dem Skill {skill} fragen',
|
|
15
|
+
'permission.allowSkillAny': 'Erlauben und in diesem Projekt nicht mehr nach dem Skill-Tool fragen',
|
|
16
|
+
'permission.allowMcp': 'Erlauben und in diesem Projekt nicht mehr nach {tool} fragen',
|
|
17
|
+
'permission.allowFetchDomain': 'Erlauben und in diesem Projekt nicht mehr nach {domain} fragen',
|
|
18
|
+
'permission.allowFetchThis': 'Erlauben und in diesem Projekt nicht mehr nach dieser Domain fragen',
|
|
19
|
+
'permission.allowGeneric': 'Zustimmen und in diesem Projekt nicht mehr nach {tool} fragen',
|
|
20
|
+
'permission.autoApproved': 'Durch Modellprüfung erlaubt · Automatikmodus',
|
|
21
|
+
// ---- Plan 模式 ----
|
|
22
|
+
'plan.startEditing': 'Jetzt mit dem Programmieren beginnen',
|
|
23
|
+
'plan.clearContextAndStart': 'Kontext zurücksetzen und mit dem Programmieren beginnen',
|
|
24
|
+
'plan.implementPrompt': 'Setze den folgenden Plan um:',
|
|
25
|
+
// ---- 会话错误 ----
|
|
26
|
+
'error.unknown': 'Unbekannter Fehler',
|
|
27
|
+
'error.apiAuth': 'API-Authentifizierung fehlgeschlagen. Prüfe, ob der API-Schlüssel korrekt ist',
|
|
28
|
+
'error.apiForbidden': 'API-Zugriff verweigert. Prüfe die Berechtigungen des API-Schlüssels',
|
|
29
|
+
'error.apiRateLimit': 'API-Ratenlimit überschritten. Versuche es später erneut',
|
|
30
|
+
'error.apiParse': 'Fehlerhafte API-Antwort. Daten konnten nicht verarbeitet werden',
|
|
31
|
+
'error.network': 'Netzwerkfehler. Prüfe deine Verbindung',
|
|
32
|
+
'error.contextTooLong': 'Kontextlänge überschritten',
|
|
33
|
+
'error.truncatedToolArgs': 'Die Ausgabe hat das Limit für Ausgabetokens erreicht und Tool-Argumente wurden abgeschnitten. Erhöhe ggf. die maximalen Ausgabetokens des Modells',
|
|
34
|
+
'error.truncatedContent': 'Die Ausgabe hat das Limit für Ausgabetokens erreicht und der Inhalt wurde abgeschnitten. Erhöhe ggf. die maximalen Ausgabetokens des Modells',
|
|
35
|
+
'error.emptyResponse': 'Die API hat eine leere Antwort geliefert. Versuche es noch einmal; schlägt es weiterhin fehl, versuche es später erneut.',
|
|
36
|
+
'error.noModels': 'Kein Modell konfiguriert. Füge zuerst ein Modell hinzu',
|
|
37
|
+
'error.modelResolve': 'Modell konnte nicht aufgelöst werden: {pointer}',
|
|
38
|
+
'error.modelConfLoad': 'Die Modellkonfigurationsdatei konnte nicht geladen werden. Lösche sie und füge das Modell erneut hinzu',
|
|
39
|
+
'error.compactFailed': 'Komprimierung fehlgeschlagen: {error}',
|
|
40
|
+
'error.compactEmptyHistory': 'Verlauf ist leer, Komprimierung übersprungen',
|
|
41
|
+
'error.compactNoSummary': 'Komprimierung hat keine gültige Zusammenfassung erzeugt: {kind}',
|
|
42
|
+
'error.streamTimeout': 'Zeitüberschreitung bei der LLM-Streaming-Anfrage ({minutes} min)',
|
|
43
|
+
'error.streamIdleTimeout': 'Leerlauf-Zeitüberschreitung bei der LLM-Streaming-Anfrage ({minutes} min ohne neue Daten)',
|
|
44
|
+
'error.toolValidation': 'Validierung der Tool-Eingabe fehlgeschlagen',
|
|
45
|
+
'error.promptBlockedByHook': 'Eingabe wurde vom UserPromptSubmit-Hook blockiert',
|
|
46
|
+
// ---- 会话管理 ----
|
|
47
|
+
'session.busyRewind': 'Sitzung ist beschäftigt. Warte, bis sie frei ist, bevor du zurücksetzt',
|
|
48
|
+
'session.busyFork': 'Sitzung ist beschäftigt. Warte, bis sie frei ist, bevor du verzweigst',
|
|
49
|
+
'session.msgNotFound': 'Nachricht nicht gefunden: {uuid}',
|
|
50
|
+
'session.notRewindable': 'Diese Nachricht ist keine zurücksetzbare Benutzereingabe: {uuid}',
|
|
51
|
+
'session.notForkable': 'Diese Nachricht ist keine verzweigbare Benutzereingabe: {uuid}',
|
|
52
|
+
'session.noForkHistory': 'Kein Verlauf zum Verzweigen vorhanden',
|
|
53
|
+
'session.limitReached': 'Sitzungslimit erreicht ({max}). Schließe zuerst eine bestehende Sitzung',
|
|
54
|
+
'session.initFailed': 'Initialisierung der Sitzung fehlgeschlagen: {error}',
|
|
55
|
+
// ---- Hook 通知 ----
|
|
56
|
+
'hook.timeout': 'Zeitüberschreitung beim Hook ({seconds}s), abgebrochen: {command}',
|
|
57
|
+
'hook.blockIgnored': 'Das Ereignis {event} kann nicht blockiert werden; die Block-Ausgabe des Hooks wurde ignoriert: {command}',
|
|
58
|
+
// ---- 模型配置 ----
|
|
59
|
+
'model.testSuccess': '✓ Verbindungstest erfolgreich. Die API-Konfiguration ist korrekt.',
|
|
60
|
+
'model.testNoYes': '✗ Unerwartete API-Antwort, keine YES-Markierung gefunden. Antwort: {response}',
|
|
61
|
+
'model.testHttpError': '✗ Die API hat einen Fehler zurückgegeben ({status}): {body}',
|
|
62
|
+
'model.connectFailed': 'Verbindung fehlgeschlagen: {error}',
|
|
63
|
+
'model.responseTimeout': 'Zeitüberschreitung bei der Modellantwort. Prüfe das Netzwerk und den Modelldienst',
|
|
64
|
+
'model.listEmpty': 'Die Modellliste ist leer',
|
|
65
|
+
'model.listFailed': 'Modellliste konnte nicht abgerufen werden ({status})',
|
|
66
|
+
'model.testFailed': 'API-Verbindungstest fehlgeschlagen: {error}',
|
|
67
|
+
'model.debugCommand': 'Debug-Befehl:',
|
|
68
|
+
'model.validateError': 'Fehler bei der API-Validierung: {error}',
|
|
69
|
+
'model.invalidProvider': 'Ungültiger Anbietername: {error}',
|
|
70
|
+
'model.providerNameLength': 'Muss 2–20 Zeichen lang sein',
|
|
71
|
+
'model.providerNameFormat': 'Nur Kleinbuchstaben, Ziffern und Bindestriche; muss mit einem Buchstaben beginnen und darf nicht mit einem Bindestrich enden',
|
|
72
|
+
'model.invalidName': 'Ungültiger Modellname: {name}. Erwartet wird "modelName[provider]"',
|
|
73
|
+
'model.notFound': 'Modell nicht gefunden: {name}',
|
|
74
|
+
'model.inUseByPointer': 'Das Modell wird von den Zeigern {pointers} verwendet und kann nicht gelöscht werden',
|
|
75
|
+
'model.mainNotFound': 'main-Modell nicht gefunden: {name}',
|
|
76
|
+
'model.quickNotFound': 'quick-Modell nicht gefunden: {name}',
|
|
77
|
+
'model.saveFailed': 'Modellkonfiguration konnte nicht gespeichert werden',
|
|
78
|
+
// ---- MCP ----
|
|
79
|
+
'mcp.connectTimeout': 'Zeitüberschreitung bei der Verbindung ({seconds}s)',
|
|
80
|
+
'mcp.capabilitiesTimeout': 'Zeitüberschreitung beim Abrufen der Fähigkeiten ({seconds}s)',
|
|
81
|
+
'mcp.closeTimeout': 'Zeitüberschreitung beim Schließen des Clients',
|
|
82
|
+
'mcp.notConnected': 'MCP-Server [{name}] ist nicht verbunden',
|
|
83
|
+
'mcp.stdioNeedsCommand': 'Der stdio-Transport erfordert "command"',
|
|
84
|
+
'mcp.sseNeedsUrl': 'Der sse-Transport erfordert "url"',
|
|
85
|
+
'mcp.httpNeedsUrl': 'Der http-Transport erfordert "url"',
|
|
86
|
+
'mcp.unsupportedTransport': 'Nicht unterstützter Transport: {transport}',
|
|
87
|
+
// ---- 插件市场 ----
|
|
88
|
+
'plugin.gitCloneFailed': 'git clone fehlgeschlagen [{repo}]: {stderr}',
|
|
89
|
+
'plugin.gitPullFailed': 'git pull fehlgeschlagen [{dir}]: {stderr}',
|
|
90
|
+
'plugin.marketplaceNameFromRepo': 'Marketplace-Name konnte aus {repo} nicht gelesen werden. Stelle sicher, dass marketplace.json existiert',
|
|
91
|
+
'plugin.marketplaceNameMissing': 'Marketplace-Name konnte nicht gelesen werden. Stelle sicher, dass marketplace.json existiert',
|
|
92
|
+
'plugin.dirNotFound': 'Verzeichnis nicht gefunden: {dir}',
|
|
93
|
+
'plugin.marketplaceNotFound': 'Marketplace nicht gefunden: {name}',
|
|
94
|
+
'plugin.marketplaceNotGithub': 'Marketplace [{name}] ist keine GitHub-Quelle und kann nicht aktualisiert werden',
|
|
95
|
+
'plugin.marketplaceUnreadable': 'Marketplace-Informationen konnten nicht gelesen werden: {name}',
|
|
96
|
+
'plugin.notInMarketplace': 'Plugin [{plugin}] im Marketplace [{name}] nicht gefunden',
|
|
97
|
+
'plugin.gitClonePluginFailed': 'git clone des Plugins fehlgeschlagen [{url}]: {stderr}',
|
|
98
|
+
// ---- Agent / Command 管理 ----
|
|
99
|
+
'agent.addMissingFields': 'Agent konnte nicht hinzugefügt werden: Pflichtfeld name, prompt oder description fehlt',
|
|
100
|
+
'agent.addInvalidLocate': "Agent konnte nicht hinzugefügt werden: locate muss 'project' oder 'user' sein",
|
|
101
|
+
'command.addMissingFields': 'Command konnte nicht hinzugefügt werden: Pflichtfeld name, description oder prompt fehlt',
|
|
102
|
+
'command.addInvalidLocate': "Command konnte nicht hinzugefügt werden: locate muss 'project' oder 'user' sein",
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=de.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"de.js","sourceRoot":"","sources":["../../../src/util/i18n/de.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export declare const en: {
|
|
2
|
+
readonly 'permission.agree': "Allow";
|
|
3
|
+
readonly 'permission.refuse': "Deny";
|
|
4
|
+
readonly 'permission.approve': "Approve";
|
|
5
|
+
readonly 'permission.allowShellPrefix': "Allow, and don't ask again for commands starting with `{prefix}` in this project";
|
|
6
|
+
readonly 'permission.allowShellExact': "Allow, and don't ask again for `{command}` in this project";
|
|
7
|
+
readonly 'permission.allowShellThis': "Allow, and don't ask again for this command in this project";
|
|
8
|
+
readonly 'permission.allowEdit': "Allow, and don't ask again for file edits in this session";
|
|
9
|
+
readonly 'permission.allowReadDir': "Allow, and don't ask again for reads under {dir} in this session";
|
|
10
|
+
readonly 'permission.allowSkill': "Allow, and don't ask again for the {skill} skill in this project";
|
|
11
|
+
readonly 'permission.allowSkillAny': "Allow, and don't ask again for the Skill tool in this project";
|
|
12
|
+
readonly 'permission.allowMcp': "Allow, and don't ask again for {tool} in this project";
|
|
13
|
+
readonly 'permission.allowFetchDomain': "Allow, and don't ask again for {domain} in this project";
|
|
14
|
+
readonly 'permission.allowFetchThis': "Allow, and don't ask again for this domain in this project";
|
|
15
|
+
readonly 'permission.allowGeneric': "Approve, and don't ask again for {tool} in this project";
|
|
16
|
+
readonly 'permission.autoApproved': "Allowed by model check · auto mode";
|
|
17
|
+
readonly 'plan.startEditing': "Start coding now";
|
|
18
|
+
readonly 'plan.clearContextAndStart': "Reset context and start coding";
|
|
19
|
+
readonly 'plan.implementPrompt': "Implement the following plan:";
|
|
20
|
+
readonly 'error.unknown': "Unknown error";
|
|
21
|
+
readonly 'error.apiAuth': "API authentication failed. Check that the API key is correct";
|
|
22
|
+
readonly 'error.apiForbidden': "API permission denied. Check the API key's permissions";
|
|
23
|
+
readonly 'error.apiRateLimit': "API rate limit exceeded. Try again later";
|
|
24
|
+
readonly 'error.apiParse': "Malformed API response. Unable to parse data";
|
|
25
|
+
readonly 'error.network': "Network error. Check your connection";
|
|
26
|
+
readonly 'error.contextTooLong': "Context length exceeded";
|
|
27
|
+
readonly 'error.truncatedToolArgs': "Output hit the max output tokens and tool arguments were truncated. Try raising the model's max output tokens";
|
|
28
|
+
readonly 'error.truncatedContent': "Output hit the max output tokens and the content was truncated. Try raising the model's max output tokens";
|
|
29
|
+
readonly 'error.emptyResponse': "The API returned an empty response. Retry once; if it keeps failing, try again later.";
|
|
30
|
+
readonly 'error.noModels': "No model configured. Add a model first";
|
|
31
|
+
readonly 'error.modelResolve': "Failed to resolve model: {pointer}";
|
|
32
|
+
readonly 'error.modelConfLoad': "Failed to load the model config file. Try deleting it and adding the model again";
|
|
33
|
+
readonly 'error.compactFailed': "Compaction failed: {error}";
|
|
34
|
+
readonly 'error.compactEmptyHistory': "Empty history, skip compact";
|
|
35
|
+
readonly 'error.compactNoSummary': "Compact did not produce a valid summary: {kind}";
|
|
36
|
+
readonly 'error.streamTimeout': "LLM streaming request timed out ({minutes}min)";
|
|
37
|
+
readonly 'error.streamIdleTimeout': "LLM streaming request idle timeout ({minutes}min without new data)";
|
|
38
|
+
readonly 'error.toolValidation': "Tool input validation failed";
|
|
39
|
+
readonly 'error.promptBlockedByHook': "Input blocked by the UserPromptSubmit hook";
|
|
40
|
+
readonly 'session.busyRewind': "Session is busy. Wait until it is idle before rewinding";
|
|
41
|
+
readonly 'session.busyFork': "Session is busy. Wait until it is idle before forking";
|
|
42
|
+
readonly 'session.msgNotFound': "Message not found: {uuid}";
|
|
43
|
+
readonly 'session.notRewindable': "This message is not a rewindable user input: {uuid}";
|
|
44
|
+
readonly 'session.notForkable': "This message is not a forkable user input: {uuid}";
|
|
45
|
+
readonly 'session.noForkHistory': "No history to fork";
|
|
46
|
+
readonly 'session.limitReached': "Session limit reached ({max}). Close an existing session first";
|
|
47
|
+
readonly 'session.initFailed': "Session initialization failed: {error}";
|
|
48
|
+
readonly 'hook.timeout': "Hook timed out ({seconds}s) and was terminated: {command}";
|
|
49
|
+
readonly 'hook.blockIgnored': "The {event} event cannot be blocked; the hook's block output was ignored: {command}";
|
|
50
|
+
readonly 'model.testSuccess': "✓ Connection test passed. The API configuration is correct.";
|
|
51
|
+
readonly 'model.testNoYes': "✗ Unexpected API response, no YES marker found. Response: {response}";
|
|
52
|
+
readonly 'model.testHttpError': "✗ API returned an error ({status}): {body}";
|
|
53
|
+
readonly 'model.connectFailed': "Connection failed: {error}";
|
|
54
|
+
readonly 'model.responseTimeout': "Model response timed out. Check the network and model service";
|
|
55
|
+
readonly 'model.listEmpty': "The model list is empty";
|
|
56
|
+
readonly 'model.listFailed': "Failed to fetch the model list ({status})";
|
|
57
|
+
readonly 'model.testFailed': "API connection test failed: {error}";
|
|
58
|
+
readonly 'model.debugCommand': "Debug command:";
|
|
59
|
+
readonly 'model.validateError': "Error during API validation: {error}";
|
|
60
|
+
readonly 'model.invalidProvider': "Invalid provider name: {error}";
|
|
61
|
+
readonly 'model.providerNameLength': "Must be 2–20 characters";
|
|
62
|
+
readonly 'model.providerNameFormat': "Only lowercase letters, digits and hyphens; must start with a letter and not end with a hyphen";
|
|
63
|
+
readonly 'model.invalidName': "Invalid model name: {name}. Expected \"modelName[provider]\"";
|
|
64
|
+
readonly 'model.notFound': "Model not found: {name}";
|
|
65
|
+
readonly 'model.inUseByPointer': "Model is in use by pointer(s) {pointers} and cannot be deleted";
|
|
66
|
+
readonly 'model.mainNotFound': "main model not found: {name}";
|
|
67
|
+
readonly 'model.quickNotFound': "quick model not found: {name}";
|
|
68
|
+
readonly 'model.saveFailed': "Failed to save model config";
|
|
69
|
+
readonly 'mcp.connectTimeout': "Connection timed out ({seconds}s)";
|
|
70
|
+
readonly 'mcp.capabilitiesTimeout': "Fetching capabilities timed out ({seconds}s)";
|
|
71
|
+
readonly 'mcp.closeTimeout': "Client close timed out";
|
|
72
|
+
readonly 'mcp.notConnected': "MCP server [{name}] is not connected";
|
|
73
|
+
readonly 'mcp.stdioNeedsCommand': "stdio transport requires \"command\"";
|
|
74
|
+
readonly 'mcp.sseNeedsUrl': "sse transport requires \"url\"";
|
|
75
|
+
readonly 'mcp.httpNeedsUrl': "http transport requires \"url\"";
|
|
76
|
+
readonly 'mcp.unsupportedTransport': "Unsupported transport: {transport}";
|
|
77
|
+
readonly 'plugin.gitCloneFailed': "git clone failed [{repo}]: {stderr}";
|
|
78
|
+
readonly 'plugin.gitPullFailed': "git pull failed [{dir}]: {stderr}";
|
|
79
|
+
readonly 'plugin.marketplaceNameFromRepo': "Cannot read the marketplace name from {repo}. Make sure marketplace.json exists";
|
|
80
|
+
readonly 'plugin.marketplaceNameMissing': "Cannot read the marketplace name. Make sure marketplace.json exists";
|
|
81
|
+
readonly 'plugin.dirNotFound': "Directory not found: {dir}";
|
|
82
|
+
readonly 'plugin.marketplaceNotFound': "Marketplace not found: {name}";
|
|
83
|
+
readonly 'plugin.marketplaceNotGithub': "Marketplace [{name}] is not a GitHub source and cannot be updated";
|
|
84
|
+
readonly 'plugin.marketplaceUnreadable': "Cannot read marketplace info: {name}";
|
|
85
|
+
readonly 'plugin.notInMarketplace': "Plugin [{plugin}] not found in marketplace [{name}]";
|
|
86
|
+
readonly 'plugin.gitClonePluginFailed': "git clone of plugin failed [{url}]: {stderr}";
|
|
87
|
+
readonly 'agent.addMissingFields': "Failed to add agent: missing required field name, prompt or description";
|
|
88
|
+
readonly 'agent.addInvalidLocate': "Failed to add agent: locate must be 'project' or 'user'";
|
|
89
|
+
readonly 'command.addMissingFields': "Failed to add command: missing required field name, description or prompt";
|
|
90
|
+
readonly 'command.addInvalidLocate': "Failed to add command: locate must be 'project' or 'user'";
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=en.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/util/i18n/en.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2G6B,CAAA"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.en = void 0;
|
|
4
|
+
exports.en = {
|
|
5
|
+
// ---- 权限面板 ----
|
|
6
|
+
'permission.agree': 'Allow',
|
|
7
|
+
'permission.refuse': 'Deny',
|
|
8
|
+
'permission.approve': 'Approve',
|
|
9
|
+
'permission.allowShellPrefix': "Allow, and don't ask again for commands starting with `{prefix}` in this project",
|
|
10
|
+
'permission.allowShellExact': "Allow, and don't ask again for `{command}` in this project",
|
|
11
|
+
'permission.allowShellThis': "Allow, and don't ask again for this command in this project",
|
|
12
|
+
'permission.allowEdit': "Allow, and don't ask again for file edits in this session",
|
|
13
|
+
'permission.allowReadDir': "Allow, and don't ask again for reads under {dir} in this session",
|
|
14
|
+
'permission.allowSkill': "Allow, and don't ask again for the {skill} skill in this project",
|
|
15
|
+
'permission.allowSkillAny': "Allow, and don't ask again for the Skill tool in this project",
|
|
16
|
+
'permission.allowMcp': "Allow, and don't ask again for {tool} in this project",
|
|
17
|
+
'permission.allowFetchDomain': "Allow, and don't ask again for {domain} in this project",
|
|
18
|
+
'permission.allowFetchThis': "Allow, and don't ask again for this domain in this project",
|
|
19
|
+
'permission.allowGeneric': "Approve, and don't ask again for {tool} in this project",
|
|
20
|
+
'permission.autoApproved': 'Allowed by model check · auto mode',
|
|
21
|
+
// ---- Plan 模式 ----
|
|
22
|
+
'plan.startEditing': 'Start coding now',
|
|
23
|
+
'plan.clearContextAndStart': 'Reset context and start coding',
|
|
24
|
+
'plan.implementPrompt': 'Implement the following plan:',
|
|
25
|
+
// ---- 会话错误 ----
|
|
26
|
+
'error.unknown': 'Unknown error',
|
|
27
|
+
'error.apiAuth': 'API authentication failed. Check that the API key is correct',
|
|
28
|
+
'error.apiForbidden': "API permission denied. Check the API key's permissions",
|
|
29
|
+
'error.apiRateLimit': 'API rate limit exceeded. Try again later',
|
|
30
|
+
'error.apiParse': 'Malformed API response. Unable to parse data',
|
|
31
|
+
'error.network': 'Network error. Check your connection',
|
|
32
|
+
'error.contextTooLong': 'Context length exceeded',
|
|
33
|
+
'error.truncatedToolArgs': "Output hit the max output tokens and tool arguments were truncated. Try raising the model's max output tokens",
|
|
34
|
+
'error.truncatedContent': "Output hit the max output tokens and the content was truncated. Try raising the model's max output tokens",
|
|
35
|
+
'error.emptyResponse': 'The API returned an empty response. Retry once; if it keeps failing, try again later.',
|
|
36
|
+
'error.noModels': 'No model configured. Add a model first',
|
|
37
|
+
'error.modelResolve': 'Failed to resolve model: {pointer}',
|
|
38
|
+
'error.modelConfLoad': 'Failed to load the model config file. Try deleting it and adding the model again',
|
|
39
|
+
'error.compactFailed': 'Compaction failed: {error}',
|
|
40
|
+
'error.compactEmptyHistory': 'Empty history, skip compact',
|
|
41
|
+
'error.compactNoSummary': 'Compact did not produce a valid summary: {kind}',
|
|
42
|
+
'error.streamTimeout': 'LLM streaming request timed out ({minutes}min)',
|
|
43
|
+
'error.streamIdleTimeout': 'LLM streaming request idle timeout ({minutes}min without new data)',
|
|
44
|
+
'error.toolValidation': 'Tool input validation failed',
|
|
45
|
+
'error.promptBlockedByHook': 'Input blocked by the UserPromptSubmit hook',
|
|
46
|
+
// ---- 会话管理 ----
|
|
47
|
+
'session.busyRewind': 'Session is busy. Wait until it is idle before rewinding',
|
|
48
|
+
'session.busyFork': 'Session is busy. Wait until it is idle before forking',
|
|
49
|
+
'session.msgNotFound': 'Message not found: {uuid}',
|
|
50
|
+
'session.notRewindable': 'This message is not a rewindable user input: {uuid}',
|
|
51
|
+
'session.notForkable': 'This message is not a forkable user input: {uuid}',
|
|
52
|
+
'session.noForkHistory': 'No history to fork',
|
|
53
|
+
'session.limitReached': 'Session limit reached ({max}). Close an existing session first',
|
|
54
|
+
'session.initFailed': 'Session initialization failed: {error}',
|
|
55
|
+
// ---- Hook 通知 ----
|
|
56
|
+
'hook.timeout': 'Hook timed out ({seconds}s) and was terminated: {command}',
|
|
57
|
+
'hook.blockIgnored': "The {event} event cannot be blocked; the hook's block output was ignored: {command}",
|
|
58
|
+
// ---- 模型配置 ----
|
|
59
|
+
'model.testSuccess': '✓ Connection test passed. The API configuration is correct.',
|
|
60
|
+
'model.testNoYes': '✗ Unexpected API response, no YES marker found. Response: {response}',
|
|
61
|
+
'model.testHttpError': '✗ API returned an error ({status}): {body}',
|
|
62
|
+
'model.connectFailed': 'Connection failed: {error}',
|
|
63
|
+
'model.responseTimeout': 'Model response timed out. Check the network and model service',
|
|
64
|
+
'model.listEmpty': 'The model list is empty',
|
|
65
|
+
'model.listFailed': 'Failed to fetch the model list ({status})',
|
|
66
|
+
'model.testFailed': 'API connection test failed: {error}',
|
|
67
|
+
'model.debugCommand': 'Debug command:',
|
|
68
|
+
'model.validateError': 'Error during API validation: {error}',
|
|
69
|
+
'model.invalidProvider': 'Invalid provider name: {error}',
|
|
70
|
+
'model.providerNameLength': 'Must be 2–20 characters',
|
|
71
|
+
'model.providerNameFormat': 'Only lowercase letters, digits and hyphens; must start with a letter and not end with a hyphen',
|
|
72
|
+
'model.invalidName': 'Invalid model name: {name}. Expected "modelName[provider]"',
|
|
73
|
+
'model.notFound': 'Model not found: {name}',
|
|
74
|
+
'model.inUseByPointer': 'Model is in use by pointer(s) {pointers} and cannot be deleted',
|
|
75
|
+
'model.mainNotFound': 'main model not found: {name}',
|
|
76
|
+
'model.quickNotFound': 'quick model not found: {name}',
|
|
77
|
+
'model.saveFailed': 'Failed to save model config',
|
|
78
|
+
// ---- MCP ----
|
|
79
|
+
'mcp.connectTimeout': 'Connection timed out ({seconds}s)',
|
|
80
|
+
'mcp.capabilitiesTimeout': 'Fetching capabilities timed out ({seconds}s)',
|
|
81
|
+
'mcp.closeTimeout': 'Client close timed out',
|
|
82
|
+
'mcp.notConnected': 'MCP server [{name}] is not connected',
|
|
83
|
+
'mcp.stdioNeedsCommand': 'stdio transport requires "command"',
|
|
84
|
+
'mcp.sseNeedsUrl': 'sse transport requires "url"',
|
|
85
|
+
'mcp.httpNeedsUrl': 'http transport requires "url"',
|
|
86
|
+
'mcp.unsupportedTransport': 'Unsupported transport: {transport}',
|
|
87
|
+
// ---- 插件市场 ----
|
|
88
|
+
'plugin.gitCloneFailed': 'git clone failed [{repo}]: {stderr}',
|
|
89
|
+
'plugin.gitPullFailed': 'git pull failed [{dir}]: {stderr}',
|
|
90
|
+
'plugin.marketplaceNameFromRepo': 'Cannot read the marketplace name from {repo}. Make sure marketplace.json exists',
|
|
91
|
+
'plugin.marketplaceNameMissing': 'Cannot read the marketplace name. Make sure marketplace.json exists',
|
|
92
|
+
'plugin.dirNotFound': 'Directory not found: {dir}',
|
|
93
|
+
'plugin.marketplaceNotFound': 'Marketplace not found: {name}',
|
|
94
|
+
'plugin.marketplaceNotGithub': 'Marketplace [{name}] is not a GitHub source and cannot be updated',
|
|
95
|
+
'plugin.marketplaceUnreadable': 'Cannot read marketplace info: {name}',
|
|
96
|
+
'plugin.notInMarketplace': 'Plugin [{plugin}] not found in marketplace [{name}]',
|
|
97
|
+
'plugin.gitClonePluginFailed': 'git clone of plugin failed [{url}]: {stderr}',
|
|
98
|
+
// ---- Agent / Command 管理 ----
|
|
99
|
+
'agent.addMissingFields': 'Failed to add agent: missing required field name, prompt or description',
|
|
100
|
+
'agent.addInvalidLocate': "Failed to add agent: locate must be 'project' or 'user'",
|
|
101
|
+
'command.addMissingFields': 'Failed to add command: missing required field name, description or prompt',
|
|
102
|
+
'command.addInvalidLocate': "Failed to add command: locate must be 'project' or 'user'",
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=en.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../../src/util/i18n/en.ts"],"names":[],"mappings":"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"}
|