diff --git a/docs/.generated/plugin-sdk-api-baseline.sha256 b/docs/.generated/plugin-sdk-api-baseline.sha256 index b93b04b9c4f..93f0a093279 100644 --- a/docs/.generated/plugin-sdk-api-baseline.sha256 +++ b/docs/.generated/plugin-sdk-api-baseline.sha256 @@ -1,2 +1,2 @@ -23bfae10a189a7d0548bc7213a9180841bbb1125e97ce1d2d0b7a765773a92fd plugin-sdk-api-baseline.json -6c64b352b19368015c867b4c16225d676110544943497238c2f78602ad2fb519 plugin-sdk-api-baseline.jsonl +9883b1242051e830bafa7035351c9a2dd0fb84f81be28d7b5be2b69a1179e519 plugin-sdk-api-baseline.json +43dd28ba4502b207413d00471ea2e4ae5cf644922ab153387fa4bf99e540e6d1 plugin-sdk-api-baseline.jsonl diff --git a/extensions/discord/src/monitor/thread-title.generate.test.ts b/extensions/discord/src/monitor/thread-title.generate.test.ts index eddb0c18880..24360e85d67 100644 --- a/extensions/discord/src/monitor/thread-title.generate.test.ts +++ b/extensions/discord/src/monitor/thread-title.generate.test.ts @@ -1,5 +1,5 @@ -import * as agentRuntimeModule from "openclaw/plugin-sdk/agent-runtime"; import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; +import * as agentRuntimeModule from "openclaw/plugin-sdk/simple-completion-runtime"; import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; const completeWithPreparedSimpleCompletionModelMock = diff --git a/extensions/discord/src/monitor/thread-title.ts b/extensions/discord/src/monitor/thread-title.ts index 6d8c00145c0..611fd048853 100644 --- a/extensions/discord/src/monitor/thread-title.ts +++ b/extensions/discord/src/monitor/thread-title.ts @@ -1,10 +1,10 @@ +import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; +import { logVerbose } from "openclaw/plugin-sdk/runtime-env"; import { completeWithPreparedSimpleCompletionModel, extractAssistantText, prepareSimpleCompletionModelForAgent, -} from "openclaw/plugin-sdk/agent-runtime"; -import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime"; -import { logVerbose } from "openclaw/plugin-sdk/runtime-env"; +} from "openclaw/plugin-sdk/simple-completion-runtime"; const DEFAULT_THREAD_TITLE_TIMEOUT_MS = 10_000; const MAX_THREAD_TITLE_SOURCE_CHARS = 600; diff --git a/package.json b/package.json index 0b587dcf5f2..ae15e8a76d1 100644 --- a/package.json +++ b/package.json @@ -247,6 +247,10 @@ "types": "./dist/plugin-sdk/agent-runtime.d.ts", "default": "./dist/plugin-sdk/agent-runtime.js" }, + "./plugin-sdk/simple-completion-runtime": { + "types": "./dist/plugin-sdk/simple-completion-runtime.d.ts", + "default": "./dist/plugin-sdk/simple-completion-runtime.js" + }, "./plugin-sdk/speech-core": { "types": "./dist/plugin-sdk/speech-core.d.ts", "default": "./dist/plugin-sdk/speech-core.js" diff --git a/scripts/lib/plugin-sdk-entrypoints.json b/scripts/lib/plugin-sdk-entrypoints.json index 43950ebc337..48828205117 100644 --- a/scripts/lib/plugin-sdk-entrypoints.json +++ b/scripts/lib/plugin-sdk-entrypoints.json @@ -51,6 +51,7 @@ "text-runtime", "text-chunking", "agent-runtime", + "simple-completion-runtime", "speech-core", "plugin-runtime", "security-runtime", diff --git a/src/agents/simple-completion-runtime.ts b/src/agents/simple-completion-runtime.ts index 37c21117eb8..d49f8a73498 100644 --- a/src/agents/simple-completion-runtime.ts +++ b/src/agents/simple-completion-runtime.ts @@ -26,6 +26,11 @@ type CompletionRuntimeCredential = { type AllowedMissingApiKeyMode = ResolvedProviderAuth["mode"]; +export type SimpleCompletionModelOptions = { + maxTokens?: number; + signal?: AbortSignal; +}; + export type PreparedSimpleCompletionModel = | { model: Model; @@ -236,7 +241,7 @@ export async function completeWithPreparedSimpleCompletionModel(params: { model: Model; auth: ResolvedProviderAuth; context: Parameters[1]; - options?: Omit[2], "apiKey">; + options?: SimpleCompletionModelOptions; }) { return await complete(params.model, params.context, { ...params.options, diff --git a/src/plugin-sdk/simple-completion-runtime.ts b/src/plugin-sdk/simple-completion-runtime.ts new file mode 100644 index 00000000000..d8918aea6c9 --- /dev/null +++ b/src/plugin-sdk/simple-completion-runtime.ts @@ -0,0 +1,2 @@ +export * from "../agents/simple-completion-runtime.js"; +export { extractAssistantText } from "../agents/pi-embedded-utils.js";