fix: route ollama helpers through plugin sdk

This commit is contained in:
Peter Steinberger
2026-03-27 07:24:35 +00:00
parent ae72977076
commit 9322481075
7 changed files with 33 additions and 12 deletions

View File

@@ -480,6 +480,10 @@
"types": "./dist/plugin-sdk/nostr.d.ts",
"default": "./dist/plugin-sdk/nostr.js"
},
"./plugin-sdk/ollama": {
"types": "./dist/plugin-sdk/ollama.d.ts",
"default": "./dist/plugin-sdk/ollama.js"
},
"./plugin-sdk/provider-auth": {
"types": "./dist/plugin-sdk/provider-auth.d.ts",
"default": "./dist/plugin-sdk/provider-auth.js"

View File

@@ -110,6 +110,7 @@
"msteams",
"nextcloud-talk",
"nostr",
"ollama",
"provider-auth",
"provider-auth-api-key",
"provider-auth-result",

View File

@@ -6,7 +6,7 @@ import {
buildAssistantMessage,
parseNdjsonStream,
resolveOllamaBaseUrlForRun,
} from "../../extensions/ollama/src/stream.js";
} from "../plugin-sdk/ollama.js";
describe("convertToOllamaMessages", () => {
it("converts user text messages", () => {

View File

@@ -1,7 +1,7 @@
import type { StreamFn } from "@mariozechner/pi-agent-core";
import type { Context, Model, SimpleStreamOptions } from "@mariozechner/pi-ai";
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
import { createConfiguredOllamaCompatNumCtxWrapper } from "../../extensions/ollama/src/stream.js";
import { createConfiguredOllamaCompatNumCtxWrapper } from "../plugin-sdk/ollama.js";
import { __testing as extraParamsTesting } from "./pi-embedded-runner/extra-params.js";
import {
createOpenRouterSystemCacheWrapper,

View File

@@ -1,13 +1,13 @@
import { describe, expect, it, vi } from "vitest";
import { resolveHeartbeatPrompt } from "../../../auto-reply/heartbeat.js";
import type { OpenClawConfig } from "../../../config/config.js";
import {
isOllamaCompatProvider,
resolveOllamaBaseUrlForRun,
resolveOllamaCompatNumCtxEnabled,
shouldInjectOllamaCompatNumCtx,
wrapOllamaCompatNumCtx,
} from "../../../../extensions/ollama/src/stream.js";
import { resolveHeartbeatPrompt } from "../../../auto-reply/heartbeat.js";
import type { OpenClawConfig } from "../../../config/config.js";
} from "../../../plugin-sdk/ollama.js";
import { appendBootstrapPromptWarning } from "../../bootstrap-budget.js";
import { buildAgentSystemPrompt } from "../../system-prompt.js";
import { buildEmbeddedSystemPrompt } from "../system-prompt.js";

View File

@@ -7,12 +7,6 @@ import {
DefaultResourceLoader,
SessionManager,
} from "@mariozechner/pi-coding-agent";
import {
isOllamaCompatProvider,
resolveOllamaCompatNumCtxEnabled,
shouldInjectOllamaCompatNumCtx,
wrapOllamaCompatNumCtx,
} from "../../../../extensions/ollama/api.js";
import {
resolveTelegramInlineButtonsScope,
resolveTelegramReactionLevel,
@@ -25,6 +19,12 @@ import {
ensureGlobalUndiciStreamTimeouts,
} from "../../../infra/net/undici-global-dispatcher.js";
import { MAX_IMAGE_BYTES } from "../../../media/constants.js";
import {
isOllamaCompatProvider,
resolveOllamaCompatNumCtxEnabled,
shouldInjectOllamaCompatNumCtx,
wrapOllamaCompatNumCtx,
} from "../../../plugin-sdk/ollama.js";
import { resolveSignalReactionLevel } from "../../../plugin-sdk/signal.js";
import { getGlobalHookRunner } from "../../../plugins/hook-runner-global.js";
import { isSubagentSessionKey } from "../../../routing/session-key.js";
@@ -202,7 +202,7 @@ export {
resolveOllamaCompatNumCtxEnabled,
shouldInjectOllamaCompatNumCtx,
wrapOllamaCompatNumCtx,
} from "../../../../extensions/ollama/api.js";
} from "../../../plugin-sdk/ollama.js";
export {
decodeHtmlEntitiesInObject,
wrapStreamFnRepairMalformedToolCallArguments,

16
src/plugin-sdk/ollama.ts Normal file
View File

@@ -0,0 +1,16 @@
// Public Ollama provider helpers.
export {
OLLAMA_NATIVE_BASE_URL,
buildAssistantMessage,
convertToOllamaMessages,
createConfiguredOllamaCompatNumCtxWrapper,
createConfiguredOllamaStreamFn,
createOllamaStreamFn,
isOllamaCompatProvider,
parseNdjsonStream,
resolveOllamaBaseUrlForRun,
resolveOllamaCompatNumCtxEnabled,
shouldInjectOllamaCompatNumCtx,
wrapOllamaCompatNumCtx,
} from "../../extensions/ollama/src/stream.js";