diff --git a/extensions/discord/src/monitor/message-utils.ts b/extensions/discord/src/monitor/message-utils.ts index e0eb58c9266..b4949f08424 100644 --- a/extensions/discord/src/monitor/message-utils.ts +++ b/extensions/discord/src/monitor/message-utils.ts @@ -1,10 +1,10 @@ import type { ChannelType, Client, Message } from "@buape/carbon"; import { StickerFormatType, type APIAttachment, type APIStickerItem } from "discord-api-types/v10"; -import type { SsrFPolicy } from "openclaw/plugin-sdk/infra-runtime"; import { fetchRemoteMedia, type FetchLike } from "openclaw/plugin-sdk/media-runtime"; import { saveMediaBuffer } from "openclaw/plugin-sdk/media-runtime"; import { buildMediaPayload } from "openclaw/plugin-sdk/reply-payload"; import { logVerbose } from "openclaw/plugin-sdk/runtime-env"; +import type { SsrFPolicy } from "openclaw/plugin-sdk/ssrf-runtime"; const DISCORD_CDN_HOSTNAMES = [ "cdn.discordapp.com", diff --git a/extensions/discord/src/monitor/thread-bindings.persona.ts b/extensions/discord/src/monitor/thread-bindings.persona.ts index 2ee38c5f49d..7be486ac81e 100644 --- a/extensions/discord/src/monitor/thread-bindings.persona.ts +++ b/extensions/discord/src/monitor/thread-bindings.persona.ts @@ -1,4 +1,4 @@ -import { SYSTEM_MARK } from "openclaw/plugin-sdk/infra-runtime"; +import { SYSTEM_MARK } from "openclaw/plugin-sdk/text-runtime"; import type { ThreadBindingRecord } from "./thread-bindings.types.js"; const THREAD_BINDING_PERSONA_MAX_CHARS = 80; diff --git a/extensions/slack/src/send.ts b/extensions/slack/src/send.ts index 62faebe4f43..d233dd02954 100644 --- a/extensions/slack/src/send.ts +++ b/extensions/slack/src/send.ts @@ -1,10 +1,7 @@ import { type Block, type KnownBlock, type WebClient } from "@slack/web-api"; import { loadConfig, type OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; import { resolveMarkdownTableMode } from "openclaw/plugin-sdk/config-runtime"; -import { - fetchWithSsrFGuard, - withTrustedEnvProxyGuardedFetchMode, -} from "openclaw/plugin-sdk/infra-runtime"; +import { withTrustedEnvProxyGuardedFetchMode } from "openclaw/plugin-sdk/fetch-runtime"; import { resolveTextChunksWithFallback } from "openclaw/plugin-sdk/reply-payload"; import { chunkMarkdownTextWithMode, @@ -13,6 +10,7 @@ import { } from "openclaw/plugin-sdk/reply-runtime"; import { isSilentReplyText } from "openclaw/plugin-sdk/reply-runtime"; import { logVerbose } from "openclaw/plugin-sdk/runtime-env"; +import { fetchWithSsrFGuard } from "openclaw/plugin-sdk/ssrf-runtime"; import { loadWebMedia } from "openclaw/plugin-sdk/web-media"; import type { SlackTokenSource } from "./accounts.js"; import { resolveSlackAccount } from "./accounts.js"; diff --git a/src/plugin-sdk/fetch-runtime.ts b/src/plugin-sdk/fetch-runtime.ts index 04876b5d6d9..29a31634003 100644 --- a/src/plugin-sdk/fetch-runtime.ts +++ b/src/plugin-sdk/fetch-runtime.ts @@ -1,6 +1,7 @@ // Public fetch/proxy helpers for plugins that need wrapped fetch behavior. export { resolveFetch, wrapFetchWithAbortSignal } from "../infra/fetch.js"; +export { withTrustedEnvProxyGuardedFetchMode } from "../infra/net/fetch-guard.ts"; export { hasEnvHttpProxyConfigured } from "../infra/net/proxy-env.js"; export { getProxyUrlFromFetch, makeProxyFetch } from "../infra/net/proxy-fetch.js"; export { createPinnedLookup } from "../infra/net/ssrf.js"; diff --git a/src/plugin-sdk/text-runtime.ts b/src/plugin-sdk/text-runtime.ts index 2d9b55cd0ce..4ee33e82dcc 100644 --- a/src/plugin-sdk/text-runtime.ts +++ b/src/plugin-sdk/text-runtime.ts @@ -19,6 +19,7 @@ export * from "../shared/text/code-regions.js"; export * from "../shared/text/reasoning-tags.js"; export * from "../shared/text/strip-markdown.js"; export * from "../terminal/safe-text.js"; +export * from "../infra/system-message.ts"; export * from "../utils/directive-tags.js"; export * from "../utils.js"; export * from "../utils/chunk-items.js";