@ai-chat-ui/core
v0.0.3
Published
Core runtime for AI Chat UI
Maintainers
Readme
@ai-chat-ui/core
Core runtime for AI Chat UI built on top of the AG-UI protocol.
Installation
npm install @ai-chat-ui/core
# or
pnpm add @ai-chat-ui/core
# or
yarn add @ai-chat-ui/coreOverview
This package provides:
- Type Re-exports: All core types and events from
@ag-ui/core - UI Utilities: Helper functions for working with messages and events
- Type Safety: Full TypeScript support with inferred types
Usage
Type Imports
import type {
// Messages
Message,
UserMessage,
AssistantMessage,
// Events
Event,
EventType,
TextMessageStartEvent,
ToolCallStartEvent,
// Core types
RunAgentInput,
Tool,
Context,
} from "@ai-chat-ui/core";Utility Functions
import {
isUserMessage,
isAssistantMessage,
getMessageContent,
filterMessagesByRole,
createMessageId,
createThreadId,
isTextMessageEvent,
isToolCallEvent,
} from '@ai-chat-ui/core';
// Check message types
const messages: Message[] = [...];
const userMessages = messages.filter(isUserMessage);
// Get message content
const content = getMessageContent(message);
// Filter by role
const assistantMessages = filterMessagesByRole(messages, 'assistant');
// Create IDs
const messageId = createMessageId();
const threadId = createThreadId();
// Check event types
if (isTextMessageEvent(event)) {
// Handle text message events
}API Reference
Message Utilities
isUserMessage(message)- Check if message is from userisAssistantMessage(message)- Check if message is from assistantisToolMessage(message)- Check if message is from a toolisSystemMessage(message)- Check if message is a system messagegetMessageContent(message)- Extract text content from messagefilterMessagesByRole(messages, role)- Filter messages by rolegetLastMessage(messages)- Get the last messagegetLastUserMessage(messages)- Get the last user message
Event Utilities
isTextMessageEvent(event)- Check if event is a text message eventisToolCallEvent(event)- Check if event is a tool call eventisLifecycleEvent(event)- Check if event is a lifecycle event
ID Generators
createMessageId()- Generate unique message IDcreateToolCallId()- Generate unique tool call IDcreateThreadId()- Generate unique thread IDcreateRunId()- Generate unique run ID
Type Exports
All types from @ag-ui/core are re-exported for convenience:
- Message types:
Message,UserMessage,AssistantMessage,ToolMessage,SystemMessage,DeveloperMessage - Event types:
Event,EventType, and all specific event types - Core types:
RunAgentInput,Tool,Context,State,ToolCall,FunctionCall
License
MIT
