Description
When a user selects the Grok provider in T3 and sends a message, the session start fails with Error: Invalid params at decodeJsonError. The actual error from Grok's ACP is unknown model id.
Steps to reproduce
- Install Grok Build CLI:
curl -fsSL https://x.ai/cli/install.sh | bash
- Add Grok to T3's
~/.t3/userdata/settings.json:
{
"providerInstances": {
"grok": {
"driver": "grok",
"enabled": true,
"config": {
"enabled": true,
"binaryPath": "grok",
"customModels": []
}
}
}
}
- Open T3 chat, set provider to Grok, send a message
Expected behavior
Grok responds with chat output.
Actual behavior
T3 shows Error: Invalid params at decodeJsonError (file:///.../apps/server/dist/bin.mjs:90812:59).
Root cause
T3's MODEL_SLUG_ALIASES_BY_PROVIDER map (line 988 of apps/server/dist/bin.mjs) has no entry for [GROK_DRIVER_KIND]. The driver falls back to the hardcoded "grok-build" slug, but Grok's ACP only accepts grok-4.6 and grok-4.5.
Verified via direct ACP probe against grok agent stdio:
modelId sent |
Grok response |
"grok-build" |
❌ error: unknown model id |
"grok-4.6" |
✅ Success |
"grok-4.5" |
✅ Success |
"grok-4", "grok-3", "grok-2" |
❌ unknown model id |
"grok-build-plan" |
❌ unknown model id (this is the agentType in metadata, not a modelId) |
Suggested fix
Add an alias entry to MODEL_SLUG_ALIASES_BY_PROVIDER:
[GROK_DRIVER_KIND]: {
"grok-build": "grok-4.6" // or "grok-4.5" — both are valid
}
Workaround (for users)
Add customModels: ["grok-4.6"] to the Grok provider config in settings.json. Then pick "grok-4.6" in the SPA model picker. The default "Grok Build" option still fails.
Environment
- T3 macOS app v0.0.33
- Grok Build CLI v1.0.5
- macOS 26.6.2
- Server URL:
http://127.0.0.1:3773
Description
When a user selects the Grok provider in T3 and sends a message, the session start fails with
Error: Invalid params at decodeJsonError. The actual error from Grok's ACP isunknown model id.Steps to reproduce
curl -fsSL https://x.ai/cli/install.sh | bash~/.t3/userdata/settings.json:{ "providerInstances": { "grok": { "driver": "grok", "enabled": true, "config": { "enabled": true, "binaryPath": "grok", "customModels": [] } } } }Expected behavior
Grok responds with chat output.
Actual behavior
T3 shows
Error: Invalid params at decodeJsonError (file:///.../apps/server/dist/bin.mjs:90812:59).Root cause
T3's
MODEL_SLUG_ALIASES_BY_PROVIDERmap (line 988 ofapps/server/dist/bin.mjs) has no entry for[GROK_DRIVER_KIND]. The driver falls back to the hardcoded"grok-build"slug, but Grok's ACP only acceptsgrok-4.6andgrok-4.5.Verified via direct ACP probe against
grok agent stdio:modelIdsent"grok-build"error: unknown model id"grok-4.6""grok-4.5""grok-4","grok-3","grok-2"unknown model id"grok-build-plan"unknown model id(this is the agentType in metadata, not a modelId)Suggested fix
Add an alias entry to
MODEL_SLUG_ALIASES_BY_PROVIDER:Workaround (for users)
Add
customModels: ["grok-4.6"]to the Grok provider config insettings.json. Then pick "grok-4.6" in the SPA model picker. The default "Grok Build" option still fails.Environment
http://127.0.0.1:3773