feishu-card

发送飞书互动卡片(Card JSON 2.0)。当需要让飞书用户填写表单、做选择、确认操作、或查看 结构化数据时,发送交互卡片代替纯文字问答。需要 feishu-cards 插件工具: feishu_send_card / feishu_send_form / feishu_update_card。

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "feishu-card" with this command: npx skills add afk101/feishu-card-v2

触发场景

发卡片 而非纯文字的情况:

  • 需要用户做选择(按钮/下拉/人员选择等)
  • 需要用户填写表单(输入框 + 提交按钮)
  • 需要展示结构化数据(表格、图表、多列布局)
  • 需要确认高风险操作(确认/取消双按钮)
  • 需要提供快速操作入口(按钮组)

纯文字:简单回复、解释说明、无需交互时,无需发卡片。


工具说明

工具用途主要参数
feishu_send_card发送卡片消息chat_id / user_idcard(JSON字符串)
feishu_send_form发送含表单容器的卡片同上,card 内须含 form 组件
feishu_update_card更新已发卡片内容token(回调中获取),card(新JSON)

卡片顶层结构

{
  "schema": "2.0",
  "config": { ... },
  "card_link": { "url": "..." },
  "header": { ... },
  "body": { "elements": [ ... ] }
}

config 字段速查

字段默认值说明
streaming_modefalse流式更新模式
enable_forwardtrue是否可转发
update_multitrue共享卡片(JSON 2.0 仅支持 true)
width_modedefault(600px)compact(400px) / fill(撑满)
enable_forward_interactionfalse转发后是否仍可交互
summary.content-自定义聊天栏预览文案

header 字段速查

字段说明枚举/格式
title.tag标题文本类型plain_text / lark_md
title.content主标题内容字符串,最多4行
subtitle.content副标题内容字符串,最多1行
template标题栏颜色blue wathet turquoise green yellow orange red carmine violet purple indigo grey default
icon.tag图标类型standard_icon / custom_icon
icon.token图标库tokenchat_outlined
text_tag_list[].color后缀标签颜色neutral blue turquoise lime orange violet indigo wathet green yellow red purple carmine
padding标题内边距默认 12px

body 字段速查

字段默认值说明
directionverticalvertical / horizontal
padding-12px 12px
horizontal_spacing-small(4px) medium(8px) large(12px) extra_large(16px) 或 Npx
horizontal_alignleftleft / center / right
vertical_spacing-同 horizontal_spacing
vertical_aligntoptop / center / bottom
elements[]组件数组

组件速查

容器组件

column_set(分栏)

tag: column_set,不可内嵌 formtable

{
  "tag": "column_set",
  "flex_mode": "none",
  "horizontal_spacing": "8px",
  "background_style": "default",
  "columns": [
    {
      "tag": "column",
      "width": "weighted",
      "weight": 1,
      "vertical_align": "top",
      "elements": []
    }
  ]
}

关键枚举:

  • flex_mode: none / stretch / flow / bisect / trisect
  • column.width: auto / weighted / Npx([16,600]px)
  • background_style: default 或颜色枚举值

form(表单容器)

tag: form,只可放在卡片根节点,不可嵌套表格/表单

{
  "tag": "form",
  "name": "form_1",
  "elements": [
    { "tag": "input", "name": "reason", "required": true },
    {
      "tag": "button",
      "text": { "tag": "plain_text", "content": "提交" },
      "type": "primary_filled",
      "form_action_type": "submit",
      "name": "btn_submit"
    }
  ]
}
  • 表单内交互组件必须有 name 字段(唯一标识)
  • 按钮 form_action_type: submit(提交)/ reset(重置)

interactive_container(交互容器)

tag: interactive_container,不可内嵌 formtable

{
  "tag": "interactive_container",
  "width": "fill",
  "height": "auto",
  "has_border": true,
  "border_color": "grey",
  "corner_radius": "8px",
  "background_style": "default",
  "behaviors": [{ "type": "callback", "value": { "key": "val" } }],
  "elements": []
}

关键字段:

  • background_style: default / laser / 颜色枚举
  • behaviors.type: callback / open_url

collapsible_panel(折叠面板)

tag: collapsible_panel,不可内嵌 form,仅支持 JSON 代码(不支持搭建工具)

