ChatKit is fully configurable through a single options object. Depending on your integration method, you can apply these settings using the useChatKit hook in React or the chatkit.setOptions method when using the Web Component.
Key configuration areas include:
- Theme: Appearance settings like
colorScheme, radius, and color. - Header & History: Layout management via
header and browsing controls via history. - Start Screen: User greetings and suggested
prompts. - Composer: Input configuration including
placeholder. - Thread Item Actions: Controls for
feedback and retry behavior.
You can experiment with these settings in the ChatKit Playground to generate a ready-to-use configuration object.
import { useChatKit } from '@openai/chatkit-react';
const { control } = useChatKit({
theme: {
colorScheme: 'dark',
radius: 'round',
color: {
accent: { primary: '#8B5CF6', level: 2 },
},
},
header: {
enabled: true,
rightAction: {
icon: 'light-mode',
onClick: () => console.log('Toggle theme'),
},
},
history: {
enabled: true,
showDelete: true,
showRename: true,
},
startScreen: {
greeting: 'How can we help?',
prompts: [
{
label: 'Troubleshoot an issue',
prompt: 'Help me fix an issue',
icon: 'lifesaver',
},
{
label: 'Request a feature',
prompt: 'I have an idea',
icon: 'lightbulb',
},
],
},
composer: {
placeholder: 'Ask the assistant…',
},
threadItemActions: {
feedback: true,
retry: true,
},
});