Commit Graph

18 Commits

Author SHA1 Message Date
Mario Zechner 6f95a33888 fix(ai): enable cache control for OpenRouter aliases
closes #6940
2026-07-22 11:46:21 +02:00
Armin Ronacher a82289637b feat(ai): add new Gemini generated models 2026-07-21 18:25:27 +02:00
David Brailovsky 21f92b319d run generate-models 2026-07-20 10:21:34 +00:00
Armin Ronacher a9f6a3159a feat(ai): separate generated model data (#6765) 2026-07-17 11:08:48 +02:00
Armin Ronacher c2c32febb0 fix(ai): correct Kimi K3 gateway output limits 2026-07-16 18:56:54 +02:00
David Brailovsky 70c5763297 add deferred tool loading for kimi-k3 2026-07-16 15:39:22 +00:00
Armin Ronacher 6442536b1e fix(coding-agent): bundle OAuth flows in Bun binaries 2026-07-16 15:36:16 +02:00
Mario Zechner 9993c96907 feat(coding-agent): replace model registry with model runtime
Move provider auth and OAuth flows onto pi-ai Models, compose models.json and extension overlays through ModelRuntime, and retain ModelRegistry as an extension compatibility facade.
2026-07-14 17:48:45 +02:00
Mario Zechner fbdd46389c feat(ai): add max thinking level 2026-07-09 22:30:53 +02:00
Armin Ronacher 912d0953f6 Release v0.80.4 2026-07-09 20:52:57 +02:00
Armin Ronacher 7df2a94e0f feat(ai): add GPT-5.6 model metadata 2026-07-09 20:32:29 +02:00
Mario Zechner 72d77b53de fix(ai): update model catalogues 2026-07-09 11:03:58 +02:00
Vegard Stikbakke ee24a9ec54 feat(ai): refresh generated model catalogs
closes #6256
2026-07-04 06:27:58 +02:00
Mario Zechner 5c1a2977bc fix(ai): update generated model catalogue 2026-06-30 22:12:48 +02:00
Vegard Stikbakke 3d6acb37b9 fix(ai): regenerate model catalog
Includes updated Xiaomi MiMo pricing from models.dev. Closes #6138
2026-06-30 08:33:18 +02:00
Mario Zechner 9cd2c81ada fix(ai): regenerate model catalogues 2026-06-25 11:56:33 +02:00
Mario Zechner abbd911693 Merge main into model-registry 2026-06-22 14:00:18 +02:00
Mario Zechner fec0c3d12f feat(ai): provider factories, per-provider catalogs, createProvider (phase 3)
Auth helpers in src/auth/helpers.ts: envApiKeyAuth() (stored key wins,
then env vars in order, with secret-prompt login) and lazyOAuth()
(flow loads on first use through bundler-opaque dynamic imports in
utils/oauth/load.ts; the OAuthAuth flow exports land in phase 4).
There is no OAuth factory toggle: providers that support OAuth always
attach it, advertising costs nothing until login/refresh runs.

createProvider() in models.ts builds providers from parts: single API
implementation or a map dispatched on model.api (mixed-API providers
like opencode and github-copilot); unknown api yields a stream error.

generate-models.ts now emits one providers/<id>.models.ts catalog per
provider (35 files, biome-excluded like models.generated.ts) and
models.generated.ts becomes a generated aggregator, so importing one
provider factory pulls one catalog. Typed getModel globals unchanged.

One factory per built-in provider under src/providers/: envApiKeyAuth
for standard providers, OAuth for anthropic/openai-codex/github-copilot,
ambient ApiKeyAuth for amazon-bedrock (AWS env/profile/IAM) and
google-vertex (explicit key or ADC+project+location).

providers/all.ts: builtinProviders(), builtinModels(), getBuiltin*
re-exports. fauxProvider() factory returns a real Provider for tests;
legacy registerFauxProvider() unchanged.
2026-06-10 20:33:20 +02:00