e30e75b5d4
Changesets / Create Version PR (push) Waiting to run
Code Quality / Oxlint + Oxfmt (push) Waiting to run
Code Quality / Template Sync (push) Waiting to run
Code Quality / Build Changed Packages (push) Waiting to run
Code Quality / Test Changed Packages (push) Waiting to run
Deploy Expo Example / Deploy Production (push) Waiting to run
Deploy Ink Example / Deploy Production (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.12) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.12) (push) Waiting to run
Deploy Shadcn Registry / Deploy Production (push) Waiting to run
Template Metrics / LOC + Bundle Size (push) Waiting to run
@assistant-ui/core
The framework-agnostic core of assistant-ui. Defines the shared types, runtime interfaces, adapter contracts, and React bindings that the distribution packages re-export.
Most users do not install @assistant-ui/core directly. Reach for the distribution that matches your target:
| Distribution | Use this for |
|---|---|
@assistant-ui/react |
Web applications. |
@assistant-ui/react-native |
React Native apps. |
@assistant-ui/react-ink |
Terminal/Ink apps. |
core is published so that integration libraries (for example @assistant-ui/react-ag-ui) can depend on the runtime types without pulling in DOM or native primitives.
Installation
npm install @assistant-ui/core
Usage
import { tool, ModelContextRegistry } from "@assistant-ui/core";
import { z } from "zod";
const registry = new ModelContextRegistry();
registry.addTool({
toolName: "getWeather",
...tool({
parameters: z.object({ city: z.string() }),
execute: async ({ city }) => fetchWeather(city),
}),
});
Sub-paths
@assistant-ui/core exposes ., ./react, ./store, and ./internal sub-paths. The ./react sub-path holds the React hooks and providers consumed by @assistant-ui/react and @assistant-ui/react-native.
Full reference for message types, runtime interfaces, and adapter contracts at assistant-ui.com/docs/architecture.