Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
liangdabiao avatar

Lark Workflow Announce

  • 7 installs
  • 60 repo stars
  • Updated April 13, 2026
  • liangdabiao/lark-workflow-feishu-cli

Helps with automation & workflows tasks.

About

lark-workflow-announce is a Claude Code skill for automation & workflows. It helps solo builders move faster with AI-assisted development.

  • lark-workflow-announce
  • Automation & Workflows
  • AI-coding skill

Lark Workflow Announce by the numbers

  • 7 all-time installs (skills.sh)
  • Ranked #1,587 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/liangdabiao/lark-workflow-feishu-cli --skill lark-workflow-announce

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs7
repo stars60
Last updatedApril 13, 2026
Repositoryliangdabiao/lark-workflow-feishu-cli

What it does

Helps with automation & workflows tasks.

Files

SKILL.mdMarkdownGitHub ↗

群公告管理器工作流

CRITICAL — 开始前 MUST 先用 Read 工具读取 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md),其中包含认证、权限处理

适用场景

  • "更新XX群的公告为..." / "设置群公告"
  • "在群公告末尾追加一条通知" / "追加公告"
  • "看看XX群现在的公告是什么" / "群公告"
  • "发布一条群公告,@所有人" / "发布公告"
  • "把项目里程碑更新到群公告" / "更新公告"

前置条件

仅支持 user 身份。执行前确保已授权:

lark-cli auth login --domain im

工作流

{chat_id + 操作类型(查看/设置/追加)+ 公告内容}
  │
  ├── im +chat-search ──────────────► 查找群聊(获取 chat_id)
  │
  ├── [查看] lark-cli api GET ──────► 读取当前群公告
  │
  ├── [追加] 先读取再合并 ─────────► 保留旧公告 + 追加新内容
  │
  ├── [设置] lark-cli api PATCH ────► 设置新公告(注意 revision)
  │
  └── [可选] im +messages-send ────► @全体成员通知公告更新

---

Step 1: 查找群聊

如果用户提供了群名称,先获取 chat_id:

lark-cli im +chat-search --query "<群名称>" --as user

从返回结果中提取 chat_idoc_xxx 格式)。

Step 2: 查看当前群公告

群公告 API 未被 lark-cli 直接封装,使用 lark-cli api 调用:

# 读取当前群公告
MSYS_NO_PATHCONV=1 lark-cli api GET "/open-apis/im/v1/chats/<chat_id>/announcement" \
  --as user

返回结果包含:

  • content — 当前公告 HTML 内容
  • revision — 版本号(设置公告时必须传递,用于乐观并发控制)

如果返回 code: 0data 为空,说明当前没有群公告。

Step 3: 设置群公告

覆盖模式

用新内容完全替换旧公告:

MSYS_NO_PATHCONV=1 lark-cli api PATCH "/open-apis/im/v1/chats/<chat_id>/announcement" \
  --data '{
    "revision": "<current_revision>",
    "requests": ["<HTML 公告内容>"]
  }' \
  --as user

追加模式

先读取当前公告,在末尾追加新内容:

MSYS_NO_PATHCONV=1 lark-cli api PATCH "/open-apis/im/v1/chats/<chat_id>/announcement" \
  --data '{
    "revision": "<current_revision>",
    "requests": ["<旧公告内容><br><br>---<br><br><新追加内容>"]
  }' \
  --as user
重要
- revision 字段必须传递当前的版本号,否则会返回错误
- 公告内容格式为 HTML(不是 Markdown),支持 <br>, <b>, <a href="">, <font color=""> 等标签
- requests 是一个字符串数组,每个元素是一段 HTML 内容
- 设置前必须先读取获取最新 revision

Markdown 转 HTML 参考

AI 需要将用户提供的 Markdown 内容转换为 HTML:

MarkdownHTML
**加粗**<b>加粗</b>
# 标题<font size="5"><b>标题</b></font>
- 列表项列表项<br>
[链接](url)<a href="url">链接</a>

Step 4: 通知群成员(可选)

lark-cli im +messages-send \
  --chat-id "<chat_id>" \
  --text '<at user_id="all"></at> 群公告已更新,请查看群公告。' \
  --as bot

降级策略

场景降级方案
群公告 API 失败用普通消息发送公告内容到群里
revision 冲突重新读取获取最新 revision,再设置
无群公告权限提示用户需要群管理员权限
群聊找不到提示用户确认群名称或提供 chat_id
@所有人受限改为发送普通消息通知

权限表

命令所需 scope
im +chat-searchim:chat:readonly
im/v1/chats/:id/announcement (GET)im:chat:readonly
im/v1/chats/:id/announcement (PATCH)im:chat
im +messages-sendim:message

参考

  • `../lark-im/SKILL.md` — IM 原子操作
  • `../lark-openapi-explorer/SKILL.md` — 原生 API 调用模式

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.