Kimi Widget 是一个用于生成对话内联小组件的设计系统技能。小组件是直接渲染在对话中的紧凑可视化或交互界面,包括图表、仪表盘、计算器、滑块、对比表、时间线、状态机和小型模拟等。
用途 当答案具有空间、顺序、系统、对比、数值或交互结构,且将这些结构可视化比纯文字更有利于用户理解、比较、检查或操作时,应使用小组件。用户无需明确说出“展示”“可视化”“图表”或“小组件”;只要结构中存在可视化需求,就应主动生成。若用户给出紧凑的可视化规格而未使用动词,例如“REST vs GraphQL 表格”“结账状态机”“定价计算器”,也应渲染为小组件,而不是仅用文字描述。
不适用场景 普通文字回答、常规逐行代码解释、文件列表、画廊或最终交付物、阻塞式输入流程、破坏性或原生操作,以及大型长期应用,都不应使用小组件。
主要能力与运行时约定 小组件运行在已加载 Kimi 设计系统 CSS 的沙箱 iframe 中,所有 CSS 变量、表单元素样式和 SVG 类均可在运行时引用,但不应重新定义。允许使用 HTML、SVG、CSS、内联 JavaScript 和浏览器原生 API;不允许外部脚本、模块、样式表、图片、字体、CDN 库、npm 包、fetch 或 WebSocket。图表和示意图可使用 SVG、Canvas、CSS 或普通 DOM 实现。
使用方式 文字说明、介绍和总结放在回复正文中,可视化内容放在小组件内。小组件渲染完成后,不应重复叙述或总结其内容,只补充小组件无法表达的信息。交互小组件可在宿主注入 window.sendPrompt(text) 时调用,将用户下一步意图推入对话;text 应写成真实用户会输入的消息,而不是机械确认。样式必须使用 var(--xxx) 引用颜色、字体和圆角,不得硬编码,否则会破坏深色模式并与宿主界面不一致。
设计参考要求 除非用户已针对该小组件给出非常明确、精确的样式指令,否则在编写小组件代码前必须阅读 references/design-system.md,其中包含完整的 Kimi Perspective Widget 视觉规则、排版、组件模式、运行时令牌映射和应用检查清单。不得因为小组件简单、静态或小就跳过。若小组件使用图标,还需阅读 references/icon-system.md;该技能附带 105 个 Kimi 图标,位于 assets/icons/,并在 references/icons/manifest.json 中建立索引,应从中选择并内联 SVG,而不是自行绘制或使用 emoji。