@ai-zen/cli 1.0.0-alpha.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1334 -275
- package/LICENSE +21 -0
- package/README.md +136 -31
- package/README.zh.md +136 -31
- package/dist/agent-creator.d.ts +11 -0
- package/dist/agent-creator.d.ts.map +1 -1
- package/dist/agent-creator.js +50 -20
- package/dist/agent-creator.js.map +1 -1
- package/dist/agent-switch.d.ts +61 -0
- package/dist/agent-switch.d.ts.map +1 -0
- package/dist/agent-switch.js +83 -0
- package/dist/agent-switch.js.map +1 -0
- package/dist/agents-store.d.ts +6 -1
- package/dist/agents-store.d.ts.map +1 -1
- package/dist/agents-store.js +46 -4
- package/dist/agents-store.js.map +1 -1
- package/dist/auto-migrate-confirm.d.ts +43 -0
- package/dist/auto-migrate-confirm.d.ts.map +1 -0
- package/dist/auto-migrate-confirm.js +47 -0
- package/dist/auto-migrate-confirm.js.map +1 -0
- package/dist/clipboard.d.ts +68 -0
- package/dist/clipboard.d.ts.map +1 -0
- package/dist/clipboard.js +177 -0
- package/dist/clipboard.js.map +1 -0
- package/dist/config-editor.d.ts +42 -5
- package/dist/config-editor.d.ts.map +1 -1
- package/dist/config-editor.js +80 -27
- package/dist/config-editor.js.map +1 -1
- package/dist/config.d.ts +76 -17
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +143 -39
- package/dist/config.js.map +1 -1
- package/dist/conversation-commands/registry.d.ts +127 -4
- package/dist/conversation-commands/registry.d.ts.map +1 -1
- package/dist/conversation-commands/registry.js +93 -14
- package/dist/conversation-commands/registry.js.map +1 -1
- package/dist/conversation-persist-plugin.d.ts +0 -1
- package/dist/conversation-persist-plugin.d.ts.map +1 -1
- package/dist/conversation-persist-plugin.js +7 -16
- package/dist/conversation-persist-plugin.js.map +1 -1
- package/dist/conversation-repository.d.ts +79 -18
- package/dist/conversation-repository.d.ts.map +1 -1
- package/dist/conversation-repository.js +96 -30
- package/dist/conversation-repository.js.map +1 -1
- package/dist/cwd-tracker-plugin.d.ts.map +1 -1
- package/dist/cwd-tracker-plugin.js +22 -7
- package/dist/cwd-tracker-plugin.js.map +1 -1
- package/dist/format-time.d.ts +17 -6
- package/dist/format-time.d.ts.map +1 -1
- package/dist/format-time.js +32 -14
- package/dist/format-time.js.map +1 -1
- package/dist/handoff-service.d.ts +19 -0
- package/dist/handoff-service.d.ts.map +1 -0
- package/dist/handoff-service.js +85 -0
- package/dist/handoff-service.js.map +1 -0
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +69 -15
- package/dist/hook.js.map +1 -1
- package/dist/i18n/en-wizard.d.ts +8 -0
- package/dist/i18n/en-wizard.d.ts.map +1 -0
- package/dist/i18n/en-wizard.js +303 -0
- package/dist/i18n/en-wizard.js.map +1 -0
- package/dist/i18n/en.d.ts +7 -0
- package/dist/i18n/en.d.ts.map +1 -0
- package/dist/i18n/en.js +245 -0
- package/dist/i18n/en.js.map +1 -0
- package/dist/i18n/index.d.ts +57 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +109 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/preferences.d.ts +37 -0
- package/dist/i18n/preferences.d.ts.map +1 -0
- package/dist/i18n/preferences.js +73 -0
- package/dist/i18n/preferences.js.map +1 -0
- package/dist/i18n/zh-wizard.d.ts +11 -0
- package/dist/i18n/zh-wizard.d.ts.map +1 -0
- package/dist/i18n/zh-wizard.js +306 -0
- package/dist/i18n/zh-wizard.js.map +1 -0
- package/dist/i18n/zh.d.ts +10 -0
- package/dist/i18n/zh.d.ts.map +1 -0
- package/dist/i18n/zh.js +249 -0
- package/dist/i18n/zh.js.map +1 -0
- package/dist/index.js +52 -23
- package/dist/index.js.map +1 -1
- package/dist/mcp-command.d.ts +32 -0
- package/dist/mcp-command.d.ts.map +1 -0
- package/dist/mcp-command.js +37 -0
- package/dist/mcp-command.js.map +1 -0
- package/dist/mode.d.ts +31 -4
- package/dist/mode.d.ts.map +1 -1
- package/dist/mode.js +42 -7
- package/dist/mode.js.map +1 -1
- package/dist/model-switch.d.ts +58 -0
- package/dist/model-switch.d.ts.map +1 -0
- package/dist/model-switch.js +62 -0
- package/dist/model-switch.js.map +1 -0
- package/dist/reasoning-effort.d.ts +96 -0
- package/dist/reasoning-effort.d.ts.map +1 -0
- package/dist/reasoning-effort.js +164 -0
- package/dist/reasoning-effort.js.map +1 -0
- package/dist/reasoning-presets.d.ts +34 -0
- package/dist/reasoning-presets.d.ts.map +1 -0
- package/dist/reasoning-presets.js +85 -0
- package/dist/reasoning-presets.js.map +1 -0
- package/dist/sdk-log.d.ts +84 -0
- package/dist/sdk-log.d.ts.map +1 -0
- package/dist/sdk-log.js +167 -0
- package/dist/sdk-log.js.map +1 -0
- package/dist/session-pointer.d.ts.map +1 -1
- package/dist/session-pointer.js +10 -4
- package/dist/session-pointer.js.map +1 -1
- package/dist/stdio-runner.d.ts.map +1 -1
- package/dist/stdio-runner.js +32 -30
- package/dist/stdio-runner.js.map +1 -1
- package/dist/sub-agent-guard-plugin.d.ts +10 -7
- package/dist/sub-agent-guard-plugin.d.ts.map +1 -1
- package/dist/sub-agent-guard-plugin.js +12 -9
- package/dist/sub-agent-guard-plugin.js.map +1 -1
- package/dist/tui/chat-history.d.ts +29 -0
- package/dist/tui/chat-history.d.ts.map +1 -0
- package/dist/tui/chat-history.js +55 -0
- package/dist/tui/chat-history.js.map +1 -0
- package/dist/tui/chat-session.d.ts +144 -13
- package/dist/tui/chat-session.d.ts.map +1 -1
- package/dist/tui/chat-session.js +312 -73
- package/dist/tui/chat-session.js.map +1 -1
- package/dist/tui/components.d.ts +109 -6
- package/dist/tui/components.d.ts.map +1 -1
- package/dist/tui/components.js +177 -12
- package/dist/tui/components.js.map +1 -1
- package/dist/tui/config-wizard/detail.d.ts +18 -10
- package/dist/tui/config-wizard/detail.d.ts.map +1 -1
- package/dist/tui/config-wizard/detail.js +53 -46
- package/dist/tui/config-wizard/detail.js.map +1 -1
- package/dist/tui/config-wizard/engine.d.ts +2 -2
- package/dist/tui/config-wizard/engine.d.ts.map +1 -1
- package/dist/tui/config-wizard/engine.js +48 -26
- package/dist/tui/config-wizard/engine.js.map +1 -1
- package/dist/tui/config-wizard/fields.d.ts +3 -1
- package/dist/tui/config-wizard/fields.d.ts.map +1 -1
- package/dist/tui/config-wizard/fields.js +202 -167
- package/dist/tui/config-wizard/fields.js.map +1 -1
- package/dist/tui/config-wizard/frame.js +1 -1
- package/dist/tui/config-wizard/kv-editor.d.ts.map +1 -1
- package/dist/tui/config-wizard/kv-editor.js +13 -5
- package/dist/tui/config-wizard/kv-editor.js.map +1 -1
- package/dist/tui/config-wizard/list.d.ts +3 -1
- package/dist/tui/config-wizard/list.d.ts.map +1 -1
- package/dist/tui/config-wizard/list.js +4 -4
- package/dist/tui/config-wizard/list.js.map +1 -1
- package/dist/tui/config-wizard/mcp-helpers.d.ts.map +1 -1
- package/dist/tui/config-wizard/mcp-helpers.js +4 -3
- package/dist/tui/config-wizard/mcp-helpers.js.map +1 -1
- package/dist/tui/config-wizard/menu.d.ts.map +1 -1
- package/dist/tui/config-wizard/menu.js +33 -21
- package/dist/tui/config-wizard/menu.js.map +1 -1
- package/dist/tui/config-wizard/prompt-editor.d.ts +8 -1
- package/dist/tui/config-wizard/prompt-editor.d.ts.map +1 -1
- package/dist/tui/config-wizard/prompt-editor.js +11 -7
- package/dist/tui/config-wizard/prompt-editor.js.map +1 -1
- package/dist/tui/config-wizard/prompt.d.ts.map +1 -1
- package/dist/tui/config-wizard/prompt.js +8 -7
- package/dist/tui/config-wizard/prompt.js.map +1 -1
- package/dist/tui/config-wizard/step-agents.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-agents.js +50 -29
- package/dist/tui/config-wizard/step-agents.js.map +1 -1
- package/dist/tui/config-wizard/step-defaults.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-defaults.js +77 -27
- package/dist/tui/config-wizard/step-defaults.js.map +1 -1
- package/dist/tui/config-wizard/step-endpoints.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-endpoints.js +27 -14
- package/dist/tui/config-wizard/step-endpoints.js.map +1 -1
- package/dist/tui/config-wizard/step-mcp.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-mcp.js +29 -25
- package/dist/tui/config-wizard/step-mcp.js.map +1 -1
- package/dist/tui/config-wizard/step-models.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-models.js +98 -43
- package/dist/tui/config-wizard/step-models.js.map +1 -1
- package/dist/tui/config-wizard/step-new-endpoint.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-new-endpoint.js +16 -12
- package/dist/tui/config-wizard/step-new-endpoint.js.map +1 -1
- package/dist/tui/config-wizard/step-simple.d.ts.map +1 -1
- package/dist/tui/config-wizard/step-simple.js +18 -17
- package/dist/tui/config-wizard/step-simple.js.map +1 -1
- package/dist/tui/config-wizard/types.d.ts +31 -3
- package/dist/tui/config-wizard/types.d.ts.map +1 -1
- package/dist/tui/config-wizard/types.js.map +1 -1
- package/dist/tui/file-index.d.ts +38 -0
- package/dist/tui/file-index.d.ts.map +1 -0
- package/dist/tui/file-index.js +117 -0
- package/dist/tui/file-index.js.map +1 -0
- package/dist/tui/index.d.ts +17 -1
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +105 -49
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/input-editing.d.ts +52 -0
- package/dist/tui/input-editing.d.ts.map +1 -0
- package/dist/tui/input-editing.js +91 -0
- package/dist/tui/input-editing.js.map +1 -0
- package/dist/tui/key-debug.d.ts +62 -0
- package/dist/tui/key-debug.d.ts.map +1 -0
- package/dist/tui/key-debug.js +92 -0
- package/dist/tui/key-debug.js.map +1 -0
- package/dist/tui/mention.d.ts +47 -0
- package/dist/tui/mention.d.ts.map +1 -0
- package/dist/tui/mention.js +152 -0
- package/dist/tui/mention.js.map +1 -0
- package/dist/tui/mouse.d.ts +55 -0
- package/dist/tui/mouse.d.ts.map +1 -0
- package/dist/tui/mouse.js +74 -0
- package/dist/tui/mouse.js.map +1 -0
- package/dist/tui/phase.d.ts +64 -0
- package/dist/tui/phase.d.ts.map +1 -0
- package/dist/tui/phase.js +112 -0
- package/dist/tui/phase.js.map +1 -0
- package/dist/tui/screens/agent-tabs.d.ts +53 -0
- package/dist/tui/screens/agent-tabs.d.ts.map +1 -0
- package/dist/tui/screens/agent-tabs.js +81 -0
- package/dist/tui/screens/agent-tabs.js.map +1 -0
- package/dist/tui/screens/chat-commands.d.ts +78 -1
- package/dist/tui/screens/chat-commands.d.ts.map +1 -1
- package/dist/tui/screens/chat-commands.js +688 -157
- package/dist/tui/screens/chat-commands.js.map +1 -1
- package/dist/tui/screens/chat.d.ts +57 -1
- package/dist/tui/screens/chat.d.ts.map +1 -1
- package/dist/tui/screens/chat.js +708 -261
- package/dist/tui/screens/chat.js.map +1 -1
- package/dist/tui/screens/common-keys.d.ts +36 -0
- package/dist/tui/screens/common-keys.d.ts.map +1 -0
- package/dist/tui/screens/common-keys.js +67 -0
- package/dist/tui/screens/common-keys.js.map +1 -0
- package/dist/tui/screens/frame-buffer.d.ts.map +1 -1
- package/dist/tui/screens/frame-buffer.js.map +1 -1
- package/dist/tui/screens/handoff-choice.d.ts +37 -0
- package/dist/tui/screens/handoff-choice.d.ts.map +1 -0
- package/dist/tui/screens/handoff-choice.js +42 -0
- package/dist/tui/screens/handoff-choice.js.map +1 -0
- package/dist/tui/screens/index.d.ts +7 -5
- package/dist/tui/screens/index.d.ts.map +1 -1
- package/dist/tui/screens/index.js +6 -5
- package/dist/tui/screens/index.js.map +1 -1
- package/dist/tui/screens/input-row.d.ts +64 -0
- package/dist/tui/screens/input-row.d.ts.map +1 -0
- package/dist/tui/screens/input-row.js +67 -0
- package/dist/tui/screens/input-row.js.map +1 -0
- package/dist/tui/screens/input.d.ts +77 -1
- package/dist/tui/screens/input.d.ts.map +1 -1
- package/dist/tui/screens/input.js +125 -8
- package/dist/tui/screens/input.js.map +1 -1
- package/dist/tui/screens/layout.d.ts +49 -0
- package/dist/tui/screens/layout.d.ts.map +1 -1
- package/dist/tui/screens/layout.js +45 -7
- package/dist/tui/screens/layout.js.map +1 -1
- package/dist/tui/screens/lines.d.ts +7 -0
- package/dist/tui/screens/lines.d.ts.map +1 -1
- package/dist/tui/screens/lines.js +6 -6
- package/dist/tui/screens/lines.js.map +1 -1
- package/dist/tui/screens/messages-view.d.ts +20 -1
- package/dist/tui/screens/messages-view.d.ts.map +1 -1
- package/dist/tui/screens/messages-view.js +55 -8
- package/dist/tui/screens/messages-view.js.map +1 -1
- package/dist/tui/screens/notice-bar.d.ts +5 -0
- package/dist/tui/screens/notice-bar.d.ts.map +1 -0
- package/dist/tui/screens/notice-bar.js +21 -0
- package/dist/tui/screens/notice-bar.js.map +1 -0
- package/dist/tui/screens/notice.d.ts +44 -10
- package/dist/tui/screens/notice.d.ts.map +1 -1
- package/dist/tui/screens/notice.js +75 -15
- package/dist/tui/screens/notice.js.map +1 -1
- package/dist/tui/screens/overlays.d.ts.map +1 -1
- package/dist/tui/screens/overlays.js +4 -3
- package/dist/tui/screens/overlays.js.map +1 -1
- package/dist/tui/screens/render.d.ts +1 -1
- package/dist/tui/screens/render.d.ts.map +1 -1
- package/dist/tui/screens/render.js +18 -11
- package/dist/tui/screens/render.js.map +1 -1
- package/dist/tui/screens/use-chat-viewport.d.ts +22 -0
- package/dist/tui/screens/use-chat-viewport.d.ts.map +1 -0
- package/dist/tui/screens/use-chat-viewport.js +50 -0
- package/dist/tui/screens/use-chat-viewport.js.map +1 -0
- package/dist/tui/screens/use-input-editing.d.ts +69 -0
- package/dist/tui/screens/use-input-editing.d.ts.map +1 -0
- package/dist/tui/screens/use-input-editing.js +220 -0
- package/dist/tui/screens/use-input-editing.js.map +1 -0
- package/dist/tui/screens/use-overlays.d.ts +25 -0
- package/dist/tui/screens/use-overlays.d.ts.map +1 -0
- package/dist/tui/screens/use-overlays.js +32 -0
- package/dist/tui/screens/use-overlays.js.map +1 -0
- package/dist/tui/screens/use-wizard-host.d.ts +46 -0
- package/dist/tui/screens/use-wizard-host.d.ts.map +1 -0
- package/dist/tui/screens/use-wizard-host.js +123 -0
- package/dist/tui/screens/use-wizard-host.js.map +1 -0
- package/dist/tui/screens/welcome.d.ts +12 -0
- package/dist/tui/screens/welcome.d.ts.map +1 -0
- package/dist/tui/screens/welcome.js +36 -0
- package/dist/tui/screens/welcome.js.map +1 -0
- package/dist/tui/status-segments.d.ts +37 -0
- package/dist/tui/status-segments.d.ts.map +1 -0
- package/dist/tui/status-segments.js +166 -0
- package/dist/tui/status-segments.js.map +1 -0
- package/dist/tui/text.d.ts +22 -7
- package/dist/tui/text.d.ts.map +1 -1
- package/dist/tui/text.js +110 -39
- package/dist/tui/text.js.map +1 -1
- package/dist/tui/theme.d.ts +2 -0
- package/dist/tui/theme.d.ts.map +1 -1
- package/dist/tui/theme.js +2 -0
- package/dist/tui/theme.js.map +1 -1
- package/dist/tui/token-rate.d.ts +83 -0
- package/dist/tui/token-rate.d.ts.map +1 -0
- package/dist/tui/token-rate.js +195 -0
- package/dist/tui/token-rate.js.map +1 -0
- package/dist/types.d.ts +7 -8
- package/dist/types.d.ts.map +1 -1
- package/dist/user-content.d.ts +41 -0
- package/dist/user-content.d.ts.map +1 -0
- package/dist/user-content.js +37 -0
- package/dist/user-content.js.map +1 -0
- package/dist/version-compare.d.ts +37 -0
- package/dist/version-compare.d.ts.map +1 -0
- package/dist/version-compare.js +105 -0
- package/dist/version-compare.js.map +1 -0
- package/dist/version.js.map +1 -1
- package/package.json +7 -5
- package/dist/auto-migrate-confirm-plugin.d.ts +0 -58
- package/dist/auto-migrate-confirm-plugin.d.ts.map +0 -1
- package/dist/auto-migrate-confirm-plugin.js +0 -61
- package/dist/auto-migrate-confirm-plugin.js.map +0 -1
- package/dist/migration-service.d.ts +0 -15
- package/dist/migration-service.d.ts.map +0 -1
- package/dist/migration-service.js +0 -66
- package/dist/migration-service.js.map +0 -1
- package/dist/tui/screens/splash.d.ts +0 -5
- package/dist/tui/screens/splash.d.ts.map +0 -1
- package/dist/tui/screens/splash.js +0 -51
- package/dist/tui/screens/splash.js.map +0 -1
|
@@ -4,13 +4,14 @@ import { useState } from "react";
|
|
|
4
4
|
import { Box, Text, useCursor, useInput } from "ink";
|
|
5
5
|
import { theme } from "../theme.js";
|
|
6
6
|
import { KeyHints } from "../components.js";
|
|
7
|
-
import { INPUT_PREFIX_WIDTH, bottomPadding, displayWidth, layoutInput, isTerminalReply } from "../text.js";
|
|
7
|
+
import { INPUT_PREFIX_WIDTH, bottomPadding, displayWidth, graphemes, layoutInput, isTerminalReply } from "../text.js";
|
|
8
8
|
import { Header, WizardFrame, textRows } from "./frame.js";
|
|
9
|
+
import { t } from "../../i18n/index.js";
|
|
9
10
|
/** 计算输入屏的顶部留白与硬件光标坐标(吸底布局 + IME 跟随) */
|
|
10
11
|
export function promptLayout(input) {
|
|
11
12
|
const contentLines = input.headerLines + input.inputLines + input.extraLines + input.hintLines;
|
|
12
13
|
const topPadding = bottomPadding(input.terminalRows, contentLines);
|
|
13
|
-
const before =
|
|
14
|
+
const before = graphemes(input.lineText).slice(0, input.cursorCol).join("");
|
|
14
15
|
return {
|
|
15
16
|
contentLines,
|
|
16
17
|
topPadding,
|
|
@@ -29,9 +30,9 @@ export function promptLayout(input) {
|
|
|
29
30
|
export function PromptScreen(props) {
|
|
30
31
|
const { setCursorPosition } = useCursor();
|
|
31
32
|
const [value, setValue] = useState(props.initialValue ?? "");
|
|
32
|
-
const [cursor, setCursor] = useState(
|
|
33
|
+
const [cursor, setCursor] = useState(graphemes(props.initialValue ?? "").length);
|
|
33
34
|
const [revealed, setRevealed] = useState(!props.mask);
|
|
34
|
-
const chars =
|
|
35
|
+
const chars = graphemes(value);
|
|
35
36
|
const caret = Math.max(0, Math.min(cursor, chars.length));
|
|
36
37
|
const display = revealed ? value : "•".repeat(chars.length);
|
|
37
38
|
const layout = layoutInput(display, caret, Math.max(4, props.columns - 4));
|
|
@@ -58,7 +59,7 @@ export function PromptScreen(props) {
|
|
|
58
59
|
props.onChange?.(next);
|
|
59
60
|
};
|
|
60
61
|
const insert = (text) => {
|
|
61
|
-
update(chars.slice(0, caret).join("") + text + chars.slice(caret).join(""), caret +
|
|
62
|
+
update(chars.slice(0, caret).join("") + text + chars.slice(caret).join(""), caret + graphemes(text).length);
|
|
62
63
|
};
|
|
63
64
|
const deleteBefore = () => {
|
|
64
65
|
if (caret === 0)
|
|
@@ -122,9 +123,9 @@ export function PromptScreen(props) {
|
|
|
122
123
|
if (index !== layout.cursorRow) {
|
|
123
124
|
return (_jsxs(Text, { wrap: "truncate", children: [prompt, _jsx(Text, { children: line })] }, index));
|
|
124
125
|
}
|
|
125
|
-
const rowChars =
|
|
126
|
+
const rowChars = graphemes(line);
|
|
126
127
|
const at = rowChars[layout.cursorCol];
|
|
127
128
|
return (_jsxs(Text, { wrap: "truncate", children: [prompt, _jsx(Text, { children: rowChars.slice(0, layout.cursorCol).join("") }), _jsx(Text, { inverse: true, color: theme.brand[0], children: at ?? " " }), _jsx(Text, { children: rowChars.slice(layout.cursorCol + 1).join("") })] }, index));
|
|
128
|
-
}) }), chars.length === 0 ? (_jsx(Box, { paddingX: 1, children: _jsx(Text, { color: theme.faint, wrap: "truncate", children: props.mask ? "
|
|
129
|
+
}) }), chars.length === 0 ? (_jsx(Box, { paddingX: 1, children: _jsx(Text, { color: theme.faint, wrap: "truncate", children: props.mask ? t("wiz.promptSecretHint") : t("wiz.promptHint") }) })) : null, props.error ? (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.error, wrap: "truncate", children: ["\u2716 ", props.error] }) })) : null, props.mask && revealed ? (_jsx(Box, { paddingX: 1, children: _jsx(Text, { color: theme.warn, wrap: "truncate", children: t("wiz.plaintextRevealed") }) })) : null, _jsx(KeyHints, { hints: props.hints })] }));
|
|
129
130
|
}
|
|
130
131
|
//# sourceMappingURL=prompt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/prompt.tsx"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/prompt.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-agents.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-agents.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"step-agents.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-agents.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAMlC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAO5C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAwN9D"}
|
|
@@ -1,30 +1,36 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { DEFAULT_AGENT_DEFINITION, DEFAULT_AGENT_ID } from "@ai-zen/agents-sdk";
|
|
2
3
|
import { agentKindLabel, agentList, findAgentDefinition } from "../../agents-store.js";
|
|
3
|
-
import { createAgentDefinition, createSubAgentDefinition, getAgentPrompt, parseFunctionParameters, setAgentPrompt, uniqueAgentId, updateAgentFunction } from "../../config-editor.js";
|
|
4
|
+
import { createAgentDefinition, createSubAgentDefinition, getAgentPrompt, parseFunctionParameters, restoreFactoryAgent, setAgentPrompt, uniqueAgentId, updateAgentFunction } from "../../config-editor.js";
|
|
4
5
|
import { NEW_AGENT, NEW_SUBAGENT } from "./types.js";
|
|
5
6
|
import { ListStep } from "./list.js";
|
|
6
7
|
import { DetailStep } from "./detail.js";
|
|
7
8
|
import { PromptEditorScreen } from "./prompt-editor.js";
|
|
8
9
|
import { PromptScreen } from "./prompt.js";
|
|
10
|
+
import { t } from "../../i18n/index.js";
|
|
9
11
|
export function renderAgentsStep(ctx) {
|
|
10
12
|
const { store, error, notice, activeStep, go, saveAgent, deleteAgent, setError, agentFields, agentPermFields, cols, rows } = ctx;
|
|
11
13
|
// ---------- Agent 定义列表 ----------
|
|
12
14
|
if (activeStep.kind === "agents") {
|
|
13
15
|
const items = [
|
|
14
|
-
{ label: "
|
|
15
|
-
{ label: "
|
|
16
|
+
{ label: t("wiz.agents.new"), value: NEW_AGENT, hint: t("wiz.agents.newHint") },
|
|
17
|
+
{ label: t("wiz.agents.newSub"), value: NEW_SUBAGENT, hint: t("wiz.agents.newSubHint") },
|
|
16
18
|
...store.agents.map((def) => ({
|
|
17
19
|
label: def.name || def.id,
|
|
18
20
|
value: `agent:${def.id}`,
|
|
19
|
-
hint:
|
|
21
|
+
hint: t("wiz.agents.itemHint", {
|
|
22
|
+
kind: agentKindLabel("agent"),
|
|
23
|
+
id: def.id,
|
|
24
|
+
factory: def.custom ? "" : t("wiz.agent.factorySuffix"),
|
|
25
|
+
}),
|
|
20
26
|
})),
|
|
21
27
|
...store.subAgents.map((def) => ({
|
|
22
28
|
label: def.name || def.id,
|
|
23
29
|
value: `subagent:${def.id}`,
|
|
24
|
-
hint:
|
|
30
|
+
hint: t("wiz.agents.itemHint", { kind: agentKindLabel("subagent"), id: def.id, factory: "" }),
|
|
25
31
|
})),
|
|
26
32
|
];
|
|
27
|
-
return (_jsx(ListStep, { columns: cols, rows: rows, title: "
|
|
33
|
+
return (_jsx(ListStep, { columns: cols, rows: rows, title: t("wiz.agents.title"), subtitle: t("wiz.menu.agentsSummary", { agent: store.agents.length, sub: store.subAgents.length }), items: items, onPick: (value) => {
|
|
28
34
|
if (value === NEW_AGENT)
|
|
29
35
|
go({ kind: "agent-new", agentKind: "agent" });
|
|
30
36
|
else if (value === NEW_SUBAGENT)
|
|
@@ -39,24 +45,39 @@ export function renderAgentsStep(ctx) {
|
|
|
39
45
|
if (activeStep.kind === "agent") {
|
|
40
46
|
const { agentKind, agentId } = activeStep;
|
|
41
47
|
const def = findAgentDefinition(store, agentKind, agentId);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
const actions = [];
|
|
49
|
+
// 只有出厂默认 Agent 才有「出厂」可回:其它 Agent 的 `custom` 在 SDK 里是死字段
|
|
50
|
+
// (`ensureDefaultAgent` 只碰 `default.json`),给它一个恢复不了任何东西的按钮没意义
|
|
51
|
+
if (agentKind === "agent" && def.id === DEFAULT_AGENT_ID) {
|
|
52
|
+
actions.push({
|
|
53
|
+
label: t("wiz.agent.restore"),
|
|
54
|
+
run: async () => saveAgent(agentKind, restoreFactoryAgent(def, DEFAULT_AGENT_DEFINITION), t("wiz.agentRestored", { kind: agentKindLabel(agentKind), id: def.id })),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
actions.push({
|
|
58
|
+
label: t("wiz.agent.deleteAction", { kind: agentKindLabel(agentKind) }),
|
|
59
|
+
danger: true,
|
|
60
|
+
run: async () => {
|
|
61
|
+
const failure = await deleteAgent(agentKind, def.id);
|
|
62
|
+
if (!failure)
|
|
63
|
+
go({ kind: "agents" });
|
|
64
|
+
return failure;
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
return (_jsx(DetailStep, { columns: cols, rows: rows, title: t("wiz.agent.detailTitle", { kind: agentKindLabel(agentKind), name: def.name || def.id }), details: [
|
|
68
|
+
t("wiz.agent.detailLine", {
|
|
69
|
+
id: def.id,
|
|
70
|
+
kind: def.custom ? t("wiz.kind.custom") : t("wiz.kind.factory"),
|
|
71
|
+
subSuffix: agentKind === "subagent" ? t("wiz.agent.subSuffix") : "",
|
|
72
|
+
}),
|
|
73
|
+
t("wiz.agent.moveHint"),
|
|
74
|
+
], fields: agentFields(agentKind, def), notice: notice, actions: actions, onBack: () => go({ kind: "agents" }) }));
|
|
54
75
|
}
|
|
55
76
|
// ---------- Agent 权限子屏 ----------
|
|
56
77
|
if (activeStep.kind === "agent-perms") {
|
|
57
78
|
const { agentKind, agentId } = activeStep;
|
|
58
79
|
const def = findAgentDefinition(store, agentKind, agentId);
|
|
59
|
-
return (_jsx(DetailStep, { columns: cols, rows: rows, title:
|
|
80
|
+
return (_jsx(DetailStep, { columns: cols, rows: rows, title: t("wiz.agent.subscreenTitle", { kind: agentKindLabel(agentKind), id: def.id, label: t("field.permissions") }), details: [t("wiz.agent.permHint"), t("wiz.agent.permMoveHint")], fields: agentPermFields(agentKind, def), notice: notice, onBack: () => go({ kind: "agent", agentKind, agentId }) }));
|
|
60
81
|
}
|
|
61
82
|
// ---------- Agent / Sub-agent 多行文本编辑(提示词 / 函数说明 / 参数 schema,系统编辑器)----------
|
|
62
83
|
if (activeStep.kind === "agent-text") {
|
|
@@ -67,36 +88,36 @@ export function renderAgentsStep(ctx) {
|
|
|
67
88
|
const name = `${agentKindLabel(agentKind)} ${def.id}`;
|
|
68
89
|
const back = () => go({ kind: "agent", agentKind, agentId });
|
|
69
90
|
if (field === "fnParams") {
|
|
70
|
-
return (_jsx(PromptEditorScreen, { columns: cols, rows: rows, title:
|
|
91
|
+
return (_jsx(PromptEditorScreen, { openEditor: ctx.props.openEditor, columns: cols, rows: rows, title: t("wiz.agent.subscreenTitle", { kind: agentKindLabel(agentKind), id: def.id, label: t("field.paramsSchema") }), subtitle: t("wiz.agent.fnParamsSubtitle"), text: JSON.stringify(def.function?.parameters ?? {}, null, 2), ext: "json", notice: notice, onSave: (value) => {
|
|
71
92
|
const parsed = parseFunctionParameters(value);
|
|
72
93
|
if (typeof parsed === "string")
|
|
73
94
|
return Promise.resolve(parsed);
|
|
74
|
-
return saveAgent(agentKind, updateAgentFunction(target, { parameters: parsed }),
|
|
95
|
+
return saveAgent(agentKind, updateAgentFunction(target, { parameters: parsed }), t("wiz.agent.fnParamsUpdated", { name }));
|
|
75
96
|
}, onBack: back }));
|
|
76
97
|
}
|
|
77
98
|
if (field === "fnDesc") {
|
|
78
|
-
return (_jsx(PromptEditorScreen, { columns: cols, rows: rows, title:
|
|
99
|
+
return (_jsx(PromptEditorScreen, { openEditor: ctx.props.openEditor, columns: cols, rows: rows, title: t("wiz.agent.subscreenTitle", { kind: agentKindLabel(agentKind), id: def.id, label: t("field.functionDescription") }), subtitle: t("wiz.agent.editorSubtitle"), text: def.function?.description ?? "", notice: notice, onSave: (value) => saveAgent(agentKind, updateAgentFunction(target, { description: value }), t("wiz.agent.fnDescUpdated", { name })), onBack: back }));
|
|
79
100
|
}
|
|
80
101
|
// field === "prompt"
|
|
81
|
-
return (_jsx(PromptEditorScreen, { columns: cols, rows: rows, title:
|
|
102
|
+
return (_jsx(PromptEditorScreen, { openEditor: ctx.props.openEditor, columns: cols, rows: rows, title: t("wiz.agent.subscreenTitle", { kind: agentKindLabel(agentKind), id: def.id, label: t("field.prompt") }), subtitle: t("wiz.agent.editorSubtitle"), text: getAgentPrompt(def), notice: notice, onSave: (value) => saveAgent(agentKind, setAgentPrompt(target, value), t("wiz.agent.promptUpdated", { name })), onBack: back }));
|
|
82
103
|
}
|
|
83
104
|
// ---------- 新建 Agent / Sub-agent ----------
|
|
84
105
|
if (activeStep.kind === "agent-new") {
|
|
85
106
|
const kind = activeStep.agentKind;
|
|
86
107
|
const kindName = agentKindLabel(kind);
|
|
87
|
-
return (_jsx(PromptScreen, { columns: cols, rows: rows, title:
|
|
88
|
-
"
|
|
89
|
-
kind === "agent" ? "
|
|
90
|
-
], error: error, hints: [["Enter", "
|
|
108
|
+
return (_jsx(PromptScreen, { columns: cols, rows: rows, title: t("wiz.agent.newTitle", { kind: kindName }), details: [
|
|
109
|
+
t("wiz.agent.newDesc", { example: "Coder" }),
|
|
110
|
+
kind === "agent" ? t("wiz.agent.newDescAgent") : t("wiz.agent.newDescSub"),
|
|
111
|
+
], error: error, hints: [["Enter", t("wiz.createAndEdit")], ["Esc", t("ui.back")]], onSubmit: (value) => {
|
|
91
112
|
const name = value.trim();
|
|
92
113
|
if (!name) {
|
|
93
|
-
setError("
|
|
114
|
+
setError(t("err.nameRequired"));
|
|
94
115
|
return;
|
|
95
116
|
}
|
|
96
117
|
const id = uniqueAgentId(agentList(store, kind).map((item) => item.id), name, kind === "agent" ? "agent" : "subagent");
|
|
97
118
|
const def = kind === "agent" ? createAgentDefinition({ id, name }) : createSubAgentDefinition({ id, name });
|
|
98
119
|
void (async () => {
|
|
99
|
-
const failure = await saveAgent(kind, def,
|
|
120
|
+
const failure = await saveAgent(kind, def, t("wiz.agent.created", { kind: kindName, name, id }));
|
|
100
121
|
if (failure) {
|
|
101
122
|
setError(failure);
|
|
102
123
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-agents.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-agents.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"step-agents.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-agents.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-defaults.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-defaults.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"step-defaults.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-defaults.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAelC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAY5C,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CA0IhE"}
|
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { findEndpoint, findModel, isApiKeySet, setDefaultAgent, setDefaultImageModel, setDefaultMigrationModel,
|
|
2
|
+
import { findEndpoint, findModel, isApiKeySet, setAbortedMessageStrategy, setAbortedToolRoundStrategy, setDefaultAgent, setDefaultImageModel, setDefaultMigrationModel, } from "../../config-editor.js";
|
|
3
3
|
import { ListStep } from "./list.js";
|
|
4
|
+
import { t } from "../../i18n/index.js";
|
|
5
|
+
/** 策略值的展示名(固定两档,直接按值取词条) */
|
|
6
|
+
function strategyLabel(value) {
|
|
7
|
+
if (value === "keep")
|
|
8
|
+
return t("wiz.strategy.keep");
|
|
9
|
+
if (value === "drop")
|
|
10
|
+
return t("wiz.strategy.drop");
|
|
11
|
+
if (value === "fill")
|
|
12
|
+
return t("wiz.strategy.fill");
|
|
13
|
+
return value;
|
|
14
|
+
}
|
|
4
15
|
export function renderDefaultsStep(ctx) {
|
|
5
16
|
const { config, store, activeStep, go, commit, cols, rows, props } = ctx;
|
|
6
17
|
// ---------- 默认项子菜单 ----------
|
|
@@ -8,42 +19,71 @@ export function renderDefaultsStep(ctx) {
|
|
|
8
19
|
const defaultImage = (config.imageModels ?? []).find((model) => model.id === config.defaultImageModel);
|
|
9
20
|
const items = [
|
|
10
21
|
{
|
|
11
|
-
label: "
|
|
12
|
-
value: "defaultModel",
|
|
13
|
-
hint: findModel(config, config.defaultModel)?.name ?? config.defaultModel ?? "未设置",
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
label: "默认图片模型",
|
|
22
|
+
label: t("wiz.defaults.imageModel"),
|
|
17
23
|
value: "defaultImageModel",
|
|
18
|
-
hint: defaultImage?.name ?? config.defaultImageModel ?? "
|
|
24
|
+
hint: defaultImage?.name ?? config.defaultImageModel ?? t("common.unsetPlain"),
|
|
19
25
|
},
|
|
20
|
-
{ label: "
|
|
26
|
+
{ label: t("wiz.defaults.agent"), value: "defaultAgent", hint: config.defaultAgent ?? t("common.unsetPlain") },
|
|
21
27
|
{
|
|
22
|
-
label: "
|
|
28
|
+
label: t("wiz.defaults.migrationModel"),
|
|
23
29
|
value: "defaultMigrationModel",
|
|
24
|
-
hint: findModel(config, config.defaultMigrationModel)?.name ?? config.defaultMigrationModel ?? "
|
|
30
|
+
hint: findModel(config, config.defaultMigrationModel)?.name ?? config.defaultMigrationModel ?? t("common.unsetPlain"),
|
|
31
|
+
},
|
|
32
|
+
// 中断策略:改的是「建 Agent 时才读的配置」,关向导时宿主会重建会话让它生效
|
|
33
|
+
{
|
|
34
|
+
label: t("wiz.defaults.strategyMessage"),
|
|
35
|
+
value: "abortedMessageStrategy",
|
|
36
|
+
hint: strategyLabel(config.abortedMessageStrategy ?? "keep"),
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
label: t("wiz.defaults.strategyToolRound"),
|
|
40
|
+
value: "abortedToolRoundStrategy",
|
|
41
|
+
hint: strategyLabel(config.abortedToolRoundStrategy ?? "fill"),
|
|
25
42
|
},
|
|
26
43
|
];
|
|
27
|
-
return (_jsx(ListStep, { columns: cols, rows: rows, title: "
|
|
44
|
+
return (_jsx(ListStep, { columns: cols, rows: rows, title: t("wiz.defaults.title"), subtitle: t("wiz.defaults.subtitle"), items: items, onPick: (target) => go({ kind: "pick-default", target }), onCancel: () => go({ kind: "menu" }) }));
|
|
28
45
|
}
|
|
29
46
|
// ---------- 选择某个默认项的值 ----------
|
|
30
47
|
if (activeStep.kind === "pick-default") {
|
|
31
48
|
const target = activeStep.target;
|
|
32
|
-
let title = "
|
|
49
|
+
let title = t("wiz.defaults.title");
|
|
33
50
|
let items = [];
|
|
34
|
-
|
|
35
|
-
|
|
51
|
+
// 策略是**固定两档**,没有「不设置」这一项(它们总是有值:配置里写着的就是运行时用的)
|
|
52
|
+
const strategyTarget = target === "abortedMessageStrategy" || target === "abortedToolRoundStrategy";
|
|
53
|
+
if (target === "abortedMessageStrategy") {
|
|
54
|
+
title = t("wiz.defaults.strategyMessage");
|
|
55
|
+
const current = config.abortedMessageStrategy ?? "keep";
|
|
56
|
+
items = ["keep", "drop"].map((value) => ({
|
|
57
|
+
label: `${strategyLabel(value)}${value === current ? t("common.current") : ""}`,
|
|
58
|
+
value,
|
|
59
|
+
hint: value === "keep" ? t("wiz.strategy.keepHint") : t("wiz.strategy.dropHint"),
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
else if (target === "abortedToolRoundStrategy") {
|
|
63
|
+
title = t("wiz.defaults.strategyToolRound");
|
|
64
|
+
const current = config.abortedToolRoundStrategy ?? "fill";
|
|
65
|
+
items = ["fill", "drop"].map((value) => ({
|
|
66
|
+
label: `${strategyLabel(value)}${value === current ? t("common.current") : ""}`,
|
|
67
|
+
value,
|
|
68
|
+
hint: value === "fill" ? t("wiz.strategy.fillHint") : t("wiz.strategy.toolDropHint"),
|
|
69
|
+
}));
|
|
70
|
+
}
|
|
71
|
+
else if (target === "defaultMigrationModel") {
|
|
72
|
+
title = t("wiz.defaults.migrationModel");
|
|
36
73
|
items = config.models.map((model) => {
|
|
37
74
|
const endpoint = findEndpoint(config, model.endpointId);
|
|
38
75
|
return {
|
|
39
76
|
label: model.name || model.id,
|
|
40
77
|
value: model.id,
|
|
41
|
-
hint:
|
|
78
|
+
hint: t("wiz.defaults.itemHint", {
|
|
79
|
+
endpoint: endpoint?.name ?? model.endpointId,
|
|
80
|
+
state: isApiKeySet(endpoint?.apiKey) ? t("wiz.defaults.keyReady") : t("wiz.defaults.missingKey"),
|
|
81
|
+
}),
|
|
42
82
|
};
|
|
43
83
|
});
|
|
44
84
|
}
|
|
45
85
|
else if (target === "defaultImageModel") {
|
|
46
|
-
title = "
|
|
86
|
+
title = t("wiz.defaults.imageModel");
|
|
47
87
|
items = (config.imageModels ?? []).map((model) => ({
|
|
48
88
|
label: model.name || model.id,
|
|
49
89
|
value: model.id,
|
|
@@ -51,24 +91,34 @@ export function renderDefaultsStep(ctx) {
|
|
|
51
91
|
}));
|
|
52
92
|
}
|
|
53
93
|
else {
|
|
54
|
-
title = "
|
|
94
|
+
title = t("wiz.defaults.agent");
|
|
55
95
|
const source = props.agentStore
|
|
56
96
|
? store.agents.map((agent) => ({ id: agent.id, name: agent.name || agent.id }))
|
|
57
97
|
: (props.agents ?? []);
|
|
58
98
|
items = source.map((agent) => ({ label: agent.name, value: agent.id, hint: agent.id }));
|
|
59
99
|
}
|
|
60
|
-
|
|
61
|
-
|
|
100
|
+
// 策略目标不提供「不设置」:两档必选其一
|
|
101
|
+
if (!strategyTarget)
|
|
102
|
+
items = [...items, { label: t("common.unset"), value: "" }];
|
|
103
|
+
return (_jsx(ListStep, { columns: cols, rows: rows, title: title, subtitle: strategyTarget ? t("wiz.defaults.strategySubtitle") : t("wiz.defaults.pickSubtitle"), items: items, onPick: (value) => {
|
|
104
|
+
if (target === "abortedMessageStrategy") {
|
|
105
|
+
void commit(setAbortedMessageStrategy(config, value), t("wiz.defaults.updated", { label: t("wiz.defaults.strategyMessage"), value: strategyLabel(value) }), [], { kind: "defaults" },
|
|
106
|
+
// 策略在建 Agent 时才读 → 标记会话选项已改,关向导时宿主重建会话
|
|
107
|
+
true);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (target === "abortedToolRoundStrategy") {
|
|
111
|
+
void commit(setAbortedToolRoundStrategy(config, value), t("wiz.defaults.updated", { label: t("wiz.defaults.strategyToolRound"), value: strategyLabel(value) }), [], { kind: "defaults" }, true);
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
62
114
|
const id = value || undefined;
|
|
63
|
-
const label = value || "
|
|
64
|
-
if (target === "
|
|
65
|
-
void commit(
|
|
66
|
-
else if (target === "defaultMigrationModel")
|
|
67
|
-
void commit(setDefaultMigrationModel(config, id), `默认迁移模型 → ${label}`, [], { kind: "defaults" });
|
|
115
|
+
const label = value || t("common.unsetPlain");
|
|
116
|
+
if (target === "defaultMigrationModel")
|
|
117
|
+
void commit(setDefaultMigrationModel(config, id), t("wiz.defaults.updated", { label: t("wiz.defaults.migrationModel"), value: label }), [], { kind: "defaults" });
|
|
68
118
|
else if (target === "defaultImageModel")
|
|
69
|
-
void commit(setDefaultImageModel(config, id),
|
|
119
|
+
void commit(setDefaultImageModel(config, id), t("wiz.defaults.updated", { label: t("wiz.defaults.imageModel"), value: label }), [], { kind: "defaults" });
|
|
70
120
|
else
|
|
71
|
-
void commit(setDefaultAgent(config, id),
|
|
121
|
+
void commit(setDefaultAgent(config, id), t("wiz.defaults.updated", { label: t("wiz.defaults.agent"), value: label }), [], { kind: "defaults" });
|
|
72
122
|
}, onCancel: () => go({ kind: "defaults" }) }));
|
|
73
123
|
}
|
|
74
124
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-defaults.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-defaults.tsx"],"names":[],"mappings":";AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"step-defaults.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-defaults.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-endpoints.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-endpoints.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"step-endpoints.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-endpoints.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAK5C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAyEjE"}
|
|
@@ -3,19 +3,20 @@ import { findEndpoint, maskApiKey, modelsUsingEndpoint, removeEndpoint } from ".
|
|
|
3
3
|
import { NEW_ENDPOINT } from "./types.js";
|
|
4
4
|
import { ListStep } from "./list.js";
|
|
5
5
|
import { DetailStep } from "./detail.js";
|
|
6
|
+
import { t } from "../../i18n/index.js";
|
|
6
7
|
export function renderEndpointsStep(ctx) {
|
|
7
8
|
const { config, notice, draft, activeStep, go, persist, endpointFields, cols, rows } = ctx;
|
|
8
9
|
// ---------- 端点管理([新建端点] + 端点列表)----------
|
|
9
10
|
if (activeStep.kind === "endpoints") {
|
|
10
11
|
const items = [
|
|
11
|
-
{ label: "
|
|
12
|
+
{ label: t("wiz.endpoints.newItem"), value: NEW_ENDPOINT, hint: t("wiz.endpoints.newItemHint") },
|
|
12
13
|
...config.endpoints.map((endpoint) => ({
|
|
13
14
|
label: endpoint.name || endpoint.id,
|
|
14
15
|
value: endpoint.id,
|
|
15
16
|
hint: `${maskApiKey(endpoint.apiKey)} · ${endpoint.baseUrl}`,
|
|
16
17
|
})),
|
|
17
18
|
];
|
|
18
|
-
return (_jsx(ListStep, { columns: cols, rows: rows, title: "
|
|
19
|
+
return (_jsx(ListStep, { columns: cols, rows: rows, title: t("wiz.menu.endpoints"), subtitle: t("wiz.endpoints.subtitle", { n: config.endpoints.length }), items: items, onPick: (value) => value === NEW_ENDPOINT
|
|
19
20
|
? go({ kind: "new-endpoint", field: "name", draft })
|
|
20
21
|
: go({ kind: "endpoint", endpointId: value }), onCancel: () => go({ kind: "menu" }) }));
|
|
21
22
|
}
|
|
@@ -24,19 +25,31 @@ export function renderEndpointsStep(ctx) {
|
|
|
24
25
|
const endpoint = findEndpoint(config, activeStep.endpointId);
|
|
25
26
|
const name = endpoint.name || endpoint.id;
|
|
26
27
|
const modelCount = modelsUsingEndpoint(config, endpoint.id).length;
|
|
27
|
-
return (_jsx(DetailStep, { columns: cols, rows: rows, title:
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
28
|
+
return (_jsx(DetailStep, { columns: cols, rows: rows, title: t("wiz.endpoints.detailTitle", { name }), details: [
|
|
29
|
+
t("wiz.endpoints.detailLine", {
|
|
30
|
+
id: endpoint.id,
|
|
31
|
+
refs: modelCount > 0 ? t("wiz.endpoints.refSuffix", { n: modelCount }) : "",
|
|
32
|
+
}),
|
|
33
|
+
t("wiz.endpoints.moveHint"),
|
|
34
|
+
], fields: endpointFields(endpoint), notice: notice, actions: [
|
|
35
|
+
{
|
|
36
|
+
label: t("wiz.endpoints.delete"),
|
|
37
|
+
danger: true,
|
|
38
|
+
run: async () => {
|
|
39
|
+
const refs = modelsUsingEndpoint(config, endpoint.id);
|
|
40
|
+
if (refs.length > 0) {
|
|
41
|
+
return t("wiz.endpoints.deleteBlocked", {
|
|
42
|
+
n: refs.length,
|
|
43
|
+
models: refs.map((m) => m.name || m.id).join(t("common.listSep")),
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
const failure = await persist(removeEndpoint(config, endpoint.id), t("wiz.endpoints.deleted", { name }));
|
|
47
|
+
if (!failure)
|
|
48
|
+
go({ kind: "endpoints" });
|
|
49
|
+
return failure;
|
|
50
|
+
},
|
|
38
51
|
},
|
|
39
|
-
|
|
52
|
+
], onBack: () => go({ kind: "endpoints" }) }));
|
|
40
53
|
}
|
|
41
54
|
return null;
|
|
42
55
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-endpoints.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-endpoints.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"step-endpoints.js","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-endpoints.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-mcp.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-mcp.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"step-mcp.d.ts","sourceRoot":"","sources":["../../../src/tui/config-wizard/step-mcp.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQ5C,wBAAgB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,CAiJ3D"}
|