{
  "tag": "collapsible_panel",
  "expanded": false,
  "header": {
    "title": { "tag": "plain_text", "content": "面板标题" },
    "icon": { "tag": "standard_icon", "token": "down-small-ccm_outlined", "size": "16px 16px" },
    "icon_position": "right",
    "icon_expanded_angle": -180
  },
  "border": { "color": "grey", "corner_radius": "5px" },
  "elements": []
}
  • icon_position: left / right / follow_text
  • icon_expanded_angle: -180 / -90 / 90 / 180

内容组件

title(标题组件)

位于 header 字段,非 body elements,每卡只能有一个。见上方 header 速查。

div(普通文本)

tag: div

{
  "tag": "div",
  "text": {
    "tag": "plain_text",
    "content": "文本内容",
    "text_size": "normal",
    "text_color": "default",
    "text_align": "left"
  }
}
  • text.tag: plain_text / lark_md
  • text_size: heading-0(30px) heading-1(24px) heading-2(20px) heading-3(18px) heading-4(16px) heading(16px) normal(14px) notation(12px)
  • text_color: default 或颜色枚举

markdown(富文本)

tag: markdown

{
  "tag": "markdown",
  "content": "**粗体** *斜体* ~~删除线~~\n- 列表\n`code`\n> 引用",
  "text_align": "left",
  "text_size": "normal"
}

支持语法:**粗体***斜体*~~删除线~~[链接](url)<at id=open_id></at><at id=all></at><font color=red>彩色</font><text_tag color='blue'>标签</text_tag># 标题、有序/无序列表、代码块、表格(Markdown表格语法)、<hr>分割线

  • text_size: 同 div 枚举

img(图片)

tag: img,img_key 通过上传图片接口获取

{
  "tag": "img",
  "img_key": "img_v3_xxx",
  "scale_type": "crop_center",
  "size": "200px 150px",
  "corner_radius": "8px",
  "preview": true
}
  • scale_type: crop_center / crop_top / fit_horizontal
  • size: Wpx Hpx 或预设值,通栏用 margin: "0 -12px"

img_combination(多图混排)

tag: img_combination

{
  "tag": "img_combination",
  "combination_mode": "bisect",
  "img_list": [
    { "img_key": "img_v3_aaa" },
    { "img_key": "img_v3_bbb" }
  ]
}
  • combination_mode: double(双图) / triple(三图) / bisect(六宫格) / trisect(九宫格)

person(人员)

tag: person

{
  "tag": "person",
  "user_id": "ou_xxx",
  "size": "medium",
  "show_avatar": true,
  "show_name": true,
  "style": "normal"
}
  • size: extra_small / small / medium / large
  • style: normal / capsule

person_list(人员列表)

tag: person_list

{
  "tag": "person_list",
  "persons": [{ "id": "ou_xxx" }, { "id": "ou_yyy" }],
  "show_avatar": true,
  "show_name": true,
  "size": "medium"
}

chart(图表)

tag: chart,基于 VChart 定义

{
  "tag": "chart",
  "aspect_ratio": "16:9",
  "color_theme": "brand",
  "chart_spec": {
    "type": "bar",
    "data": [{ "id": "data", "values": [{ "x": "A", "y": 10 }] }],
    "xField": "x",
    "yField": "y"
  }
}
  • color_theme: brand / rainbow / complementary / diverging / ordinal

table(表格)

tag: table,只可放在卡片根节点,不支持内嵌其它组件

{
  "tag": "table",
  "page_size": 5,
  "row_height": "low",
  "columns": [
    { "name": "col1", "display_name": "名称", "data_type": "text", "width": "auto" },
    { "name": "col2", "display_name": "数量", "data_type": "number" }
  ],
  "rows": [
    { "col1": "项目A", "col2": 100 }
  ]
}
  • data_type: text / lark_md / number / options / persons / date
  • row_height: low / middle / high / auto
  • number.format: { symbol, precision, separator }

audio(音频)

tag: audio,仅支持 JSON 代码,需 enable_forward: false,仅飞书 V7.49+

{ "tag": "audio", "file_key": "file_v3_xxx", "show_time": true }

hr(分割线)

tag: hr

{ "tag": "hr" }

交互组件

input(输入框)

tag: input

