fix(plugins): share native anthropic replay hooks

This commit is contained in:
Vincent Koc
2026-04-14 16:07:16 +01:00
parent 135c3848b9
commit e121889a9f
4 changed files with 40 additions and 12 deletions

View File

@@ -1,5 +1,5 @@
import { definePluginEntry } from "openclaw/plugin-sdk/plugin-entry";
import { buildNativeAnthropicReplayPolicyForModel } from "openclaw/plugin-sdk/provider-model-shared";
import { buildProviderReplayFamilyHooks } from "openclaw/plugin-sdk/provider-model-shared";
import {
mergeImplicitAnthropicVertexProvider,
resolveAnthropicVertexConfigApiKey,
@@ -7,6 +7,9 @@ import {
} from "./api.js";
const PROVIDER_ID = "anthropic-vertex";
const NATIVE_ANTHROPIC_REPLAY_HOOKS = buildProviderReplayFamilyHooks({
family: "native-anthropic-by-model",
});
export default definePluginEntry({
id: PROVIDER_ID,
@@ -36,7 +39,7 @@ export default definePluginEntry({
},
},
resolveConfigApiKey: ({ env }) => resolveAnthropicVertexConfigApiKey(env),
buildReplayPolicy: ({ modelId }) => buildNativeAnthropicReplayPolicyForModel(modelId),
...NATIVE_ANTHROPIC_REPLAY_HOOKS,
});
},
});

View File

@@ -1,12 +1,11 @@
import type {
ProviderReplayPolicy,
ProviderReplayPolicyContext,
} from "openclaw/plugin-sdk/plugin-entry";
import { buildNativeAnthropicReplayPolicyForModel } from "openclaw/plugin-sdk/provider-model-shared";
import { buildProviderReplayFamilyHooks } from "openclaw/plugin-sdk/provider-model-shared";
/**
* Returns the provider-owned replay policy for Anthropic transports.
*/
export function buildAnthropicReplayPolicy(ctx: ProviderReplayPolicyContext): ProviderReplayPolicy {
return buildNativeAnthropicReplayPolicyForModel(ctx.modelId);
const { buildReplayPolicy } = buildProviderReplayFamilyHooks({
family: "native-anthropic-by-model",
});
if (!buildReplayPolicy) {
throw new Error("Expected native Anthropic replay hooks to expose buildReplayPolicy.");
}
export { buildReplayPolicy as buildAnthropicReplayPolicy };