@linxiraos/pi-ai 1.0.0
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 +5066 -0
- package/README.md +1195 -0
- package/dist/types/api-registry.d.ts +30 -0
- package/dist/types/auth/sqlite-credential-store.d.ts +117 -0
- package/dist/types/auth-broker/client.d.ts +93 -0
- package/dist/types/auth-broker/discover.d.ts +39 -0
- package/dist/types/auth-broker/index.d.ts +7 -0
- package/dist/types/auth-broker/refresher.d.ts +25 -0
- package/dist/types/auth-broker/remote-store.d.ts +136 -0
- package/dist/types/auth-broker/server.d.ts +48 -0
- package/dist/types/auth-broker/snapshot-cache.d.ts +17 -0
- package/dist/types/auth-broker/types.d.ts +152 -0
- package/dist/types/auth-broker/wire-schema-resource.d.ts +53 -0
- package/dist/types/auth-broker/wire-schemas.d.ts +5 -0
- package/dist/types/auth-gateway/http.d.ts +56 -0
- package/dist/types/auth-gateway/index.d.ts +3 -0
- package/dist/types/auth-gateway/server.d.ts +36 -0
- package/dist/types/auth-gateway/types.d.ts +127 -0
- package/dist/types/auth-retry.d.ts +150 -0
- package/dist/types/auth-storage.d.ts +1258 -0
- package/dist/types/dialect/anthropic.d.ts +15 -0
- package/dist/types/dialect/catalog.d.ts +3 -0
- package/dist/types/dialect/coercion.d.ts +23 -0
- package/dist/types/dialect/deepseek.d.ts +14 -0
- package/dist/types/dialect/demotion.d.ts +30 -0
- package/dist/types/dialect/examples.d.ts +18 -0
- package/dist/types/dialect/factory.d.ts +3 -0
- package/dist/types/dialect/fenced-thinking.d.ts +53 -0
- package/dist/types/dialect/gemini.d.ts +17 -0
- package/dist/types/dialect/gemma.d.ts +15 -0
- package/dist/types/dialect/glm.d.ts +9 -0
- package/dist/types/dialect/harmony.d.ts +8 -0
- package/dist/types/dialect/hermes.d.ts +9 -0
- package/dist/types/dialect/history.d.ts +3 -0
- package/dist/types/dialect/index.d.ts +11 -0
- package/dist/types/dialect/inventory.d.ts +9 -0
- package/dist/types/dialect/kimi.d.ts +14 -0
- package/dist/types/dialect/minimax.d.ts +3 -0
- package/dist/types/dialect/owned-stream.d.ts +4 -0
- package/dist/types/dialect/qwen3.d.ts +9 -0
- package/dist/types/dialect/rendering.d.ts +54 -0
- package/dist/types/dialect/thinking.d.ts +6 -0
- package/dist/types/dialect/types.d.ts +68 -0
- package/dist/types/dialect/xml.d.ts +9 -0
- package/dist/types/error/abort.d.ts +14 -0
- package/dist/types/error/auth-classify.d.ts +20 -0
- package/dist/types/error/auth.d.ts +27 -0
- package/dist/types/error/aws.d.ts +27 -0
- package/dist/types/error/classes.d.ts +106 -0
- package/dist/types/error/finalize.d.ts +39 -0
- package/dist/types/error/flags.d.ts +94 -0
- package/dist/types/error/format.d.ts +20 -0
- package/dist/types/error/gateway.d.ts +20 -0
- package/dist/types/error/index.d.ts +14 -0
- package/dist/types/error/oauth.d.ts +43 -0
- package/dist/types/error/provider.d.ts +42 -0
- package/dist/types/error/rate-limit.d.ts +80 -0
- package/dist/types/error/retryable.d.ts +27 -0
- package/dist/types/error/validation.d.ts +32 -0
- package/dist/types/index.d.ts +51 -0
- package/dist/types/provider-details.d.ts +24 -0
- package/dist/types/providers/amazon-bedrock.d.ts +39 -0
- package/dist/types/providers/anthropic-client.d.ts +106 -0
- package/dist/types/providers/anthropic-messages-server-schema.d.ts +937 -0
- package/dist/types/providers/anthropic-messages-server.d.ts +17 -0
- package/dist/types/providers/anthropic-wire.d.ts +345 -0
- package/dist/types/providers/anthropic.d.ts +261 -0
- package/dist/types/providers/aws-credentials.d.ts +48 -0
- package/dist/types/providers/aws-eventstream.d.ts +39 -0
- package/dist/types/providers/aws-sigv4.d.ts +55 -0
- package/dist/types/providers/azure-openai-responses.d.ts +16 -0
- package/dist/types/providers/bedrock-mantle.d.ts +13 -0
- package/dist/types/providers/claude-code-fingerprint.d.ts +19 -0
- package/dist/types/providers/cowork-fetch.d.ts +3 -0
- package/dist/types/providers/cursor/exec-modern.d.ts +98 -0
- package/dist/types/providers/cursor-pi-args.d.ts +105 -0
- package/dist/types/providers/cursor.d.ts +221 -0
- package/dist/types/providers/devin.d.ts +12 -0
- package/dist/types/providers/error-message.d.ts +25 -0
- package/dist/types/providers/github-copilot-headers.d.ts +40 -0
- package/dist/types/providers/gitlab-duo-workflow.d.ts +254 -0
- package/dist/types/providers/gitlab-duo.d.ts +27 -0
- package/dist/types/providers/google-auth.d.ts +24 -0
- package/dist/types/providers/google-gemini-cli.d.ts +120 -0
- package/dist/types/providers/google-shared.d.ts +203 -0
- package/dist/types/providers/google-types.d.ts +155 -0
- package/dist/types/providers/google-vertex.d.ts +7 -0
- package/dist/types/providers/google.d.ts +4 -0
- package/dist/types/providers/grammar.d.ts +1 -0
- package/dist/types/providers/kimi.d.ts +27 -0
- package/dist/types/providers/mock.d.ts +179 -0
- package/dist/types/providers/ollama.d.ts +8 -0
- package/dist/types/providers/openai-anthropic-shim.d.ts +35 -0
- package/dist/types/providers/openai-chat-server-schema.d.ts +1311 -0
- package/dist/types/providers/openai-chat-server.d.ts +16 -0
- package/dist/types/providers/openai-chat-wire.d.ts +669 -0
- package/dist/types/providers/openai-codex/request-transformer.d.ts +109 -0
- package/dist/types/providers/openai-codex/response-handler.d.ts +26 -0
- package/dist/types/providers/openai-codex-responses.d.ts +238 -0
- package/dist/types/providers/openai-completions.d.ts +48 -0
- package/dist/types/providers/openai-reasoning-fallback.d.ts +25 -0
- package/dist/types/providers/openai-responses-server-schema.d.ts +1314 -0
- package/dist/types/providers/openai-responses-server.d.ts +17 -0
- package/dist/types/providers/openai-responses-wire.d.ts +6099 -0
- package/dist/types/providers/openai-responses.d.ts +131 -0
- package/dist/types/providers/openai-shared.d.ts +624 -0
- package/dist/types/providers/pi-native-client.d.ts +13 -0
- package/dist/types/providers/pi-native-server.d.ts +69 -0
- package/dist/types/providers/register-builtins.d.ts +37 -0
- package/dist/types/providers/synthetic.d.ts +26 -0
- package/dist/types/providers/transform-messages.d.ts +32 -0
- package/dist/types/providers/vision-guard.d.ts +20 -0
- package/dist/types/registry/aiand.d.ts +7 -0
- package/dist/types/registry/aimlapi.d.ts +4 -0
- package/dist/types/registry/alibaba-coding-plan.d.ts +8 -0
- package/dist/types/registry/alibaba-token-plan.d.ts +18 -0
- package/dist/types/registry/amazon-bedrock.d.ts +5 -0
- package/dist/types/registry/anthropic.d.ts +10 -0
- package/dist/types/registry/api-key-login.d.ts +42 -0
- package/dist/types/registry/api-key-validation.d.ts +43 -0
- package/dist/types/registry/aws.d.ts +13 -0
- package/dist/types/registry/azure.d.ts +4 -0
- package/dist/types/registry/baseten.d.ts +7 -0
- package/dist/types/registry/bedrock-mantle.d.ts +22 -0
- package/dist/types/registry/cerebras.d.ts +7 -0
- package/dist/types/registry/cloudflare-ai-gateway.d.ts +13 -0
- package/dist/types/registry/coreweave.d.ts +7 -0
- package/dist/types/registry/cursor.d.ts +7 -0
- package/dist/types/registry/deepseek.d.ts +8 -0
- package/dist/types/registry/derived.d.ts +5 -0
- package/dist/types/registry/devin.d.ts +8 -0
- package/dist/types/registry/exa.d.ts +8 -0
- package/dist/types/registry/firepass.d.ts +16 -0
- package/dist/types/registry/fireworks.d.ts +7 -0
- package/dist/types/registry/github-copilot.d.ts +7 -0
- package/dist/types/registry/gitlab-duo-workflow.d.ts +10 -0
- package/dist/types/registry/gitlab-duo.d.ts +9 -0
- package/dist/types/registry/gmi-cloud.d.ts +7 -0
- package/dist/types/registry/google-antigravity.d.ts +9 -0
- package/dist/types/registry/google-gemini-cli.d.ts +9 -0
- package/dist/types/registry/google-vertex.d.ts +5 -0
- package/dist/types/registry/google.d.ts +4 -0
- package/dist/types/registry/groq.d.ts +4 -0
- package/dist/types/registry/huggingface.d.ts +7 -0
- package/dist/types/registry/index.d.ts +4 -0
- package/dist/types/registry/kagi.d.ts +14 -0
- package/dist/types/registry/kilo.d.ts +7 -0
- package/dist/types/registry/kimi-code.d.ts +7 -0
- package/dist/types/registry/litellm.d.ts +13 -0
- package/dist/types/registry/llama-cpp.d.ts +8 -0
- package/dist/types/registry/lm-studio.d.ts +8 -0
- package/dist/types/registry/meta.d.ts +7 -0
- package/dist/types/registry/minimax-code-cn.d.ts +6 -0
- package/dist/types/registry/minimax-code.d.ts +6 -0
- package/dist/types/registry/minimax.d.ts +4 -0
- package/dist/types/registry/mistral.d.ts +4 -0
- package/dist/types/registry/moonshot.d.ts +7 -0
- package/dist/types/registry/nanogpt.d.ts +7 -0
- package/dist/types/registry/novita.d.ts +6 -0
- package/dist/types/registry/nvidia.d.ts +7 -0
- package/dist/types/registry/oauth/anthropic-constants.d.ts +12 -0
- package/dist/types/registry/oauth/anthropic.d.ts +24 -0
- package/dist/types/registry/oauth/callback-server.d.ts +74 -0
- package/dist/types/registry/oauth/cursor.d.ts +16 -0
- package/dist/types/registry/oauth/device-code.d.ts +25 -0
- package/dist/types/registry/oauth/devin.d.ts +5 -0
- package/dist/types/registry/oauth/github-copilot.d.ts +30 -0
- package/dist/types/registry/oauth/gitlab-duo-workflow.d.ts +6 -0
- package/dist/types/registry/oauth/gitlab-duo.d.ts +3 -0
- package/dist/types/registry/oauth/google-antigravity.d.ts +11 -0
- package/dist/types/registry/oauth/google-gemini-cli.d.ts +22 -0
- package/dist/types/registry/oauth/google-oauth-shared.d.ts +56 -0
- package/dist/types/registry/oauth/index.d.ts +45 -0
- package/dist/types/registry/oauth/kimi.d.ts +21 -0
- package/dist/types/registry/oauth/minimax-code.d.ts +27 -0
- package/dist/types/registry/oauth/openai-codex.d.ts +33 -0
- package/dist/types/registry/oauth/opencode.d.ts +18 -0
- package/dist/types/registry/oauth/perplexity.d.ts +9 -0
- package/dist/types/registry/oauth/pkce.d.ts +8 -0
- package/dist/types/registry/oauth/types.d.ts +87 -0
- package/dist/types/registry/oauth/wafer.d.ts +1 -0
- package/dist/types/registry/oauth/xai-oauth.d.ts +46 -0
- package/dist/types/registry/oauth/xiaomi.d.ts +25 -0
- package/dist/types/registry/oauth/zai.d.ts +25 -0
- package/dist/types/registry/ollama-cloud.d.ts +7 -0
- package/dist/types/registry/ollama.d.ts +12 -0
- package/dist/types/registry/openai-codex-device.d.ts +8 -0
- package/dist/types/registry/openai-codex.d.ts +9 -0
- package/dist/types/registry/openai.d.ts +4 -0
- package/dist/types/registry/opencode-go.d.ts +6 -0
- package/dist/types/registry/opencode-zen.d.ts +6 -0
- package/dist/types/registry/openrouter.d.ts +13 -0
- package/dist/types/registry/parallel.d.ts +14 -0
- package/dist/types/registry/perplexity.d.ts +7 -0
- package/dist/types/registry/qianfan.d.ts +7 -0
- package/dist/types/registry/qwen-portal.d.ts +7 -0
- package/dist/types/registry/registry.d.ts +367 -0
- package/dist/types/registry/sakana.d.ts +7 -0
- package/dist/types/registry/siliconflow-cn.d.ts +7 -0
- package/dist/types/registry/siliconflow.d.ts +7 -0
- package/dist/types/registry/synthetic.d.ts +6 -0
- package/dist/types/registry/tavily.d.ts +14 -0
- package/dist/types/registry/together.d.ts +6 -0
- package/dist/types/registry/types.d.ts +75 -0
- package/dist/types/registry/umans.d.ts +7 -0
- package/dist/types/registry/venice.d.ts +13 -0
- package/dist/types/registry/vercel-ai-gateway.d.ts +7 -0
- package/dist/types/registry/vllm.d.ts +7 -0
- package/dist/types/registry/wafer-serverless.d.ts +6 -0
- package/dist/types/registry/xai-oauth.d.ts +7 -0
- package/dist/types/registry/xai.d.ts +7 -0
- package/dist/types/registry/xiaomi-token-plan-ams.d.ts +6 -0
- package/dist/types/registry/xiaomi-token-plan-cn.d.ts +6 -0
- package/dist/types/registry/xiaomi-token-plan-sgp.d.ts +6 -0
- package/dist/types/registry/xiaomi.d.ts +6 -0
- package/dist/types/registry/zai.d.ts +15 -0
- package/dist/types/registry/zenmux.d.ts +7 -0
- package/dist/types/registry/zhipu-coding-plan.d.ts +7 -0
- package/dist/types/stream.d.ts +46 -0
- package/dist/types/types.d.ts +1064 -0
- package/dist/types/usage/alibaba-token-plan.d.ts +3 -0
- package/dist/types/usage/claude.d.ts +4 -0
- package/dist/types/usage/cursor.d.ts +4 -0
- package/dist/types/usage/gemini.d.ts +2 -0
- package/dist/types/usage/github-copilot.d.ts +7 -0
- package/dist/types/usage/google-antigravity.d.ts +15 -0
- package/dist/types/usage/kimi.d.ts +2 -0
- package/dist/types/usage/minimax-code.d.ts +3 -0
- package/dist/types/usage/ollama.d.ts +5 -0
- package/dist/types/usage/openai-codex-base-url.d.ts +18 -0
- package/dist/types/usage/openai-codex-reset.d.ts +88 -0
- package/dist/types/usage/openai-codex.d.ts +10 -0
- package/dist/types/usage/opencode-go.d.ts +2 -0
- package/dist/types/usage/shared.d.ts +1 -0
- package/dist/types/usage/synthetic.d.ts +2 -0
- package/dist/types/usage/umans.d.ts +2 -0
- package/dist/types/usage/xai-oauth.d.ts +12 -0
- package/dist/types/usage/zai.d.ts +3 -0
- package/dist/types/usage.d.ts +527 -0
- package/dist/types/utils/abort.d.ts +25 -0
- package/dist/types/utils/anthropic-auth.d.ts +35 -0
- package/dist/types/utils/aws-profile.d.ts +17 -0
- package/dist/types/utils/block-symbols.d.ts +62 -0
- package/dist/types/utils/deterministic-id.d.ts +16 -0
- package/dist/types/utils/empty-completion-retry.d.ts +21 -0
- package/dist/types/utils/event-stream.d.ts +39 -0
- package/dist/types/utils/foundry.d.ts +1 -0
- package/dist/types/utils/google-validation.d.ts +2 -0
- package/dist/types/utils/harmony-leak.d.ts +135 -0
- package/dist/types/utils/http-inspector.d.ts +49 -0
- package/dist/types/utils/idle-iterator.d.ts +149 -0
- package/dist/types/utils/leaked-thinking-stream.d.ts +33 -0
- package/dist/types/utils/openai-http.d.ts +48 -0
- package/dist/types/utils/openrouter-headers.d.ts +1 -0
- package/dist/types/utils/parse-bind.d.ts +23 -0
- package/dist/types/utils/provider-response.d.ts +3 -0
- package/dist/types/utils/proxy.d.ts +39 -0
- package/dist/types/utils/request-debug.d.ts +29 -0
- package/dist/types/utils/retry-after.d.ts +4 -0
- package/dist/types/utils/retry.d.ts +14 -0
- package/dist/types/utils/schema/adapt.d.ts +24 -0
- package/dist/types/utils/schema/compatibility.d.ts +30 -0
- package/dist/types/utils/schema/dereference.d.ts +11 -0
- package/dist/types/utils/schema/draft.d.ts +10 -0
- package/dist/types/utils/schema/equality.d.ts +4 -0
- package/dist/types/utils/schema/fields.d.ts +54 -0
- package/dist/types/utils/schema/index.d.ts +14 -0
- package/dist/types/utils/schema/json-schema-validator.d.ts +20 -0
- package/dist/types/utils/schema/meta-validator.d.ts +2 -0
- package/dist/types/utils/schema/normalize.d.ts +153 -0
- package/dist/types/utils/schema/spill.d.ts +8 -0
- package/dist/types/utils/schema/stamps.d.ts +17 -0
- package/dist/types/utils/schema/strict-tool-validation.d.ts +16 -0
- package/dist/types/utils/schema/types.d.ts +4 -0
- package/dist/types/utils/schema/typescript.d.ts +24 -0
- package/dist/types/utils/schema/wire.d.ts +52 -0
- package/dist/types/utils/sdk-stream-timeout.d.ts +33 -0
- package/dist/types/utils/sse-debug.d.ts +5 -0
- package/dist/types/utils/stream-markup-healing.d.ts +87 -0
- package/dist/types/utils/thinking-loop.d.ts +102 -0
- package/dist/types/utils/tool-call-loop-guard.d.ts +26 -0
- package/dist/types/utils/tool-choice.d.ts +52 -0
- package/dist/types/utils/validation.d.ts +28 -0
- package/dist/types/utils.d.ts +57 -0
- package/package.json +138 -0
- package/src/api-registry.ts +109 -0
- package/src/auth/sqlite-credential-store.ts +2066 -0
- package/src/auth-broker/client.ts +471 -0
- package/src/auth-broker/discover.ts +310 -0
- package/src/auth-broker/index.ts +7 -0
- package/src/auth-broker/refresher.ts +117 -0
- package/src/auth-broker/remote-store.ts +1332 -0
- package/src/auth-broker/server.ts +898 -0
- package/src/auth-broker/snapshot-cache.ts +200 -0
- package/src/auth-broker/types.ts +193 -0
- package/src/auth-broker/wire-schema-resource.ts +487 -0
- package/src/auth-broker/wire-schemas.ts +43 -0
- package/src/auth-gateway/http.ts +227 -0
- package/src/auth-gateway/index.ts +3 -0
- package/src/auth-gateway/server.ts +836 -0
- package/src/auth-gateway/types.ts +153 -0
- package/src/auth-retry.ts +401 -0
- package/src/auth-storage.ts +6540 -0
- package/src/dialect/anthropic.md +31 -0
- package/src/dialect/anthropic.ts +608 -0
- package/src/dialect/catalog.ts +29 -0
- package/src/dialect/coercion.ts +136 -0
- package/src/dialect/deepseek.md +24 -0
- package/src/dialect/deepseek.ts +609 -0
- package/src/dialect/demotion.ts +40 -0
- package/src/dialect/examples.ts +71 -0
- package/src/dialect/factory.ts +34 -0
- package/src/dialect/fenced-thinking.ts +184 -0
- package/src/dialect/gemini.md +44 -0
- package/src/dialect/gemini.ts +583 -0
- package/src/dialect/gemma.md +33 -0
- package/src/dialect/gemma.ts +387 -0
- package/src/dialect/glm.md +32 -0
- package/src/dialect/glm.ts +579 -0
- package/src/dialect/harmony.md +31 -0
- package/src/dialect/harmony.ts +345 -0
- package/src/dialect/hermes.md +25 -0
- package/src/dialect/hermes.ts +206 -0
- package/src/dialect/history.ts +81 -0
- package/src/dialect/index.ts +15 -0
- package/src/dialect/inventory.ts +30 -0
- package/src/dialect/kimi.md +24 -0
- package/src/dialect/kimi.ts +340 -0
- package/src/dialect/minimax.md +31 -0
- package/src/dialect/minimax.ts +95 -0
- package/src/dialect/owned-stream.ts +481 -0
- package/src/dialect/prompt-template.md +12 -0
- package/src/dialect/qwen3.md +28 -0
- package/src/dialect/qwen3.ts +240 -0
- package/src/dialect/rendering.ts +304 -0
- package/src/dialect/thinking.ts +292 -0
- package/src/dialect/types.ts +56 -0
- package/src/dialect/xml.md +22 -0
- package/src/dialect/xml.ts +90 -0
- package/src/error/abort.ts +18 -0
- package/src/error/auth-classify.ts +47 -0
- package/src/error/auth.ts +48 -0
- package/src/error/aws.ts +35 -0
- package/src/error/classes.ts +281 -0
- package/src/error/finalize.ts +69 -0
- package/src/error/flags.ts +602 -0
- package/src/error/format.ts +45 -0
- package/src/error/gateway.ts +96 -0
- package/src/error/index.ts +14 -0
- package/src/error/oauth.ts +58 -0
- package/src/error/provider.ts +63 -0
- package/src/error/rate-limit.ts +303 -0
- package/src/error/retryable.ts +70 -0
- package/src/error/validation.ts +44 -0
- package/src/index.ts +51 -0
- package/src/provider-details.ts +90 -0
- package/src/providers/amazon-bedrock.ts +1064 -0
- package/src/providers/anthropic-client.ts +317 -0
- package/src/providers/anthropic-messages-server-schema.ts +252 -0
- package/src/providers/anthropic-messages-server.ts +818 -0
- package/src/providers/anthropic-wire.ts +359 -0
- package/src/providers/anthropic.ts +4539 -0
- package/src/providers/aws-credentials.ts +772 -0
- package/src/providers/aws-eventstream.ts +181 -0
- package/src/providers/aws-sigv4.ts +218 -0
- package/src/providers/azure-openai-responses.ts +438 -0
- package/src/providers/bedrock-mantle.ts +110 -0
- package/src/providers/claude-code-fingerprint.ts +20 -0
- package/src/providers/cowork-fetch.ts +201 -0
- package/src/providers/cursor/exec-modern.ts +496 -0
- package/src/providers/cursor/proto/agent.proto +4533 -0
- package/src/providers/cursor/proto/buf.gen.yaml +6 -0
- package/src/providers/cursor/proto/buf.yaml +17 -0
- package/src/providers/cursor-pi-args.ts +165 -0
- package/src/providers/cursor.ts +4689 -0
- package/src/providers/devin/proto/buf/validate/validate.proto +468 -0
- package/src/providers/devin/proto/buf.gen.yaml +33 -0
- package/src/providers/devin/proto/buf.yaml +17 -0
- package/src/providers/devin/proto/cel/expr/checked.proto +103 -0
- package/src/providers/devin/proto/cel/expr/eval.proto +38 -0
- package/src/providers/devin/proto/cel/expr/explain.proto +15 -0
- package/src/providers/devin/proto/cel/expr/syntax.proto +113 -0
- package/src/providers/devin/proto/cel/expr/value.proto +41 -0
- package/src/providers/devin/proto/connectext/grpc/status/v1/status.proto +11 -0
- package/src/providers/devin/proto/errorspb/errors.proto +56 -0
- package/src/providers/devin/proto/errorspb/hintdetail.proto +7 -0
- package/src/providers/devin/proto/errorspb/markers.proto +10 -0
- package/src/providers/devin/proto/errorspb/tags.proto +12 -0
- package/src/providers/devin/proto/errorspb/testing.proto +6 -0
- package/src/providers/devin/proto/exa/analytics_pb/analytics.proto +188 -0
- package/src/providers/devin/proto/exa/api_server_pb/api_server.proto +2461 -0
- package/src/providers/devin/proto/exa/auth_pb/auth.proto +19 -0
- package/src/providers/devin/proto/exa/auto_cascade_common_pb/auto_cascade_common.proto +79 -0
- package/src/providers/devin/proto/exa/browser_preview_pb/browser_preview.proto +32 -0
- package/src/providers/devin/proto/exa/bug_checker_pb/bug_checker.proto +22 -0
- package/src/providers/devin/proto/exa/cascade_plugins_pb/cascade_plugins.proto +262 -0
- package/src/providers/devin/proto/exa/chat_client_server_pb/chat_client_server.proto +57 -0
- package/src/providers/devin/proto/exa/chat_pb/chat.proto +449 -0
- package/src/providers/devin/proto/exa/code_edit/code_edit_pb/code_edit.proto +186 -0
- package/src/providers/devin/proto/exa/codeium_common_pb/codeium_common.proto +4157 -0
- package/src/providers/devin/proto/exa/context_module_pb/context_module.proto +175 -0
- package/src/providers/devin/proto/exa/cortex_pb/cortex.proto +3268 -0
- package/src/providers/devin/proto/exa/dev_pb/dev.proto +26 -0
- package/src/providers/devin/proto/exa/diff_action_pb/diff_action.proto +75 -0
- package/src/providers/devin/proto/exa/eval/pr_eval/datasets_pb/datasets.proto +103 -0
- package/src/providers/devin/proto/exa/eval_pb/eval.proto +1315 -0
- package/src/providers/devin/proto/exa/extension_server_pb/extension_server.proto +556 -0
- package/src/providers/devin/proto/exa/file_system_provider_pb/file_system_provider.proto +75 -0
- package/src/providers/devin/proto/exa/index_pb/index.proto +461 -0
- package/src/providers/devin/proto/exa/knowledge_base_pb/knowledge_base.proto +144 -0
- package/src/providers/devin/proto/exa/language_server_pb/language_server.proto +2385 -0
- package/src/providers/devin/proto/exa/model_management_pb/model_management.proto +186 -0
- package/src/providers/devin/proto/exa/opensearch_clients_pb/opensearch_clients.proto +503 -0
- package/src/providers/devin/proto/exa/product_analytics_pb/product_analytics.proto +37 -0
- package/src/providers/devin/proto/exa/prompt_pb/prompt.proto +92 -0
- package/src/providers/devin/proto/exa/reactive_component_pb/reactive_component.proto +96 -0
- package/src/providers/devin/proto/exa/seat_management_pb/seat_management.proto +2680 -0
- package/src/providers/devin/proto/exa/tokenizer_pb/tokenizer.proto +37 -0
- package/src/providers/devin/proto/exa/trainer_pb/config.proto +647 -0
- package/src/providers/devin/proto/exa/tree_sitter/language_data_pb/language_data.proto +14 -0
- package/src/providers/devin/proto/exa/trust_pb/trust.proto +157 -0
- package/src/providers/devin/proto/exa/user_analytics_pb/user_analytics.proto +519 -0
- package/src/providers/devin/proto/google.golang.org/appengine/internal/base/api_base.proto +28 -0
- package/src/providers/devin/proto/google.golang.org/appengine/internal/datastore/datastore_v3.proto +484 -0
- package/src/providers/devin/proto/google.golang.org/appengine/internal/log/log_service.proto +136 -0
- package/src/providers/devin/proto/google.golang.org/appengine/internal/remote_api/remote_api.proto +42 -0
- package/src/providers/devin/proto/google.golang.org/appengine/internal/urlfetch/urlfetch_service.proto +61 -0
- package/src/providers/devin/proto/grpc/binlog/v1/binarylog.proto +84 -0
- package/src/providers/devin/proto/io/prometheus/client/metrics.proto +98 -0
- package/src/providers/devin.ts +679 -0
- package/src/providers/error-message.ts +23 -0
- package/src/providers/github-copilot-headers.ts +141 -0
- package/src/providers/gitlab-duo-workflow-chatml-note.md +1 -0
- package/src/providers/gitlab-duo-workflow.ts +3135 -0
- package/src/providers/gitlab-duo.ts +399 -0
- package/src/providers/google-auth.ts +330 -0
- package/src/providers/google-gemini-cli.ts +1370 -0
- package/src/providers/google-shared.ts +1122 -0
- package/src/providers/google-types.ts +180 -0
- package/src/providers/google-vertex.ts +135 -0
- package/src/providers/google.ts +47 -0
- package/src/providers/grammar.ts +70 -0
- package/src/providers/kimi.ts +51 -0
- package/src/providers/mock.ts +514 -0
- package/src/providers/ollama.ts +776 -0
- package/src/providers/openai-anthropic-shim.ts +166 -0
- package/src/providers/openai-chat-server-schema.ts +243 -0
- package/src/providers/openai-chat-server.ts +752 -0
- package/src/providers/openai-chat-wire.ts +859 -0
- package/src/providers/openai-codex/request-transformer.ts +491 -0
- package/src/providers/openai-codex/response-handler.ts +102 -0
- package/src/providers/openai-codex-responses.ts +4716 -0
- package/src/providers/openai-completions.ts +2389 -0
- package/src/providers/openai-reasoning-fallback.ts +269 -0
- package/src/providers/openai-responses-server-schema.ts +397 -0
- package/src/providers/openai-responses-server.ts +1466 -0
- package/src/providers/openai-responses-wire.ts +6416 -0
- package/src/providers/openai-responses.ts +1393 -0
- package/src/providers/openai-shared.ts +3500 -0
- package/src/providers/pi-native-client.ts +275 -0
- package/src/providers/pi-native-server.ts +245 -0
- package/src/providers/register-builtins.ts +503 -0
- package/src/providers/synthetic.ts +50 -0
- package/src/providers/transform-messages.ts +1083 -0
- package/src/providers/vision-guard.ts +54 -0
- package/src/registry/aiand.ts +22 -0
- package/src/registry/aimlapi.ts +6 -0
- package/src/registry/alibaba-coding-plan.ts +104 -0
- package/src/registry/alibaba-token-plan.ts +125 -0
- package/src/registry/amazon-bedrock.ts +22 -0
- package/src/registry/anthropic.ts +26 -0
- package/src/registry/api-key-login.ts +115 -0
- package/src/registry/api-key-validation.ts +145 -0
- package/src/registry/aws.ts +57 -0
- package/src/registry/azure.ts +6 -0
- package/src/registry/baseten.ts +22 -0
- package/src/registry/bedrock-mantle.ts +34 -0
- package/src/registry/cerebras.ts +23 -0
- package/src/registry/cloudflare-ai-gateway.ts +45 -0
- package/src/registry/coreweave.ts +40 -0
- package/src/registry/cursor.ts +20 -0
- package/src/registry/deepseek.ts +46 -0
- package/src/registry/derived.ts +9 -0
- package/src/registry/devin.ts +15 -0
- package/src/registry/exa.ts +19 -0
- package/src/registry/firepass.ts +32 -0
- package/src/registry/fireworks.ts +28 -0
- package/src/registry/github-copilot.ts +22 -0
- package/src/registry/gitlab-duo-workflow.ts +20 -0
- package/src/registry/gitlab-duo.ts +19 -0
- package/src/registry/gmi-cloud.ts +22 -0
- package/src/registry/google-antigravity.ts +22 -0
- package/src/registry/google-gemini-cli.ts +22 -0
- package/src/registry/google-vertex.ts +38 -0
- package/src/registry/google.ts +6 -0
- package/src/registry/groq.ts +6 -0
- package/src/registry/huggingface.ts +29 -0
- package/src/registry/index.ts +4 -0
- package/src/registry/kagi.ts +46 -0
- package/src/registry/kilo.ts +114 -0
- package/src/registry/kimi-code.ts +17 -0
- package/src/registry/litellm.ts +45 -0
- package/src/registry/llama-cpp.ts +35 -0
- package/src/registry/lm-studio.ts +31 -0
- package/src/registry/meta.ts +22 -0
- package/src/registry/minimax-code-cn.ts +12 -0
- package/src/registry/minimax-code.ts +12 -0
- package/src/registry/minimax.ts +6 -0
- package/src/registry/mistral.ts +6 -0
- package/src/registry/moonshot.ts +28 -0
- package/src/registry/nanogpt.ts +22 -0
- package/src/registry/novita.ts +25 -0
- package/src/registry/nvidia.ts +61 -0
- package/src/registry/oauth/anthropic-constants.ts +12 -0
- package/src/registry/oauth/anthropic.ts +346 -0
- package/src/registry/oauth/callback-server.ts +438 -0
- package/src/registry/oauth/cursor.ts +187 -0
- package/src/registry/oauth/device-code.ts +92 -0
- package/src/registry/oauth/devin.ts +124 -0
- package/src/registry/oauth/github-copilot.ts +369 -0
- package/src/registry/oauth/gitlab-duo-workflow.ts +146 -0
- package/src/registry/oauth/gitlab-duo.ts +222 -0
- package/src/registry/oauth/google-antigravity.ts +225 -0
- package/src/registry/oauth/google-gemini-cli.ts +297 -0
- package/src/registry/oauth/google-oauth-shared.ts +211 -0
- package/src/registry/oauth/index.ts +187 -0
- package/src/registry/oauth/kimi.ts +297 -0
- package/src/registry/oauth/minimax-code.ts +53 -0
- package/src/registry/oauth/oauth.html +317 -0
- package/src/registry/oauth/openai-codex.ts +384 -0
- package/src/registry/oauth/opencode.ts +50 -0
- package/src/registry/oauth/perplexity.ts +228 -0
- package/src/registry/oauth/pkce.ts +18 -0
- package/src/registry/oauth/types.ts +96 -0
- package/src/registry/oauth/wafer.ts +24 -0
- package/src/registry/oauth/xai-oauth.ts +559 -0
- package/src/registry/oauth/xiaomi.ts +211 -0
- package/src/registry/oauth/zai.ts +285 -0
- package/src/registry/ollama-cloud.ts +36 -0
- package/src/registry/ollama.ts +43 -0
- package/src/registry/openai-codex-device.ts +18 -0
- package/src/registry/openai-codex.ts +19 -0
- package/src/registry/openai.ts +6 -0
- package/src/registry/opencode-go.ts +12 -0
- package/src/registry/opencode-zen.ts +12 -0
- package/src/registry/openrouter.ts +28 -0
- package/src/registry/parallel.ts +45 -0
- package/src/registry/perplexity.ts +13 -0
- package/src/registry/qianfan.ts +27 -0
- package/src/registry/qwen-portal.ts +50 -0
- package/src/registry/registry.ts +182 -0
- package/src/registry/sakana.ts +22 -0
- package/src/registry/siliconflow-cn.ts +22 -0
- package/src/registry/siliconflow.ts +22 -0
- package/src/registry/synthetic.ts +21 -0
- package/src/registry/tavily.ts +45 -0
- package/src/registry/together.ts +22 -0
- package/src/registry/types.ts +86 -0
- package/src/registry/umans.ts +23 -0
- package/src/registry/venice.ts +33 -0
- package/src/registry/vercel-ai-gateway.ts +38 -0
- package/src/registry/vllm.ts +34 -0
- package/src/registry/wafer-serverless.ts +12 -0
- package/src/registry/xai-oauth.ts +17 -0
- package/src/registry/xai.ts +22 -0
- package/src/registry/xiaomi-token-plan-ams.ts +12 -0
- package/src/registry/xiaomi-token-plan-cn.ts +12 -0
- package/src/registry/xiaomi-token-plan-sgp.ts +12 -0
- package/src/registry/xiaomi.ts +12 -0
- package/src/registry/zai.ts +41 -0
- package/src/registry/zenmux.ts +22 -0
- package/src/registry/zhipu-coding-plan.ts +27 -0
- package/src/stream.ts +1944 -0
- package/src/types.ts +1243 -0
- package/src/usage/alibaba-token-plan.ts +230 -0
- package/src/usage/claude.ts +830 -0
- package/src/usage/cursor.ts +335 -0
- package/src/usage/gemini.ts +258 -0
- package/src/usage/github-copilot.ts +424 -0
- package/src/usage/google-antigravity.ts +497 -0
- package/src/usage/kimi.ts +277 -0
- package/src/usage/minimax-code.ts +291 -0
- package/src/usage/ollama.ts +41 -0
- package/src/usage/openai-codex-base-url.ts +35 -0
- package/src/usage/openai-codex-reset.ts +205 -0
- package/src/usage/openai-codex.ts +627 -0
- package/src/usage/opencode-go.ts +89 -0
- package/src/usage/shared.ts +10 -0
- package/src/usage/synthetic.ts +180 -0
- package/src/usage/umans.ts +192 -0
- package/src/usage/xai-oauth.ts +414 -0
- package/src/usage/zai.ts +370 -0
- package/src/usage.ts +411 -0
- package/src/utils/abort.ts +67 -0
- package/src/utils/anthropic-auth.ts +93 -0
- package/src/utils/aws-profile.ts +88 -0
- package/src/utils/block-symbols.ts +78 -0
- package/src/utils/deterministic-id.ts +20 -0
- package/src/utils/empty-completion-retry.ts +161 -0
- package/src/utils/event-stream.ts +202 -0
- package/src/utils/foundry.ts +8 -0
- package/src/utils/google-validation.ts +25 -0
- package/src/utils/harmony-leak.ts +500 -0
- package/src/utils/http-inspector.ts +196 -0
- package/src/utils/idle-iterator.ts +531 -0
- package/src/utils/leaked-thinking-stream.ts +483 -0
- package/src/utils/openai-http.ts +119 -0
- package/src/utils/openrouter-headers.ts +12 -0
- package/src/utils/parse-bind.ts +56 -0
- package/src/utils/provider-response.ts +30 -0
- package/src/utils/proxy.ts +314 -0
- package/src/utils/request-debug.ts +351 -0
- package/src/utils/retry-after.ts +121 -0
- package/src/utils/retry.ts +77 -0
- package/src/utils/schema/CONSTRAINTS.md +168 -0
- package/src/utils/schema/adapt.ts +36 -0
- package/src/utils/schema/compatibility.ts +435 -0
- package/src/utils/schema/dereference.ts +98 -0
- package/src/utils/schema/draft.ts +341 -0
- package/src/utils/schema/equality.ts +97 -0
- package/src/utils/schema/fields.ts +210 -0
- package/src/utils/schema/index.ts +14 -0
- package/src/utils/schema/json-schema-validator.ts +595 -0
- package/src/utils/schema/meta-validator.ts +167 -0
- package/src/utils/schema/normalize.ts +2314 -0
- package/src/utils/schema/spill.ts +43 -0
- package/src/utils/schema/stamps.ts +109 -0
- package/src/utils/schema/strict-tool-validation.ts +117 -0
- package/src/utils/schema/types.ts +10 -0
- package/src/utils/schema/typescript.ts +212 -0
- package/src/utils/schema/wire.ts +662 -0
- package/src/utils/sdk-stream-timeout.ts +43 -0
- package/src/utils/sse-debug.ts +18 -0
- package/src/utils/stream-markup-healing.ts +247 -0
- package/src/utils/thinking-loop.ts +552 -0
- package/src/utils/tool-call-loop-guard.ts +107 -0
- package/src/utils/tool-choice.ts +101 -0
- package/src/utils/validation.ts +1932 -0
- package/src/utils.ts +492 -0
|
@@ -0,0 +1,367 @@
|
|
|
1
|
+
import type { ProviderDefinition } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* The single per-provider list. Adding a provider = create `./providers/<id>.ts`
|
|
4
|
+
* and add its export here. Every legacy structure (`KnownProvider`/`OAuthProvider`
|
|
5
|
+
* unions, descriptors, env map, login list, refresh/login dispatch, CLI callback
|
|
6
|
+
* maps) is derived from this registry. Order matches the interactive `/login`
|
|
7
|
+
* list for the loginable providers; non-login model providers are appended.
|
|
8
|
+
*/
|
|
9
|
+
declare const ALL: ({
|
|
10
|
+
readonly id: "aiand";
|
|
11
|
+
readonly name: "ai&";
|
|
12
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
13
|
+
} | {
|
|
14
|
+
readonly id: "aimlapi";
|
|
15
|
+
readonly name: "AIML API";
|
|
16
|
+
} | {
|
|
17
|
+
readonly id: "alibaba-coding-plan";
|
|
18
|
+
readonly name: "Alibaba Coding Plan";
|
|
19
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
20
|
+
readonly getApiKey: (credentials: import("./oauth/index.js").OAuthCredentials) => string;
|
|
21
|
+
} | {
|
|
22
|
+
readonly id: "alibaba-token-plan";
|
|
23
|
+
readonly name: "QwenCloud Token Plan";
|
|
24
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
25
|
+
} | {
|
|
26
|
+
readonly id: "amazon-bedrock";
|
|
27
|
+
readonly name: "Amazon Bedrock";
|
|
28
|
+
readonly envKeys: () => "<authenticated>" | undefined;
|
|
29
|
+
} | {
|
|
30
|
+
readonly id: "anthropic";
|
|
31
|
+
readonly name: "Anthropic (Claude Pro/Max)";
|
|
32
|
+
readonly envKeys: () => string | undefined;
|
|
33
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
34
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
35
|
+
readonly callbackPort: 54545;
|
|
36
|
+
readonly pasteCodeFlow: true;
|
|
37
|
+
} | {
|
|
38
|
+
readonly id: "azure";
|
|
39
|
+
readonly name: "Azure OpenAI";
|
|
40
|
+
} | {
|
|
41
|
+
readonly id: "baseten";
|
|
42
|
+
readonly name: "Baseten";
|
|
43
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
44
|
+
} | {
|
|
45
|
+
readonly id: "bedrock-mantle";
|
|
46
|
+
readonly name: "Amazon Bedrock Mantle";
|
|
47
|
+
readonly envKeys: typeof import("./aws.js").resolveAwsRegistryApiKey;
|
|
48
|
+
readonly allowsMissingApiKey: true;
|
|
49
|
+
readonly prepareRequest: (model: import("@linxiraos/pi-catalog").Model<import("@linxiraos/pi-catalog").Api>, options: import("../index.js").StreamOptions) => import("../providers/bedrock-mantle.js").PreparedBedrockMantleRequest;
|
|
50
|
+
readonly mapSimpleOptions: (options: import("../index.js").SimpleStreamOptions) => {
|
|
51
|
+
providerOptions: Readonly<Record<string, unknown>> | undefined;
|
|
52
|
+
};
|
|
53
|
+
readonly prepareModelDiscovery: (config: import("./types.js").ProviderModelDiscoveryConfig) => {
|
|
54
|
+
baseUrl?: string;
|
|
55
|
+
fetch?: import("@linxiraos/pi-utils").FetchImpl;
|
|
56
|
+
apiKey: undefined;
|
|
57
|
+
authenticated: false;
|
|
58
|
+
} | {
|
|
59
|
+
authenticated: true;
|
|
60
|
+
baseUrl: string;
|
|
61
|
+
fetch: import("@linxiraos/pi-utils").FetchImpl;
|
|
62
|
+
};
|
|
63
|
+
} | {
|
|
64
|
+
readonly id: "cerebras";
|
|
65
|
+
readonly name: "Cerebras";
|
|
66
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
67
|
+
} | {
|
|
68
|
+
readonly id: "cloudflare-ai-gateway";
|
|
69
|
+
readonly name: "Cloudflare AI Gateway";
|
|
70
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
71
|
+
} | {
|
|
72
|
+
readonly id: "coreweave";
|
|
73
|
+
readonly name: "CoreWeave Serverless Inference";
|
|
74
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
75
|
+
} | {
|
|
76
|
+
readonly id: "cursor";
|
|
77
|
+
readonly name: "Cursor (Claude, GPT, etc.)";
|
|
78
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
79
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
80
|
+
} | {
|
|
81
|
+
readonly id: "deepseek";
|
|
82
|
+
readonly name: "DeepSeek";
|
|
83
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
84
|
+
} | {
|
|
85
|
+
readonly id: "devin";
|
|
86
|
+
readonly name: "Devin";
|
|
87
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
88
|
+
readonly callbackPort: 59653;
|
|
89
|
+
readonly pasteCodeFlow: true;
|
|
90
|
+
} | {
|
|
91
|
+
readonly id: "exa";
|
|
92
|
+
readonly name: "Exa";
|
|
93
|
+
readonly envKeys: "EXA_API_KEY";
|
|
94
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
95
|
+
} | {
|
|
96
|
+
readonly id: "firepass";
|
|
97
|
+
readonly name: "Fire Pass (Fireworks Kimi K2.6 Turbo subscription)";
|
|
98
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
99
|
+
} | {
|
|
100
|
+
readonly id: "fireworks";
|
|
101
|
+
readonly name: "Fireworks";
|
|
102
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
103
|
+
} | {
|
|
104
|
+
readonly id: "github-copilot";
|
|
105
|
+
readonly name: "GitHub Copilot";
|
|
106
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
107
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
108
|
+
} | {
|
|
109
|
+
readonly id: "gitlab-duo";
|
|
110
|
+
readonly name: "GitLab Duo Non-Agentic";
|
|
111
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
112
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
113
|
+
readonly callbackPort: 8080;
|
|
114
|
+
readonly pasteCodeFlow: true;
|
|
115
|
+
} | {
|
|
116
|
+
readonly id: "gitlab-duo-agent";
|
|
117
|
+
readonly name: "GitLab Duo Agent";
|
|
118
|
+
readonly envKeys: "GITLAB_TOKEN";
|
|
119
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
120
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
121
|
+
readonly callbackPort: 8080;
|
|
122
|
+
readonly pasteCodeFlow: true;
|
|
123
|
+
} | {
|
|
124
|
+
readonly id: "gmi-cloud";
|
|
125
|
+
readonly name: "GMI Cloud";
|
|
126
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
127
|
+
} | {
|
|
128
|
+
readonly id: "google";
|
|
129
|
+
readonly name: "Google Gemini";
|
|
130
|
+
} | {
|
|
131
|
+
readonly id: "google-antigravity";
|
|
132
|
+
readonly name: "Antigravity (Gemini 3, Claude, GPT-OSS)";
|
|
133
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
134
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
135
|
+
readonly callbackPort: 51121;
|
|
136
|
+
readonly pasteCodeFlow: true;
|
|
137
|
+
} | {
|
|
138
|
+
readonly id: "google-gemini-cli";
|
|
139
|
+
readonly name: "Google Cloud Code Assist (Gemini CLI)";
|
|
140
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
141
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
142
|
+
readonly callbackPort: 8085;
|
|
143
|
+
readonly pasteCodeFlow: true;
|
|
144
|
+
} | {
|
|
145
|
+
readonly id: "google-vertex";
|
|
146
|
+
readonly name: "Google Vertex AI";
|
|
147
|
+
readonly envKeys: () => string | undefined;
|
|
148
|
+
} | {
|
|
149
|
+
readonly id: "groq";
|
|
150
|
+
readonly name: "Groq";
|
|
151
|
+
} | {
|
|
152
|
+
readonly id: "huggingface";
|
|
153
|
+
readonly name: "Hugging Face Inference";
|
|
154
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
155
|
+
} | {
|
|
156
|
+
readonly id: "kagi";
|
|
157
|
+
readonly name: "Kagi";
|
|
158
|
+
readonly envKeys: "KAGI_API_KEY";
|
|
159
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
160
|
+
} | {
|
|
161
|
+
readonly id: "kilo";
|
|
162
|
+
readonly name: "Kilo Gateway";
|
|
163
|
+
readonly login: typeof import("./kilo.js").loginKilo;
|
|
164
|
+
} | {
|
|
165
|
+
readonly id: "kimi-code";
|
|
166
|
+
readonly name: "Kimi Code";
|
|
167
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
168
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
169
|
+
} | {
|
|
170
|
+
readonly id: "litellm";
|
|
171
|
+
readonly name: "LiteLLM";
|
|
172
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
173
|
+
} | {
|
|
174
|
+
readonly id: "llama.cpp";
|
|
175
|
+
readonly name: "llama.cpp (Local OpenAI-compatible)";
|
|
176
|
+
readonly envKeys: "LLAMA_CPP_API_KEY";
|
|
177
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
178
|
+
} | {
|
|
179
|
+
readonly id: "lm-studio";
|
|
180
|
+
readonly name: "LM Studio (Local OpenAI-compatible)";
|
|
181
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
182
|
+
} | {
|
|
183
|
+
readonly id: "meta";
|
|
184
|
+
readonly name: "Meta Model API";
|
|
185
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
186
|
+
} | {
|
|
187
|
+
readonly id: "minimax";
|
|
188
|
+
readonly name: "MiniMax";
|
|
189
|
+
} | {
|
|
190
|
+
readonly id: "minimax-code";
|
|
191
|
+
readonly name: "MiniMax Token Plan (International)";
|
|
192
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
193
|
+
} | {
|
|
194
|
+
readonly id: "minimax-code-cn";
|
|
195
|
+
readonly name: "MiniMax Token Plan (China)";
|
|
196
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
197
|
+
} | {
|
|
198
|
+
readonly id: "mistral";
|
|
199
|
+
readonly name: "Mistral";
|
|
200
|
+
} | {
|
|
201
|
+
readonly id: "moonshot";
|
|
202
|
+
readonly name: "Moonshot (Kimi API)";
|
|
203
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
204
|
+
} | {
|
|
205
|
+
readonly id: "nanogpt";
|
|
206
|
+
readonly name: "NanoGPT";
|
|
207
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
208
|
+
} | {
|
|
209
|
+
id: "novita";
|
|
210
|
+
name: string;
|
|
211
|
+
login: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
212
|
+
} | {
|
|
213
|
+
readonly id: "nvidia";
|
|
214
|
+
readonly name: "NVIDIA";
|
|
215
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
216
|
+
} | {
|
|
217
|
+
readonly id: "ollama";
|
|
218
|
+
readonly name: "Ollama (Local OpenAI-compatible)";
|
|
219
|
+
readonly login: typeof import("./ollama.js").loginOllama;
|
|
220
|
+
} | {
|
|
221
|
+
readonly id: "ollama-cloud";
|
|
222
|
+
readonly name: "Ollama Cloud";
|
|
223
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
224
|
+
} | {
|
|
225
|
+
readonly id: "openai";
|
|
226
|
+
readonly name: "OpenAI";
|
|
227
|
+
} | {
|
|
228
|
+
readonly id: "openai-codex";
|
|
229
|
+
readonly name: "ChatGPT Plus/Pro (Codex Subscription)";
|
|
230
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
231
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
232
|
+
readonly callbackPort: 1455;
|
|
233
|
+
readonly pasteCodeFlow: true;
|
|
234
|
+
} | {
|
|
235
|
+
readonly id: "openai-codex-device";
|
|
236
|
+
readonly name: "ChatGPT Plus/Pro (Codex, headless/device)";
|
|
237
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
238
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
239
|
+
readonly storeCredentialsAs: "openai-codex";
|
|
240
|
+
} | {
|
|
241
|
+
readonly id: "opencode-go";
|
|
242
|
+
readonly name: "OpenCode Go";
|
|
243
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
244
|
+
} | {
|
|
245
|
+
readonly id: "opencode-zen";
|
|
246
|
+
readonly name: "OpenCode Zen";
|
|
247
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
248
|
+
} | {
|
|
249
|
+
readonly id: "openrouter";
|
|
250
|
+
readonly name: "OpenRouter";
|
|
251
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
252
|
+
} | {
|
|
253
|
+
readonly id: "parallel";
|
|
254
|
+
readonly name: "Parallel";
|
|
255
|
+
readonly envKeys: "PARALLEL_API_KEY";
|
|
256
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
257
|
+
} | {
|
|
258
|
+
readonly id: "perplexity";
|
|
259
|
+
readonly name: "Perplexity (Pro/Max)";
|
|
260
|
+
readonly envKeys: "PERPLEXITY_API_KEY";
|
|
261
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
262
|
+
} | {
|
|
263
|
+
readonly id: "qianfan";
|
|
264
|
+
readonly name: "Qianfan";
|
|
265
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
266
|
+
} | {
|
|
267
|
+
readonly id: "qwen-portal";
|
|
268
|
+
readonly name: "Qwen Portal";
|
|
269
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
270
|
+
} | {
|
|
271
|
+
readonly id: "sakana";
|
|
272
|
+
readonly name: "Sakana AI";
|
|
273
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
274
|
+
} | {
|
|
275
|
+
readonly id: "siliconflow";
|
|
276
|
+
readonly name: "SiliconFlow";
|
|
277
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
278
|
+
} | {
|
|
279
|
+
readonly id: "siliconflow-cn";
|
|
280
|
+
readonly name: "SiliconFlow (China)";
|
|
281
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
282
|
+
} | {
|
|
283
|
+
readonly id: "synthetic";
|
|
284
|
+
readonly name: "Synthetic";
|
|
285
|
+
readonly login: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
286
|
+
} | {
|
|
287
|
+
readonly id: "tavily";
|
|
288
|
+
readonly name: "Tavily";
|
|
289
|
+
readonly envKeys: "TAVILY_API_KEY";
|
|
290
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
291
|
+
} | {
|
|
292
|
+
readonly id: "together";
|
|
293
|
+
readonly name: "Together";
|
|
294
|
+
readonly login: (cb: Parameters<typeof import("./together.js").loginTogether>[0]) => Promise<string>;
|
|
295
|
+
} | {
|
|
296
|
+
readonly id: "umans";
|
|
297
|
+
readonly name: "Umans AI Coding Plan";
|
|
298
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
299
|
+
} | {
|
|
300
|
+
readonly id: "venice";
|
|
301
|
+
readonly name: "Venice";
|
|
302
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
303
|
+
} | {
|
|
304
|
+
readonly id: "vercel-ai-gateway";
|
|
305
|
+
readonly name: "Vercel AI Gateway";
|
|
306
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
307
|
+
} | {
|
|
308
|
+
readonly id: "vllm";
|
|
309
|
+
readonly name: "vLLM (Local OpenAI-compatible)";
|
|
310
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
311
|
+
} | {
|
|
312
|
+
readonly id: "wafer-serverless";
|
|
313
|
+
readonly name: "Wafer Serverless (pay-as-you-go)";
|
|
314
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
315
|
+
} | {
|
|
316
|
+
readonly id: "xai";
|
|
317
|
+
readonly name: "xAI API";
|
|
318
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
319
|
+
} | {
|
|
320
|
+
readonly id: "xai-oauth";
|
|
321
|
+
readonly name: "xAI Grok OAuth (SuperGrok or X Premium+)";
|
|
322
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
323
|
+
readonly refreshToken: (credentials: import("./oauth/index.js").OAuthCredentials) => Promise<import("./oauth/index.js").OAuthCredentials>;
|
|
324
|
+
} | {
|
|
325
|
+
readonly id: "xiaomi";
|
|
326
|
+
readonly name: "Xiaomi MiMo";
|
|
327
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
328
|
+
} | {
|
|
329
|
+
readonly id: "xiaomi-token-plan-ams";
|
|
330
|
+
readonly name: "Xiaomi Token Plan (Europe)";
|
|
331
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
332
|
+
} | {
|
|
333
|
+
readonly id: "xiaomi-token-plan-cn";
|
|
334
|
+
readonly name: "Xiaomi Token Plan (China)";
|
|
335
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
336
|
+
} | {
|
|
337
|
+
readonly id: "xiaomi-token-plan-sgp";
|
|
338
|
+
readonly name: "Xiaomi Token Plan (Singapore)";
|
|
339
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
340
|
+
} | {
|
|
341
|
+
readonly id: "zai";
|
|
342
|
+
readonly name: "Z.AI (GLM Coding Plan)";
|
|
343
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
344
|
+
} | {
|
|
345
|
+
readonly id: "zai-coding-plan";
|
|
346
|
+
readonly name: "Z.AI (GLM Coding Plan · Sign in)";
|
|
347
|
+
readonly storeCredentialsAs: "zai";
|
|
348
|
+
readonly callbackPort: 54548;
|
|
349
|
+
readonly pasteCodeFlow: true;
|
|
350
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string | import("./oauth/index.js").OAuthCredentials>;
|
|
351
|
+
} | {
|
|
352
|
+
readonly id: "zenmux";
|
|
353
|
+
readonly name: "ZenMux";
|
|
354
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
355
|
+
} | {
|
|
356
|
+
readonly id: "zhipu-coding-plan";
|
|
357
|
+
readonly name: "Zhipu Coding Plan (智谱)";
|
|
358
|
+
readonly login: (cb: import("./oauth/index.js").OAuthLoginCallbacks) => Promise<string>;
|
|
359
|
+
})[];
|
|
360
|
+
export type RegistryDef = (typeof ALL)[number];
|
|
361
|
+
export declare const PROVIDER_REGISTRY: readonly ProviderDefinition[];
|
|
362
|
+
export declare function getProviderDefinition(id: string): ProviderDefinition | undefined;
|
|
363
|
+
/** Loginable providers (those carrying a `login` flow). */
|
|
364
|
+
export type OAuthProviderUnion = Extract<RegistryDef, {
|
|
365
|
+
login: object;
|
|
366
|
+
}>["id"];
|
|
367
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginSakana: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const sakanaProvider: {
|
|
4
|
+
readonly id: "sakana";
|
|
5
|
+
readonly name: "Sakana AI";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginSiliconFlowCn: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const siliconflowCnProvider: {
|
|
4
|
+
readonly id: "siliconflow-cn";
|
|
5
|
+
readonly name: "SiliconFlow (China)";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginSiliconFlow: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const siliconflowProvider: {
|
|
4
|
+
readonly id: "siliconflow";
|
|
5
|
+
readonly name: "SiliconFlow";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const loginSynthetic: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
2
|
+
export declare const syntheticProvider: {
|
|
3
|
+
readonly id: "synthetic";
|
|
4
|
+
readonly name: "Synthetic";
|
|
5
|
+
readonly login: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Login to Tavily.
|
|
4
|
+
*
|
|
5
|
+
* Opens browser to API keys page and prompts user to paste their API key.
|
|
6
|
+
* Returns the API key directly (not OAuthCredentials - this isn't OAuth).
|
|
7
|
+
*/
|
|
8
|
+
export declare function loginTavily(options: OAuthLoginCallbacks): Promise<string>;
|
|
9
|
+
export declare const tavilyProvider: {
|
|
10
|
+
readonly id: "tavily";
|
|
11
|
+
readonly name: "Tavily";
|
|
12
|
+
readonly envKeys: "TAVILY_API_KEY";
|
|
13
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
14
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const loginTogether: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
2
|
+
export declare const togetherProvider: {
|
|
3
|
+
readonly id: "together";
|
|
4
|
+
readonly name: "Together";
|
|
5
|
+
readonly login: (cb: Parameters<typeof loginTogether>[0]) => Promise<string>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Single-source provider auth model. Every provider — model providers,
|
|
3
|
+
* gateways, search/tool credentials, and login-only flows — is described by
|
|
4
|
+
* one {@link ProviderDefinition}. The legacy scattered structures (the
|
|
5
|
+
* `OAuthProvider` union, `serviceProviderMap`, `builtInOAuthProviders`, the
|
|
6
|
+
* refresh/login switches, and the CLI callback maps) are all *derived* from
|
|
7
|
+
* the registry of these definitions. Adding a provider is one new file in
|
|
8
|
+
* `./providers/` plus one line in `./registry.ts`. Model-catalog metadata
|
|
9
|
+
* (default model, model-manager factory, catalog discovery) lives in
|
|
10
|
+
* `@linxiraos/pi-catalog`'s descriptor table.
|
|
11
|
+
*/
|
|
12
|
+
import type { Api, FetchImpl, Model, SimpleStreamOptions, StreamOptions } from "../types.js";
|
|
13
|
+
import type { OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
14
|
+
/**
|
|
15
|
+
* API-key environment fallback: either a single env var name (e.g.
|
|
16
|
+
* `"OPENAI_API_KEY"`) or a resolver that inspects several env vars / probes
|
|
17
|
+
* the host (Vertex ADC, Bedrock credential chains, …).
|
|
18
|
+
*/
|
|
19
|
+
export type KeyResolver = string | (() => string | undefined);
|
|
20
|
+
/** Credentials are resolved by the provider transport rather than used as a bearer string. */
|
|
21
|
+
export declare const AUTHENTICATED_SENTINEL = "<authenticated>";
|
|
22
|
+
export interface PreparedProviderRequest {
|
|
23
|
+
readonly model: Model<Api>;
|
|
24
|
+
readonly options: StreamOptions;
|
|
25
|
+
}
|
|
26
|
+
export type ProviderRequestPreparer = (model: Model<Api>, options: StreamOptions) => PreparedProviderRequest;
|
|
27
|
+
export type ProviderSimpleOptionsMapper = (options: SimpleStreamOptions) => Readonly<Record<string, unknown>>;
|
|
28
|
+
export interface ProviderModelDiscoveryConfig {
|
|
29
|
+
readonly apiKey?: string;
|
|
30
|
+
readonly baseUrl?: string;
|
|
31
|
+
readonly fetch?: FetchImpl;
|
|
32
|
+
readonly authenticated?: boolean;
|
|
33
|
+
}
|
|
34
|
+
export type ProviderModelDiscoveryPreparer = (config: ProviderModelDiscoveryConfig) => ProviderModelDiscoveryConfig;
|
|
35
|
+
/**
|
|
36
|
+
* Declarative description of a single provider's auth/login wiring. All
|
|
37
|
+
* fields are optional except `id`/`name`; presence of a field opts the
|
|
38
|
+
* provider into a derived structure:
|
|
39
|
+
*
|
|
40
|
+
* - `envKeys` present ⇒ env-var fallback in `getEnvApiKey`, overriding the
|
|
41
|
+
* catalog table's `envVars` for that provider.
|
|
42
|
+
* - `login` present ⇒ member of `OAuthProvider`, shown in the `/login` list
|
|
43
|
+
* (unless `showInLoginList === false`) and dispatchable via `AuthStorage.login`.
|
|
44
|
+
* - `callbackPort` present ⇒ entry in the auth-broker `CALLBACK_PORTS` map.
|
|
45
|
+
* - `pasteCodeFlow` ⇒ member of `PASTE_CODE_LOGIN_PROVIDERS`.
|
|
46
|
+
*
|
|
47
|
+
* Heavy OAuth flow modules MUST be reached through dynamic-import thunks in
|
|
48
|
+
* `login`/`refreshToken` so they stay out of the eager startup graph.
|
|
49
|
+
*/
|
|
50
|
+
export interface ProviderDefinition {
|
|
51
|
+
readonly id: string;
|
|
52
|
+
readonly name: string;
|
|
53
|
+
/** Login-list availability flag. Defaults to true when shown. */
|
|
54
|
+
readonly available?: boolean;
|
|
55
|
+
/** Whether to surface in the interactive login list. Defaults to true when `login` is present. */
|
|
56
|
+
readonly showInLoginList?: boolean;
|
|
57
|
+
readonly envKeys?: KeyResolver;
|
|
58
|
+
/** Provider transport can authenticate without a resolved API-key string. */
|
|
59
|
+
readonly allowsMissingApiKey?: boolean;
|
|
60
|
+
/** Provider-owned request shaping applied before generic API dispatch. */
|
|
61
|
+
readonly prepareRequest?: ProviderRequestPreparer;
|
|
62
|
+
/** Provider-owned projection from the generic simple-stream option bag. */
|
|
63
|
+
readonly mapSimpleOptions?: ProviderSimpleOptionsMapper;
|
|
64
|
+
/** Provider-owned authentication and endpoint setup for model discovery. */
|
|
65
|
+
readonly prepareModelDiscovery?: ProviderModelDiscoveryPreparer;
|
|
66
|
+
readonly login?: (callbacks: OAuthLoginCallbacks) => Promise<OAuthCredentials | string>;
|
|
67
|
+
readonly refreshToken?: (credentials: OAuthCredentials) => Promise<OAuthCredentials>;
|
|
68
|
+
readonly getApiKey?: (credentials: OAuthCredentials) => string;
|
|
69
|
+
/** Store OAuth credentials under a different provider id (e.g. `openai-codex-device` ⇒ `openai-codex`). */
|
|
70
|
+
readonly storeCredentialsAs?: string;
|
|
71
|
+
/** Auth-broker local callback-server port. Presence ⇒ entry in `CALLBACK_PORTS`. */
|
|
72
|
+
readonly callbackPort?: number;
|
|
73
|
+
/** OAuth flow needs a pasted code/redirect URL rather than a callback server. */
|
|
74
|
+
readonly pasteCodeFlow?: boolean;
|
|
75
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginUmans: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const umansProvider: {
|
|
4
|
+
readonly id: "umans";
|
|
5
|
+
readonly name: "Umans AI Coding Plan";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Login to Venice.
|
|
4
|
+
*
|
|
5
|
+
* Opens browser to API keys page, prompts user to paste their API key.
|
|
6
|
+
* Returns the API key directly (not OAuthCredentials - this isn't OAuth).
|
|
7
|
+
*/
|
|
8
|
+
export declare const loginVenice: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
9
|
+
export declare const veniceProvider: {
|
|
10
|
+
readonly id: "venice";
|
|
11
|
+
readonly name: "Venice";
|
|
12
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
13
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthController, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare function loginVercelAiGateway(options: OAuthController): Promise<string>;
|
|
3
|
+
export declare const vercelAiGatewayProvider: {
|
|
4
|
+
readonly id: "vercel-ai-gateway";
|
|
5
|
+
readonly name: "Vercel AI Gateway";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthController, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare function loginVllm(options: OAuthController): Promise<string>;
|
|
3
|
+
export declare const vllmProvider: {
|
|
4
|
+
readonly id: "vllm";
|
|
5
|
+
readonly name: "vLLM (Local OpenAI-compatible)";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthCredentials, OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const xaiOauthProvider: {
|
|
3
|
+
readonly id: "xai-oauth";
|
|
4
|
+
readonly name: "xAI Grok OAuth (SuperGrok or X Premium+)";
|
|
5
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<OAuthCredentials>;
|
|
6
|
+
readonly refreshToken: (credentials: OAuthCredentials) => Promise<OAuthCredentials>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginXAI: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const xaiProvider: {
|
|
4
|
+
readonly id: "xai";
|
|
5
|
+
readonly name: "xAI API";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const xiaomiTokenPlanSgpProvider: {
|
|
3
|
+
readonly id: "xiaomi-token-plan-sgp";
|
|
4
|
+
readonly name: "Xiaomi Token Plan (Singapore)";
|
|
5
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginZai: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const zaiProvider: {
|
|
4
|
+
readonly id: "zai";
|
|
5
|
+
readonly name: "Z.AI (GLM Coding Plan)";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
8
|
+
export declare const zaiCodingPlanProvider: {
|
|
9
|
+
readonly id: "zai-coding-plan";
|
|
10
|
+
readonly name: "Z.AI (GLM Coding Plan · Sign in)";
|
|
11
|
+
readonly storeCredentialsAs: "zai";
|
|
12
|
+
readonly callbackPort: 54548;
|
|
13
|
+
readonly pasteCodeFlow: true;
|
|
14
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string | import("./oauth/index.js").OAuthCredentials>;
|
|
15
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginZenMux: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const zenmuxProvider: {
|
|
4
|
+
readonly id: "zenmux";
|
|
5
|
+
readonly name: "ZenMux";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OAuthLoginCallbacks } from "./oauth/types.js";
|
|
2
|
+
export declare const loginZhipuCodingPlan: (options: import("./oauth/index.js").OAuthController) => Promise<string>;
|
|
3
|
+
export declare const zhipuCodingPlanProvider: {
|
|
4
|
+
readonly id: "zhipu-coding-plan";
|
|
5
|
+
readonly name: "Zhipu Coding Plan (智谱)";
|
|
6
|
+
readonly login: (cb: OAuthLoginCallbacks) => Promise<string>;
|
|
7
|
+
};
|