Grok¶
Grok AI content generation via xAI Chat Completions API. Installing and configuring this extension registers Grok as a selectable AI provider platform-wide: admin content generation and prompt templates, AI-assisted SEO meta generation, the cart's AI order-list parser (text input), and J'AI Chat replies all resolve their provider from the same registry. Grok is text-only — it does not implement vision input.
At a glance
| Extension id | grok |
| Category | ai |
| Version | 0.1.0 |
| Provides | AI completion strategy (grok), text only |
| External account | xAI account with API key |
What It Provides¶
- AI completion strategy — an
AICompletionStrategyimplementation registered under the namegrok, callinghttps://api.x.ai/v1/chat/completionswith Bearer authentication. - Connection testing — a
build_test_strategyhook consumed by thetestAiProviderConnectionGraphQL mutation, so the admin can verify a key without persisting it. - Hot reload — a
hot_reload(config)hook: saving new config in the admin re-registers the strategy immediately, without an API restart. - Settings deep link — the manifest points the Extensions list's Configure action at
/settings/ai(AI Providers).
Once registered, the provider appears in the aiProviders GraphQL query (with a live health check) and is eligible for generateAiContent, SEO meta generation, text-mode cartAiParseToLookupItems, and J'AI Chat — see Building Extensions for the strategy registry.
Setup¶
- Enable the extension for a channel under Settings > Extensions.
- Provide credentials — the install hint reads: "Set XAI_API_KEY env var or configure via the extension settings." The config-form
api_keytakes precedence; theXAI_API_KEYenvironment variable is the fallback when no key is saved. - Optionally choose a Model and Max Tokens default in the config form.
- Save. The strategy hot-reloads from the decrypted config immediately.
- Verify on the AI Providers page (Settings > AI) — the connection test makes a minimal one-token call against the configured model.
Configuration Reference¶
| Key | Type | Required | Secret | Description |
|---|---|---|---|---|
api_key |
password | Yes | Yes | xAI API key. Falls back to the XAI_API_KEY env var when unset. |
model |
select | No | No | Default grok-3. Options: Grok 3 (Recommended), Grok 3 Mini (Fast), Grok 3 Fast, Grok 2. |
max_tokens |
number | No | No | Default 1024. Default max-tokens budget for completions. |
password-type fields are Fernet-encrypted at rest and masked (***) when read back through the admin API.
Permissions¶
The manifest declares no permissions.
Operational Notes¶
- Text only —
supports_visionisFalseand image input (generate_with_image) is not implemented, so Grok is skipped by image-bearing flows: the cart's photo-of-an-order-list parser and SEO image alt-text generation both restrict selection to vision-capable providers (ChatGPT, Claude). - No key, no provider — if neither the config
api_keynorXAI_API_KEYis set, the strategy is not registered at all (a warning is logged); Grok then does not appear inaiProvidersand is skipped by auto provider selection. Saving a key later registers it without a restart. - Health check is a real call —
health_checkposts a one-token "ping" completion to the configured model with a 10-second timeout, so a failing check can mean a bad key or an invalid model name. - Timeouts — 60 s for text generation, 10 s for health checks.
- Masked-key test fallback — if the admin posts the masked
***value to the connection test, core falls back to the stored, decrypted key for that provider. - Multi-channel config — the strategy is registered once per process; at boot the extension loads the first enabled channel row whose config contains an
api_key.