























@@ -1,7 +1,7 @@
11import type { StreamFn } from "@mariozechner/pi-agent-core";
22import type { OpenClawConfig } from "openclaw/plugin-sdk/config-types";
33import { resolvePluginConfigObject } from "openclaw/plugin-sdk/plugin-config-runtime";
4-import type { OpenClawPluginApi } from "openclaw/plugin-sdk/plugin-entry";
4+import type { OpenClawPluginApi, ProviderThinkingProfile } from "openclaw/plugin-sdk/plugin-entry";
55import {
66ANTHROPIC_BY_MODEL_REPLAY_HOOKS,
77normalizeProviderId,
@@ -290,6 +290,13 @@ export function registerAmazonBedrockPlugin(api: OpenClawPluginApi): void {
290290// initialization during test bootstrap cannot trip TDZ reads.
291291const providerId = "amazon-bedrock";
292292const claude46ModelRe = /claude-(?:opus|sonnet)-4(?:\.|-)6(?:$|[-.])/i;
293+const baseClaudeThinkingLevels = [
294+{ id: "off" },
295+{ id: "minimal" },
296+{ id: "low" },
297+{ id: "medium" },
298+{ id: "high" },
299+] as const satisfies ProviderThinkingProfile["levels"];
293300// Match region from bedrock-runtime (Converse API) URLs.
294301// e.g. https://bedrock-runtime.us-east-1.amazonaws.com
295302const bedrockRegionRe = /bedrock-runtime\.([a-z0-9-]+)\.amazonaws\./;
@@ -303,6 +310,23 @@ export function registerAmazonBedrockPlugin(api: OpenClawPluginApi): void {
303310const anthropicByModelReplayHooks = ANTHROPIC_BY_MODEL_REPLAY_HOOKS;
304311const startupPluginConfig = (api.pluginConfig ?? {}) as AmazonBedrockPluginConfig;
305312313+function resolveBedrockClaudeThinkingProfile(modelId: string): ProviderThinkingProfile {
314+const trimmed = modelId.trim();
315+if (isOpus47BedrockModelRef(trimmed)) {
316+return {
317+levels: [...baseClaudeThinkingLevels, { id: "xhigh" }, { id: "adaptive" }, { id: "max" }],
318+defaultLevel: "off",
319+};
320+}
321+if (claude46ModelRe.test(trimmed)) {
322+return {
323+levels: [...baseClaudeThinkingLevels, { id: "adaptive" }],
324+defaultLevel: "adaptive",
325+};
326+}
327+return { levels: baseClaudeThinkingLevels };
328+}
329+306330function resolveCurrentPluginConfig(
307331config: OpenClawConfig | undefined,
308332): AmazonBedrockPluginConfig | undefined {
@@ -521,16 +545,6 @@ export function registerAmazonBedrockPlugin(api: OpenClawPluginApi): void {
521545}
522546return undefined;
523547},
524-resolveThinkingProfile: ({ modelId }) => ({
525-levels: [
526-{ id: "off" },
527-{ id: "minimal" },
528-{ id: "low" },
529-{ id: "medium" },
530-{ id: "high" },
531- ...(claude46ModelRe.test(modelId.trim()) ? [{ id: "adaptive" as const }] : []),
532-],
533-defaultLevel: claude46ModelRe.test(modelId.trim()) ? "adaptive" : undefined,
534-}),
548+resolveThinkingProfile: ({ modelId }) => resolveBedrockClaudeThinkingProfile(modelId),
535549});
536550}
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。