What problem does it solve? Building interactive AI chat interfaces requires coordinating widget templates, action handlers, entity tagging, and backend event streaming, and small mistakes like using action.arguments instead of action.payload cause runtime errors that are hard to diagnose. ## Core Features & Use Cases - Widget Action Handling: Implement client-side onAction callbacks for navigation and local state, plus server-side action() methods that replace widgets, stream assistant messages, and emit client effects. - Entity Tagging and Composer Tools: Add @mention entity search with onTagSearch and mode-switching composer tools routed to different backend agents. - Error Prevention Guidance: Documents common pitfalls such as missing UserMessageItem fields, wrong content types, and RequestContext wrapping mistakes. - Use Case: You are building a support chat where the agent shows a list of articles as clickable widgets; this Skill shows how to render the ListView, handle item selection on the server, and update the widget state. ## Quick Start Ask the AI to build an interactive chat widget with clickable buttons and a server-handled selection action using the ChatKit patterns in this Skill.