@heretek-ai/openclaw 2026.3.27 → 2026.3.29

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.
@@ -0,0 +1,168 @@
1
+ import "./redact-CtGOTRBK.mjs";
2
+ import "./errors-CbvpN2RP.mjs";
3
+ import "./logger-vRSRu9wD.mjs";
4
+ import "./paths-CNST7z3O.mjs";
5
+ import "./tmp-openclaw-dir-BeWwpCKM.mjs";
6
+ import { r as theme } from "./theme-w86ra_7m.mjs";
7
+ import "./globals-DZFR3wyP.mjs";
8
+ import { m as defaultRuntime } from "./subsystem-yLe4Gjha.mjs";
9
+ import "./ansi-BJ9IOlIp.mjs";
10
+ import "./boolean-Bwxxidw8.mjs";
11
+ import "./env-9fhyzTaG.mjs";
12
+ import "./utils-Dc9DiBqf.mjs";
13
+ import { t as formatDocsLink } from "./links-BNNF54ea.mjs";
14
+ import "./agent-scope-CnAwGoC2.mjs";
15
+ import "./boundary-path-DnlNnNbU.mjs";
16
+ import "./boundary-file-read-BB4JbZzx.mjs";
17
+ import "./logger-DWOgrQoS.mjs";
18
+ import "./exec-DX0zVVG7.mjs";
19
+ import "./openclaw-root-CSfnLaqO.mjs";
20
+ import "./workspace-CoFl73GV.mjs";
21
+ import "./model-selection-BJk_hQeE.mjs";
22
+ import "./io-CDQGJKjg.mjs";
23
+ import "./shell-env-CP5vTYhw.mjs";
24
+ import "./safe-text-Bsdm3bQS.mjs";
25
+ import "./version-Ckv-IbvB.mjs";
26
+ import "./env-substitution-DGlYO8jV.mjs";
27
+ import "./scan-paths-ahOy4FCQ.mjs";
28
+ import "./includes-DcO1JxKG.mjs";
29
+ import "./zod-schema.providers-core-CjdAU1TY.mjs";
30
+ import "./legacy-web-search-B1O8hiGy.mjs";
31
+ import "./schema-validator-BOH34EXk.mjs";
32
+ import "./registry-DBJv0dvl.mjs";
33
+ import "./config-state-kmbzTT63.mjs";
34
+ import "./min-host-version-EA11e8I5.mjs";
35
+ import "./manifest-registry-dO1qi1iI.mjs";
36
+ import "./runtime-guard-CWHkkioa.mjs";
37
+ import "./avatar-policy-uRVtZ7lJ.mjs";
38
+ import "./ip-BtMd9ssR.mjs";
39
+ import "./zod-schema.agent-runtime-BtGT59eP.mjs";
40
+ import "./zod-schema.core-CMT7g7UX.mjs";
41
+ import "./zod-schema.channels-BAG3dUtC.mjs";
42
+ import "./zod-schema.providers-whatsapp-qnpQepaf.mjs";
43
+ import "./config-Bhjk4Vel.mjs";
44
+ import "./process-scoped-map-BmLEe6nP.mjs";
45
+ import "./audit-fs-kb-rv_ZT.mjs";
46
+ import "./shared-VxKfp8Uy.mjs";
47
+ import "./resolve-DI6cKS4v.mjs";
48
+ import "./cli-name-lEyorNIN.mjs";
49
+ import "./command-format-D1DrcTDP.mjs";
50
+ import "./tailnet-Bc7IPWjH.mjs";
51
+ import "./net-OJiOmwY1.mjs";
52
+ import "./credentials-DTsHVnAc.mjs";
53
+ import "./message-channel-DCt8BIP7.mjs";
54
+ import "./store-B0V1qm_-.mjs";
55
+ import "./runtime-a4e8n7tq.mjs";
56
+ import "./registry-9YpVWxKb.mjs";
57
+ import "./plugins-D8oapapr.mjs";
58
+ import "./sessions-CYgBPqrc.mjs";
59
+ import "./paths-CGxgQvpf.mjs";
60
+ import "./types-DoAKcnWC.mjs";
61
+ import "./session-write-lock-DE8KASyZ.mjs";
62
+ import "./json-files-BcpXnc9i.mjs";
63
+ import "./delivery-info-CGNfeMd6.mjs";
64
+ import "./method-scopes-hu-4urbi.mjs";
65
+ import "./call-CcXWxOVG.mjs";
66
+ import "./ws-Dv5Afaxu.mjs";
67
+ import "./control-ui-shared-Dhzx9It_.mjs";
68
+ import "./onboard-helpers-C5GCWoDO.mjs";
69
+ import "./wsl-BW8_A9_i.mjs";
70
+ import "./prompt-style-Dua6SIJh.mjs";
71
+ import "./progress-BxDdsPK3.mjs";
72
+ import "./registry-CFSnIRx_.mjs";
73
+ import "./internal-hooks-VOrTrqjW.mjs";
74
+ import "./providers.runtime-ReQb49ui.mjs";
75
+ import "./accounts-DFOEzDJ7.mjs";
76
+ import "./loader-BIAV9Iig.mjs";
77
+ import "./config-presence-DzY-U322.mjs";
78
+ import "./types-BaXbwBIP.mjs";
79
+ import "./hook-runner-global-z_Icpwvo.mjs";
80
+ import "./session-binding-service-Bmkk4TGJ.mjs";
81
+ import "./conversation-binding-elBCYjlA.mjs";
82
+ import "./sdk-alias-C5qDxQv2.mjs";
83
+ import "./bundle-lsp-DyU7-zol.mjs";
84
+ import "./logging-CcQ-gmqC.mjs";
85
+ import "./status-Baz1y8H2.mjs";
86
+ import { n as runCommandWithRuntime } from "./cli-utils-DA6vWpDg.mjs";
87
+ import "./note-CaQ2HD-A.mjs";
88
+ import "./clack-prompter-C0PG2vbx.mjs";
89
+ import "./setup.secret-input-DPX4L6ht.mjs";
90
+ import "./setup-BY2mioiw.mjs";
91
+ import { i as resolveManifestProviderOnboardAuthFlags } from "./provider-auth-choices-DFywK1Pz.mjs";
92
+ import "./provider-wizard-B5Eo0-ea.mjs";
93
+ import { n as formatAuthChoiceChoicesForCli } from "./auth-choice-options-CN_R78Ew.mjs";
94
+ import { n as CORE_ONBOARD_AUTH_FLAGS, t as setupWizardCommand } from "./onboard-DqlCib9K.mjs";
95
+
96
+ //#region src/cli/program/register.onboard.ts
97
+ function resolveInstallDaemonFlag(command, opts) {
98
+ if (!command || typeof command !== "object") return;
99
+ const getOptionValueSource = "getOptionValueSource" in command ? command.getOptionValueSource : void 0;
100
+ if (typeof getOptionValueSource !== "function") return;
101
+ if (getOptionValueSource.call(command, "skipDaemon") === "cli") return false;
102
+ if (getOptionValueSource.call(command, "installDaemon") === "cli") return Boolean(opts.installDaemon);
103
+ }
104
+ const AUTH_CHOICE_HELP = formatAuthChoiceChoicesForCli({
105
+ includeLegacyAliases: true,
106
+ includeSkip: true
107
+ });
108
+ const ONBOARD_AUTH_FLAGS = [...CORE_ONBOARD_AUTH_FLAGS, ...resolveManifestProviderOnboardAuthFlags()];
109
+ function pickOnboardProviderAuthOptionValues(opts) {
110
+ return Object.fromEntries(ONBOARD_AUTH_FLAGS.map((flag) => [flag.optionKey, opts[flag.optionKey]]));
111
+ }
112
+ function registerOnboardCommand(program) {
113
+ const command = program.command("onboard").description("Interactive onboarding for the gateway, workspace, and skills").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/onboard", "docs.openclaw.ai/cli/onboard")}\n`).option("--workspace <dir>", "Agent workspace directory (default: ~/.openclaw/workspace)").option("--reset", "Reset config + credentials + sessions before running onboard (workspace only with --reset-scope full)").option("--reset-scope <scope>", "Reset scope: config|config+creds+sessions|full").option("--non-interactive", "Run without prompts", false).option("--accept-risk", "Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)", false).option("--flow <flow>", "Onboard flow: quickstart|advanced|manual").option("--mode <mode>", "Onboard mode: local|remote").option("--auth-choice <choice>", `Auth: ${AUTH_CHOICE_HELP}`).option("--token-provider <id>", "Token provider id (non-interactive; used with --auth-choice token)").option("--token <token>", "Token value (non-interactive; used with --auth-choice token)").option("--token-profile-id <id>", "Auth profile id (non-interactive; default: <provider>:manual)").option("--token-expires-in <duration>", "Optional token expiry duration (e.g. 365d, 12h)").option("--secret-input-mode <mode>", "API key persistence mode: plaintext|ref (default: plaintext)").option("--cloudflare-ai-gateway-account-id <id>", "Cloudflare Account ID").option("--cloudflare-ai-gateway-gateway-id <id>", "Cloudflare AI Gateway ID");
114
+ for (const providerFlag of ONBOARD_AUTH_FLAGS) command.option(providerFlag.cliOption, providerFlag.description);
115
+ command.option("--custom-base-url <url>", "Custom provider base URL").option("--custom-api-key <key>", "Custom provider API key (optional)").option("--custom-model-id <id>", "Custom provider model ID").option("--custom-provider-id <id>", "Custom provider ID (optional; auto-derived by default)").option("--custom-compatibility <mode>", "Custom provider API compatibility: openai|anthropic (default: openai)").option("--gateway-port <port>", "Gateway port").option("--gateway-bind <mode>", "Gateway bind: loopback|tailnet|lan|auto|custom").option("--gateway-auth <mode>", "Gateway auth: token|password").option("--gateway-token <token>", "Gateway token (token auth)").option("--gateway-token-ref-env <name>", "Gateway token SecretRef env var name (token auth; e.g. OPENCLAW_GATEWAY_TOKEN)").option("--gateway-password <password>", "Gateway password (password auth)").option("--remote-url <url>", "Remote Gateway WebSocket URL").option("--remote-token <token>", "Remote Gateway token (optional)").option("--tailscale <mode>", "Tailscale: off|serve|funnel").option("--tailscale-reset-on-exit", "Reset tailscale serve/funnel on exit").option("--install-daemon", "Install gateway service").option("--no-install-daemon", "Skip gateway service install").option("--skip-daemon", "Skip gateway service install").option("--daemon-runtime <runtime>", "Daemon runtime: node|bun").option("--skip-channels", "Skip channel setup").option("--skip-skills", "Skip skills setup").option("--skip-search", "Skip search provider setup").option("--skip-health", "Skip health check").option("--skip-ui", "Skip Control UI/TUI prompts").option("--node-manager <name>", "Node manager for skills: npm|pnpm|bun").option("--json", "Output JSON summary", false);
116
+ command.action(async (opts, commandRuntime) => {
117
+ await runCommandWithRuntime(defaultRuntime, async () => {
118
+ const installDaemon = resolveInstallDaemonFlag(commandRuntime, { installDaemon: Boolean(opts.installDaemon) });
119
+ const gatewayPort = typeof opts.gatewayPort === "string" ? Number.parseInt(opts.gatewayPort, 10) : void 0;
120
+ const providerAuthOptionValues = pickOnboardProviderAuthOptionValues(opts);
121
+ await setupWizardCommand({
122
+ workspace: opts.workspace,
123
+ nonInteractive: Boolean(opts.nonInteractive),
124
+ acceptRisk: Boolean(opts.acceptRisk),
125
+ flow: opts.flow,
126
+ mode: opts.mode,
127
+ authChoice: opts.authChoice,
128
+ tokenProvider: opts.tokenProvider,
129
+ token: opts.token,
130
+ tokenProfileId: opts.tokenProfileId,
131
+ tokenExpiresIn: opts.tokenExpiresIn,
132
+ secretInputMode: opts.secretInputMode,
133
+ ...providerAuthOptionValues,
134
+ cloudflareAiGatewayAccountId: opts.cloudflareAiGatewayAccountId,
135
+ cloudflareAiGatewayGatewayId: opts.cloudflareAiGatewayGatewayId,
136
+ customBaseUrl: opts.customBaseUrl,
137
+ customApiKey: opts.customApiKey,
138
+ customModelId: opts.customModelId,
139
+ customProviderId: opts.customProviderId,
140
+ customCompatibility: opts.customCompatibility,
141
+ gatewayPort: typeof gatewayPort === "number" && Number.isFinite(gatewayPort) ? gatewayPort : void 0,
142
+ gatewayBind: opts.gatewayBind,
143
+ gatewayAuth: opts.gatewayAuth,
144
+ gatewayToken: opts.gatewayToken,
145
+ gatewayTokenRefEnv: opts.gatewayTokenRefEnv,
146
+ gatewayPassword: opts.gatewayPassword,
147
+ remoteUrl: opts.remoteUrl,
148
+ remoteToken: opts.remoteToken,
149
+ tailscale: opts.tailscale,
150
+ tailscaleResetOnExit: Boolean(opts.tailscaleResetOnExit),
151
+ reset: Boolean(opts.reset),
152
+ resetScope: opts.resetScope,
153
+ installDaemon,
154
+ daemonRuntime: opts.daemonRuntime,
155
+ skipChannels: Boolean(opts.skipChannels),
156
+ skipSkills: Boolean(opts.skipSkills),
157
+ skipSearch: Boolean(opts.skipSearch),
158
+ skipHealth: Boolean(opts.skipHealth),
159
+ skipUi: Boolean(opts.skipUi),
160
+ nodeManager: opts.nodeManager,
161
+ json: Boolean(opts.json)
162
+ }, defaultRuntime);
163
+ });
164
+ });
165
+ }
166
+
167
+ //#endregion
168
+ export { registerOnboardCommand };
@@ -0,0 +1,188 @@
1
+ import "./redact-CtGOTRBK.mjs";
2
+ import "./errors-CbvpN2RP.mjs";
3
+ import "./logger-vRSRu9wD.mjs";
4
+ import "./paths-CNST7z3O.mjs";
5
+ import "./tmp-openclaw-dir-BeWwpCKM.mjs";
6
+ import { r as theme } from "./theme-w86ra_7m.mjs";
7
+ import "./globals-DZFR3wyP.mjs";
8
+ import { m as defaultRuntime } from "./subsystem-yLe4Gjha.mjs";
9
+ import "./ansi-BJ9IOlIp.mjs";
10
+ import "./boolean-Bwxxidw8.mjs";
11
+ import "./env-9fhyzTaG.mjs";
12
+ import { S as shortenHomePath } from "./utils-Dc9DiBqf.mjs";
13
+ import { t as formatDocsLink } from "./links-BNNF54ea.mjs";
14
+ import { t as hasExplicitOptions } from "./command-options-CMEANk0N.mjs";
15
+ import "./agent-scope-CnAwGoC2.mjs";
16
+ import "./boundary-path-DnlNnNbU.mjs";
17
+ import "./boundary-file-read-BB4JbZzx.mjs";
18
+ import "./logger-DWOgrQoS.mjs";
19
+ import "./exec-DX0zVVG7.mjs";
20
+ import "./openclaw-root-CSfnLaqO.mjs";
21
+ import { d as ensureAgentWorkspace, n as DEFAULT_AGENT_WORKSPACE_DIR } from "./workspace-CoFl73GV.mjs";
22
+ import "./model-selection-BJk_hQeE.mjs";
23
+ import { g as writeConfigFile, i as createConfigIO } from "./io-CDQGJKjg.mjs";
24
+ import "./shell-env-CP5vTYhw.mjs";
25
+ import "./safe-text-Bsdm3bQS.mjs";
26
+ import "./version-Ckv-IbvB.mjs";
27
+ import "./env-substitution-DGlYO8jV.mjs";
28
+ import "./scan-paths-ahOy4FCQ.mjs";
29
+ import "./includes-DcO1JxKG.mjs";
30
+ import "./zod-schema.providers-core-CjdAU1TY.mjs";
31
+ import "./legacy-web-search-B1O8hiGy.mjs";
32
+ import "./schema-validator-BOH34EXk.mjs";
33
+ import "./registry-DBJv0dvl.mjs";
34
+ import "./config-state-kmbzTT63.mjs";
35
+ import "./min-host-version-EA11e8I5.mjs";
36
+ import "./manifest-registry-dO1qi1iI.mjs";
37
+ import "./runtime-guard-CWHkkioa.mjs";
38
+ import "./avatar-policy-uRVtZ7lJ.mjs";
39
+ import "./ip-BtMd9ssR.mjs";
40
+ import "./zod-schema.agent-runtime-BtGT59eP.mjs";
41
+ import "./zod-schema.core-CMT7g7UX.mjs";
42
+ import "./zod-schema.channels-BAG3dUtC.mjs";
43
+ import "./zod-schema.providers-whatsapp-qnpQepaf.mjs";
44
+ import "./config-Bhjk4Vel.mjs";
45
+ import "./process-scoped-map-BmLEe6nP.mjs";
46
+ import "./audit-fs-kb-rv_ZT.mjs";
47
+ import "./shared-VxKfp8Uy.mjs";
48
+ import "./resolve-DI6cKS4v.mjs";
49
+ import "./cli-name-lEyorNIN.mjs";
50
+ import "./command-format-D1DrcTDP.mjs";
51
+ import "./tailnet-Bc7IPWjH.mjs";
52
+ import "./net-OJiOmwY1.mjs";
53
+ import "./credentials-DTsHVnAc.mjs";
54
+ import "./message-channel-DCt8BIP7.mjs";
55
+ import "./store-B0V1qm_-.mjs";
56
+ import "./runtime-a4e8n7tq.mjs";
57
+ import "./registry-9YpVWxKb.mjs";
58
+ import "./plugins-D8oapapr.mjs";
59
+ import "./sessions-CYgBPqrc.mjs";
60
+ import { s as resolveSessionTranscriptsDir } from "./paths-CGxgQvpf.mjs";
61
+ import "./types-DoAKcnWC.mjs";
62
+ import "./session-write-lock-DE8KASyZ.mjs";
63
+ import "./json-files-BcpXnc9i.mjs";
64
+ import "./delivery-info-CGNfeMd6.mjs";
65
+ import "./method-scopes-hu-4urbi.mjs";
66
+ import "./call-CcXWxOVG.mjs";
67
+ import "./ws-Dv5Afaxu.mjs";
68
+ import "./control-ui-shared-Dhzx9It_.mjs";
69
+ import "./onboard-helpers-C5GCWoDO.mjs";
70
+ import "./wsl-BW8_A9_i.mjs";
71
+ import "./prompt-style-Dua6SIJh.mjs";
72
+ import "./progress-BxDdsPK3.mjs";
73
+ import "./registry-CFSnIRx_.mjs";
74
+ import "./internal-hooks-VOrTrqjW.mjs";
75
+ import "./accounts-DFOEzDJ7.mjs";
76
+ import "./loader-BIAV9Iig.mjs";
77
+ import "./config-presence-DzY-U322.mjs";
78
+ import "./types-BaXbwBIP.mjs";
79
+ import "./hook-runner-global-z_Icpwvo.mjs";
80
+ import "./session-binding-service-Bmkk4TGJ.mjs";
81
+ import "./conversation-binding-elBCYjlA.mjs";
82
+ import "./sdk-alias-C5qDxQv2.mjs";
83
+ import "./bundle-lsp-DyU7-zol.mjs";
84
+ import { n as logConfigUpdated, t as formatConfigPath } from "./logging-CcQ-gmqC.mjs";
85
+ import "./status-Baz1y8H2.mjs";
86
+ import { n as runCommandWithRuntime } from "./cli-utils-DA6vWpDg.mjs";
87
+ import "./note-CaQ2HD-A.mjs";
88
+ import "./clack-prompter-C0PG2vbx.mjs";
89
+ import "./setup.secret-input-DPX4L6ht.mjs";
90
+ import "./setup-BY2mioiw.mjs";
91
+ import "./provider-auth-choices-DFywK1Pz.mjs";
92
+ import { t as setupWizardCommand } from "./onboard-DqlCib9K.mjs";
93
+ import JSON5 from "json5";
94
+ import fs from "node:fs/promises";
95
+
96
+ //#region src/commands/setup.ts
97
+ async function readConfigFileRaw(configPath) {
98
+ try {
99
+ const raw = await fs.readFile(configPath, "utf-8");
100
+ const parsed = JSON5.parse(raw);
101
+ if (parsed && typeof parsed === "object") return {
102
+ exists: true,
103
+ parsed
104
+ };
105
+ return {
106
+ exists: true,
107
+ parsed: {}
108
+ };
109
+ } catch {
110
+ return {
111
+ exists: false,
112
+ parsed: {}
113
+ };
114
+ }
115
+ }
116
+ async function setupCommand(opts, runtime = defaultRuntime) {
117
+ const desiredWorkspace = typeof opts?.workspace === "string" && opts.workspace.trim() ? opts.workspace.trim() : void 0;
118
+ const configPath = createConfigIO().configPath;
119
+ const existingRaw = await readConfigFileRaw(configPath);
120
+ const cfg = existingRaw.parsed;
121
+ const defaults = cfg.agents?.defaults ?? {};
122
+ const workspace = desiredWorkspace ?? defaults.workspace ?? DEFAULT_AGENT_WORKSPACE_DIR;
123
+ const next = {
124
+ ...cfg,
125
+ agents: {
126
+ ...cfg.agents,
127
+ defaults: {
128
+ ...defaults,
129
+ workspace
130
+ }
131
+ },
132
+ gateway: {
133
+ ...cfg.gateway,
134
+ mode: cfg.gateway?.mode ?? "local"
135
+ }
136
+ };
137
+ if (!existingRaw.exists || defaults.workspace !== workspace || cfg.gateway?.mode !== next.gateway?.mode) {
138
+ await writeConfigFile(next);
139
+ if (!existingRaw.exists) runtime.log(`Wrote ${formatConfigPath(configPath)}`);
140
+ else {
141
+ const updates = [];
142
+ if (defaults.workspace !== workspace) updates.push("set agents.defaults.workspace");
143
+ if (cfg.gateway?.mode !== next.gateway?.mode) updates.push("set gateway.mode");
144
+ logConfigUpdated(runtime, {
145
+ path: configPath,
146
+ suffix: updates.length > 0 ? `(${updates.join(", ")})` : void 0
147
+ });
148
+ }
149
+ } else runtime.log(`Config OK: ${formatConfigPath(configPath)}`);
150
+ const ws = await ensureAgentWorkspace({
151
+ dir: workspace,
152
+ ensureBootstrapFiles: !next.agents?.defaults?.skipBootstrap
153
+ });
154
+ runtime.log(`Workspace OK: ${shortenHomePath(ws.dir)}`);
155
+ const sessionsDir = resolveSessionTranscriptsDir();
156
+ await fs.mkdir(sessionsDir, { recursive: true });
157
+ runtime.log(`Sessions OK: ${shortenHomePath(sessionsDir)}`);
158
+ }
159
+
160
+ //#endregion
161
+ //#region src/cli/program/register.setup.ts
162
+ function registerSetupCommand(program) {
163
+ program.command("setup").description("Initialize ~/.Heretek-AI/openclaw.json and the agent workspace").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/setup", "docs.openclaw.ai/cli/setup")}\n`).option("--workspace <dir>", "Agent workspace directory (default: ~/.openclaw/workspace; stored as agents.defaults.workspace)").option("--wizard", "Run interactive onboarding", false).option("--non-interactive", "Run onboarding without prompts", false).option("--mode <mode>", "Onboard mode: local|remote").option("--remote-url <url>", "Remote Gateway WebSocket URL").option("--remote-token <token>", "Remote Gateway token (optional)").action(async (opts, command) => {
164
+ await runCommandWithRuntime(defaultRuntime, async () => {
165
+ const hasWizardFlags = hasExplicitOptions(command, [
166
+ "wizard",
167
+ "nonInteractive",
168
+ "mode",
169
+ "remoteUrl",
170
+ "remoteToken"
171
+ ]);
172
+ if (opts.wizard || hasWizardFlags) {
173
+ await setupWizardCommand({
174
+ workspace: opts.workspace,
175
+ nonInteractive: Boolean(opts.nonInteractive),
176
+ mode: opts.mode,
177
+ remoteUrl: opts.remoteUrl,
178
+ remoteToken: opts.remoteToken
179
+ }, defaultRuntime);
180
+ return;
181
+ }
182
+ await setupCommand({ workspace: opts.workspace }, defaultRuntime);
183
+ });
184
+ });
185
+ }
186
+
187
+ //#endregion
188
+ export { registerSetupCommand };
@@ -0,0 +1,13 @@
1
+ import "./logger-vRSRu9wD.mjs";
2
+ import "./paths-CNST7z3O.mjs";
3
+ import "./tmp-openclaw-dir-BeWwpCKM.mjs";
4
+ import "./theme-w86ra_7m.mjs";
5
+ import "./globals-DZFR3wyP.mjs";
6
+ import "./subsystem-yLe4Gjha.mjs";
7
+ import "./ansi-BJ9IOlIp.mjs";
8
+ import "./boolean-Bwxxidw8.mjs";
9
+ import "./env-9fhyzTaG.mjs";
10
+ import { i as registerSubCliCommands, n as loadValidatedConfigForPluginRegistration, r as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-CVkk-8A3.mjs";
11
+ import { t as getSubCliCommandsWithSubcommands } from "./subcli-descriptors-BDQPQ3D7.mjs";
12
+
13
+ export { loadValidatedConfigForPluginRegistration, registerSubCliByName };