Overview
Message fragments represent conversation messages (user or assistant) with support for hidden system reminders. They integrate with the Vercel AI SDK’sUIMessage format.
Message Types
user()
User messages with optional system reminders
assistant()
Assistant response messages
assistantText()
Convenience builder for text-only assistant messages
reminder()
Hidden instructions attached to user messages
user()
Create a user message fragment with optional system reminders.Basic Usage
Using UIMessage
assistant()
Create an assistant message fragment.Usage
assistantText()
Convenience builder for text-only assistant messages.Usage
reminder()
Build reminder payloads for user messages.Reminder Modes
- Inline (Default)
- As Part
- Dynamic Reminders
Reminders are injected as tagged text within the message:
Inline reminders use
<system-reminder> tags and are tracked with offset metadata.Reminder Metadata
Reminders are tracked with metadata for precise location information:Accessing Reminder Metadata
Stripping Reminders
Remove reminder content from messages for display or storage:Reminder Utility Functions
getReminderRanges()
getReminderRanges()
Extract reminder ranges from message metadata:
stripTextByRanges()
stripTextByRanges()
Remove text at specified ranges:
stripReminders()
stripReminders()
Remove all reminders from a message:
- Inline reminders are removed from text parts
- Part reminders are removed as whole parts
metadata.remindersis removed
Message Fragment Type
Message fragments have a specific type signature:Type Guards
Use Cases
- System Instructions
- Safety Guardrails
- Context Injection
- Tool Output Handling
Add hidden instructions to guide AI behavior:
Best Practices
Use Inline for Short Reminders
Use Inline for Short Reminders
Default inline mode works well for brief instructions:
Use asPart for Structured Content
Use asPart for Structured Content
Use part mode for longer, structured reminders:
Dynamic Reminders for Context
Dynamic Reminders for Context
Use function reminders to adapt to content:
Strip Before Display
Strip Before Display
Always strip reminders before showing messages to users:
Integration with Context
Messages can be used alongside other fragments:Next Steps
Stream Persistence
Learn about durable stream storage
Domain Knowledge
Add business logic and domain knowledge
User Context
Capture user-specific context
API Reference
Complete API documentation