@oh-my-pi/pi-ai 16.3.6 → 16.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/dist/types/api-registry.d.ts +1 -1
- package/dist/types/auth-broker/client.d.ts +2 -2
- package/dist/types/auth-broker/discover.d.ts +1 -1
- package/dist/types/auth-broker/index.d.ts +7 -7
- package/dist/types/auth-broker/refresher.d.ts +1 -1
- package/dist/types/auth-broker/remote-store.d.ts +6 -6
- package/dist/types/auth-broker/server.d.ts +1 -1
- package/dist/types/auth-broker/snapshot-cache.d.ts +1 -1
- package/dist/types/auth-broker/types.d.ts +2 -2
- package/dist/types/auth-gateway/index.d.ts +3 -3
- package/dist/types/auth-gateway/server.d.ts +3 -3
- package/dist/types/auth-gateway/types.d.ts +1 -1
- package/dist/types/auth-retry.d.ts +2 -2
- package/dist/types/auth-storage.d.ts +6 -6
- package/dist/types/dialect/anthropic.d.ts +1 -1
- package/dist/types/dialect/catalog.d.ts +1 -1
- package/dist/types/dialect/coercion.d.ts +1 -1
- package/dist/types/dialect/deepseek.d.ts +1 -1
- package/dist/types/dialect/demotion.d.ts +16 -14
- package/dist/types/dialect/examples.d.ts +1 -1
- package/dist/types/dialect/factory.d.ts +1 -1
- package/dist/types/dialect/gemini.d.ts +1 -1
- package/dist/types/dialect/gemma.d.ts +1 -1
- package/dist/types/dialect/glm.d.ts +1 -1
- package/dist/types/dialect/harmony.d.ts +1 -1
- package/dist/types/dialect/hermes.d.ts +1 -1
- package/dist/types/dialect/history.d.ts +2 -2
- package/dist/types/dialect/index.d.ts +11 -11
- package/dist/types/dialect/inventory.d.ts +1 -1
- package/dist/types/dialect/kimi.d.ts +1 -1
- package/dist/types/dialect/minimax.d.ts +1 -1
- package/dist/types/dialect/owned-stream.d.ts +2 -2
- package/dist/types/dialect/qwen3.d.ts +1 -1
- package/dist/types/dialect/rendering.d.ts +2 -2
- package/dist/types/dialect/thinking.d.ts +1 -1
- package/dist/types/dialect/types.d.ts +1 -1
- package/dist/types/dialect/xml.d.ts +1 -1
- package/dist/types/error/classes.d.ts +1 -1
- package/dist/types/error/finalize.d.ts +3 -3
- package/dist/types/error/flags.d.ts +1 -1
- package/dist/types/error/format.d.ts +1 -1
- package/dist/types/error/index.d.ts +13 -13
- package/dist/types/error/provider.d.ts +1 -1
- package/dist/types/error/rate-limit.d.ts +1 -1
- package/dist/types/index.d.ts +47 -47
- package/dist/types/provider-details.d.ts +1 -1
- package/dist/types/providers/amazon-bedrock.d.ts +1 -1
- package/dist/types/providers/anthropic-client.d.ts +3 -3
- package/dist/types/providers/anthropic-messages-server-schema.d.ts +1 -1
- package/dist/types/providers/anthropic-messages-server.d.ts +2 -2
- package/dist/types/providers/anthropic-wire.d.ts +1 -1
- package/dist/types/providers/anthropic.d.ts +3 -3
- package/dist/types/providers/aws-credentials.d.ts +2 -2
- package/dist/types/providers/azure-openai-responses.d.ts +2 -2
- package/dist/types/providers/cursor.d.ts +18 -3
- package/dist/types/providers/devin.d.ts +1 -1
- package/dist/types/providers/error-message.d.ts +1 -1
- package/dist/types/providers/github-copilot-headers.d.ts +1 -1
- package/dist/types/providers/gitlab-duo-workflow.d.ts +2 -2
- package/dist/types/providers/gitlab-duo.d.ts +2 -2
- package/dist/types/providers/google-auth.d.ts +1 -1
- package/dist/types/providers/google-gemini-cli.d.ts +6 -4
- package/dist/types/providers/google-interactions.d.ts +3 -3
- package/dist/types/providers/google-shared.d.ts +7 -5
- package/dist/types/providers/google-vertex.d.ts +2 -2
- package/dist/types/providers/google.d.ts +2 -2
- package/dist/types/providers/kimi.d.ts +3 -3
- package/dist/types/providers/mock.d.ts +2 -2
- package/dist/types/providers/ollama.d.ts +1 -1
- package/dist/types/providers/openai-anthropic-shim.d.ts +2 -2
- package/dist/types/providers/openai-chat-server-schema.d.ts +1 -1
- package/dist/types/providers/openai-chat-server.d.ts +2 -2
- package/dist/types/providers/openai-codex/request-transformer.d.ts +1 -1
- package/dist/types/providers/openai-codex/response-handler.d.ts +1 -1
- package/dist/types/providers/openai-codex-responses.d.ts +3 -3
- package/dist/types/providers/openai-completions.d.ts +3 -3
- package/dist/types/providers/openai-reasoning-fallback.d.ts +1 -1
- package/dist/types/providers/openai-responses-server-schema.d.ts +1 -1
- package/dist/types/providers/openai-responses-server.d.ts +2 -2
- package/dist/types/providers/openai-responses.d.ts +5 -5
- package/dist/types/providers/openai-shared.d.ts +10 -9
- package/dist/types/providers/pi-native-client.d.ts +1 -1
- package/dist/types/providers/pi-native-server.d.ts +2 -2
- package/dist/types/providers/register-builtins.d.ts +3 -3
- package/dist/types/providers/synthetic.d.ts +3 -3
- package/dist/types/providers/transform-messages.d.ts +1 -1
- package/dist/types/providers/vision-guard.d.ts +1 -1
- package/dist/types/registry/alibaba-coding-plan.d.ts +1 -1
- package/dist/types/registry/anthropic.d.ts +1 -1
- package/dist/types/registry/api-key-login.d.ts +1 -1
- package/dist/types/registry/api-key-validation.d.ts +1 -1
- package/dist/types/registry/baseten.d.ts +2 -2
- package/dist/types/registry/cerebras.d.ts +2 -2
- package/dist/types/registry/cloudflare-ai-gateway.d.ts +1 -1
- package/dist/types/registry/coreweave.d.ts +2 -2
- package/dist/types/registry/cursor.d.ts +1 -1
- package/dist/types/registry/deepseek.d.ts +1 -1
- package/dist/types/registry/devin.d.ts +1 -1
- package/dist/types/registry/firepass.d.ts +2 -2
- package/dist/types/registry/fireworks.d.ts +2 -2
- package/dist/types/registry/github-copilot.d.ts +1 -1
- package/dist/types/registry/gitlab-duo-workflow.d.ts +1 -1
- package/dist/types/registry/gitlab-duo.d.ts +1 -1
- package/dist/types/registry/google-antigravity.d.ts +1 -1
- package/dist/types/registry/google-gemini-cli.d.ts +1 -1
- package/dist/types/registry/huggingface.d.ts +2 -2
- package/dist/types/registry/index.d.ts +4 -4
- package/dist/types/registry/kagi.d.ts +1 -1
- package/dist/types/registry/kilo.d.ts +1 -1
- package/dist/types/registry/kimi-code.d.ts +1 -1
- package/dist/types/registry/litellm.d.ts +1 -1
- package/dist/types/registry/llama-cpp.d.ts +1 -1
- package/dist/types/registry/lm-studio.d.ts +1 -1
- package/dist/types/registry/minimax-code-cn.d.ts +1 -1
- package/dist/types/registry/minimax-code.d.ts +1 -1
- package/dist/types/registry/moonshot.d.ts +2 -2
- package/dist/types/registry/nanogpt.d.ts +2 -2
- package/dist/types/registry/nvidia.d.ts +1 -1
- package/dist/types/registry/oauth/anthropic.d.ts +3 -3
- package/dist/types/registry/oauth/callback-server.d.ts +1 -1
- package/dist/types/registry/oauth/cursor.d.ts +1 -1
- package/dist/types/registry/oauth/devin.d.ts +1 -1
- package/dist/types/registry/oauth/github-copilot.d.ts +2 -2
- package/dist/types/registry/oauth/gitlab-duo-workflow.d.ts +2 -2
- package/dist/types/registry/oauth/gitlab-duo.d.ts +1 -1
- package/dist/types/registry/oauth/google-antigravity.d.ts +1 -1
- package/dist/types/registry/oauth/google-gemini-cli.d.ts +1 -1
- package/dist/types/registry/oauth/google-oauth-shared.d.ts +2 -2
- package/dist/types/registry/oauth/index.d.ts +2 -2
- package/dist/types/registry/oauth/kimi.d.ts +1 -1
- package/dist/types/registry/oauth/minimax-code.d.ts +2 -2
- package/dist/types/registry/oauth/openai-codex.d.ts +1 -1
- package/dist/types/registry/oauth/opencode.d.ts +1 -1
- package/dist/types/registry/oauth/perplexity.d.ts +1 -1
- package/dist/types/registry/oauth/types.d.ts +2 -2
- package/dist/types/registry/oauth/wafer.d.ts +1 -1
- package/dist/types/registry/oauth/xai-oauth.d.ts +3 -3
- package/dist/types/registry/oauth/xiaomi.d.ts +1 -1
- package/dist/types/registry/ollama-cloud.d.ts +1 -1
- package/dist/types/registry/ollama.d.ts +1 -1
- package/dist/types/registry/openai-codex-device.d.ts +1 -1
- package/dist/types/registry/openai-codex.d.ts +1 -1
- package/dist/types/registry/opencode-go.d.ts +1 -1
- package/dist/types/registry/opencode-zen.d.ts +1 -1
- package/dist/types/registry/openrouter.d.ts +2 -2
- package/dist/types/registry/parallel.d.ts +1 -1
- package/dist/types/registry/perplexity.d.ts +2 -2
- package/dist/types/registry/qianfan.d.ts +2 -2
- package/dist/types/registry/qwen-portal.d.ts +1 -1
- package/dist/types/registry/registry.d.ts +69 -69
- package/dist/types/registry/sakana.d.ts +2 -2
- package/dist/types/registry/synthetic.d.ts +2 -2
- package/dist/types/registry/tavily.d.ts +1 -1
- package/dist/types/registry/together.d.ts +1 -1
- package/dist/types/registry/types.d.ts +1 -1
- package/dist/types/registry/umans.d.ts +2 -2
- package/dist/types/registry/venice.d.ts +2 -2
- package/dist/types/registry/vercel-ai-gateway.d.ts +1 -1
- package/dist/types/registry/vllm.d.ts +1 -1
- package/dist/types/registry/wafer-serverless.d.ts +1 -1
- package/dist/types/registry/xai-oauth.d.ts +1 -1
- package/dist/types/registry/xiaomi-token-plan-ams.d.ts +1 -1
- package/dist/types/registry/xiaomi-token-plan-cn.d.ts +1 -1
- package/dist/types/registry/xiaomi-token-plan-sgp.d.ts +1 -1
- package/dist/types/registry/xiaomi.d.ts +1 -1
- package/dist/types/registry/zai.d.ts +2 -2
- package/dist/types/registry/zenmux.d.ts +2 -2
- package/dist/types/registry/zhipu-coding-plan.d.ts +2 -2
- package/dist/types/stream.d.ts +6 -6
- package/dist/types/types.d.ts +24 -21
- package/dist/types/usage/claude.d.ts +1 -1
- package/dist/types/usage/gemini.d.ts +1 -1
- package/dist/types/usage/github-copilot.d.ts +1 -1
- package/dist/types/usage/google-antigravity.d.ts +1 -1
- package/dist/types/usage/kimi.d.ts +1 -1
- package/dist/types/usage/minimax-code.d.ts +1 -1
- package/dist/types/usage/ollama.d.ts +1 -1
- package/dist/types/usage/openai-codex-reset.d.ts +1 -1
- package/dist/types/usage/openai-codex.d.ts +1 -1
- package/dist/types/usage/opencode-go.d.ts +1 -1
- package/dist/types/usage/zai.d.ts +1 -1
- package/dist/types/usage.d.ts +1 -1
- package/dist/types/utils/block-symbols.d.ts +15 -0
- package/dist/types/utils/empty-completion-retry.d.ts +2 -2
- package/dist/types/utils/event-stream.d.ts +1 -1
- package/dist/types/utils/harmony-leak.d.ts +1 -1
- package/dist/types/utils/http-inspector.d.ts +19 -0
- package/dist/types/utils/leaked-thinking-stream.d.ts +1 -1
- package/dist/types/utils/openai-http.d.ts +3 -9
- package/dist/types/utils/provider-response.d.ts +1 -1
- package/dist/types/utils/proxy.d.ts +1 -1
- package/dist/types/utils/request-debug.d.ts +1 -1
- package/dist/types/utils/retry.d.ts +1 -1
- package/dist/types/utils/schema/equality.d.ts +1 -1
- package/dist/types/utils/schema/index.d.ts +15 -15
- package/dist/types/utils/schema/normalize.d.ts +2 -2
- package/dist/types/utils/schema/spill.d.ts +1 -1
- package/dist/types/utils/schema/wire.d.ts +1 -1
- package/dist/types/utils/sse-debug.d.ts +1 -1
- package/dist/types/utils/thinking-loop.d.ts +2 -2
- package/dist/types/utils/tool-call-loop-guard.d.ts +1 -1
- package/dist/types/utils/tool-choice.d.ts +1 -1
- package/dist/types/utils/validation.d.ts +1 -1
- package/dist/types/utils.d.ts +14 -2
- package/package.json +4 -4
- package/src/dialect/demotion.ts +18 -19
- package/src/error/rate-limit.ts +1 -1
- package/src/providers/azure-openai-responses.ts +3 -2
- package/src/providers/cursor.ts +36 -0
- package/src/providers/google-gemini-cli.ts +12 -3
- package/src/providers/google-shared.ts +3 -1
- package/src/providers/mock.ts +10 -3
- package/src/providers/openai-codex-responses.ts +47 -39
- package/src/providers/openai-completions.ts +48 -9
- package/src/providers/openai-responses.ts +37 -23
- package/src/providers/openai-shared.ts +145 -26
- package/src/providers/transform-messages.ts +63 -9
- package/src/registry/oauth/wafer.ts +1 -1
- package/src/stream.ts +6 -0
- package/src/types.ts +27 -3
- package/src/utils/block-symbols.ts +18 -0
- package/src/utils/http-inspector.ts +32 -4
- package/src/utils/openai-http.ts +6 -9
- package/src/utils/retry-after.ts +12 -1
- package/src/utils.ts +78 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { AnthropicApiError, AnthropicConnectionError, AnthropicConnectionTimeoutError } from "../error";
|
|
1
|
+
import { AnthropicApiError, AnthropicConnectionError, AnthropicConnectionTimeoutError } from "../error/index.js";
|
|
2
2
|
export { AnthropicApiError, AnthropicConnectionError, AnthropicConnectionTimeoutError };
|
|
3
|
-
import type { FetchImpl } from "../types";
|
|
4
|
-
import type { MessageCreateParamsStreaming } from "./anthropic-wire";
|
|
3
|
+
import type { FetchImpl } from "../types.js";
|
|
4
|
+
import type { MessageCreateParamsStreaming } from "./anthropic-wire.js";
|
|
5
5
|
/** Per-request options accepted by {@link AnthropicMessages.create}. */
|
|
6
6
|
export interface AnthropicRequestOptions {
|
|
7
7
|
signal?: AbortSignal;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* gateway. Maps canonical wire variants to our internal normalized omp Context
|
|
4
4
|
* and options.
|
|
5
5
|
*/
|
|
6
|
-
import type { ContentBlockParam, ImageBlockParam, MessageCreateParams, MessageParam, TextBlockParam, Tool, ToolChoice } from "./anthropic-wire";
|
|
6
|
+
import type { ContentBlockParam, ImageBlockParam, MessageCreateParams, MessageParam, TextBlockParam, Tool, ToolChoice } from "./anthropic-wire.js";
|
|
7
7
|
export declare const cacheControlSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
8
8
|
type: "ephemeral";
|
|
9
9
|
ttl?: "1h" | "5m" | undefined;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { AssistantMessage, AssistantMessageEventStream } from "../types";
|
|
1
|
+
import type { AssistantMessage, AssistantMessageEventStream } from "../types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Anthropic Messages API (https://docs.anthropic.com/en/api/messages) ↔ pi-ai
|
|
4
4
|
* gateway translation. Inbound: foreign HTTP body → omp Context. Outbound:
|
|
5
5
|
* omp AssistantMessage[Stream] → Anthropic-shaped JSON / SSE.
|
|
6
6
|
*/
|
|
7
|
-
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types";
|
|
7
|
+
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types.js";
|
|
8
8
|
export type { ParsedRequest };
|
|
9
9
|
export declare function parseRequest(body: unknown, headers?: Headers): ParsedRequest;
|
|
10
10
|
export declare function encodeResponse(message: AssistantMessage, requestedModelId: string): Record<string, unknown>;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* `scope`, tool `strict`/`eager_input_streaming`, mid-conversation `system`
|
|
12
12
|
* role) are first-class here instead of being patched in via casts.
|
|
13
13
|
*/
|
|
14
|
-
import type { TokenTaskBudget } from "../types";
|
|
14
|
+
import type { TokenTaskBudget } from "../types.js";
|
|
15
15
|
/** Ephemeral prefix-cache breakpoint marker. */
|
|
16
16
|
export type CacheControlEphemeral = {
|
|
17
17
|
type: "ephemeral";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { FetchImpl, Message, Model, ProviderSessionState, ServiceTier, SimpleStreamOptions, StreamFunction, StreamOptions, Usage } from "../types";
|
|
2
|
-
import { type AnthropicFetchOptions, type AnthropicMessagesClientLike } from "./anthropic-client";
|
|
3
|
-
import type { FallbackParam, MessageParam, TextBlockParam } from "./anthropic-wire";
|
|
1
|
+
import type { FetchImpl, Message, Model, ProviderSessionState, ServiceTier, SimpleStreamOptions, StreamFunction, StreamOptions, Usage } from "../types.js";
|
|
2
|
+
import { type AnthropicFetchOptions, type AnthropicMessagesClientLike } from "./anthropic-client.js";
|
|
3
|
+
import type { FallbackParam, MessageParam, TextBlockParam } from "./anthropic-wire.js";
|
|
4
4
|
export type AnthropicHeaderOptions = {
|
|
5
5
|
apiKey: string;
|
|
6
6
|
baseUrl?: string;
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
* Resolved credentials are cached process-wide per profile and refreshed
|
|
19
19
|
* 60 s before `Expiration` to absorb clock skew.
|
|
20
20
|
*/
|
|
21
|
-
import type { FetchImpl } from "../types";
|
|
22
|
-
import type { AwsCredentials } from "./aws-sigv4";
|
|
21
|
+
import type { FetchImpl } from "../types.js";
|
|
22
|
+
import type { AwsCredentials } from "./aws-sigv4.js";
|
|
23
23
|
export interface ResolvedCredentials extends AwsCredentials {
|
|
24
24
|
/** Absolute expiration timestamp in ms. `undefined` for non-expiring static creds. */
|
|
25
25
|
expiresAt?: number;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ServiceTier, StreamFunction, StreamOptions, ToolChoice } from "../types";
|
|
2
|
-
export { parseAzureDeploymentNameMap } from "./openai-shared";
|
|
1
|
+
import type { ServiceTier, StreamFunction, StreamOptions, ToolChoice } from "../types.js";
|
|
2
|
+
export { parseAzureDeploymentNameMap } from "./openai-shared.js";
|
|
3
3
|
export interface AzureOpenAIResponsesOptions extends StreamOptions {
|
|
4
4
|
reasoning?: "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
5
5
|
reasoningSummary?: "auto" | "detailed" | "concise" | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type JsonValue } from "@bufbuild/protobuf";
|
|
2
|
-
import type { AssistantMessage, CursorExecHandlerResult, CursorExecHandlers, CursorToolResultHandler, Message, StreamFunction, StreamOptions, TextContent, ThinkingContent, ToolCall, ToolResultMessage } from "../types";
|
|
3
|
-
import { kCursorExecResolved, kStreamingBlockIndex, kStreamingBlockKind, kStreamingLastParseLen, kStreamingPartialJson } from "../utils/block-symbols";
|
|
4
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
2
|
+
import type { AssistantMessage, CursorExecHandlerResult, CursorExecHandlers, CursorToolResultHandler, Message, StreamFunction, StreamOptions, TextContent, ThinkingContent, ToolCall, ToolResultMessage } from "../types.js";
|
|
3
|
+
import { kCursorExecResolved, kStreamingBlockIndex, kStreamingBlockKind, kStreamingLastParseLen, kStreamingPartialJson } from "../utils/block-symbols.js";
|
|
4
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
5
5
|
export declare const CURSOR_API_URL = "https://api2.cursor.sh";
|
|
6
6
|
export declare const CURSOR_CLIENT_VERSION = "cli-2026.01.09-231024f";
|
|
7
7
|
export interface CursorOptions extends StreamOptions {
|
|
@@ -44,6 +44,21 @@ export declare function resolveExecHandler<TArgs, TResult>(args: TArgs, handler:
|
|
|
44
44
|
execResult: TResult;
|
|
45
45
|
toolResult?: ToolResultMessage;
|
|
46
46
|
}>;
|
|
47
|
+
/**
|
|
48
|
+
* Reject a Cursor exec-channel `grepArgs` frame whose `pattern` is empty or
|
|
49
|
+
* whitespace-only. Returns an actionable error message when the pattern is
|
|
50
|
+
* unusable (with a `glob`-aware hint when the model likely meant to list
|
|
51
|
+
* files), or `null` when the pattern is valid and grep should run.
|
|
52
|
+
*
|
|
53
|
+
* Exported for tests. Cursor's model sometimes sends `pattern=""` together
|
|
54
|
+
* with a non-empty `glob`, expecting grep to enumerate matching files; the
|
|
55
|
+
* downstream coding-agent `grep` tool rejects that with a bare "Pattern must
|
|
56
|
+
* not be empty", which the TUI renders as `?` in the tool preview (issue
|
|
57
|
+
* #4574). Handling it at the Cursor exec dispatch keeps the synthesized
|
|
58
|
+
* `toolCall` block off the persisted assistant message and gives the model a
|
|
59
|
+
* specific recovery hint.
|
|
60
|
+
*/
|
|
61
|
+
export declare function emptyGrepPatternRejection(pattern: string | undefined, glob: string | undefined): string | null;
|
|
47
62
|
/**
|
|
48
63
|
* Merge the decoded completion-frame `McpArgs` map into the args assembled
|
|
49
64
|
* from streamed `args_text_delta` snapshots.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StreamFunction, StreamOptions } from "../types";
|
|
1
|
+
import type { StreamFunction, StreamOptions } from "../types.js";
|
|
2
2
|
/** Base host for Codeium/Windsurf's Cascade chat API (Connect protocol over HTTP/1.1). */
|
|
3
3
|
export declare const DEVIN_API_URL = "https://server.codeium.com";
|
|
4
4
|
export interface DevinOptions extends StreamOptions {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type GitLabDuoWorkflowNamespaceSelection } from "@oh-my-pi/pi-catalog/discovery/gitlab-duo-workflow";
|
|
2
|
-
import type { AssistantMessage, Context, FetchImpl, Model, ProviderSessionState, StreamFunction, StreamOptions, Tool, ToolChoice, ToolResultMessage } from "../types";
|
|
3
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
2
|
+
import type { AssistantMessage, Context, FetchImpl, Model, ProviderSessionState, StreamFunction, StreamOptions, Tool, ToolChoice, ToolResultMessage } from "../types.js";
|
|
3
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
4
4
|
export declare const GITLAB_DUO_WORKFLOW_PROVIDER_ID = "gitlab-duo-agent";
|
|
5
5
|
export declare const GITLAB_DUO_WORKFLOW_API = "gitlab-duo-agent";
|
|
6
6
|
export declare const GITLAB_DUO_WORKFLOW_DEFINITION = "ambient";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Api, Context, Model, SimpleStreamOptions } from "../types";
|
|
2
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
1
|
+
import type { Api, Context, Model, SimpleStreamOptions } from "../types.js";
|
|
2
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
3
3
|
type GitLabProvider = "anthropic" | "openai";
|
|
4
4
|
type GitLabOpenAIApiType = "chat" | "responses";
|
|
5
5
|
export type GitLabModelMapping = {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* Tokens are cached per source key and refreshed `GOOGLE_VERTEX_REFRESH_SKEW_MS` before expiry
|
|
12
12
|
* (default 60s). Concurrent callers waiting on a refresh share the same in-flight promise.
|
|
13
13
|
*/
|
|
14
|
-
import type { FetchImpl } from "../types";
|
|
14
|
+
import type { FetchImpl } from "../types.js";
|
|
15
15
|
/**
|
|
16
16
|
* Returns a Bearer access token suitable for the `Authorization` header on Vertex AI calls.
|
|
17
17
|
* The token is cached in module scope and refreshed `GOOGLE_VERTEX_REFRESH_SKEW_MS` ms before it expires.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { Context, Model, ProviderSessionState, StreamFunction, StreamOptions } from "../types";
|
|
2
|
-
import type { Content, FunctionCallingConfigMode, ThinkingConfig } from "./google-shared";
|
|
3
|
-
import { type GoogleThinkingLevel } from "./google-shared";
|
|
1
|
+
import type { Context, Model, ProviderSessionState, StreamFunction, StreamOptions } from "../types.js";
|
|
2
|
+
import type { Content, FunctionCallingConfigMode, ThinkingConfig } from "./google-shared.js";
|
|
3
|
+
import { type GoogleThinkingLevel } from "./google-shared.js";
|
|
4
4
|
/**
|
|
5
5
|
* Thinking level for Gemini 3 models. Re-exported from `google-shared` so existing
|
|
6
|
-
* `import { GoogleThinkingLevel } from "./google-gemini-cli"` callers keep working.
|
|
6
|
+
* `import { GoogleThinkingLevel } from "./google-gemini-cli.js"` callers keep working.
|
|
7
7
|
*/
|
|
8
8
|
export type { GoogleThinkingLevel };
|
|
9
9
|
export interface GoogleGeminiCliOptions extends StreamOptions {
|
|
@@ -41,6 +41,8 @@ export interface GoogleGeminiCliOptions extends StreamOptions {
|
|
|
41
41
|
budget: number;
|
|
42
42
|
};
|
|
43
43
|
};
|
|
44
|
+
/** Request that Cloud Code Assist omit human-readable thought summaries while still allowing internal reasoning. */
|
|
45
|
+
hideThinkingSummary?: boolean;
|
|
44
46
|
/**
|
|
45
47
|
* Upstream wire model id override for collapsed effort-tier variants.
|
|
46
48
|
* Serialized as `requestModelId ?? model.requestModelId ?? model.id`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Context, FetchImpl, Model, ProviderSessionState } from "../types";
|
|
2
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
3
|
-
import { type GoogleSharedStreamOptions } from "./google-shared";
|
|
1
|
+
import type { Context, FetchImpl, Model, ProviderSessionState } from "../types.js";
|
|
2
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
3
|
+
import { type GoogleSharedStreamOptions } from "./google-shared.js";
|
|
4
4
|
type GoogleInteractionsApi = "google-generative-ai" | "google-vertex";
|
|
5
5
|
/** Provider session state storing the last Gemini Interactions response id. */
|
|
6
6
|
export interface GoogleInteractionsProviderSessionState extends ProviderSessionState {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared utilities for Google Generative AI and Google Cloud Code Assist providers.
|
|
3
3
|
*/
|
|
4
|
-
import type { AssistantMessage, Context, FetchImpl, Model, ServiceTier, StopReason, StreamOptions, TextContent, ThinkingContent, Tool, ToolCall } from "../types";
|
|
5
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
6
|
-
import { normalizeSchemaForGoogle } from "../utils/schema";
|
|
7
|
-
import type { Content, FinishReason, FunctionCallingConfigMode, GenerateContentParameters, GenerateContentResponse, Part } from "./google-types";
|
|
8
|
-
export type { Content, FunctionCallingConfigMode, GenerateContentParameters, GenerateContentResponse, ThinkingConfig, } from "./google-types";
|
|
4
|
+
import type { AssistantMessage, Context, FetchImpl, Model, ServiceTier, StopReason, StreamOptions, TextContent, ThinkingContent, Tool, ToolCall } from "../types.js";
|
|
5
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
6
|
+
import { normalizeSchemaForGoogle } from "../utils/schema/index.js";
|
|
7
|
+
import type { Content, FinishReason, FunctionCallingConfigMode, GenerateContentParameters, GenerateContentResponse, Part } from "./google-types.js";
|
|
8
|
+
export type { Content, FunctionCallingConfigMode, GenerateContentParameters, GenerateContentResponse, ThinkingConfig, } from "./google-types.js";
|
|
9
9
|
export { normalizeSchemaForGoogle };
|
|
10
10
|
type GoogleApiType = "google-generative-ai" | "google-gemini-cli" | "google-vertex";
|
|
11
11
|
/**
|
|
@@ -33,6 +33,8 @@ export interface GoogleSharedStreamOptions extends StreamOptions {
|
|
|
33
33
|
budgetTokens?: number;
|
|
34
34
|
level?: GoogleThinkingLevel;
|
|
35
35
|
};
|
|
36
|
+
/** Request that Google omit human-readable thought summaries while still allowing internal reasoning. */
|
|
37
|
+
hideThinkingSummary?: boolean;
|
|
36
38
|
/** Gemini/Vertex serving tier (`flex`/`priority`); other values are omitted. */
|
|
37
39
|
serviceTier?: ServiceTier;
|
|
38
40
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { StreamFunction } from "../types";
|
|
2
|
-
import { type GoogleSharedStreamOptions } from "./google-shared";
|
|
1
|
+
import type { StreamFunction } from "../types.js";
|
|
2
|
+
import { type GoogleSharedStreamOptions } from "./google-shared.js";
|
|
3
3
|
export interface GoogleVertexOptions extends GoogleSharedStreamOptions {
|
|
4
4
|
project?: string;
|
|
5
5
|
location?: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StreamFunction } from "../types";
|
|
2
|
-
import { type GoogleSharedStreamOptions } from "./google-shared";
|
|
1
|
+
import type { StreamFunction } from "../types.js";
|
|
2
|
+
import { type GoogleSharedStreamOptions } from "./google-shared.js";
|
|
3
3
|
export type GoogleOptions = GoogleSharedStreamOptions;
|
|
4
4
|
export declare const streamGoogle: StreamFunction<"google-generative-ai">;
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
* The Anthropic API is generally more stable and recommended.
|
|
9
9
|
* Note: Kimi calculates TPM rate limits based on max_tokens, not actual output.
|
|
10
10
|
*/
|
|
11
|
-
import type { Api, Context, Model } from "../types";
|
|
12
|
-
import type { AssistantMessageEventStream } from "../utils/event-stream";
|
|
13
|
-
import { type OpenAIAnthropicApiFormat, type OpenAIAnthropicShimOptions } from "./openai-anthropic-shim";
|
|
11
|
+
import type { Api, Context, Model } from "../types.js";
|
|
12
|
+
import type { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
13
|
+
import { type OpenAIAnthropicApiFormat, type OpenAIAnthropicShimOptions } from "./openai-anthropic-shim.js";
|
|
14
14
|
export type KimiApiFormat = OpenAIAnthropicApiFormat;
|
|
15
15
|
export interface KimiOptions extends OpenAIAnthropicShimOptions {
|
|
16
16
|
/** API format: "openai" or "anthropic". Default: "anthropic" */
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
* // Inspect calls afterwards.
|
|
42
42
|
* expect(mock.calls).toHaveLength(2);
|
|
43
43
|
*/
|
|
44
|
-
import type { Api, Context, Model, SimpleStreamOptions, StopDetails, StopReason, Usage } from "../types";
|
|
45
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
44
|
+
import type { Api, Context, Model, SimpleStreamOptions, StopDetails, StopReason, Usage } from "../types.js";
|
|
45
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
46
46
|
/** The API string this provider serves. */
|
|
47
47
|
export declare const MOCK_API: "mock";
|
|
48
48
|
export type MockApi = typeof MOCK_API;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StreamFunction, StreamOptions, ToolChoice } from "../types";
|
|
1
|
+
import type { StreamFunction, StreamOptions, ToolChoice } from "../types.js";
|
|
2
2
|
export interface OllamaChatOptions extends StreamOptions {
|
|
3
3
|
reasoning?: "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
4
4
|
disableReasoning?: boolean;
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
* format, optional extra headers); the streaming/forwarding plumbing lives
|
|
8
8
|
* here once.
|
|
9
9
|
*/
|
|
10
|
-
import type { Context, Model, SimpleStreamOptions } from "../types";
|
|
11
|
-
import { AssistantMessageEventStream } from "../utils/event-stream";
|
|
10
|
+
import type { Context, Model, SimpleStreamOptions } from "../types.js";
|
|
11
|
+
import { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
12
12
|
export type OpenAIAnthropicApiFormat = "openai" | "anthropic";
|
|
13
13
|
export interface OpenAIAnthropicShimOptions extends SimpleStreamOptions {
|
|
14
14
|
/** API format: "openai" or "anthropic". */
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* official OpenAI SDK — which sends a growing pile of non-strict defaults (e.g.
|
|
7
7
|
* `stream_options.include_obfuscation`) — does not trip 400s on shapes we simply ignore.
|
|
8
8
|
*/
|
|
9
|
-
import type { ChatCompletionContentPart, ChatCompletionCreateParams, ChatCompletionMessageParam, ChatCompletionMessageToolCall, ChatCompletionTool, ChatCompletionToolChoiceOption } from "./openai-chat-wire";
|
|
9
|
+
import type { ChatCompletionContentPart, ChatCompletionCreateParams, ChatCompletionMessageParam, ChatCompletionMessageToolCall, ChatCompletionTool, ChatCompletionToolChoiceOption } from "./openai-chat-wire.js";
|
|
10
10
|
export declare const textPartSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
11
11
|
type: "text";
|
|
12
12
|
text: string;
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Parsed inbound OpenAI chat-completions request, ready to feed into pi-ai
|
|
3
3
|
* `stream(model, context, options)`.
|
|
4
4
|
*/
|
|
5
|
-
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types";
|
|
6
|
-
import type { AssistantMessage, AssistantMessageEventStream } from "../types";
|
|
5
|
+
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types.js";
|
|
6
|
+
import type { AssistantMessage, AssistantMessageEventStream } from "../types.js";
|
|
7
7
|
export type { ParsedRequest };
|
|
8
8
|
export declare function parseRequest(body: unknown, headers?: Headers): ParsedRequest;
|
|
9
9
|
export declare function encodeResponse(message: AssistantMessage, requestedModelId: string): Record<string, unknown>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Api, Model } from "../../types";
|
|
1
|
+
import type { Api, Model } from "../../types.js";
|
|
2
2
|
/** Reasoning replay scope for the Codex Responses API (`reasoning.context`). */
|
|
3
3
|
export type CodexReasoningContext = "auto" | "current_turn" | "all_turns";
|
|
4
4
|
export interface ReasoningConfig {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Context, Model, ProviderSessionState, ServiceTier, StreamFunction, StreamOptions, Tool, ToolChoice } from "../types";
|
|
2
|
-
import { type CodexReasoningContext, type RequestBody } from "./openai-codex/request-transformer";
|
|
3
|
-
import type { ResponseInput } from "./openai-responses-wire";
|
|
1
|
+
import type { Context, Model, ProviderSessionState, ServiceTier, StreamFunction, StreamOptions, Tool, ToolChoice } from "../types.js";
|
|
2
|
+
import { type CodexReasoningContext, type RequestBody } from "./openai-codex/request-transformer.js";
|
|
3
|
+
import type { ResponseInput } from "./openai-responses-wire.js";
|
|
4
4
|
export interface OpenAICodexResponsesOptions extends StreamOptions {
|
|
5
5
|
reasoning?: "none" | "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
6
6
|
reasoningSummary?: "auto" | "concise" | "detailed" | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ResolvedOpenAICompat } from "@oh-my-pi/pi-catalog/types";
|
|
2
|
-
import type { AssistantMessage, Context, Model, ServiceTier, StreamFunction, StreamOptions, ToolChoice } from "../types";
|
|
3
|
-
import type { ChatCompletionMessageParam } from "./openai-chat-wire";
|
|
4
|
-
export { applyOpenRouterRoutingVariant } from "./openai-shared";
|
|
2
|
+
import type { AssistantMessage, Context, Model, ServiceTier, StreamFunction, StreamOptions, ToolChoice } from "../types.js";
|
|
3
|
+
import type { ChatCompletionMessageParam } from "./openai-chat-wire.js";
|
|
4
|
+
export { applyOpenRouterRoutingVariant } from "./openai-shared.js";
|
|
5
5
|
/**
|
|
6
6
|
* Identify "real progress" stream chunks vs. keepalives, role-only preambles,
|
|
7
7
|
* and empty `{choices:[]}` no-ops emitted by some OpenAI-compatible endpoints.
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Real clients (codex, openai-python, llm-git) routinely send these and a 400
|
|
8
8
|
* is a worse outcome than dropping them on the floor.
|
|
9
9
|
*/
|
|
10
|
-
import type { EasyInputMessage, ResponseCreateParams, ResponseFunctionToolCall, ResponseInputContent, ResponseInputItem, ResponseOutputMessage, ResponseReasoningItem, Tool as ResponsesTool } from "./openai-responses-wire";
|
|
10
|
+
import type { EasyInputMessage, ResponseCreateParams, ResponseFunctionToolCall, ResponseInputContent, ResponseInputItem, ResponseOutputMessage, ResponseReasoningItem, Tool as ResponsesTool } from "./openai-responses-wire.js";
|
|
11
11
|
declare const inputImageBlockSchema: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
12
12
|
type: "input_image";
|
|
13
13
|
detail?: "auto" | "high" | "low" | undefined;
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
* Spec: https://platform.openai.com/docs/api-reference/responses
|
|
9
9
|
* Inverse direction (source-of-truth for item shapes): ../../providers/openai-responses.ts
|
|
10
10
|
*/
|
|
11
|
-
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types";
|
|
12
|
-
import type { AssistantMessage, AssistantMessageEventStream } from "../types";
|
|
11
|
+
import type { AuthGatewayStreamControl, AuthGatewayParsedRequest as ParsedRequest } from "../auth-gateway/types.js";
|
|
12
|
+
import type { AssistantMessage, AssistantMessageEventStream } from "../types.js";
|
|
13
13
|
export type { ParsedRequest };
|
|
14
14
|
export declare function parseRequest(body: unknown, headers?: Headers): ParsedRequest;
|
|
15
15
|
export declare function formatError(status: number, type: string, message: string): Response;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { Context, Model, OpenAICompat, ProviderSessionState, ServiceTier, StreamFunction, StreamOptions, Tool, ToolChoice } from "../types";
|
|
2
|
-
import { type OpenAIResponsesToolChoice } from "../utils/tool-choice";
|
|
3
|
-
import { type OpenAIReasoningEffortFallbackState } from "./openai-reasoning-fallback";
|
|
4
|
-
import type { Tool as OpenAITool, ResponseCreateParamsStreaming, ResponseInput } from "./openai-responses-wire";
|
|
5
|
-
import { type OpenAIStrictToolsScope, type OpenAIStrictToolsState } from "./openai-shared";
|
|
1
|
+
import type { Context, Model, OpenAICompat, ProviderSessionState, ServiceTier, StreamFunction, StreamOptions, Tool, ToolChoice } from "../types.js";
|
|
2
|
+
import { type OpenAIResponsesToolChoice } from "../utils/tool-choice.js";
|
|
3
|
+
import { type OpenAIReasoningEffortFallbackState } from "./openai-reasoning-fallback.js";
|
|
4
|
+
import type { Tool as OpenAITool, ResponseCreateParamsStreaming, ResponseInput } from "./openai-responses-wire.js";
|
|
5
|
+
import { type OpenAIStrictToolsScope, type OpenAIStrictToolsState } from "./openai-shared.js";
|
|
6
6
|
export interface OpenAIResponsesOptions extends StreamOptions {
|
|
7
7
|
reasoning?: "minimal" | "low" | "medium" | "high" | "xhigh";
|
|
8
8
|
reasoningSummary?: "auto" | "detailed" | "concise" | null;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { OpenAICompat, OpenAIReasoningDisableMode, OpenAIStreamMarkupHealingPattern, OpenRouterRouting, ResolvedOpenAICompat, ResolvedOpenAIResponsesCompat, ResolvedOpenAISharedCompat, VercelGatewayRouting } from "@oh-my-pi/pi-catalog/types";
|
|
2
|
-
import { type Api, type AssistantMessage, type CacheRetention, type Context, type ImageContent, type Message, type MessageAttribution, type Model, type
|
|
3
|
-
import { kStreamingLastParseLen, kStreamingPartialJson } from "../utils/block-symbols";
|
|
4
|
-
import type { AssistantMessageEventStream } from "../utils/event-stream";
|
|
5
|
-
import type { CapturedHttpErrorResponse } from "../utils/http-inspector";
|
|
6
|
-
import type { ChatCompletionCreateParamsStreaming } from "./openai-chat-wire";
|
|
7
|
-
import type { InputItem } from "./openai-codex/request-transformer";
|
|
8
|
-
import type { ResponseContentPartAddedEvent, ResponseCreateParamsStreaming, ResponseInput, ResponseInputContent, ResponseInputItem, ResponseOutputItem, ResponseOutputMessage, ResponseReasoningItem, ResponseStatus, ResponseStreamEvent } from "./openai-responses-wire";
|
|
2
|
+
import { type Api, type AssistantMessage, type CacheRetention, type Context, type ImageContent, type Message, type MessageAttribution, type Model, type ServiceTier, type StopReason, type StreamOptions, type TextContent, type TextSignatureV1, type ThinkingContent, type Tool, type ToolCall, type ToolResultMessage, type Usage } from "../types.js";
|
|
3
|
+
import { kStreamingLastParseLen, kStreamingPartialJson } from "../utils/block-symbols.js";
|
|
4
|
+
import type { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
5
|
+
import type { CapturedHttpErrorResponse } from "../utils/http-inspector.js";
|
|
6
|
+
import type { ChatCompletionCreateParamsStreaming } from "./openai-chat-wire.js";
|
|
7
|
+
import type { InputItem } from "./openai-codex/request-transformer.js";
|
|
8
|
+
import type { ResponseContentPartAddedEvent, ResponseCreateParamsStreaming, ResponseInput, ResponseInputContent, ResponseInputItem, ResponseOutputItem, ResponseOutputMessage, ResponseReasoningItem, ResponseStatus, ResponseStreamEvent } from "./openai-responses-wire.js";
|
|
9
9
|
export interface OpenAIModelIdentity {
|
|
10
10
|
provider: string;
|
|
11
11
|
id: string;
|
|
@@ -56,7 +56,7 @@ export interface OpenAIRequestSetup {
|
|
|
56
56
|
export declare function resolveOpenAIRequestSetup(model: OpenAIRequestSetupModel, options: OpenAIRequestSetupOptions): OpenAIRequestSetup;
|
|
57
57
|
export declare function applyOpenAIServiceTier(params: {
|
|
58
58
|
service_tier?: ServiceTier | null | undefined;
|
|
59
|
-
}, serviceTier: ServiceTier | null | undefined,
|
|
59
|
+
}, serviceTier: ServiceTier | null | undefined, model: Pick<Model, "provider" | "api" | "id">): void;
|
|
60
60
|
/**
|
|
61
61
|
* Adjust resolved cost by the service tier OpenAI actually billed — parity with
|
|
62
62
|
* Codex (`applyCodexServiceTierPricing`), but with the standard (non-Codex)
|
|
@@ -82,6 +82,7 @@ export interface OpenAIUsageAccounting {
|
|
|
82
82
|
cacheWrite: number;
|
|
83
83
|
totalTokens: number;
|
|
84
84
|
reasoningTokens?: number;
|
|
85
|
+
orchestration?: Usage["orchestration"];
|
|
85
86
|
}
|
|
86
87
|
export declare function calculateOpenAIUsageAccounting(accounting: OpenAIUsageAccountingInput): OpenAIUsageAccounting;
|
|
87
88
|
export declare function normalizeOpenAIResponsesPromptCacheKey(sessionId: string | undefined): string | undefined;
|
|
@@ -454,7 +455,7 @@ type CommonSamplingOptions = Pick<StreamOptions, "temperature" | "topP" | "topK"
|
|
|
454
455
|
* can let the upstream apply its own default instead of 400-ing on `maxTokens` values that
|
|
455
456
|
* reflect the model's context window rather than the upstream output limit.
|
|
456
457
|
*/
|
|
457
|
-
export declare function applyCommonResponsesSamplingParams<P extends CommonResponsesParams>(params: P, options: CommonSamplingOptions | undefined, model: Pick<Model, "provider" | "omitMaxOutputTokens" | "maxTokens">): void;
|
|
458
|
+
export declare function applyCommonResponsesSamplingParams<P extends CommonResponsesParams>(params: P, options: CommonSamplingOptions | undefined, model: Pick<Model, "provider" | "api" | "id" | "omitMaxOutputTokens" | "maxTokens">): void;
|
|
458
459
|
type ReasoningOptions = {
|
|
459
460
|
reasoning?: string;
|
|
460
461
|
reasoningSummary?: "auto" | "detailed" | "concise" | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Api, AssistantMessageEventStream as AssistantMessageEventStreamType, Context, Model, SimpleStreamOptions } from "../types";
|
|
1
|
+
import type { Api, AssistantMessageEventStream as AssistantMessageEventStreamType, Context, Model, SimpleStreamOptions } from "../types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Stream a turn through an `omp auth-gateway` over the pi-native protocol.
|
|
4
4
|
*
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
* 200 JSON (stream=false): { message: AssistantMessage }
|
|
26
26
|
* 4xx/5xx: { error: { type, message } }
|
|
27
27
|
*/
|
|
28
|
-
import type { AuthGatewayStreamControl } from "../auth-gateway/types";
|
|
29
|
-
import type { AssistantMessageEventStream, Context, SimpleStreamOptions } from "../types";
|
|
28
|
+
import type { AuthGatewayStreamControl } from "../auth-gateway/types.js";
|
|
29
|
+
import type { AssistantMessageEventStream, Context, SimpleStreamOptions } from "../types.js";
|
|
30
30
|
export interface PiNativeParsedRequest {
|
|
31
31
|
modelId: string;
|
|
32
32
|
context: Context;
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
* wired into the main streaming path. It provides the infrastructure for lazy
|
|
11
11
|
* loading that can be integrated when stream.ts is refactored.
|
|
12
12
|
*/
|
|
13
|
-
import type { AssistantMessageEventStream, Context, Model, OptionsForApi } from "../types";
|
|
14
|
-
import { AssistantMessageEventStream as EventStreamImpl } from "../utils/event-stream";
|
|
15
|
-
import type { BedrockOptions } from "./amazon-bedrock";
|
|
13
|
+
import type { AssistantMessageEventStream, Context, Model, OptionsForApi } from "../types.js";
|
|
14
|
+
import { AssistantMessageEventStream as EventStreamImpl } from "../utils/event-stream.js";
|
|
15
|
+
import type { BedrockOptions } from "./amazon-bedrock.js";
|
|
16
16
|
interface BedrockProviderModule {
|
|
17
17
|
streamBedrock: (model: Model<"bedrock-converse-stream">, context: Context, options: BedrockOptions) => AssistantMessageEventStream;
|
|
18
18
|
}
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @see https://dev.synthetic.new/docs/api/overview
|
|
9
9
|
*/
|
|
10
|
-
import type { Api, Context, Model } from "../types";
|
|
11
|
-
import type { AssistantMessageEventStream } from "../utils/event-stream";
|
|
12
|
-
import { type OpenAIAnthropicApiFormat, type OpenAIAnthropicShimOptions } from "./openai-anthropic-shim";
|
|
10
|
+
import type { Api, Context, Model } from "../types.js";
|
|
11
|
+
import type { AssistantMessageEventStream } from "../utils/event-stream.js";
|
|
12
|
+
import { type OpenAIAnthropicApiFormat, type OpenAIAnthropicShimOptions } from "./openai-anthropic-shim.js";
|
|
13
13
|
export type SyntheticApiFormat = OpenAIAnthropicApiFormat;
|
|
14
14
|
export interface SyntheticOptions extends OpenAIAnthropicShimOptions {
|
|
15
15
|
/** API format: "openai" or "anthropic". Default: "openai" */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Api, AssistantMessage, Message, Model } from "../types";
|
|
1
|
+
import type { Api, AssistantMessage, Message, Model } from "../types.js";
|
|
2
2
|
/**
|
|
3
3
|
* Normalize tool call ID for cross-provider compatibility.
|
|
4
4
|
* OpenAI Responses API generates IDs that are 450+ chars with special characters like `|`.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ImageContent, Model, TextContent } from "../types";
|
|
1
|
+
import type { ImageContent, Model, TextContent } from "../types.js";
|
|
2
2
|
export declare const NON_VISION_IMAGE_PLACEHOLDER = "[image omitted: model does not support vision]";
|
|
3
3
|
export declare function partitionVisionContent(content: ReadonlyArray<TextContent | ImageContent>, supportsImages: boolean): {
|
|
4
4
|
textBlocks: TextContent[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OAuthController, OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types";
|
|
1
|
+
import type { OAuthController, OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
2
|
export declare function loginAlibabaCodingPlan(options: OAuthController): Promise<OAuthCredentials>;
|
|
3
3
|
export declare const alibabaCodingPlanProvider: {
|
|
4
4
|
readonly id: "alibaba-coding-plan";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types";
|
|
1
|
+
import type { OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
2
|
export declare const anthropicProvider: {
|
|
3
3
|
readonly id: "anthropic";
|
|
4
4
|
readonly name: "Anthropic (Claude Pro/Max)";
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* don't actually implement OAuth — they just ask the user to paste an API key,
|
|
6
6
|
* optionally validate it, and return the trimmed key.
|
|
7
7
|
*/
|
|
8
|
-
import type { OAuthController } from "./oauth/types";
|
|
8
|
+
import type { OAuthController } from "./oauth/types.js";
|
|
9
9
|
type ChatCompletionsValidation = {
|
|
10
10
|
kind: "chat-completions";
|
|
11
11
|
provider: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OAuthLoginCallbacks } from "./oauth/types";
|
|
2
|
-
export declare const loginBaseten: (options: import("./oauth").OAuthController) => Promise<string>;
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginBaseten: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
3
|
export declare const basetenProvider: {
|
|
4
4
|
readonly id: "baseten";
|
|
5
5
|
readonly name: "Baseten";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OAuthLoginCallbacks } from "./oauth/types";
|
|
2
|
-
export declare const loginCerebras: (options: import("./oauth").OAuthController) => Promise<string>;
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginCerebras: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
3
|
export declare const cerebrasProvider: {
|
|
4
4
|
readonly id: "cerebras";
|
|
5
5
|
readonly name: "Cerebras";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { OAuthLoginCallbacks } from "./oauth/types";
|
|
2
|
-
export declare const loginCoreWeave: (options: import("./oauth").OAuthController) => Promise<string>;
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginCoreWeave: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
3
|
export declare const coreWeaveProvider: {
|
|
4
4
|
readonly id: "coreweave";
|
|
5
5
|
readonly name: "CoreWeave Serverless Inference";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OAuthController, OAuthLoginCallbacks } from "./oauth/types";
|
|
1
|
+
import type { OAuthController, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
2
|
export declare function normalizeDeepSeekApiKey(raw: string): string;
|
|
3
3
|
export declare const loginDeepSeek: (options: OAuthController) => Promise<string>;
|
|
4
4
|
export declare const deepseekProvider: {
|