用途:该技能用于在项目中构建或重构基于 TanStack AI 的聊天能力,包括聊天状态、流式响应、工具调用与工具审批、持久化消息与 UIMessage 的互转,以及消息分片渲染。适用于需要把工作区动作接入 TanStack AI 工具、或排查流式响应、重载、停止行为的场景。
主要能力与包边界:服务端活动函数位于 @tanstack/ai,包含 chat、生成辅助、流转换、模型消息转换和服务端工具定义;客户端生命周期位于 @tanstack/ai-client,包含聊天客户端状态、流处理、工具审批管道和客户端工具结果;Svelte runes 集成位于 @tanstack/ai-svelte,包含 createChat、fetchServerSentEvents 及响应式状态。提供商适配器需从具体包导入以便 tree shaking,如 @tanstack/ai-openai 或 @tanstack/ai-anthropic。
用法要点:服务端推荐 toServerSentEventsResponse,客户端推荐 fetchServerSentEvents 处理聊天流。AG-UI 流分片与 MessagePart 变体应视为带判别标识的流协议,逐个显式渲染已知分片并保留未知回退以兼容未来。在常规聊天客户端之外回放、调试或转换流分片时使用 StreamProcessor。审批流程使用 approval id,不要假设它与工具调用 id 相同;客户端工具产生结果后,应通过 TanStack AI 客户端路径继续聊天,而不是手工追加伪造的助手回复。在持有 chat 实例的 Svelte 组件中,若流可能仍在进行,卸载时应调用 chat.stop() 或释放持有者。诊断流、适配器或工具行为时可使用 aiEventClient 可观测事件。
限制:资料未提供收费、价格、平台支持范围或具体安装命令。对行为细节存疑时,建议先用 DeepWiki 针对 TanStack/ai 提出窄问题定位,再以本地已安装类型、源码或官方文档核实;仓库内已有的聊天持久化与 UI 模式无需使用 DeepWiki。