8 Commits
Author SHA1 Message Date
Jason 36e2ce2c78 refactor(codex): move field explanations into help tips
The Codex edit page carried a grey explanation under almost every field.
Following the v7 help rules, explanations of what a field is and when to
use it now sit behind a "?" after the field name, and only consequences
stay on the page: restart Codex after changing the model list, a max
output above the real limit returns 400, User-Agent and request overrides
only apply in routing mode, and Copilot needs routing in every mode.

The collapsed advanced-section summary and the reasoning group note are
gone; the Chat and Anthropic options already say they need routing.
The shared endpoint, User-Agent and request override fields take an
optional help text, so the other provider forms are unchanged.
2026-10-11 22:51:28 +08:00
Jason 0dae89e25c refactor(codex): move the model list out of the advanced options
The default model and the sub-agent model are picked from the model
list, but the list sat collapsed inside the advanced options below them.
Show it right after the connection fields, before the default model, and
call it "Model list" as the Aggregation layout does.

The advanced section no longer opens on its own for native Responses
providers or cards with a list: that only existed to reveal the mapping.
The default model drops its own fetch button when the list above already
has one; Grok Build has no list and keeps it.
2026-10-11 22:51:28 +08:00
Jason df08bb15c3 fix(grokbuild): use preset apiKeyUrl for the get-API-key link
The Grok Build form passed the preset's websiteUrl to the API key link,
so sponsor presets opened the plain homepage instead of their referral
signup URL. Prefer the selected preset's apiKeyUrl, matching
useApiKeyLink, without changing the saved websiteUrl.
2026-10-05 09:58:28 +08:00
Jason 8fbcea9ff0 feat(providers): fill model metadata when picking a fetched model
A provider's /models endpoint only returns model IDs, so a model picked
from the fetched list left its context window, output limit, reasoning
levels, and modalities empty, while the same model in a preset had them.

When a model is picked in the Codex, OpenClaw, Hermes, OpenCode, or
MiniMax Code form, look up its metadata field by field:

1. the preset model with the same endpoint (hand-verified values);
2. the models.dev provider whose API endpoint matches;
3. the vendor's own models.dev entry, without its price.

Endpoints match only when host and path are equal after dropping a
trailing version segment or request path, so plans that share a host
(z.ai standard vs Coding Plan, OpenCode Zen vs Go) never borrow each
other's values. Models are never matched by name across providers: the
same model ID often has very different context windows per deployment.

Only empty fields are filled, and reasoning or image input is only ever
turned on. models.dev is prefetched once the model list is fetched and
shared with the usage pricing import; when it arrives late the row is
filled again, located by its stable row key. A single toast asks the
user to review what was filled.
2026-10-01 23:20:06 +08:00
zayokaandClaude Fable 5 b109dcd37d fix(grokbuild): stop showing Codex-specific copy in the Grok Build form (#6511)
#6427 aligned the Grok Build provider form with Codex by reusing
CodexFormFields, but kept Codex-facing copy that does not apply to
Grok Build:

- the default-model hint named Codex and referenced the model-mapping
  fallback, which Grok Build does not have (no catalog section)
- the model placeholder suggested a GPT model
- the advanced-section hint listed model mapping as contained
- the reasoning-effort hint referenced Codex's reasoning.effort
- the max-output-tokens hint referenced Codex's request body

Branch those five strings on appId and add grokBuild.* locale entries
(en/zh/ja/zh-TW) describing the Grok Build semantics; Codex rendering
is unchanged. Add regression tests asserting the Grok form shows the
Grok copy and never the Codex text.

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-08-17 09:53:30 +08:00
Thefool f748f3ac4a refactor(grokbuild): align provider form with Codex (#6427) 2026-08-14 12:58:17 +08:00
Jason 325ba48486 feat(grokbuild): curate standalone provider presets
Grok Build previously reused the whole Codex preset list, leaking
cn_official providers and Codex default models into the Grok CLI form.
Replace the inline filter with a standalone, independently maintained
preset module (no data linkage to codexProviderPresets):

- drop cn_official direct providers and open-source-only hosts
  (SiliconFlow/ModelScope/Novita/Nvidia/AtlasCloud/OpenCode Go) that
  have no Grok models upstream
- keep aggregators and third-party relays with grok-4.5 as the default
  model (x-ai/grok-4.5 for OpenRouter-style namespaced routers)
- move the Grok Official seed entry into the presets module
- add standalone integrity tests; retarget the form's chat-mapping test
  since no openai_chat preset remains in the list
2026-07-21 16:39:34 +08:00
Thefool 1c0ee0c58a feat(grokbuild): add first-class Grok Build support (#5453)
* feat(grokbuild): add backend integration

* feat(grokbuild): add provider and management UI

* test(grokbuild): cover configuration and integrations

* fix(grokbuild): address backend review feedback

* fix(grokbuild): complete UI review feedback

* feat(grokbuild): add CLI lifecycle management

* fix(grokbuild): align provider icon fallback

* test(grokbuild): cover provider icon persistence
2026-07-17 15:50:50 +08:00