用途:指导开发者使用 Slack 的 Block Kit 框架构建富交互界面,适用于消息通知、机器人回复、频道帖子、表单、确认流程与多步骤工作流,以及应用仪表盘和用户专属内容。
主要能力:Block Kit 采用 JSON 结构,由三类组件组成——Blocks(布局容器,如 Section、Actions、Input、Header)、Elements(交互组件,如按钮、选择菜单、日期选择器)和 Composition Objects(文本、选项、确认对话框)。同一套结构可用于三种 Surface:Messages(最多 50 个块)、Modals(最多 100 个块)、Home tabs(最多 100 个块)。
文档列出的块类型包括 Header、Section、Actions、Input、Context、Divider、Image、Markdown(仅消息)、Rich Text、Video;交互元素包括 Button、静态/外部/用户/频道/会话选择菜单及其多选变体、日期选择器、时间选择器、日期时间选择器、复选框、单选按钮、纯文本输入、数字输入、URL 输入、邮箱输入、富文本输入、文件输入(仅模态框)、溢出菜单;组合对象包括 Text、确认对话框、Option、Option Group。
使用方式:可直接手写 JSON,例如用 blocks 数组构造消息;也可使用 slack-block-builder(JavaScript),通过 import { Message, Blocks, Elements } from 'slack-block-builder' 引入,并用 Message({ channel, text }).blocks(...).buildToObject() 构建对象。文档给出了 Header、Section(含 fields 双列布局)、Actions、Input、Context、Image、Video 等块的字段说明与示例,以及 Modal 的 type、callback_id、title、submit、close、blocks 结构。
限制:资料中各块的字符数、数量上限(如 Section text 3000 字符、fields 最多 10 个、Actions elements 最多 25 个、Button text 最多 75 字符、静态选择 options 最多 100 个等)为文档所列规格;Markdown 块仅在 Messages 中可用,文件输入仅限模态框使用;资料中未提供收费、价格、平台支持与效果保证等信息。