
























@@ -5,56 +5,11 @@ import { logConfigUpdated } from "../config/logging.js";
55import type { OpenClawConfig } from "../config/types.openclaw.js";
66import type { RuntimeEnv } from "../runtime.js";
77import { defaultRuntime } from "../runtime.js";
8-import type { WizardPrompter } from "../wizard/prompts.js";
8+import { createNonInteractiveLoggingPrompter } from "./non-interactive-prompter.js";
99import { runNonInteractiveLocalSetup } from "./onboard-non-interactive/local.js";
1010import { runNonInteractiveRemoteSetup } from "./onboard-non-interactive/remote.js";
1111import type { OnboardOptions } from "./onboard-types.js";
121213-function createNonInteractiveMigrationPrompter(runtime: RuntimeEnv): WizardPrompter {
14-const unavailable = <T>(message: string): Promise<T> =>
15-Promise.reject(
16-new Error(
17-`Non-interactive migration import needs explicit flags before prompting: ${message}`,
18-),
19-);
20-return {
21-async intro(title) {
22-runtime.log(title);
23-},
24-async outro(message) {
25-runtime.log(message);
26-},
27-async note(message, title) {
28-runtime.log(title ? `${title}\n${message}` : message);
29-},
30-async select(params) {
31-return unavailable(params.message);
32-},
33-async multiselect(params) {
34-return unavailable(params.message);
35-},
36-async text(params) {
37-return unavailable(params.message);
38-},
39-async confirm(params) {
40-return unavailable(params.message);
41-},
42-progress(label) {
43-runtime.log(label);
44-return {
45-update(message) {
46-runtime.log(message);
47-},
48-stop(message) {
49-if (message) {
50-runtime.log(message);
51-}
52-},
53-};
54-},
55-};
56-}
57-5813async function runNonInteractiveMigrationImport(params: {
5914opts: OnboardOptions;
6015runtime: RuntimeEnv;
@@ -79,7 +34,11 @@ async function runNonInteractiveMigrationImport(params: {
7934opts: { ...params.opts, importFrom: providerId, nonInteractive: true },
8035baseConfig: params.baseConfig,
8136 detections,
82-prompter: createNonInteractiveMigrationPrompter(params.runtime),
37+prompter: createNonInteractiveLoggingPrompter(
38+params.runtime,
39+(message) =>
40+`Non-interactive migration import needs explicit flags before prompting: ${message}`,
41+),
8342runtime: params.runtime,
8443async commitConfigFile(config) {
8544await replaceConfigFile({
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。