7e45ead2ac
Merge remote-tracking branch 'origin/master' into gitea/feature/end
...
Resolved conflicts taking origin/master (v0.5.55) as canonical, with local
features re-applied:
- runtime log level (LOG_LEVEL env + dashboard Settings → Logging, applied
immediately and persisted across restarts)
- free/noAuth provider enable/disable toggle via providerStrategies.enabled
- parallel model testing (Test All Models / Test Selected Keys)
2026-08-17 00:38:31 +07:00
e7470e955e
end
2026-07-06 00:01:34 +07:00
Brokenc0de
ab5ec52f28
feat(providers): add Venice AI provider
...
OpenAI-compatible apikey provider (chat/embedding/image) with dynamic
model discovery via modelsFetcher + passthroughModels. No executor needed.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-26 11:37:44 +07:00
Janu Yoga
efd20be8d8
feat(provider): add CodeBuddy CN provider (copilot.tencent.com)
...
Add Tencent CodeBuddy CN (codebuddy-cn) OAuth provider with full support:
OAuth login (GET poll with state query param), token refresh, 15-model
catalog, /v2 inference endpoint, forced streaming, OpenAI-style reasoning,
and per-model capabilities. Renamed from codebuddy to codebuddy-cn to allow
a future codebuddy-ai variant.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-19 15:33:26 +07:00
decolua
aba4c45da6
fix(translator): ESM-safe registry + tool-id pairing + responses max_tokens; add real-creds tests
...
- translator/index.js: replace require() with static side-effect imports (ESM-safe),
lazy-init registry maps to survive circular import order
- openai-responses->openai: map max_output_tokens -> max_tokens (avoid leaking field upstream)
- gemini/antigravity -> openai: derive deterministic tool_call id from name so
functionCall/functionResponse pair correctly (fixes provider tool-pairing 400s)
- add offline unit tests (finish-reason, usage, session-manager, ollama malformed args, const guard)
- add real-creds integration tests (provider-cases + all-formats matrix: 6 inbound formats x 4 scenarios)
Includes co-located provider registry refactor (pricing/capabilities/media providers) and sessionManager updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-15 11:38:43 +07:00
decolua
bb9e9aa91f
refactor(open-sse): registry consolidation + DRY media/oauth/adhoc cleanup
...
- Single-source registry: oauth clientId/tokenUrl, usage URLs, image/embed
configs, search defaultModel, codex fixedPort, google token url derive.
- Remove 29 unused OmniRoute providers (registry 100→71); media intact.
- De-adhoc: codex literals → registry format/oauth flags; reasoningInject,
image/embed openrouter headers + xai bodyFields config-driven.
- Add REGISTRY_TEMPLATE.js + expand PROVIDER_DEFAULTS/schema JSDoc.
- Baselines updated; PROVIDERS 62 + alias 90 byte-for-byte, golden snapshots.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-14 13:15:48 +07:00
decolua
5a042840fd
refactor(open-sse): P3 provider registry — split into providers/registry/{id}.js
...
- 100 registry files: transport + models co-located per provider (Mongoose-style)
- providers/shared.js: shared Claude headers + OS/arch helpers (deduped)
- providers/models/helpers.js: withCodexReviewModels (kept dynamic)
- providers/index.js builds PROVIDERS + PROVIDER_MODELS = old API (content byte-for-byte)
- config/providers.js + providerModels.js → barrel re-export, keep accessors + runtime helpers
- Verified: PROVIDERS/MODELS/OAuth/alias byte-for-byte, golden translator tests pass, 0 new regression
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-13 21:08:37 +07:00