{"skill":{"slug":"feishu-im","displayName":"feishu-im","summary":"飞书消息与群管理 Skill。发送消息、建群、置顶、加急、撤回、群菜单/Tab/公告等 25+ 项 IM 能力。当需要通过飞书发送消息、管理群聊、操作群成员或配置群功能时使用此 Skill。","description":"---\nname: feishu-im\ndescription: 飞书消息与群管理 Skill。发送消息、建群、置顶、加急、撤回、群菜单/Tab/公告等 25+ 项 IM 能力。当需要通过飞书发送消息、管理群聊、操作群成员或配置群功能时使用此 Skill。\nrequired_permissions:\n  - im:message\n  - im:message:recall\n  - im:message.pins:write_only\n  - im:message.reactions:write_only\n  - im:message.urgent\n  - im:message.group_msg\n  - im:message:send_sys_msg\n  - im:chat:create\n  - im:chat.members:read\n  - im:chat.members:write_only\n  - im:chat.announcement:read\n  - im:chat.announcement:write_only\n  - im:chat.top_notice:write_only\n  - im:chat.menu_tree:write_only\n  - im:chat.tabs:write_only\n  - im:chat.widgets:write_only\n  - im:chat.collab_plugins:write_only\n  - im:chat.access_event.bot_p2p_chat:read\n  - im:url_preview.update\n  - im:app_feed_card:write\n  - im:tag:write\n  - im:datasync.feed_card.time_sensitive:write\n---\n\n# 飞书消息与群管理\n\n你是飞书 IM 自动化专家，负责通过 API 实现消息发送、群聊管理和群功能配置。\n\n---\n\n## 一、API 基础信息\n\n| 项目 | 值 |\n|------|---|\n| Base URL | `https://open.feishu.cn/open-apis/im/v1` |\n| 认证方式 | `Authorization: Bearer {tenant_access_token}` |\n| Content-Type | `application/json` |\n\n---\n\n## 二、消息操作\n\n### 1. 发送文本消息\n\n```\nPOST /open-apis/im/v1/messages?receive_id_type=open_id\n```\n\n```json\n{\n  \"receive_id\": \"ou_xxx\",\n  \"msg_type\": \"text\",\n  \"content\": \"{\\\"text\\\":\\\"Hello\\\"}\"\n}\n```\n\n**实测心法**：`content` 必须是字符串化的 JSON，不能直接传对象。\n\n**receive_id_type 可选值**：`open_id` / `user_id` / `union_id` / `email` / `chat_id`\n\n### 2. 发送交互卡片\n\n```\nPOST /open-apis/im/v1/messages?receive_id_type=open_id\n```\n\n```json\n{\n  \"receive_id\": \"<open_id>\",\n  \"msg_type\": \"interactive\",\n  \"content\": \"<card_json_string>\"\n}\n```\n\n**实测心法**：\n1. `content` 必须是字符串化的 JSON（JSON string），不能是原始 JSON 对象。\n2. 内部嵌套的双引号需进行转义（如 `{\\\"config\\\":...}`）。\n3. 如果发送失败，请检查 API 调用参数或直接调用 API。\n\n**卡片结构**：\n\n```json\n{\n  \"config\": { \"wide_screen_mode\": true },\n  \"header\": {\n    \"title\": { \"tag\": \"plain_text\", \"content\": \"卡片标题\" },\n    \"template\": \"blue\"\n  },\n  \"elements\": [\n    { \"tag\": \"div\", \"text\": { \"tag\": \"lark_md\", \"content\": \"**加粗** 和 `代码` 支持\" } },\n    { \"tag\": \"hr\" },\n    { \"tag\": \"action\", \"actions\": [\n      { \"tag\": \"button\", \"text\": { \"tag\": \"plain_text\", \"content\": \"确认\" }, \"type\": \"primary\", \"value\": { \"action\": \"confirm\" } }\n    ]}\n  ]\n}\n```\n\n**Header 颜色模板**：\n\n| template | 颜色 | 适用场景 |\n|----------|------|---------|\n| `blue` | 蓝色 | 日常通知、信息 |\n| `green` | 绿色 | 成功、完成 |\n| `red` | 红色 | 告警、失败 |\n| `orange` | 橙色 | 警告、降级 |\n| `purple` | 紫色 | 特殊、创意 |\n| `turquoise` | 青色 | 技术结果 |\n| `grey` | 灰色 | 低优先级 |\n\n**lark_md 语法**：`**加粗**`、`*斜体*`、`~~删除线~~`、`[链接](url)`、`<at id=ou_xxx>名字</at>`\n\n### 3. 消息置顶\n\n```\nPOST /open-apis/im/v1/pins\n```\n\n```json\n{ \"message_id\": \"om_xxx\" }\n```\n\n**实测心法**：必须使用 `/pins` 集合端点，不能使用 `messages/:id/pin` 路径。\n\n### 4. 消息回应（Reaction）\n\n```\nPOST /open-apis/im/v1/messages/:message_id/reactions\n```\n\n```json\n{ \"reaction_type\": { \"emoji_type\": \"OK\" } }\n```\n\n**实测心法**：emoji_type 必须使用大写标准 ID（如 `OK`、`THUMBSUP`、`HEART`）。\n\n### 5. 撤回消息\n\n```\nDELETE /open-apis/im/v1/messages/:message_id\n```\n\n**实测心法**：仅能撤回机器人自己在有效期内发送的消息。\n\n### 6. 消息加急\n\n```\nPATCH /open-apis/im/v1/messages/:message_id/urgent_app\n```\n\n```json\n{ \"user_id_list\": [\"ou_xxx\"] }\n```\n\n**实测心法**：消耗加急额度，请谨慎调用，仅用于 P0 级事件。\n\n### 7. 设置置顶公告\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/top_notice\n```\n\n```json\n{ \"action_type\": \"message\", \"message_id\": \"om_xxx\" }\n```\n\n**实测心法**：置顶条目有限，建议仅置顶核心卡片。\n\n### 8. 批量发送群消息\n\n```\nPOST /open-apis/im/v1/messages/batch_send\n```\n\n**实测心法**：注意限频策略，单次建议控制在 200 个群。\n\n### 9. 发送系统消息\n\n```\nPOST /open-apis/im/v1/messages/send_sys\n```\n\n**实测心法**：视觉干扰度低，适合非业务强提醒（如入群须知）。\n\n---\n\n## 三、群聊管理\n\n### 10. 创建群聊\n\n```\nPOST /open-apis/im/v1/chats\n```\n\n```json\n{ \"name\": \"群名称\", \"user_ids\": [\"ou_xxx\"] }\n```\n\n**实测心法 (重要)**：\n1. 建群后机器人自动成为群成员。\n2. **可见性保障**：虽然建群时可以传 `user_ids`，但由于飞书缓存或权限延迟，建议紧接着调用 **12. 拉人入群** API 显式将用户再次加入，以确保群聊在用户端立即弹出。\n\n### 11. 获取群成员列表\n\n```\nGET /open-apis/im/v1/chats/:chat_id/members\n```\n\n**实测心法**：分页拉取大群成员时注意 Token 翻页。\n\n### 12. 拉人入群\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/members?member_id_type=open_id\n```\n\n```json\n{ \"id_list\": [\"ou_xxx\"] }\n```\n\n**实测心法**：被拉取人必须在机器人可见范围内。这是确保群聊对用户可见的最稳健方式。\n\n### 13. 更新群公告\n\n```\nPATCH /open-apis/im/v1/chats/:chat_id/announcement\n```\n\n```json\n{ \"content\": \"最新进度...\" }\n```\n\n**实测心法**：内容支持富文本格式。\n\n### 14. 获取群公告\n\n```\nGET /open-apis/im/v1/chats/:chat_id/announcement\n```\n\n**实测心法**：解析内容后可结合 LLM 生成执行周报。\n\n---\n\n## 四、群功能增强\n\n### 15. 管理群菜单\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/menu_tree\n```\n\n**实测心法**：在群聊右上角添加自定义菜单（如\"项目概览\"、\"一键周报\"），极大增强群聊的功能入口属性。\n\n### 16. 管理群选项卡（Tab）\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/tabs\n```\n\n**实测心法**：群内集成多维表格看板、Wiki SOP 为独立 Tab，让群聊变身为\"项目工作台\"。\n\n### 17. 管理群组件（Widget）\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/widgets\n```\n\n**实测心法**：在群聊右侧挂载动态汇率表、实时监控大屏，将群聊 UI 能力扩展到极限。\n\n### 18. 管理群内协同插件\n\n```\nPOST /open-apis/im/v1/chats/:chat_id/collab_plugins\n```\n\n**实测心法**：在对话框上方常驻\"项目文档\"入口，减少翻找时间。\n\n---\n\n## 五、高级功能\n\n### 19. 更新 URL 预览\n\n```\nPOST /open-apis/im/v1/url_preview\n```\n\n**实测心法**：机器人发送的项目链接，自动附带最新的进度摘要，增强信息传达的视觉丰富度。\n\n### 20. 管理应用快捷卡片（Feed Card）\n\n```\nPOST /open-apis/im/v1/feed_cards\n```\n\n**实测心法**：在飞书左侧导航栏推送即时状态，比消息更轻量，适合展示\"当前正在运行\"的任务。\n\n### 21. 管理标签\n\n```\nPOST /open-apis/im/v1/tags\n```\n\n**实测心法**：为群聊或成员打上业务标签（如\"核心项目\"、\"高优先级\"），便于后续分类筛选。\n\n### 22. 数据同步 Feed 流\n\n权限：`im:datasync.feed_card.time_sensitive:write`\n\n**实测心法**：将外部 CRM 或代码仓库动态实时推送到飞书 Feed，对时间敏感型信息（如紧急 Bug）效果极佳。\n\n### 23. 设置机器人 P2P 权限\n\n权限：`im:chat.access_event.bot_p2p_chat:read`\n\n**实测心法**：确保机器人能主动给特定用户发送私聊，用户需在机器人可见范围内。\n\n---\n\n## 六、错误处理\n\n| 错误码 | 含义 | 解决方案 |\n|--------|------|---------|\n| 0 | 成功 | — |\n| 230001 | 无发送权限 | 检查机器人是否在群内或用户可见范围 |\n| 230002 | 消息不存在 | 检查 message_id 是否正确 |\n| 230014 | 频率限制 | 等待后重试，注意限频策略 |\n| 99991663 | token 过期 | 重新获取 tenant_access_token |\n\n---\n\n## 七、最佳实践\n\n1. **卡片优先**：结构化信息用交互卡片，不要用纯文本\n2. **加急慎用**：消耗额度，仅用于 P0 级事件\n3. **批量限频**：批量发送控制在 200 个群/次\n4. **置顶精简**：置顶条目有限，只放核心信息\n5. **群功能组合**：菜单 + Tab + Widget 组合使用，把群聊变成工作台\n","tags":{"latest":"1.0.0"},"stats":{"comments":0,"downloads":1304,"installsAllTime":49,"installsCurrent":11,"stars":0,"versions":1},"createdAt":1770938949904,"updatedAt":1778488088696},"latestVersion":{"version":"1.0.0","createdAt":1770938949904,"changelog":"Initial release of feishu-im Skill.\n\n- Provides 25+ Feishu IM and group management capabilities, including message sending, group creation, PIN/retract/urgent actions, menu/Tab/announcement management, and more.\n- Comprehensive API references and best practices for all key IM and group operations.\n- Details required permissions for all supported features.\n- Includes practical implementation notes and error code explanations.\n- Supports advanced functions such as feed cards, group widgets, and real-time data sync.","license":null},"metadata":null,"owner":{"handle":"sunnyyao2222-eng","userId":"s173g2hgwh33sbm0v6k9p2p3kh884wer","displayName":"sunnyyao2222-eng","image":"https://avatars.githubusercontent.com/u/255113599?v=4"},"moderation":null}