feishu-cli-toolkit by riba2534/feishu-cli
npx skills add https://github.com/riba2534/feishu-cli --skill feishu-cli-toolkit覆盖 feishu-cli 的 13 个功能模块,提供命令速查和核心用法。复杂模块的详细参考文档在 references/ 目录中。
feishu-cli :如尚未安装,请前往 riba2534/feishu-cli 获取安装方式。
---|---|---|---
1 | 电子表格 | sheet create/get/read/write/append + V3 富文本 | references/sheet-commands.md
2 | 日历日程 | calendar list/get/primary/create-event/event-search/freebusy | references/calendar-commands.md
3 | 任务管理 | task create/complete/delete + subtask/member/reminder + tasklist |
4 | 群聊创建 | (App Token,群信息/成员/消息互动请用 ) |
5 | 画板操作 | + |
6 | PlantUML | 飞书画板安全子集语法 |
7 | 文件管理 | | —
8 | 素材管理 | | —
9 | 评论管理 | + | —
10 | 知识库 | + | —
11 | 搜索 | 请使用 (文档/应用)或 (消息/群聊) |
12 | 用户和部门 | + | —
13 | 附件下载 | + 批量下载文档附件 | —
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
references/task-commands.mdchat create/linkreferences/chat-commands.mdboard image/import/nodesdoc add-boardreferences/board-commands.mdreferences/plantuml-safe-subset.mdfile list/mkdir/move/copy/delete/download/upload/version/meta/statsmedia upload/downloadcomment list/add/delete/resolve/unresolvecomment replywiki get/export/spaces/nodes/space-getwiki memberreferences/search-commands.mduser info/search/listdept get/childrendoc exportmedia download支持 V2(简单二维数组)和 V3(富文本三维数组)两套 API。
# 创建表格
feishu-cli sheet create --title "新表格"
# 获取表格信息
feishu-cli sheet get <token>
# 列出工作表
feishu-cli sheet list-sheets <token>
# V2 读写(二维数组)
feishu-cli sheet read <token> "Sheet1!A1:C10"
feishu-cli sheet write <token> "Sheet1!A1:B2" --data '[["姓名","年龄"],["张三",25]]'
feishu-cli sheet append <token> "Sheet1!A:B" --data '[["新行1","新行2"]]'
# V3 富文本读写(三维数组)
feishu-cli sheet read-plain <token> <sheet_id> "Sheet1!A1:C10"
feishu-cli sheet read-rich <token> <sheet_id> "Sheet1!A1:C10"
feishu-cli sheet write-rich <token> <sheet_id> --data-file data.json
# 行列操作
feishu-cli sheet add-rows <token> <sheet_id> --count 5
feishu-cli sheet add-cols <token> <sheet_id> --count 3
feishu-cli sheet delete-rows <token> <sheet_id> --start 2 --end 5
feishu-cli sheet delete-cols <token> <sheet_id> --start 1 --end 3
# 样式和格式
feishu-cli sheet merge <token> "Sheet1!A1:B2"
feishu-cli sheet unmerge <token> "Sheet1!A1:B2"
feishu-cli sheet style <token> "Sheet1!A1:C3" --bold --bg-color "#FF0000"
# 查找替换(--range 必填,范围不要超出实际数据区域)
feishu-cli sheet find <token> <sheet_id> "关键词" --range "A1:C10"
feishu-cli sheet replace <token> <sheet_id> "查找词" "替换词" --range "A1:C10"
SheetID!A1:C10,支持整列 A:C 和整行 1:3详细参考 :阅读 references/sheet-commands.md 获取 V3 富文本格式、工作表管理、单元格图片等完整说明。
权限要求 :sheets:spreadsheet
管理飞书日历、日程、参与人和忙闲查询。时间格式统一使用 RFC3339(如 2024-01-01T10:00:00+08:00)。
# 日历
feishu-cli calendar list # 列出日历
feishu-cli calendar get <calendar_id> # 获取日历详情
feishu-cli calendar primary # 获取主日历
# 日程 CRUD
feishu-cli calendar create-event \
--calendar-id <id> \
--summary "团队周会" \
--start "2024-01-21T14:00:00+08:00" \
--end "2024-01-21T15:00:00+08:00" \
--description "讨论本周进展"
feishu-cli calendar list-events <calendar_id> --start-time <RFC3339> --end-time <RFC3339>
feishu-cli calendar get-event <calendar_id> <event_id>
feishu-cli calendar update-event <calendar_id> <event_id> --summary "新标题"
feishu-cli calendar delete-event <calendar_id> <event_id>
# 搜索日程
feishu-cli calendar event-search --calendar-id <id> --query "周会"
# 回复日程邀请
feishu-cli calendar event-reply <calendar_id> <event_id> --status accept # accept/decline/tentative
# 参与人管理
feishu-cli calendar attendee add <calendar_id> <event_id> --user-ids id1,id2
feishu-cli calendar attendee list <calendar_id> <event_id>
# 忙闲查询
feishu-cli calendar freebusy \
--start "2024-01-01T00:00:00+08:00" \
--end "2024-01-02T00:00:00+08:00" \
--user-id <user_id>
详细参考 :阅读 references/calendar-commands.md 获取完整参数说明。
权限要求 :calendar:calendar:readonly(读取),calendar:calendar(写操作,需单独申请)
管理飞书任务(V2 API),包括子任务、成员、提醒和任务清单。任务 ID 为 UUID 格式。
# 任务 CRUD
feishu-cli task create --summary "完成代码审查" --description "详细描述" --due "2024-02-01"
feishu-cli task list [--completed | --uncompleted]
feishu-cli task get <task_id>
feishu-cli task update <task_id> --summary "新标题"
feishu-cli task complete <task_id>
feishu-cli task delete <task_id>
# 子任务
feishu-cli task subtask create <task_guid> --summary "子任务标题"
feishu-cli task subtask list <task_guid>
# 成员管理
feishu-cli task member add <task_guid> --members id1,id2 --role assignee # assignee/follower
feishu-cli task member remove <task_guid> --members id1,id2 --role assignee
# 提醒
feishu-cli task reminder add <task_guid> --minutes 30 # 提前 30 分钟提醒,0=截止时
feishu-cli task reminder remove <task_guid> --ids id1,id2
# 任务清单
feishu-cli tasklist create --name "Sprint 计划"
feishu-cli tasklist list
feishu-cli tasklist get <tasklist_guid>
feishu-cli tasklist delete <tasklist_guid>
详细参考 :阅读 references/task-commands.md 获取完整参数说明。
权限要求 :task:task:read、task:task:write、task:tasklist:read、task:tasklist:write(需单独申请)
推荐使用 feishu-cli-chat 技能 ,提供完整的群聊浏览、消息历史、成员管理等功能,且默认使用 User Token。
以下仅列出 App Token 专属命令(feishu-cli-chat 不覆盖的):
# 创建群聊(仅 App Token)
feishu-cli chat create --name "项目群" --user-ids id1,id2 [--chat-type private|public]
# 获取群分享链接(仅 App Token)
feishu-cli chat link <chat_id> [--validity-period week|year|permanently]
详细参考 :阅读 references/chat-commands.md 获取完整参数和示例。
下载画板图片、导入 Mermaid/PlantUML 图表到画板。
# 下载画板为 PNG 图片
feishu-cli board image <whiteboard_id> output.png
# 导入图表到画板
feishu-cli board import <whiteboard_id> diagram.puml # PlantUML 文件
feishu-cli board import <whiteboard_id> diagram.mmd --syntax mermaid # Mermaid 文件
feishu-cli board import <whiteboard_id> --source-type content -c "graph TD; A-->B" --syntax mermaid # 内容直接导入
# 获取画板节点列表
feishu-cli board nodes <whiteboard_id>
# 在文档中添加空白画板
feishu-cli doc add-board <document_id> [--parent-id <block_id> --index 0]
| 参数 | 说明 |
|---|---|
--syntax | plantuml(默认)或 mermaid |
--diagram-type | 0=auto, 1=mindmap, 2=sequence, 3=activity, 4=class, 5=er, 6=flowchart, 7=state, 8=component |
--style | board(默认)或 classic |
--source-type | file(默认)或 content |
-c, --content | 当 source-type=content 时的图表内容 |
flowchart、sequenceDiagram、classDiagram、stateDiagram-v2、erDiagram、gantt、pie、mindmap
详细参考 :阅读 references/board-commands.md 获取完整说明。
权限要求 :board:board(画板操作)、docx:document(文档画板)
生成适配飞书画板的 PlantUML 图表。默认推荐 Mermaid (飞书原生支持更好),仅在 Mermaid 不支持的图类型(用例图、组件图、复杂活动图)时才用 PlantUML。
@startuml/@enduml 包裹(思维导图用 @startmindmap/@endmindmap)skinparam、!define、颜色/字体/对齐控制、方向控制指令+ - # ~),用 field : type 或 method() 格式活动图/流程图、时序图、类图、用例图、组件图、ER 图、思维导图
代码块,通过feishu-cli doc import` 导入board import 命令导入到画板详细参考 :阅读 references/plantuml-safe-subset.md 获取每种图类型的安全语法规范。
定义 :管理飞书云空间(Drive)中的文件和文件夹,包括文档、表格、本地文件等的 CRUD、版本管理、元数据和统计。
适用场景 :
与素材/附件的区别 :
| 维度 | 云空间文件 | 素材(media) | 文档附件 |
|---|---|---|---|
| 存储位置 | 云空间(Drive) | 临时素材库 | 文档内嵌 |
| 管理方式 | 独立文件管理 | 依附于文档/消息 | 依附于文档 |
| 下载命令 | file download | media download | doc export + media download |
| 权限 | drive:drive | drive:drive | docx:document + drive:file:download |
# 列出文件
feishu-cli file list [folder_token]
# 创建文件夹
feishu-cli file mkdir "文件夹名" [--parent <folder_token>]
# 移动/复制/删除
feishu-cli file move <file_token> --target <folder_token> --type <docx|sheet|file|...>
feishu-cli file copy <file_token> --target <folder_token> --type <type> [--name "新名"]
feishu-cli file delete <file_token> --type <type> # 移到回收站,30 天可恢复
# 下载/上传(≤20MB 单步上传,>20MB 自动分片上传)
feishu-cli file download <file_token> -o output.pdf
feishu-cli file upload local_file.pdf --parent <FOLDER_TOKEN> [--name "自定义名"]
# 版本管理
feishu-cli file version list <file_token> [--obj-type docx]
feishu-cli file version create <file_token> --name "v1.0" [--obj-type docx]
feishu-cli file version get <file_token> <version_id>
feishu-cli file version delete <file_token> <version_id>
# 元数据和统计
feishu-cli file meta TOKEN1 TOKEN2 --doc-type docx # 批量获取元数据
feishu-cli file stats <file_token> --doc-type docx # 获取统计信息
docx、doc、sheet、bitable、mindnote、folder、file
权限要求 :drive:drive:readonly(读取)、drive:drive(写操作)
定义 :管理飞书素材系统中的临时文件,包括上传到文档/消息的图片和附件,以及下载已上传的素材。
适用场景 :
与云空间文件/文档附件的区别 :
| 维度 | 素材(Media) | 云空间文件(File) | 文档附件 |
|---|---|---|---|
| 用途 | 文档/消息插入 | 独立文件存储 | 文档内嵌附件 |
| 生命周期 | 依附于父资源 | 独立管理 | 随文档存在 |
| Token 来源 | 上传返回 / 文档解析 | 云空间列表 | 导出文档解析 |
| 典型命令 | media upload/download | file list/download | doc export + media download |
# 上传素材(用于文档中的图片/附件)
feishu-cli media upload image.png \
--parent-type docx_image \
--parent-node <doc_id>
# 下载素材
feishu-cli media download <file_token> -o output.png
| 值 | 说明 |
|---|---|
docx_image | 新版文档图片(默认) |
docx_file | 新版文档附件 |
doc_image | 旧版文档图片 |
doc_file | 旧版文档附件 |
sheet_image | 电子表格图片 |
comment_image | 评论图片 |
权限要求 :drive:drive:readonly(下载)、drive:drive(上传)
管理飞书云文档的评论,包括全文评论、评论解决/取消解决、回复管理。
# 列出评论
feishu-cli comment list <file_token> --type docx
# 添加全文评论
feishu-cli comment add <file_token> --type docx --text "评论内容"
# 删除评论(不可逆)
feishu-cli comment delete <file_token> <comment_id> --type docx
# 解决/取消解决评论
feishu-cli comment resolve <file_token> <comment_id> --type docx
feishu-cli comment unresolve <file_token> <comment_id> --type docx
# 回复管理
feishu-cli comment reply list <file_token> <comment_id> --type docx
feishu-cli comment reply delete <file_token> <comment_id> <reply_id> --type docx
--type 参数支持:docx、doc、sheet、bitable
权限要求 :drive:drive.comment:readonly(读取)、drive:drive.comment:write(写入)
查看知识空间、获取知识库节点、导出知识库文档、管理空间成员。
# 获取节点信息(支持 URL 或 token)
feishu-cli wiki get <node_token>
# 导出为 Markdown
feishu-cli wiki export <node_token> -o doc.md [--download-images --assets-dir ./assets]
# 列出知识空间
feishu-cli wiki spaces [--page-size 20]
# 列出空间下的节点
feishu-cli wiki nodes <space_id> [--parent <node_token>]
# 获取空间详情
feishu-cli wiki space-get <space_id>
# 空间成员管理
feishu-cli wiki member add <space_id> --member-type userid --member-id <USER_ID> --role admin
feishu-cli wiki member list <space_id>
feishu-cli wiki member remove <space_id> --member-type userid --member-id <USER_ID> --role admin
node_token(区别于普通文档的 document_id)[Wiki 目录...],需用 wiki nodes 获取子节点admin(管理员)、member(成员)openchat、userid、email、opendepartmentid、openid权限要求 :wiki:wiki:readonly(读取)、wiki:wiki(空间成员管理)
推荐使用专项技能 :
- 搜索消息/群内搜索 → feishu-cli-chat (含群聊浏览,auth login 后自动使用 User Token)
- 搜索文档/应用/跨模块搜索 → feishu-cli-search (含完整的 Token 前置检查和排错流程)
搜索参数详细参考 :阅读 references/search-commands.md 获取完整筛选参数说明。
查询用户信息、通过邮箱/手机号查找用户、列出部门成员和子部门。
# 获取用户信息
feishu-cli user info <user_id> [--user-id-type open_id|union_id|user_id]
# 通过邮箱/手机号查询用户 ID
feishu-cli user search --email user@example.com
feishu-cli user search --mobile 13800138000
feishu-cli user search --email "a@example.com,b@example.com" # 批量查询
# 列出部门下的用户
feishu-cli user list --department-id <dept_id> [--user-id-type open_id]
# 获取部门详情
feishu-cli dept get <department_id> [--department-id-type open_department_id]
# 获取子部门列表(根部门使用 "0")
feishu-cli dept children <department_id> [--department-id-type open_department_id]
权限要求 :contact:user.base:readonly(用户信息)、contact:department.base:readonly(部门查询)
定义 :从飞书文档(Docx)或知识库(Wiki)页面中批量提取并下载内嵌的附件文件。
适用场景 :
与云空间文件/素材的区别 :
| 维度 | 文档附件 | 云空间文件(File) | 素材(Media) |
|---|---|---|---|
| 存储方式 | 文档内嵌(File Block) | 云空间独立文件 | 临时素材库 |
| 获取方式 | 先导出文档解析链接 | 直接通过 file_token 下载 | 通过 token 下载 |
| 批量能力 | 支持批量下载文档内所有附件 | 单文件操作 | 单文件操作 |
| 依赖权限 | docx:document + drive:file:download | drive:drive | drive:drive |
工作流程 :
[filename](feishu://file/token) 链接 → 3. 批量下载附件doc export 或 wiki export 将文档转为 Markdown[filename](feishu://file/token) 格式的附件链接media download 下载每个附件file (1).pdf)| 格式 | 示例 |
|---|---|
| 文档 URL | https://xxx.feishu.cn/docx/T1McdFgZcoEtHQxfadicXwwCn6e |
| 知识库 URL | https://xxx.feishu.cn/wiki/AbCdEfGhIjKlMnOp |
| 纯文档 ID | T1McdFgZcoEtHQxfadicXwwCn6e |
| docx ID | docxT1McdFgZcoEtHQxfadicXwwCn6e |
| wiki Token | wikiAbCdEfGhIjKlMnOp |
# 步骤 1: 导出文档
feishu-cli doc export <document_id> -o /tmp/doc.md
# 步骤 2: 解析附件链接(用 tab 分隔文件名和 token,避免文件名含空格时出错)
grep -oE '\[[^]]+\]\(feishu://file/[^)]+\)' /tmp/doc.md | \
sed $'s/^\\[//;s/\\](feishu:\\/\\/file\\//\t/;s/)$//' > /tmp/attachments.txt
# 步骤 3: 创建输出目录
mkdir -p ./attachments_<doc_id>
# 步骤 4: 批量下载
while IFS=$'\t' read -r filename token; do
feishu-cli media download "$token" -o "./attachments_<doc_id>/$filename"
done < /tmp/attachments.txt
#!/bin/bash
INPUT="$1" # 文档 ID/URL
OUTPUT_DIR="${2:-./attachments_$(echo "$INPUT" | tr '/' '_')}"
# 提取文档 ID 或 Wiki Token
DOC_ID=""
WIKI_TOKEN=""
if echo "$INPUT" | grep -qE 'wiki/[A-Za-z0-9]+'; then
WIKI_TOKEN=$(echo "$INPUT" | grep -oP 'wiki/\K[A-Za-z0-9]+' 2>/dev/null)
elif echo "$INPUT" | grep -qE '^wiki[A-Z]'; then
WIKI_TOKEN=$(echo "$INPUT" | grep -oE '^wiki[A-Z][A-Za-z0-9]+')
elif echo "$INPUT" | grep -qE 'docx/[A-Za-z0-9]+'; then
DOC_ID=$(echo "$INPUT" | grep -oP 'docx/\K[A-Za-z0-9]+' 2>/dev/null)
elif echo "$INPUT" | grep -qE 'docx[A-Z]'; then
DOC_ID=$(echo "$INPUT" | grep -oE 'docx[A-Z][A-Za-z0-9]+' | head -1)
elif echo "$INPUT" | grep -qE '^[A-Z][A-Za-z0-9]+$'; then
DOC_ID="$INPUT"
fi
if [ -z "$DOC_ID" ] && [ -z "$WIKI_TOKEN" ]; then
echo "无法识别的文档标识符"
exit 1
fi
# 导出并下载
if [ -n "$WIKI_TOKEN" ]; then
TMP_MD="/tmp/wiki_${WIKI_TOKEN}.md"
feishu-cli wiki export "$WIKI_TOKEN" -o "$TMP_MD"
else
TMP_MD="/tmp/doc_${DOC_ID}.md"
feishu-cli doc export "$DOC_ID" -o "$TMP_MD"
fi
mkdir -p "$OUTPUT_DIR"
grep -oE '\[[^]]+\]\(feishu://file/[^)]+\)' "$TMP_MD" 2>/dev/null | \
sed $'s/^\\[//;s/\\](feishu:\\/\\/file\\//\t/;s/)$//' | \
while IFS=$'\t' read -r filename token; do
[ -z "$filename" ] && continue
# 处理文件名冲突
output_file="$OUTPUT_DIR/$filename"
counter=1
while [ -e "$output_file" ]; do
ext="${filename##*.}"
name="${filename%.*}"
if [ "$name" = "$filename" ]; then
output_file="$OUTPUT_DIR/${filename} (${counter})"
else
output_file="$OUTPUT_DIR/${name} (${counter}).${ext}"
fi
((counter++))
done
feishu-cli media download "$token" -o "$output_file"
done
rm -f "$TMP_MD"
/tmp 创建临时 Markdown 文件权限要求 :
docx:document(导出文档内容)drive:file:download(下载文件附件,必需)drive:drive / drive:drive:readonly(云空间权限)根据你的需求选择合适的下载方式:
| 如果你需要... | 使用模块 | 命令示例 |
|---|---|---|
| 下载云空间中的文件(PDF、Word 等) | 7. 文件管理 | file download <token> -o output.pdf |
| 上传/下载文档图片或附件 | 8. 素材管理 | media download <token> -o file.zip |
| 批量下载文档中的所有附件 | 13. 文档附件下载 | 导出文档 → 解析 → media download |
云空间文件(File) :
file list 获取,用 file download 下载素材(Media) :
media upload 上传,返回 file_tokenmedia download 下载文档附件(Attachment) :
doc export 导出文档解析链接media download 下载| 模块 | 权限 |
|---|---|
| 电子表格 | sheets:spreadsheet |
| 日历 | calendar:calendar:readonly、calendar:calendar |
| 任务 | task:task:read、task:task:write、task:tasklist:read、task:tasklist:write |
| 群聊 | im:chat、im:chat:read、im:chat:member |
| 画板 | board:board |
| 文件 | drive:drive、drive:drive:readonly |
| 素材 | drive:drive、drive:drive:readonly |
| 评论 | drive:drive.comment:readonly、drive:drive.comment:write |
| 知识库 | wiki:wiki:readonly、wiki:wiki |
| 搜索 | 需要 User Access Token |
| 用户/部门 | contact:user.base:readonly、contact:department.base:readonly |
| 附件下载 | docx:document、drive:file:download(或 drive:drive) |
| 错误 | 原因 | 解决 |
|---|---|---|
rate limit exceeded / 429 | API 频率限制 | 等待几秒后重试 |
no permission | 应用权限不足 | 检查应用权限配置 |
invalid parameter | 参数格式错误 | 检查参数类型和格式 |
not found | 资源不存在 | 检查 ID/Token 是否正确 |
| 模块 | 问题 | 说明 |
|---|---|---|
| 文件 | file version create BUG | JSON 反序列化错误(status 字段类型不匹配),无法创建版本 |
| 文档 | doc import-file 需要 --folder | 不提供 --folder 时报 field validation failed(API 的 mount point 实际必填) |
| 表格 | sheet find/replace 需要 --range | 不提供 --range 参数会报 field validation failed |
| 表格 | sheet protect API 限制 | 即使参数正确也可能返回 invalid operation |
| 日历 | freebusy --user-id 实际必填 | 帮助文档标记为可选,但不提供会报 invalid parameters |
| 权限 | perm password 需要企业版 | 创建/更新/删除分享密码可能返回 Permission denied |
Weekly Installs
263
Repository
GitHub Stars
428
First Seen
Feb 28, 2026
Security Audits
Installed on
codex179
gemini-cli175
kimi-cli175
github-copilot175
cursor175
opencode175
覆盖 feishu-cli 的 13 个功能模块,提供命令速查和核心用法。复杂模块的详细参考文档在 references/ 目录中。
feishu-cli :如尚未安装,请前往 riba2534/feishu-cli 获取安装方式。
---|---|---|---
1 | 电子表格 | sheet create/get/read/write/append + V3 富文本 | references/sheet-commands.md
2 | 日历日程 | calendar list/get/primary/create-event/event-search/freebusy | references/calendar-commands.md
3 | 任务管理 | task create/complete/delete + subtask/member/reminder + tasklist | references/task-commands.md
4 | 群聊创建 | chat create/link(App Token,群信息/成员/消息互动请用 feishu-cli-chat ) | references/chat-commands.md
5 | 画板操作 | board image/import/nodes + doc add-board | references/board-commands.md
6 | PlantUML | 飞书画板安全子集语法 | references/plantuml-safe-subset.md
7 | 文件管理 | file list/mkdir/move/copy/delete/download/upload/version/meta/stats | —
8 | 素材管理 | media upload/download | —
9 | 评论管理 | comment list/add/delete/resolve/unresolve + comment reply | —
10 | 知识库 | wiki get/export/spaces/nodes/space-get + wiki member | —
11 | 搜索 | 请使用 feishu-cli-search (文档/应用)或 feishu-cli-chat (消息/群聊) | references/search-commands.md
12 | 用户和部门 | user info/search/list + dept get/children | —
13 | 附件下载 | doc export + media download 批量下载文档附件 | —
支持 V2(简单二维数组)和 V3(富文本三维数组)两套 API。
# 创建表格
feishu-cli sheet create --title "新表格"
# 获取表格信息
feishu-cli sheet get <token>
# 列出工作表
feishu-cli sheet list-sheets <token>
# V2 读写(二维数组)
feishu-cli sheet read <token> "Sheet1!A1:C10"
feishu-cli sheet write <token> "Sheet1!A1:B2" --data '[["姓名","年龄"],["张三",25]]'
feishu-cli sheet append <token> "Sheet1!A:B" --data '[["新行1","新行2"]]'
# V3 富文本读写(三维数组)
feishu-cli sheet read-plain <token> <sheet_id> "Sheet1!A1:C10"
feishu-cli sheet read-rich <token> <sheet_id> "Sheet1!A1:C10"
feishu-cli sheet write-rich <token> <sheet_id> --data-file data.json
# 行列操作
feishu-cli sheet add-rows <token> <sheet_id> --count 5
feishu-cli sheet add-cols <token> <sheet_id> --count 3
feishu-cli sheet delete-rows <token> <sheet_id> --start 2 --end 5
feishu-cli sheet delete-cols <token> <sheet_id> --start 1 --end 3
# 样式和格式
feishu-cli sheet merge <token> "Sheet1!A1:B2"
feishu-cli sheet unmerge <token> "Sheet1!A1:B2"
feishu-cli sheet style <token> "Sheet1!A1:C3" --bold --bg-color "#FF0000"
# 查找替换(--range 必填,范围不要超出实际数据区域)
feishu-cli sheet find <token> <sheet_id> "关键词" --range "A1:C10"
feishu-cli sheet replace <token> <sheet_id> "查找词" "替换词" --range "A1:C10"
SheetID!A1:C10,支持整列 A:C 和整行 1:3详细参考 :读取 references/sheet-commands.md 获取 V3 富文本格式、工作表管理、单元格图片等完整说明。
权限要求 :sheets:spreadsheet
管理飞书日历、日程、参与人和忙闲查询。时间格式统一使用 RFC3339(如 2024-01-01T10:00:00+08:00)。
# 日历
feishu-cli calendar list # 列出日历
feishu-cli calendar get <calendar_id> # 获取日历详情
feishu-cli calendar primary # 获取主日历
# 日程 CRUD
feishu-cli calendar create-event \
--calendar-id <id> \
--summary "团队周会" \
--start "2024-01-21T14:00:00+08:00" \
--end "2024-01-21T15:00:00+08:00" \
--description "讨论本周进展"
feishu-cli calendar list-events <calendar_id> --start-time <RFC3339> --end-time <RFC3339>
feishu-cli calendar get-event <calendar_id> <event_id>
feishu-cli calendar update-event <calendar_id> <event_id> --summary "新标题"
feishu-cli calendar delete-event <calendar_id> <event_id>
# 搜索日程
feishu-cli calendar event-search --calendar-id <id> --query "周会"
# 回复日程邀请
feishu-cli calendar event-reply <calendar_id> <event_id> --status accept # accept/decline/tentative
# 参与人管理
feishu-cli calendar attendee add <calendar_id> <event_id> --user-ids id1,id2
feishu-cli calendar attendee list <calendar_id> <event_id>
# 忙闲查询
feishu-cli calendar freebusy \
--start "2024-01-01T00:00:00+08:00" \
--end "2024-01-02T00:00:00+08:00" \
--user-id <user_id>
详细参考 :读取 references/calendar-commands.md 获取完整参数说明。
权限要求 :calendar:calendar:readonly(读取),calendar:calendar(写操作,需单独申请)
管理飞书任务(V2 API),包括子任务、成员、提醒和任务清单。任务 ID 为 UUID 格式。
# 任务 CRUD
feishu-cli task create --summary "完成代码审查" --description "详细描述" --due "2024-02-01"
feishu-cli task list [--completed | --uncompleted]
feishu-cli task get <task_id>
feishu-cli task update <task_id> --summary "新标题"
feishu-cli task complete <task_id>
feishu-cli task delete <task_id>
# 子任务
feishu-cli task subtask create <task_guid> --summary "子任务标题"
feishu-cli task subtask list <task_guid>
# 成员管理
feishu-cli task member add <task_guid> --members id1,id2 --role assignee # assignee/follower
feishu-cli task member remove <task_guid> --members id1,id2 --role assignee
# 提醒
feishu-cli task reminder add <task_guid> --minutes 30 # 提前 30 分钟提醒,0=截止时
feishu-cli task reminder remove <task_guid> --ids id1,id2
# 任务清单
feishu-cli tasklist create --name "Sprint 计划"
feishu-cli tasklist list
feishu-cli tasklist get <tasklist_guid>
feishu-cli tasklist delete <tasklist_guid>
详细参考 :读取 references/task-commands.md 获取完整参数说明。
权限要求 :task:task:read、task:task:write、task:tasklist:read、task:tasklist:write(需单独申请)
推荐使用 feishu-cli-chat 技能 ,提供完整的群聊浏览、消息历史、成员管理等功能,且默认使用 User Token。
以下仅列出 App Token 专属命令(feishu-cli-chat 不覆盖的):
# 创建群聊(仅 App Token)
feishu-cli chat create --name "项目群" --user-ids id1,id2 [--chat-type private|public]
# 获取群分享链接(仅 App Token)
feishu-cli chat link <chat_id> [--validity-period week|year|permanently]
详细参考 :读取 references/chat-commands.md 获取完整参数和示例。
下载画板图片、导入 Mermaid/PlantUML 图表到画板。
# 下载画板为 PNG 图片
feishu-cli board image <whiteboard_id> output.png
# 导入图表到画板
feishu-cli board import <whiteboard_id> diagram.puml # PlantUML 文件
feishu-cli board import <whiteboard_id> diagram.mmd --syntax mermaid # Mermaid 文件
feishu-cli board import <whiteboard_id> --source-type content -c "graph TD; A-->B" --syntax mermaid # 内容直接导入
# 获取画板节点列表
feishu-cli board nodes <whiteboard_id>
# 在文档中添加空白画板
feishu-cli doc add-board <document_id> [--parent-id <block_id> --index 0]
| 参数 | 说明 |
|---|---|
--syntax | plantuml(默认)或 mermaid |
--diagram-type | 0=auto, 1=mindmap, 2=sequence, 3=activity, 4=class, 5=er, 6=flowchart, 7=state, 8=component |
--style | board(默认)或 classic |
--source-type |
flowchart、sequenceDiagram、classDiagram、stateDiagram-v2、erDiagram、gantt、pie、mindmap
详细参考 :读取 references/board-commands.md 获取完整说明。
权限要求 :board:board(画板操作)、docx:document(文档画板)
生成适配飞书画板的 PlantUML 图表。默认推荐 Mermaid (飞书原生支持更好),仅在 Mermaid 不支持的图类型(用例图、组件图、复杂活动图)时才用 PlantUML。
@startuml/@enduml 包裹(思维导图用 @startmindmap/@endmindmap)skinparam、!define、颜色/字体/对齐控制、方向控制指令+ - # ~),用 field : type 或 method() 格式活动图/流程图、时序图、类图、用例图、组件图、ER 图、思维导图
代码块,通过feishu-cli doc import` 导入board import 命令导入到画板详细参考 :读取 references/plantuml-safe-subset.md 获取每种图类型的安全语法规范。
定义 :管理飞书云空间(Drive)中的文件和文件夹,包括文档、表格、本地文件等的 CRUD、版本管理、元数据和统计。
适用场景 :
与素材/附件的区别 :
| 维度 | 云空间文件 | 素材(media) | 文档附件 |
|---|---|---|---|
| 存储位置 | 云空间(Drive) | 临时素材库 | 文档内嵌 |
| 管理方式 | 独立文件管理 | 依附于文档/消息 | 依附于文档 |
| 下载命令 | file download | media download | doc export + media download |
| 权限 | drive:drive |
# 列出文件
feishu-cli file list [folder_token]
# 创建文件夹
feishu-cli file mkdir "文件夹名" [--parent <folder_token>]
# 移动/复制/删除
feishu-cli file move <file_token> --target <folder_token> --type <docx|sheet|file|...>
feishu-cli file copy <file_token> --target <folder_token> --type <type> [--name "新名"]
feishu-cli file delete <file_token> --type <type> # 移到回收站,30 天可恢复
# 下载/上传(≤20MB 单步上传,>20MB 自动分片上传)
feishu-cli file download <file_token> -o output.pdf
feishu-cli file upload local_file.pdf --parent <FOLDER_TOKEN> [--name "自定义名"]
# 版本管理
feishu-cli file version list <file_token> [--obj-type docx]
feishu-cli file version create <file_token> --name "v1.0" [--obj-type docx]
feishu-cli file version get <file_token> <version_id>
feishu-cli file version delete <file_token> <version_id>
# 元数据和统计
feishu-cli file meta TOKEN1 TOKEN2 --doc-type docx # 批量获取元数据
feishu-cli file stats <file_token> --doc-type docx # 获取统计信息
docx、doc、sheet、bitable、mindnote、folder、file
权限要求 :drive:drive:readonly(读取)、drive:drive(写操作)
定义 :管理飞书素材系统中的临时文件,包括上传到文档/消息的图片和附件,以及下载已上传的素材。
适用场景 :
与云空间文件/文档附件的区别 :
| 维度 | 素材(Media) | 云空间文件(File) | 文档附件 |
|---|---|---|---|
| 用途 | 文档/消息插入 | 独立文件存储 | 文档内嵌附件 |
| 生命周期 | 依附于父资源 | 独立管理 | 随文档存在 |
| Token 来源 | 上传返回 / 文档解析 | 云空间列表 | 导出文档解析 |
| 典型命令 | media upload/download | file list/download | doc export + media download |
# 上传素材(用于文档中的图片/附件)
feishu-cli media upload image.png \
--parent-type docx_image \
--parent-node <doc_id>
# 下载素材
feishu-cli media download <file_token> -o output.png
| 值 | 说明 |
|---|---|
docx_image | 新版文档图片(默认) |
docx_file | 新版文档附件 |
doc_image | 旧版文档图片 |
doc_file | 旧版文档附件 |
sheet_image | 电子表格图片 |
comment_image | 评论图片 |
权限要求 :drive:drive:readonly(下载)、drive:drive(上传)
管理飞书云文档的评论,包括全文评论、评论解决/取消解决、回复管理。
# 列出评论
feishu-cli comment list <file_token> --type docx
# 添加全文评论
feishu-cli comment add <file_token> --type docx --text "评论内容"
# 删除评论(不可逆)
feishu-cli comment delete <file_token> <comment_id> --type docx
# 解决/取消解决评论
feishu-cli comment resolve <file_token> <comment_id> --type docx
feishu-cli comment unresolve <file_token> <comment_id> --type docx
# 回复管理
feishu-cli comment reply list <file_token> <comment_id> --type docx
feishu-cli comment reply delete <file_token> <comment_id> <reply_id> --type docx
--type 参数支持:docx、doc、sheet、bitable
权限要求 :drive:drive.comment:readonly(读取)、drive:drive.comment:write(写入)
查看知识空间、获取知识库节点、导出知识库文档、管理空间成员。
# 获取节点信息(支持 URL 或 token)
feishu-cli wiki get <node_token>
# 导出为 Markdown
feishu-cli wiki export <node_token> -o doc.md [--download-images --assets-dir ./assets]
# 列出知识空间
feishu-cli wiki spaces [--page-size 20]
# 列出空间下的节点
feishu-cli wiki nodes <space_id> [--parent <node_token>]
# 获取空间详情
feishu-cli wiki space-get <space_id>
# 空间成员管理
feishu-cli wiki member add <space_id> --member-type userid --member-id <USER_ID> --role admin
feishu-cli wiki member list <space_id>
feishu-cli wiki member remove <space_id> --member-type userid --member-id <USER_ID> --role admin
node_token(区别于普通文档的 document_id)[Wiki 目录...],需用 wiki nodes 获取子节点admin(管理员)、member(成员)openchat、userid、email、opendepartmentid、openid权限要求 :wiki:wiki:readonly(读取)、wiki:wiki(空间成员管理)
推荐使用专项技能 :
- 搜索消息/群内搜索 → feishu-cli-chat (含群聊浏览,auth login 后自动使用 User Token)
- 搜索文档/应用/跨模块搜索 → feishu-cli-search (含完整的 Token 前置检查和排错流程)
搜索参数详细参考 :读取 references/search-commands.md 获取完整筛选参数说明。
查询用户信息、通过邮箱/手机号查找用户、列出部门成员和子部门。
# 获取用户信息
feishu-cli user info <user_id> [--user-id-type open_id|union_id|user_id]
# 通过邮箱/手机号查询用户 ID
feishu-cli user search --email user@example.com
feishu-cli user search --mobile 13800138000
feishu-cli user search --email "a@example.com,b@example.com" # 批量查询
# 列出部门下的用户
feishu-cli user list --department-id <dept_id> [--user-id-type open_id]
# 获取部门详情
feishu-cli dept get <department_id> [--department-id-type open_department_id]
# 获取子部门列表(根部门使用 "0")
feishu-cli dept children <department_id> [--department-id-type open_department_id]
权限要求 :contact:user.base:readonly(用户信息)、contact:department.base:readonly(部门查询)
定义 :从飞书文档(Docx)或知识库(Wiki)页面中批量提取并下载内嵌的附件文件。
适用场景 :
与云空间文件/素材的区别 :
| 维度 | 文档附件 | 云空间文件(File) | 素材(Media) |
|---|---|---|---|
| 存储方式 | 文档内嵌(File Block) | 云空间独立文件 | 临时素材库 |
| 获取方式 | 先导出文档解析链接 | 直接通过 file_token 下载 | 通过 token 下载 |
| 批量能力 | 支持批量下载文档内所有附件 | 单文件操作 | 单文件操作 |
| 依赖权限 | docx:document + drive:file:download | drive:drive | drive:drive |
工作流程 :
[filename](feishu://file/token) 链接 → 3. 批量下载附件doc export 或 wiki export 将文档转为 Markdown[filename](feishu://file/token) 格式的附件链接media download 下载每个附件file (1).pdf)| 格式 | 示例 |
|---|---|
| 文档 URL | https://xxx.feishu.cn/docx/T1McdFgZcoEtHQxfadicXwwCn6e |
| 知识库 URL | https://xxx.feishu.cn/wiki/AbCdEfGhIjKlMnOp |
| 纯文档 ID | T1McdFgZcoEtHQxfadicXwwCn6e |
| docx ID | docxT1McdFgZcoEtHQxfadicXwwCn6e |
| wiki Token | wikiAbCdEfGhIjKlMnOp |
# 步骤 1: 导出文档
feishu-cli doc export <document_id> -o /tmp/doc.md
# 步骤 2: 解析附件链接(用 tab 分隔文件名和 token,避免文件名含空格时出错)
grep -oE '\[[^]]+\]\(feishu://file/[^)]+\)' /tmp/doc.md | \
sed $'s/^\\[//;s/\\](feishu:\\/\\/file\\//\t/;s/)$//' > /tmp/attachments.txt
# 步骤 3: 创建输出目录
mkdir -p ./attachments_<doc_id>
# 步骤 4: 批量下载
while IFS=$'\t' read -r filename token; do
feishu-cli media download "$token" -o "./attachments_<doc_id>/$filename"
done < /tmp/attachments.txt
#!/bin/bash
INPUT="$1" # 文档 ID/URL
OUTPUT_DIR="${2:-./attachments_$(echo "$INPUT" | tr '/' '_')}"
# 提取文档 ID 或 Wiki Token
DOC_ID=""
WIKI_TOKEN=""
if echo "$INPUT" | grep -qE 'wiki/[A-Za-z0-9]+'; then
WIKI_TOKEN=$(echo "$INPUT" | grep -oP 'wiki/\K[A-Za-z0-9]+' 2>/dev/null)
elif echo "$INPUT" | grep -qE '^wiki[A-Z]'; then
WIKI_TOKEN=$(echo "$INPUT" | grep -oE '^wiki[A-Z][A-Za-z0-9]+')
elif echo "$INPUT" | grep -qE 'docx/[A-Za-z0-9]+'; then
DOC_ID=$(echo "$INPUT" | grep -oP 'docx/\K[A-Za-z0-9]+' 2>/dev/null)
elif echo "$INPUT" | grep -qE 'docx[A-Z]'; then
DOC_ID=$(echo "$INPUT" | grep -oE 'docx[A-Z][A-Za-z0-9]+' | head -1)
elif echo "$INPUT" | grep -qE '^[A-Z][A-Za-z0-9]+$'; then
DOC_ID="$INPUT"
fi
if [ -z "$DOC_ID" ] && [ -z "$WIKI_TOKEN" ]; then
echo "无法识别的文档标识符"
exit 1
fi
# 导出并下载
if [ -n "$WIKI_TOKEN" ]; then
TMP_MD="/tmp/wiki_${WIKI_TOKEN}.md"
feishu-cli wiki export "$WIKI_TOKEN" -o "$TMP_MD"
else
TMP_MD="/tmp/doc_${DOC_ID}.md"
feishu-cli doc export "$DOC_ID" -o "$TMP_MD"
fi
mkdir -p "$OUTPUT_DIR"
grep -oE '\[[^]]+\]\(feishu://file/[^)]+\)' "$TMP_MD" 2>/dev/null | \
sed $'s/^\\[//;s/\\](feishu:\\/\\/file\\//\t/;s/)$//' | \
while IFS=$'\t' read -r filename token; do
[ -z "$filename" ] && continue
# 处理文件名冲突
output_file="$OUTPUT_DIR/$filename"
counter=1
while [ -e "$output_file" ]; do
ext="${filename##*.}"
name="${filename%.*}"
if [ "$name" = "$filename" ]; then
output_file="$OUTPUT_DIR/${filename} (${counter})"
else
output_file="$OUTPUT_DIR/${name} (${counter}).${ext}"
fi
((counter++))
done
feishu-cli media download "$token" -o "$output_file"
done
rm -f "$TMP_MD"
/tmp 创建临时 Markdown 文件权限要求 :
docx:document(导出文档内容)drive:file:download(下载文件附件,必需)drive:drive / drive:drive:readonly(云空间权限)根据你的需求选择合适的下载方式:
| 如果你需要... | 使用模块 | 命令示例 |
|---|---|---|
| 下载云空间中的文件(PDF、Word 等) | 7. 文件管理 | file download <token> -o output.pdf |
| 上传/下载文档图片或附件 | 8. 素材管理 | media download <token> -o file.zip |
| 批量下载文档中的所有附件 | 13. 文档附件下载 | 导出文档 → 解析 → media download |
云空间文件(File) :
file list 获取,用 file download 下载素材(Media) :
media upload 上传,返回 file_tokenmedia download 下载文档附件(Attachment) :
doc export 导出文档解析链接media download 下载| 模块 | 权限 |
|---|---|
| 电子表格 | sheets:spreadsheet |
| 日历 | calendar:calendar:readonly、calendar:calendar |
| 任务 | task:task:read、task:task:write、task:tasklist:read、task:tasklist:write |
| 群聊 | im:chat、、 |
| 错误 | 原因 | 解决 |
|---|---|---|
rate limit exceeded / 429 | API 频率限制 | 等待几秒后重试 |
no permission | 应用权限不足 | 检查应用权限配置 |
invalid parameter | 参数格式错误 | 检查参数类型和格式 |
not found | 资源不存在 | 检查 ID/Token 是否正确 |
| 模块 | 问题 | 说明 |
|---|---|---|
| 文件 | file version create BUG | JSON 反序列化错误(status 字段类型不匹配),无法创建版本 |
| 文档 | doc import-file 需要 --folder | 不提供 --folder 时报 field validation failed(API 的 mount point 实际必填) |
| 表格 | sheet find/replace 需要 --range | 不提供 --range 参数会报 field validation failed |
Weekly Installs
263
Repository
GitHub Stars
428
First Seen
Feb 28, 2026
Security Audits
Gen Agent Trust HubPassSocketWarnSnykFail
Installed on
codex179
gemini-cli175
kimi-cli175
github-copilot175
cursor175
opencode175
xdrop 文件传输脚本:Bun 环境下安全上传下载工具,支持加密分享
20,700 周安装
macOS磁盘清理工具 - 安全智能分析回收存储空间 | macOS Cleaner
257 周安装
PPT模板创建器:将PowerPoint模板转化为可复用技能,自动化演示文稿生成
257 周安装
商务邮件草拟助手:AI智能生成专业邮件模板,提升办公沟通效率
257 周安装
Docassemble 表单构建器技能 - 创建智能动态问卷与文档生成工具
257 周安装
Fastify TypeScript 生产级后端框架指南:高性能 Node.js Web 开发与 JSON 模式验证
257 周安装
AI 演示文稿生成器 | 一键创建专业幻灯片,支持 Marp 格式输出
257 周安装
file(默认)或 content |
-c, --content | 当 source-type=content 时的图表内容 |
drive:drive |
docx:document + drive:file:download |
im:chat:readim:chat:member| 画板 | board:board |
| 文件 | drive:drive、drive:drive:readonly |
| 素材 | drive:drive、drive:drive:readonly |
| 评论 | drive:drive.comment:readonly、drive:drive.comment:write |
| 知识库 | wiki:wiki:readonly、wiki:wiki |
| 搜索 | 需要 User Access Token |
| 用户/部门 | contact:user.base:readonly、contact:department.base:readonly |
| 附件下载 | docx:document、drive:file:download(或 drive:drive) |
| 表格 | sheet protect API 限制 | 即使参数正确也可能返回 invalid operation |
| 日历 | freebusy --user-id 实际必填 | 帮助文档标记为可选,但不提供会报 invalid parameters |
| 权限 | perm password 需要企业版 | 创建/更新/删除分享密码可能返回 Permission denied |