Repository navigation
feat(providers): add Atlas Cloud as an OpenAI-compatible gateway - #16114
binyangzhu000-sudo wants to merge 6 commits into
Conversation
Atlas Cloud serves chat models from many vendors (DeepSeek, Z.ai, Moonshot, Qwen, Anthropic, OpenAI, ...) behind one OpenAI-compatible endpoint at https://api.atlascloud.ai/v1, with vendor-prefixed model ids such as deepseek-ai/deepseek-v4-flash. The registry entry uses buildOpenAiCompatibleRegistryEntry with live model discovery (passthroughModels). Its /v1/models lists only text-output chat models, so no category filter is needed. The catalog entry lives in apikey/atlascloud.ts and is spread from the apikey barrel, the same extraction BeatAPI uses, so the frozen gateways.ts does not grow. It is listed in AGGREGATOR_PROVIDER_IDS and declares no tool or vision capability. Signed-off-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
Renames the fragment to 16114-atlascloud-provider.md and adds the PR link and credit, as changelog.d/README.md asks. Signed-off-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
|
Hi @binyangzhu000-sudo — closing this pull request to clear the open queue. The branch |
|
Hi @binyangzhu000-sudo — reopening this pull request. The close was a mistake, and it is back in the merge queue. The branch |
|
Re-homed to |
Resolve the count pins against the current base: RESERVED_PREFIX_COUNT 432 -> 433 and APIKEY_PROVIDER_COUNT 252 -> 253 (Atlas Cloud adds one of each), regenerate docs/reference/PROVIDER_REFERENCE.md, and bump the aggregate provider count 375 -> 376 in the docs, SVGs, skills mirrors and package.json description flagged by check:docs-counts.
Resolve the count pins after ainetcafe (cheaper-inference#13862) landed on the base: RESERVED_PREFIX_COUNT 433 -> 434 and APIKEY_PROVIDER_COUNT 253 -> 254 (both measured on the merged tree), take the base REPOSITORY_MAP table, regenerate docs/reference/PROVIDER_REFERENCE.md (377 unique ids, apikey=254) and move this PR's provider-total mentions to the real merged count 377. Co-authored-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
Resolve README/SVG conflicts to the release side (the PR side only carried the 375->377 count the release now has), regenerate PROVIDER_REFERENCE.md (378 unique ids, apikey=254) and move the aggregate provider count in non-protected docs, skills/README.md, agentSkills.ts, package.json and the SVGs from 377 to 378 (digit-only). Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>
Take upstream's docs/diagram/count files and re-apply the Atlas Cloud increment on top (provider total 380 -> 381, reserved prefixes 437, APIKEY_PROVIDERS 256 with the atlascloud extract in the partition test). Regenerate PROVIDER_REFERENCE.md and the README SVGs from their generators, and mirror llm.txt into docs/i18n. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Signed-off-by: binyangzhu000-sudo <224954946+binyangzhu000-sudo@users.noreply.github.com>
|
Synced with Verified: |
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters: 104
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including
|
Summary
https://api.atlascloud.ai/v1) as an OpenAI-compatible API-key gateway with live model discovery (passthroughModels). Atlas Cloud serves chat models from many vendors (DeepSeek, Z.ai, Moonshot, Qwen, Anthropic, OpenAI, …) under vendor-prefixed ids such asdeepseek-ai/deepseek-v4-flash.buildOpenAiCompatibleRegistryEntry, endpoint inPROVIDER_ENDPOINTS, listed inAGGREGATOR_PROVIDER_IDS, catalog entry in its own file.apikey/atlascloud.tsand is spread from theapikey/index.tsbarrel (the same extraction feat(providers): add BeatAPI gateway #14875 BeatAPI uses), so the frozengateways.tsdoes not grow and no file-size rebaseline is needed.Disclosure: I work at Atlas Cloud.
Related Issues
Validation
check:provider-consistency(OK — 290 REGISTRY entries, 373 canonical providers),check:provider-assets(passed),check:file-size(OK),tests/unit/atlascloud-provider.test.ts,tests/unit/provider-translate-path-golden.test.ts(see Reviewer Notes),gen:provider-reference(generated diff committed: 372 → 373 providers, one new table row)npm run lintrelease/v3.8.52@02f2f00e, still the tip when pushed; no openrelease-freezeissuetypecheck:core: 0 errorsTests Added Or Updated
tests/unit/atlascloud-provider.test.ts(new, 6 tests): registry shape (openai format, default executor, Bearer API key, chat/models URLs, passthrough), empty static catalog, wiring throughREGISTRY/PROVIDER_ENDPOINTS/APIKEY_PROVIDERS/DefaultExecutor, aggregator listing, no Free badge, and no undeclared tool/vision capability.tests/unit/provider-node-reserved-prefix.test.ts:RESERVED_PREFIX_COUNT431 → 432 (measured; the test passed at 431 on the base before this change).tests/unit/providers-constants-split.test.ts:APIKEY_PROVIDER_COUNT249 → 250 (measured), andapikey/atlascloud.tsadded to the barrel partition list next tobeatapi.tests/snapshots/provider/translate-path.json: newatlascloudblock.Coverage Notes
open-sse/config/providers/registry/atlascloud/index.ts,src/shared/constants/providers/apikey/atlascloud.tsand the wiring lines inopen-sse/config/providers/index.ts,src/shared/constants/config.ts,src/shared/constants/providers.tsandapikey/index.tsare covered byatlascloud-provider.test.ts, the two count/partition tests, and the translate-path golden.Reviewer Notes
UPDATE_GOLDEN=1on macOS also flips six Copilotuser-agentlines from(linux)to(darwin)(the committed snapshot is Linux-generated). I left those lines untouched and inserted only theatlascloudblock, which is byte-identical to the regenerated output. On macOS the golden test fails on those six lines both before and after this change; on the Linux runner it should pass.buildProviderUrl/buildProviderHeadersforatlascloud: the registrymodelsUrlreturned 117 models without a key (all text-output chat models, so no category filter is needed); non-streaming and streaming chat completions fordeepseek-ai/deepseek-v4-flashboth returned 200 with the expected text, the streaming one astext/event-stream.hasFreeis false (paid per token). No tool/vision capability is declared, since none was exercised here.changelog.d/features/16114-atlascloud-provider.md(renamed with the PR number and credit line in a follow-up commit, perchangelog.d/README.md).