Feishu Sheet
v1.2.0飞书电子表格(Sheets)完整操作。当需要创建、读取或编辑飞书电子表格时激活此 技能。 支持:创建表格、读写单元格、追加数据、图片插入、样式设置、合并单元格、行列操作、查找替换。 需要飞书应用凭证:channels.feishu.应用Id 和 channels.feishu.应用Secret(配置在 ~/.OpenClaw/OpenClaw.json 中)。 飞书应用需开通 sheets:spreadsheet 权限。建议使用仅含表格权限的最小化飞书应用。
运行时依赖
安装命令
点击复制技能文档
飞书电子表格 技能
通过 exec 调用 ~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 脚本操作飞书电子表格。
前提条件 飞书应用凭证:~/.OpenClaw/OpenClaw.json 中必须配置 channels.feishu,包含 应用Id 和 应用Secret 飞书应用权限:应用需要开通「电子表格」相关权限(sheets:spreadsheet) 系统依赖:curl、python3、bash
凭证自动从 OpenClaw.json 读取,无需手动配置。可通过 OpenClaw_CONFIG 环境变量指定配置文件路径。
令牌 提取
从 URL https://feishu.cn/sheets/shtcnABC123 → spreadsheet_令牌 = shtcnABC123
📊 表格操作 创建电子表格 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 创建 '表格标题'"
返回 spreadsheet_令牌 和 URL。可选第二参数 folder_令牌。
获取元数据(必须先调这个拿 sheet_id) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh meta shtcnABC123"
📖 数据读写 读取数据 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh read 令牌 'sheetId!A1:C10'"
读取多个范围 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh read_multi 令牌 'sheetId!A1:C10' 'sheetId!E1:F5'"
写入数据(覆盖指定范围) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh write 令牌 'sheetId!A1:C2' '[[\"表头1\",\"表头2\",\"表头3\"],[\"数据1\",100,true]]'"
values 是 JSON 二维数组。字符串用引号,数字和布尔值不用。
追加数据(在已有数据后面添加行) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 应用end 令牌 'sheetId!A1:C1' '[[\"新行1\",\"新行2\",\"新行3\"]]'"
前插数据 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh prepend 令牌 'sheetId!A1:C1' '[[\"插入行1\",\"插入行2\",\"插入行3\"]]'"
🖼️ 图片操作 插入图片到单元格(本地文件) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh insert_image 令牌 'sheetId!E1:E1' /path/to/image.png"
图片会填充到指定单元格内。Range 必须是单个单元格。
插入浮动图片(本地文件) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh float_image 令牌 sheetId /path/to/image.png 'sheetId!F1:F1' 400 300"
参数:令牌, sheet_id, 文件路径, 锚点单元格(可选), 宽度(可选), 高度(可选)
插入浮动图片(URL) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh float_image_url 令牌 sheetId 'https://example.com/image.png' 'sheetId!F1:F1' 400 300"
🎨 样式操作 设置单元格样式 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh style 令牌 'sheetId!A1:D1' '{\"bold\":true,\"foreColor\":\"#FFFFFF\",\"backColor\":\"#4472C4\",\"fontSize\":14}'"
支持的样式属性:
bold (bool) — 加粗 italic (bool) — 斜体 foreColor (string) — 字体颜色,如 #FF0000 backColor (string) — 背景颜色,如 #FFFF00 fontSize (int) — 字号,如 14 horizontalAlign (int) — 水平对齐:0=左, 1=中, 2=右 verticalAlign (int) — 垂直对齐:0=上, 1=中, 2=下 textDecoration (int) — 0=无, 1=下划线, 2=删除线, 3=两者都有 批量设置样式 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh style_batch 令牌 '{\"data\":[{\"ranges\":\"sheetId!A1:D1\",\"style\":{\"bold\":true}},{\"ranges\":\"sheetId!A2:D10\",\"style\":{\"fontSize\":12}}]}'"
🔗 合并单元格 合并 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh merge 令牌 'sheetId!A1:D1' MERGE_ALL"
合并类型:MERGE_ALL(全部合并)、MERGE_ROWS(按行合并)、MERGE_COLUMNS(按列合并)
拆分 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh unmerge 令牌 'sheetId!A1:D1'"
📄 工作表操作 # 添加工作表 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 添加_sheet 令牌 '工作表名称'"
# 删除工作表 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 删除_sheet 令牌 sheetId"
# 复制工作表 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh copy_sheet 令牌 sourceSheetId '副本名称'"
↕️ 行列操作 # 末尾加 10 行 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 添加_rows 令牌 sheetId 10"
# 末尾加 5 列 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 添加_cols 令牌 sheetId 5"
# 在第3行前插入到第5行(0-索引ed) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh insert_rows 令牌 sheetId 3 5"
# 删除第3到第5行 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 删除_rows 令牌 sheetId 3 5"
# 删除第2到第4列 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 删除_cols 令牌 sheetId 2 4"
🔍 查找替换 # 查找 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh find 令牌 sheetId '关键词'"
# 替换 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh replace 令牌 sheetId '旧文本' '新文本'"
常见流程示例 创建带格式的报表 # 1. 创建表格 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh 创建 '月度报表'" # → 得到 spreadsheet_令牌
# 2. 获取 sheet_id exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh meta 令牌" # → 得到 sheet_id
# 3. 写入表头 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh write 令牌 'sheetId!A1:D1' '[[\"项目\",\"负责人\",\"进度\",\"备注\"]]'"
# 4. 设置表头样式(加粗+蓝底白字) exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh style 令牌 'sheetId!A1:D1' '{\"bold\":true,\"backColor\":\"#4472C4\",\"foreColor\":\"#FFFFFF\",\"fontSize\":13}'"
# 5. 写入数据 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh write 令牌 'sheetId!A2:D4' '[[\"功能A\",\"张三\",\"80%\",\"进行中\"],[\"功能B\",\"李四\",\"100%\",\"已完成\"],[\"功能C\",\"王五\",\"30%\",\"延期\"]]'"
# 6. 插入图片 exec command="~/.OpenClaw/技能s/feishu-sheet/scripts/feishu-sheet.sh float_image_url 令牌