Theming
CSS variables + optional preset themes. One source of truth across every framework binding.
AgentsKit ships headless components β theming is your call. The CSS preset
at @agentskit/react/theme is for DOM bindings that consume the shared
data-ak-* attributes; it is not a universal runtime theme provider.
Vue, Svelte, and Solid expose framework-specific styling inputs rather than
equivalent theme packages; React Native uses component styles.
#Import a preset
import '@agentskit/react/theme'#CSS variables
:root {
--ak-bg: #0b0f17;
--ak-surface: #111827;
--ak-border: #1f2937;
--ak-text: #e5e7eb;
--ak-muted: #9ca3af;
--ak-accent: #6366f1;
--ak-danger: #ef4444;
--ak-radius: 12px;
--ak-font: ui-sans-serif, system-ui, sans-serif;
--ak-mono: ui-monospace, SFMono-Regular, monospace;
}#Dark / light
Variables flip on [data-theme="light"] / [data-theme="dark"].
#Tailwind
Wire Tailwind to the CSS variables:
theme: {
extend: {
colors: {
ak: {
bg: 'var(--ak-bg)',
accent: 'var(--ak-accent)',
},
},
},
}#Native + terminal
- React Native: use the
styleandcontentStyleprops exposed by its components; noThemeProvideris exported. - Ink: use
InkThemeProviderand its ANSI palette; it is not a CSS variable provider.
#Related
Explore nearby
- PeerUI + hooks
Every AgentsKit UI binding shares the core state and action contract; host component APIs remain framework-specific.
- PeeruseChat
The shared chat state and action contract adapted by each framework binding.
- PeerChatContainer
Headless scrollable transcript container. Auto-scroll on new messages, virtualized-ready.