{
  "tag": "input",
  "name": "reason",
  "placeholder": { "tag": "plain_text", "content": "请输入" },
  "required": false,
  "max_length": 200,
  "input_type": "text",
  "width": "fill"
}
  • input_type: text / multiline_text / password / number / telephone / email
  • width: default / fill / [100,∞)px
  • 表单外使用时,需配 behaviors 触发回调

button(按钮)

tag: button

{
  "tag": "button",
  "type": "primary_filled",
  "size": "medium",
  "text": { "tag": "plain_text", "content": "确认" },
  "behaviors": [{ "type": "callback", "value": { "action": "confirm" } }]
}
  • type: default primary danger text primary_text danger_text primary_filled danger_filled laser
  • size: tiny / small / medium / large
  • width: default / fill / Npx
  • behaviors.type: callback / open_url

overflow(折叠按钮组)

tag: overflow

{
  "tag": "overflow",
  "options": [
    { "text": { "tag": "plain_text", "content": "选项1" }, "value": "opt1" },
    { "text": { "tag": "plain_text", "content": "跳转" }, "multi_url": { "url": "https://..." } }
  ]
}

select_static(下拉单选)

tag: select_static

{
  "tag": "select_static",
  "name": "priority",
  "placeholder": { "tag": "plain_text", "content": "请选择" },
  "options": [
    { "text": { "tag": "plain_text", "content": "高" }, "value": "high" },
    { "text": { "tag": "plain_text", "content": "低" }, "value": "low" }
  ],
  "behaviors": [{ "type": "callback", "value": { "k": "v" } }]
}
  • type: default / text(边框样式)

multi_select_static(下拉多选)

tag: multi_select_static必须form 容器内

{
  "tag": "multi_select_static",
  "name": "tags",
  "placeholder": { "tag": "plain_text", "content": "请选择" },
  "options": [
    { "text": { "tag": "plain_text", "content": "标签A" }, "value": "a" }
  ]
}

select_person(人员单选)

tag: select_person

{
  "tag": "select_person",
  "name": "assignee",
  "placeholder": { "tag": "plain_text", "content": "选择负责人" },
  "options": [{ "value": "ou_xxx" }],
  "behaviors": [{ "type": "callback", "value": {} }]
}

multi_select_person(人员多选)

tag: multi_select_person必须form 容器内

{
  "tag": "multi_select_person",
  "name": "reviewers",
  "placeholder": { "tag": "plain_text", "content": "选择审核人" },
  "options": [{ "value": "ou_xxx" }, { "value": "ou_yyy" }]
}

date_picker(日期选择器)

tag: date_picker

{
  "tag": "date_picker",
  "name": "due_date",
  "initial_date": "2025-01-01",
  "placeholder": { "tag": "plain_text", "content": "请选择日期" }
}

picker_time(时间选择器)

tag: picker_time

{
  "tag": "picker_time",
  "name": "meeting_time",
  "initial_time": "09:00",
  "placeholder": { "tag": "plain_text", "content": "请选择时间" }
}

picker_datetime(日期时间选择器)

tag: picker_datetime

{
  "tag": "picker_datetime",
  "name": "event_datetime",
  "initial_datetime": "2025-01-01 09:00",
  "placeholder": { "tag": "plain_text", "content": "请选择" }
}

select_img(多图选择)

tag: select_img,仅支持 JSON 代码;不在 form 内时仅单选点击即提交

{
  "tag": "select_img", "name": "choice", "multi_select": false,
  "layout": "bisect", "aspect_ratio": "16:9",
  "options": [{ "img_key": "img_v3_aaa", "value": "pic1" }],
  "behaviors": [{ "type": "callback", "value": {} }]
}
  • layout: bisect / trisect / compact

checker(勾选器)

tag: checker,仅支持 JSON 代码

{
  "tag": "checker", "name": "task_done", "checked": false,
  "text": { "tag": "plain_text", "content": "任务已完成" },
  "behaviors": [{ "type": "callback", "value": { "task_id": "123" } }]
}

常用模板

1. 确认操作(双按钮)

