Configuration 

The extension supports two AI providers — Azure OpenAI and OpenAI (ChatGPT) — and can be configured either centrally by an administrator or per-user in developer mode.

Extension configuration 

Open Admin Tools > Settings > Extension Configuration > ok_ai_writer to set the following options:

devMode

devMode
type

boolean

Default

false

When enabled, editors can override API credentials in their browser (localStorage). When disabled, only the server-side credentials configured below are used.

mode

mode
type

select

Default

azure

The AI provider to use.

azure
Azure OpenAI — uses the api-key header for authentication.
openai
OpenAI (ChatGPT) — uses Authorization: Bearer header and sends the model parameter in the request body.

apiUrl

apiUrl
type

string

Default

(empty)

The API endpoint URL.

Azure example:

https://<resource>.openai.azure.com/openai/deployments/<model>/chat/completions?api-version=2024-02-01
Copied!

OpenAI example:

https://api.openai.com/v1/chat/completions
Copied!

apiKey

apiKey
type

string

Default

(empty)

The API key for the selected provider. This value is displayed blinded (masked) to editors in the CKEditor dialog — they can see that credentials are configured but cannot read the actual value.

model

model
type

string

Default

gpt-4o

The model to use in OpenAI mode (e.g. gpt-4o, gpt-4, gpt-3.5-turbo). This setting is ignored in Azure mode, where the model is part of the endpoint URL.

Developer mode 

When devMode is enabled:

  • Editors see a full settings panel in the AI dialog with editable fields for mode, endpoint URL, API key, and model.
  • Client-entered credentials are saved in localStorage and override the server-side configuration.
  • Server-configured values are shown as blinded hints below each field (e.g. http****************2001).
  • If no client credentials are entered, the server-side config is used as fallback.

Step 1: Register the CKEditor plugins 

The extension ships an RTE preset at EXT:ok_ai_writer/Configuration/RTE/Default.yaml that registers all three CKEditor 4 external plugins and adds an ai toolbar group. You can either use it directly or import it into your own preset.

Option B: Use the bundled RTE preset 

The extension registers an RTE preset called ok_ai_writer. To use it directly, add to your Page TSconfig:

RTE.default.preset = ok_ai_writer
Copied!

Toolbar button names 

Button name Description
AiText AI Text Generator (sparkle icon)
AiTranslate AI Translate (globe icon)
LoremIpsum Lorem Ipsum placeholder text (text icon)

Step 2: Set up your AI provider 

Azure OpenAI 

  1. Create an Azure OpenAI resource in the Azure Portal.
  2. Deploy a model (e.g. gpt-4, gpt-4o, gpt-35-turbo).
  3. Copy the Endpoint and Key from the resource's "Keys and Endpoint" page.
  4. In the extension configuration, set:

    • mode = azure
    • apiUrl = https://<resource>.openai.azure.com/openai/deployments/<model>/chat/completions?api-version=2024-02-01
    • apiKey = your Azure API key

OpenAI (ChatGPT) 

  1. Create an account at platform.openai.com and generate an API key.
  2. In the extension configuration, set:

    • mode = openai
    • apiUrl = https://api.openai.com/v1/chat/completions
    • apiKey = your sk-... API key
    • model = gpt-4o (or another available model)