Skip to content

[pull] main from Alishahryar1:main - #248

Merged
pull[bot] merged 1 commit into
Co-Contribute-OpenSource:mainfrom
Alishahryar1:main
Sep 26, 2026
Merged

pull[bot] merged 1 commit into
Co-Contribute-OpenSource:mainfrom
Alishahryar1:main

Conversation

@pull

@pull pull Bot commented Sep 26, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

## Why

Users need to connect API-compatible endpoints that are not in FCC's
built-in provider catalog. They should be able to configure them from
the Providers page and select their models in the existing pickers.

## How

- Add an alphabetically sorted Custom providers section with Add, Edit,
and Remove actions using the existing card and modal styles.
- Configure a name, API base URL, optional API key, Chat Completions /
Responses / Anthropic Messages format, and compatible reasoning
controls. Reuse FCC's existing transports, admission control, and
provider lifecycle.
- Discover models in the background. Optional manual model IDs replace
discovery. Preserve the supplied API path and append the selected
protocol's endpoint.
- Store definitions in the managed configuration with immutable IDs and
merge individual edits under the existing Apply lock. Renaming preserves
routing references. Removal requires reassigning any default, tier, or
fallback routes first.
- Publish configuration changes through existing runtime generations.
In-flight requests retain their original configuration, changed
endpoints receive fresh model inventories, and requests targeting
removed custom providers fail explicitly.
- Carry the selected model's generation-owned metadata through both
ingress paths. Messages egress applies a request-local output limit to
initial requests and corrective retries, and rejects exact thinking
budgets that cannot fit. Native Provider-default controls remain
distinct from synthesized preset controls.
- Show provider names in model pickers, redact keys in Admin and
fcc-doctor output, and add brief README setup instructions.

Accepted choices: blank or omitted keys preserve an existing key, while
Remove key clears it. Provider-default reasoning preserves native
request controls and adds no cross-protocol computation controls.
Process-environment definitions are read-only in Admin. Custom endpoints
inherit the selected transport's existing compatibility limits,
including Messages egress restrictions on grammar tools, client tool
search, and prompt-cache keys. Codex web-search work is outside this
feature.




<!-- greptile_comment -->

<!-- greptile_summary -->

<h2><a
href="https://app.greptile.com/api/retrigger?id=69863785"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/RetriggerDark.svg?v=2"><source
media="(prefers-color-scheme: light)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"><img
alt="Retrigger"
src="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"
align="right"></picture></a>Confidence Score: 5/5</h2>

<!-- greptile-risk -->

No outstanding findings block merging.

<details open><summary>Summary</summary>

The PR adds custom API providers, model discovery and selection, and
generation-aware routing. The latest changes sort models by provider
display name while preserving model identity. No new issues remain.
</details>

<!-- greptile_confidence_score:5 -->

<sub>Reviews (3) · Last reviewed commit: ["Sort custom provider names
independently..."](https://github.com/alishahryar1/free-claude-code/commit/063ff29c2cb5c7b22bab0e6d0721ab731d1dd12e)</sub>

<!-- /greptile_comment -->
@pull pull Bot locked and limited conversation to collaborators Sep 26, 2026
@pull pull Bot added the ⤵️ pull label Sep 26, 2026
@pull
pull Bot merged commit b7be9b4 into Co-Contribute-OpenSource:main Sep 26, 2026
10 of 11 checks passed

This branch had an error being deployed

1 failed deployment
pypi — b7be9b4f Deployed Sep 26, 2026 by pull[bot] via Publish to PyPI #5
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant