Files
openclaw/extensions/longcat/stream.ts
Vincent Koc bf8626c0e9 feat(providers): add LongCat API support (#100501)
* fix(ai): honor provider reasoning compatibility

* feat(longcat): add hosted provider plugin

* chore(longcat): register package metadata

* docs(longcat): add provider setup guide

* docs(longcat): document self-hosted model routing

* refactor(longcat): externalize provider plugin

* chore(longcat): add npm release artifacts
2026-07-06 10:07:08 -07:00

21 lines
820 B
TypeScript

// LongCat stream helpers apply the provider's binary thinking control.
import type { ProviderWrapStreamFnContext } from "openclaw/plugin-sdk/plugin-entry";
import { createPayloadPatchStreamWrapper } from "openclaw/plugin-sdk/provider-stream-shared";
export function createLongCatThinkingWrapper(
baseStreamFn: ProviderWrapStreamFnContext["streamFn"],
thinkingLevel: ProviderWrapStreamFnContext["thinkingLevel"],
): NonNullable<ProviderWrapStreamFnContext["streamFn"]> {
return createPayloadPatchStreamWrapper(
baseStreamFn,
({ payload }) => {
payload.thinking = { type: thinkingLevel === "off" ? "disabled" : "enabled" };
delete payload.reasoning_effort;
},
{
shouldPatch: ({ model }) =>
model.api === "openai-completions" && model.provider === "longcat",
},
);
}