refactor: tighten onboarding dmScope typing and docs links

This commit is contained in:
Peter Steinberger
2026-02-22 12:45:59 +01:00
parent 29cc7f431f
commit 6fda04e938
5 changed files with 16 additions and 4 deletions

View File

@@ -60,7 +60,7 @@ Flow notes:
- `quickstart`: minimal prompts, auto-generates a gateway token.
- `manual`: full prompts for port/bind/auth (alias of `advanced`).
- Local onboarding defaults `session.dmScope` to `per-channel-peer` unless `session.dmScope` is already set.
- Local onboarding DM scope behavior: [CLI Onboarding Reference](/start/wizard-cli-reference#outputs-and-internals).
- Fastest first chat: `openclaw dashboard` (Control UI, no channel setup).
- Custom Provider: connect any OpenAI or Anthropic compatible endpoint,
including hosted providers not listed. Use Unknown to auto-detect.

View File

@@ -243,7 +243,7 @@ Typical fields in `~/.openclaw/openclaw.json`:
- `agents.defaults.workspace`
- `agents.defaults.model` / `models.providers` (if Minimax chosen)
- `gateway.*` (mode, bind, auth, tailscale)
- `session.dmScope` (local onboarding defaults this to `per-channel-peer` when unset; existing explicit values are preserved)
- `session.dmScope` (behavior details: [CLI Onboarding Reference](/start/wizard-cli-reference#outputs-and-internals))
- `channels.telegram.botToken`, `channels.discord.token`, `channels.signal.*`, `channels.imessage.*`
- Channel allowlists (Slack/Discord/Matrix/Microsoft Teams) when you opt in during the prompts (names resolve to IDs when possible).
- `skills.install.nodeManager`

View File

@@ -50,7 +50,7 @@ The wizard starts with **QuickStart** (defaults) vs **Advanced** (full control).
- Workspace default (or existing workspace)
- Gateway port **18789**
- Gateway auth **Token** (autogenerated, even on loopback)
- DM isolation default: `session.dmScope: "per-channel-peer"` (existing explicit `session.dmScope` values are preserved)
- DM isolation default: local onboarding writes `session.dmScope: "per-channel-peer"` when unset. Details: [CLI Onboarding Reference](/start/wizard-cli-reference#outputs-and-internals)
- Tailscale exposure **Off**
- Telegram + WhatsApp DMs default to **allowlist** (you'll be prompted for your phone number)
</Tab>

View File

@@ -25,4 +25,15 @@ describe("applyOnboardingLocalWorkspaceConfig", () => {
expect(result.session?.dmScope).toBe("main");
});
it("preserves explicit non-main dmScope values", () => {
const baseConfig: OpenClawConfig = {
session: {
dmScope: "per-account-channel-peer",
},
};
const result = applyOnboardingLocalWorkspaceConfig(baseConfig, "/tmp/workspace");
expect(result.session?.dmScope).toBe("per-account-channel-peer");
});
});

View File

@@ -1,6 +1,7 @@
import type { OpenClawConfig } from "../config/config.js";
import type { DmScope } from "../config/types.base.js";
export const ONBOARDING_DEFAULT_DM_SCOPE = "per-channel-peer";
export const ONBOARDING_DEFAULT_DM_SCOPE: DmScope = "per-channel-peer";
export function applyOnboardingLocalWorkspaceConfig(
baseConfig: OpenClawConfig,