refactor: expose setup wizard sdk surfaces

This commit is contained in:
Peter Steinberger
2026-03-15 17:56:49 -07:00
parent 18e4e4677c
commit a78b83472e
4 changed files with 32 additions and 16 deletions

View File

@@ -24,15 +24,10 @@ export { createAccountStatusSink, runPassiveAccountLifecycle } from "./channel-l
export { resolveGoogleChatGroupRequireMention } from "../channels/plugins/group-mentions.js";
export { formatPairingApproveHint } from "../channels/plugins/helpers.js";
export { resolveChannelMediaMaxBytes } from "../channels/plugins/media-limits.js";
export type {
ChannelOnboardingAdapter,
ChannelOnboardingDmPolicy,
} from "../channels/plugins/onboarding-types.js";
export {
addWildcardAllowFrom,
mergeAllowFromEntries,
promptAccountId,
resolveAccountIdForConfigure,
splitOnboardingEntries,
setTopLevelChannelDmPolicyWithAllowFrom,
} from "../channels/plugins/onboarding/helpers.js";
@@ -72,6 +67,10 @@ export { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "../routing/session-key.j
export { resolveDmGroupAccessWithLists } from "../security/dm-policy-shared.js";
export { formatDocsLink } from "../terminal/links.js";
export type { WizardPrompter } from "../wizard/prompts.js";
export {
googlechatSetupAdapter,
googlechatSetupWizard,
} from "../../extensions/googlechat/src/setup-surface.js";
export { resolveInboundRouteEnvelopeBuilderWithRuntime } from "./inbound-envelope.js";
export { createScopedPairingAccess } from "./pairing-access.js";
export { issuePairingChallenge } from "../pairing/pairing-challenge.js";

View File

@@ -13,15 +13,9 @@ export {
formatPairingApproveHint,
parseOptionalDelimitedEntries,
} from "../channels/plugins/helpers.js";
export type {
ChannelOnboardingAdapter,
ChannelOnboardingDmPolicy,
} from "../channels/plugins/onboarding-types.js";
export { promptChannelAccessConfig } from "../channels/plugins/onboarding/channel-access.js";
export {
addWildcardAllowFrom,
promptAccountId,
resolveAccountIdForConfigure,
setTopLevelChannelAllowFrom,
setTopLevelChannelDmPolicyWithAllowFrom,
} from "../channels/plugins/onboarding/helpers.js";
@@ -65,6 +59,11 @@ export type { OpenClawPluginApi } from "../plugins/types.js";
export { DEFAULT_ACCOUNT_ID } from "../routing/session-key.js";
export type { RuntimeEnv } from "../runtime.js";
export { createAccountStatusSink, runPassiveAccountLifecycle } from "./channel-lifecycle.js";
export {
listIrcAccountIds,
resolveDefaultIrcAccountId,
resolveIrcAccount,
} from "../../extensions/irc/src/accounts.js";
export {
readStoreAllowFromForDmPolicy,
resolveEffectiveAllowFromLists,
@@ -74,6 +73,7 @@ export type { WizardPrompter } from "../wizard/prompts.js";
export { createScopedPairingAccess } from "./pairing-access.js";
export { issuePairingChallenge } from "../pairing/pairing-challenge.js";
export { dispatchInboundReplyWithBase } from "./inbound-reply-dispatch.js";
export { ircSetupAdapter, ircSetupWizard } from "../../extensions/irc/src/setup-surface.js";
export type { OutboundReplyPayload } from "./reply-payload.js";
export {
createNormalizedOutboundDeliverer,

View File

@@ -90,6 +90,13 @@ describe("plugin-sdk subpath exports", () => {
expect(typeof imessageSdk.imessageSetupAdapter).toBe("object");
});
it("exports IRC helpers", async () => {
const ircSdk = await import("openclaw/plugin-sdk/irc");
expect(typeof ircSdk.resolveIrcAccount).toBe("function");
expect(typeof ircSdk.ircSetupWizard).toBe("object");
expect(typeof ircSdk.ircSetupAdapter).toBe("object");
});
it("exports WhatsApp helpers", () => {
// WhatsApp-specific functions (resolveWhatsAppAccount, whatsappOnboardingAdapter) moved to extensions/whatsapp/src/
expect(typeof whatsappSdk.WhatsAppConfigSchema).toBe("object");
@@ -108,6 +115,19 @@ describe("plugin-sdk subpath exports", () => {
expect(typeof msteamsSdk.loadOutboundMediaFromUrl).toBe("function");
});
it("exports Google Chat helpers", async () => {
const googlechatSdk = await import("openclaw/plugin-sdk/googlechat");
expect(typeof googlechatSdk.googlechatSetupWizard).toBe("object");
expect(typeof googlechatSdk.googlechatSetupAdapter).toBe("object");
});
it("exports Tlon helpers", async () => {
const tlonSdk = await import("openclaw/plugin-sdk/tlon");
expect(typeof tlonSdk.fetchWithSsrFGuard).toBe("function");
expect(typeof tlonSdk.tlonSetupWizard).toBe("object");
expect(typeof tlonSdk.tlonSetupAdapter).toBe("object");
});
it("exports acpx helpers", async () => {
const acpxSdk = await import("openclaw/plugin-sdk/acpx");
expect(typeof acpxSdk.listKnownProviderAuthEnvVarNames).toBe("function");

View File

@@ -3,11 +3,7 @@
export type { ReplyPayload } from "../auto-reply/types.js";
export { buildChannelConfigSchema } from "../channels/plugins/config-schema.js";
export type { ChannelOnboardingAdapter } from "../channels/plugins/onboarding-types.js";
export {
promptAccountId,
resolveAccountIdForConfigure,
} from "../channels/plugins/onboarding/helpers.js";
export { promptAccountId } from "../channels/plugins/onboarding/helpers.js";
export {
applyAccountNameToChannelSection,
patchScopedAccountConfig,
@@ -32,3 +28,4 @@ export type { RuntimeEnv } from "../runtime.js";
export { formatDocsLink } from "../terminal/links.js";
export type { WizardPrompter } from "../wizard/prompts.js";
export { createLoggerBackedRuntime } from "./runtime.js";
export { tlonSetupAdapter, tlonSetupWizard } from "../../extensions/tlon/src/setup-surface.js";