{
  "schema": "2.0",
  "header": { "title": { "tag": "plain_text", "content": "确认操作" }, "template": "orange" },
  "body": {
    "elements": [
      { "tag": "markdown", "content": "确定要执行此操作吗?此操作**不可撤销**。" },
      {
        "tag": "column_set", "horizontal_spacing": "8px",
        "columns": [
          { "tag": "column", "width": "auto", "elements": [{
            "tag": "button", "type": "primary_filled",
            "text": { "tag": "plain_text", "content": "确认" },
            "behaviors": [{ "type": "callback", "value": { "action": "confirm" } }]
          }]},
          { "tag": "column", "width": "auto", "elements": [{
            "tag": "button", "type": "default",
            "text": { "tag": "plain_text", "content": "取消" },
            "behaviors": [{ "type": "callback", "value": { "action": "cancel" } }]
          }]}
        ]
      }
    ]
  }
}

2. 快捷选择(按钮组)

{
  "schema": "2.0",
  "header": { "title": { "tag": "plain_text", "content": "请选择优先级" }, "template": "blue" },
  "body": {
    "elements": [
      { "tag": "markdown", "content": "请为该任务设置优先级:" },
      {
        "tag": "column_set", "horizontal_spacing": "8px",
        "columns": [
          { "tag": "column", "width": "auto", "elements": [{
            "tag": "button", "type": "danger_filled",
            "text": { "tag": "plain_text", "content": "🔴 紧急" },
            "behaviors": [{ "type": "callback", "value": { "priority": "urgent" } }]
          }]},
          { "tag": "column", "width": "auto", "elements": [{
            "tag": "button", "type": "primary",
            "text": { "tag": "plain_text", "content": "🟡 普通" },
            "behaviors": [{ "type": "callback", "value": { "priority": "normal" } }]
          }]},
          { "tag": "column", "width": "auto", "elements": [{
            "tag": "button", "type": "default",
            "text": { "tag": "plain_text", "content": "🟢 低" },
            "behaviors": [{ "type": "callback", "value": { "priority": "low" } }]
          }]}
        ]
      }
    ]
  }
}

3. 数据展示(table + 操作按钮)

{
  "schema": "2.0",
  "header": { "title": { "tag": "plain_text", "content": "待处理工单" }, "template": "blue" },
  "body": {
    "elements": [
      {
        "tag": "table", "page_size": 5, "row_height": "low",
        "columns": [
          { "name": "id", "display_name": "工单号", "data_type": "text", "width": "80px" },
          { "name": "title", "display_name": "标题", "data_type": "text" },
          { "name": "status", "display_name": "状态", "data_type": "options" },
          { "name": "assignee", "display_name": "负责人", "data_type": "persons" }
        ],
        "rows": [
          { "id": "T001", "title": "登录异常", "status": [{ "name": "处理中", "color": "orange" }], "assignee": [{ "id": "ou_xxx" }] }
        ]
      },
      { "tag": "hr" },
      {
        "tag": "column_set", "horizontal_align": "right",
        "columns": [{ "tag": "column", "width": "auto", "elements": [{
          "tag": "button", "type": "primary_filled",
          "text": { "tag": "plain_text", "content": "查看全部" },
          "behaviors": [{ "type": "open_url", "default_url": "https://your-app.com/tickets" }]
        }]}]
      }
    ]
  }
}

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

XunFei Voice Reply

语音回复技能 - 使用讯飞 TTS 生成语音并发送到飞书。当需要用语音回复用户消息时使用。触发词:用语音、语音回复、切换语音模式、语音模式。

Registry SourceRecently Updated
3150Profile unavailable
General

Feishu Task Manager

Manage Feishu tasks by creating, listing, completing, commenting, and organizing to-dos with assignees, due dates, and checklists.

Registry SourceRecently Updated
840Profile unavailable
General

飞书会议室智能预订

飞书会议室查询与预订。当用户提到"查会议室"、"订会议室"、"空闲会议室"、"预订会议室"、"开会"、"找个会议室"、"F4会议室"、"紫金会议室"、"哪个会议室有空"、或者创建会议时需要自动匹配空闲会议室时,必须使用此 skill。也适用于用户要求创建日程并指定楼栋/区域时自动完成会议室预订的场景。也适用于用户...

Registry SourceRecently Updated
1150Profile unavailable
General

Feishu Relay

Unified Feishu notification system with automatic discovery, message queue, and reliable delivery. Use when user needs to send notifications via Feishu (Lark...

Registry SourceRecently Updated
2320Profile unavailable