UNPKG

@earendil-works/pi-ai

Version:

Unified LLM API with automatic model discovery and provider configuration

22 lines • 939 B
const OPENCODE_SESSION_HEADER = "x-opencode-session"; function hasHeader(headers, name) { const expected = name.toLowerCase(); return Object.keys(headers ?? {}).some((key) => key.toLowerCase() === expected); } function withSessionHeader(options) { if (!options?.sessionId || hasHeader(options.headers, OPENCODE_SESSION_HEADER)) return options; return { ...options, headers: { ...options.headers, [OPENCODE_SESSION_HEADER]: options.sessionId }, }; } /** Adds OpenCode's required per-conversation routing header before API dispatch. */ export function withOpenCodeSessionHeader(streams) { return { ...streams, stream: (model, context, options) => streams.stream(model, context, withSessionHeader(options)), streamSimple: (model, context, options) => streams.streamSimple(model, context, withSessionHeader(options)), }; } //# sourceMappingURL=opencode-headers.js.map