核心用法
Feishu Card Skill 是一款面向飞书(Lark)生态的自动化消息推送工具,通过调用飞书开放平台的「交互式卡片」接口,实现富媒体内容的程序化发送。其核心功能包括:
1. 三种发送模式:
- 简单文本模式:直接通过
--text参数发送纯文本,适用于无特殊字符的场景; - 文件引用模式(推荐):先将 Markdown 内容写入临时文件,通过
--text-file读取,规避 Shell 转义问题,特别适合代码块、日志、表格等复杂格式; - 安全封装模式:
send_safe.js自动处理临时文件创建与清理,简化调用流程。
2. Persona 角色化 messaging:内置 d-guide(警告红)、green-tea(软萌粉)、mad-dog(灰调错误风)等预设风格,自动匹配配色、前缀文案与语气后缀,适用于告警、运营、技术监控等不同场景。
3. 富媒体支持:彩色标题栏(6 色可选)、Markdown 语法(代码高亮、表格)、本地图片上传嵌入、底部交互按钮(跳转链接)。
显著优点
- 格式完整性保障:强制文件中转机制彻底解决 Shell 对反引号、星号等特殊字符的吞噬问题,确保代码块、日志原样呈现;
- 低代码集成:命令行即调即用,无需编写 HTTP 请求或处理 OAuth 令牌(由 feishu-common 托管);
- 视觉分层清晰:卡片化布局优于普通文本消息,信息结构更易读;
- Persona 扩展性:角色模板可快速复制修改,适配团队内部运营规范。
潜在缺点与局限性
- 依赖前置条件:必须预先安装并配置
feishu-common,且该模块需有效 tenant_access_token,单点故障风险存在; - 平台锁定:仅兼容飞书/ Lark 生态,无法迁移至企业微信、Slack、钉钉等其他 IM;
- 本地文件约束:
--image-path要求图片必须存在于本地文件系统,不支持 URL 直链或 Base64 嵌入; - 交互能力有限:按钮仅支持单一跳转 URL,不支持回调事件、表单填写等高级交互;
- 无历史记录:工具本身不存储发送日志,失败重试或审计追溯需依赖外部系统。
适合人群
- 运维/ SRE 工程师:用于告警通知、CI/CD 流水线状态推送;
- 后端开发者:代码审查结果、自动化测试报告的可视化分发;
- 运营人员:定时数据日报、活动提醒的模板化发送。
常规风险
- Token 泄露:feishu-common 存储的 tenant_access_token 若权限过高,一旦泄露可导致企业数据被批量读取;
- Shell 注入:
--text参数若直接拼接用户输入,存在命令注入风险(尽管官方推荐文件模式已规避大部分场景); - 频率限制:飞书开放平台对单应用存在 QPS 与单日消息上限,高频推送需做削峰与兜底队列。