ChatKit combines three layers to deliver conversational AI experiences on Apple platforms:
- NeuronKit orchestration – manages sessions, capability manifests, and tool execution policies.
- ConvoUI presentation – renders chat timelines, interactive cards, and system status in SwiftUI/UIKit.
- ChatKit adapter layer – glues application code to NeuronKit and ConvoUI, handling persistence, analytics hooks, and theming defaults.
┌───────────────────────────────────────┐
│ Application Layer │
│ (Your app, custom tools/UI modules) │
└───────────────────────────────────────┘
│
▼
┌───────────────────────────────────────┐
│ ChatKit Adapter │
│ - Runtime configuration │
│ - Session lifecycle helpers │
│ - Theme + policy defaults │
└───────────────────────────────────────┘
│
▼
┌─────────────┬────────────┬───────────┐
│ NeuronKit │ ConvoUI │ Convstore│
│ Orchestration│ Rendering│ Storage │
└─────────────┴────────────┴───────────┘
│
▼
┌───────────────────────────────────────┐
│ AI providers / tool APIs │
└───────────────────────────────────────┘
- Session: ties messages, participants, and policies together.
- Capability manifest: declarative tool list enforced by NeuronKit.
- Message store: Convstore provides snapshots and delta updates.
- Adapter hooks: interception points for analytics and custom UX reactions.
- App starts a session through the adapter.
- NeuronKit evaluates incoming events against the manifest.
- Convstore persists state, notifies the adapter, and feeds ConvoUI components.
- ConvoUI renders the timeline, quick replies, status banners, and media.
- Tool invocations and AI responses loop back into NeuronKit for continued orchestration.
- See
docs/architecture/runtime-lifecycle.mdfor lifecycle diagrams. - Visit
docs/how-to/customize-ui.mdto theme ChatKit for your brand. - Review
docs/reference/(coming soon) for API-level detail.