Conversation
grok-4.5 is served by GitHub Copilot exclusively on the Responses API (catalog advertises grok-4.5 -> ['/responses']), but Hermes' Copilot API-mode routing only sent GPT-5+ models to the Responses API. All other non-GPT families were hardcoded to Chat Completions, so grok-4.5 was rejected with "HTTP 400: model grok-4.5 is not accessible via the /chat/completions endpoint". - _should_use_copilot_responses_api: also return True for grok / x-ai/grok. - copilot_model_api_mode: consult the live catalog's supported_endpoints as an authoritative fallback — if /responses is present and /chat/completions is absent, use codex_responses. This covers any future /responses-only non-GPT model, not just grok. Fixes NousResearch#85213
Duplicate of #74377 — it already implements catalog-aware Copilot routing for Responses-only models, including Grok, with the broader runtime handling. |
fix(copilot): route grok-4.5 to Responses API on GitHub Copilot Correct direction — grok is Responses-only on Copilot today, and the catalog fallback is the right authoritative check. Observations:
|
|
Nice fix — the catalog-driven fallback here ( Live-probed So the catalog branch routes |
|
please get this merged to enable grok working. |
Summary
Fixes #85213 —
grok-4.5on the GitHub Copilot provider currently fails with:Root cause
GitHub Copilot serves
grok-4.5exclusively on the Responses API — the live catalog advertisesgrok-4.5 -> ['/responses']. But Hermes' Copilot API-mode routing only routed GPT-5+ models to the Responses API._should_use_copilot_responses_apireturnedTrueonly forgpt-5+(excludinggpt-5-mini), with every other non-GPT family hardcoded to Chat Completions. Sogrok-4.5fell through to/chat/completionsand was rejected.Verified against the live catalog (
GET https://api.githubcopilot.com/models):grok-4.5['/responses'](only)gpt-5.4['/responses','/chat/completions','ws:/responses']gpt-5-mini['/chat/completions','/responses','ws:/responses']claude-sonnet-5['/v1/messages','/chat/completions']gemini-3.5-flash['/chat/completions']Only
grok-4.5(and any future/responses-only non-GPT family) hits this bug.Changes
_should_use_copilot_responses_api(hermes_cli/models.py): also returnTrueforgrok*/x-ai/grok*model IDs.copilot_model_api_mode(hermes_cli/models.py): after the GPT-5 pattern check, consult the live catalog'ssupported_endpoints— if/responsesis present and/chat/completionsis absent, returncodex_responses. This is authoritative and future-proof for any non-GPT/responses-only model, not just grok.Verification
grok-4.5->codex_responses;gpt-5.4/gpt-5-mini/claude/geminirouting unchanged.hermes -m grok-4.5 --provider copilot -z "reply with exactly: OK"->OK.Note on tag
The fix commit is tagged
grok-fix-85213on the fork for traceability.