skills/feishu-bitable/SKILL.md
飞书多维表格(Bitable)的创建、查询、编辑和管理工具。包含 27 种字段类型支持、高级筛选、批量操作和视图管理。 **当以下情况时使用此 Skill**: (1) 需要创建或管理飞书多维表格 App (2) 需要在多维表格中新增、查询、修改、删除记录(行数据) (3) 需要管理字段(列)、视图、数据表 (4) 用户提到"多维表格"、"bitable"、"数据表"、"记录"、"字段" (5) 需要批量导入数据或批量更新多维表格
npx skillsauth add larksuite/openclaw-lark feishu-bitableInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
create 时通过 table.fields 一次性定义字段(减少 API 调用);② 探索式场景时,使用默认表 + 逐步修改字段(更稳定,易调整)app.create 自带的默认表中会有空记录(空行)!插入数据前建议先调用 feishu_bitable_app_table_record.list + batch_delete 删除空行,避免数据污染feishu_bitable_app_table_field.list 获取字段 type/ui_type[{id:"ou_xxx"}](数组对象)1674206443000),不是秒"选项1"),不是数组["选项1", "选项2"])| 用户意图 | 工具 | action | 必填参数 | 常用可选 | |---------|------|--------|---------|---------| | 查表有哪些字段 | feishu_bitable_app_table_field | list | app_token, table_id | - | | 查记录 | feishu_bitable_app_table_record | list | app_token, table_id | filter, sort, field_names | | 新增一行 | feishu_bitable_app_table_record | create | app_token, table_id, fields | - | | 批量导入 | feishu_bitable_app_table_record | batch_create | app_token, table_id, records (≤500) | - | | 更新一行 | feishu_bitable_app_table_record | update | app_token, table_id, record_id, fields | - | | 批量更新 | feishu_bitable_app_table_record | batch_update | app_token, table_id, records (≤500) | - | | 创建多维表格 | feishu_bitable_app | create | name | folder_token | | 创建数据表 | feishu_bitable_app_table | create | app_token, name | fields | | 创建字段 | feishu_bitable_app_table_field | create | app_token, table_id, field_name, type | property | | 创建视图 | feishu_bitable_app_table_view | create | app_token, table_id, view_name, view_type | - |
当遇到字段配置、记录值格式问题或需要完整示例时,查阅以下文档:
property 参数结构(单选的 options、进度的 min/max、关联的 table_id 等)fields 值格式(人员字段只传 id、日期是毫秒时间戳、附件需先上传等)何时查阅:
125408X 错误码(property 结构错误)→ 查 field-properties.md125406X 错误码(字段值转换失败)→ 查 record-values.mdBitable 最大的坑:不同字段类型对 value 的数据结构要求完全不同。
| type | ui_type | 字段类型 | 正确格式 | ❌ 常见错误 |
|------|---------|----------|---------|-----------|
| 11 | User | 人员 | [{id: "ou_xxx"}] | 传字符串 "ou_xxx" 或 [{name: "张三"}] |
| 5 | DateTime | 日期 | 1674206443000(毫秒) | 传秒时间戳或字符串 |
| 3 | SingleSelect | 单选 | "选项名" | 传数组 ["选项名"] |
| 4 | MultiSelect | 多选 | ["选项1", "选项2"] | 传字符串 "选项1" |
| 15 | Url | 超链接 | {link: "...", text: "..."} | 只传字符串 URL |
| 17 | Attachment | 附件 | [{file_token: "..."}] | 传外部 URL 或本地路径 |
强制流程:
feishu_bitable_app_table_field.list 获取字段的 type 和 ui_type125406X 或 1254015 → 检查字段值格式人员字段特别注意:
[{id: "ou_xxx"}](数组对象)完整示例: 查阅 examples.md 了解更多场景(创建表模式对比、空行处理、附件上传、关联字段等)
{
"action": "list",
"app_token": "S404b...",
"table_id": "tbl..."
}
返回:包含每个字段的 field_id、field_name、type、ui_type、property
{
"action": "batch_create",
"app_token": "S404b...",
"table_id": "tbl...",
"records": [
{
"fields": {
"客户名称": "Bytedance",
"负责人": [{"id": "ou_xxx"}],
"签约日期": 1674206443000,
"状态": "进行中"
}
},
{
"fields": {
"客户名称": "飞书",
"负责人": [{"id": "ou_yyy"}],
"签约日期": 1675416243000,
"状态": "已完成"
}
}
]
}
字段值格式:
[{id: "ou_xxx"}](数组对象)限制: 最多 500 条记录
{
"action": "list",
"app_token": "S404b...",
"table_id": "tbl...",
"filter": {
"conjunction": "and",
"conditions": [
{
"field_name": "状态",
"operator": "is",
"value": ["进行中"]
},
{
"field_name": "截止日期",
"operator": "isLess",
"value": ["ExactDate", "1740441600000"]
}
]
},
"sort": [
{
"field_name": "截止日期",
"desc": false
}
]
}
filter 说明:
value: [](虽然逻辑上不需要值,但 API 要求必须传空数组)["Today"]、["ExactDate", "时间戳"] 等sort 可指定多个排序字段| 错误码 | 错误现象 | 根本原因 | 解决方案 |
|--------|---------|---------|---------|
| 1254064 | DatetimeFieldConvFail | 日期字段格式错误 | 必须用毫秒时间戳(如 1772121600000),不能用字符串("2026-02-27"、RFC3339)或秒级时间戳 |
| 1254068 | URLFieldConvFail | 超链接字段格式错误 | 必须用对象 {text: "显示文本", link: "URL"},不能直接传字符串 URL |
| 1254066 | UserFieldConvFail | 人员字段格式错误或 ID 类型不匹配 | 必须传 [{id: "ou_xxx"}],确认 user_id_type |
| 1254015 | Field types do not match | 字段值格式与类型不匹配 | 先 list 字段,按类型构造正确格式 |
| 1254104 | RecordAddOnceExceedLimit | 批量创建超过 500 条 | 分批调用,每批 ≤ 500 |
| 1254291 | Write conflict | 并发写冲突 | 串行调用 + 延迟 0.5-1 秒 |
| 1254303 | AttachPermNotAllow | 附件未上传到当前表格 | 先调用上传素材接口 |
| 1254045 | FieldNameNotFound | 字段名不存在 | 检查字段名(包括空格、大小写) |
App (多维表格应用)
├── Table (数据表) ×100
│ ├── Record (记录/行) ×20,000
│ ├── Field (字段/列) ×300
│ └── View (视图) ×200
└── Dashboard (仪表盘)
| operator | 含义 | 支持字段 | value 要求 |
|----------|------|----------|-----------|
| is | 等于 | 所有 | 单个值 |
| isNot | 不等于 | 除日期外 | 单个值 |
| contains | 包含 | 除日期外 | 可多个值 |
| doesNotContain | 不包含 | 除日期外 | 可多个值 |
| isEmpty | 为空 | 所有 | 必须为 [] |
| isNotEmpty | 不为空 | 所有 | 必须为 [] |
| isGreater | 大于 | 数字、日期 | 单个值 |
| isGreaterEqual | 大于等于 | 数字(不支持日期) | 单个值 |
| isLess | 小于 | 数字、日期 | 单个值 |
| isLessEqual | 小于等于 | 数字(不支持日期) | 单个值 |
日期字段特殊值: ["Today"], ["Tomorrow"], ["ExactDate", "时间戳"] 等(完整列表见 examples.md)
| 限制项 | 上限 | |--------|------| | 数据表 + 仪表盘 | 100(单个 App) | | 记录数 | 20,000(单个数据表) | | 字段数 | 300(单个数据表) | | 视图数 | 200(单个数据表) | | 批量创建/更新/删除 | 500(单次 API 调用) | | 单元格文本 | 10 万字符 | | 单选/多选选项 | 20,000(单个字段) | | 单元格附件 | 100 | | 单元格人员 | 1,000 |
field_id,需先调用 field.list 获取documentation
更新飞书云文档。支持 7 种更新模式:追加、覆盖、定位替换、全文替换、前/后插入、删除。
development
飞书插件问题排查工具。包含常见问题 FAQ 和深度诊断命令(/feishu_doctor)。 常见问题可随时查阅。诊断命令用于排查复杂问题(多次授权仍失败、自动授权无法解决等), 会检查账户配置、API 连通性、应用权限、用户授权状态,并生成详细的诊断报告和解决方案。
data-ai
飞书任务管理工具,用于创建、查询、更新任务和清单。 **当以下情况时使用此 Skill**: (1) 需要创建、查询、更新任务 (2) 需要创建、管理任务清单 (3) 需要查看任务列表或清单内的任务 (4) 用户提到"任务"、"待办"、"to-do"、"清单"、"task" (5) 需要设置任务负责人、关注人、截止时间、添加成员 (6) 需要追加任务步骤记录(Task 的 steps) (7) 需要上传任务附件(支持 task / task_delivery) (8) 需要注册 Agent / 更新 Agent 信息(register / update_profile)
tools
飞书 IM 消息读取工具使用指南,覆盖会话消息获取、话题回复读取、跨会话消息搜索、图片/文件资源下载。 **当以下情况时使用此 Skill**: (1) 需要获取群聊或单聊的历史消息 (2) 需要读取话题(thread)内的回复消息 (3) 需要跨会话搜索消息(按关键词、发送者、时间等条件) (4) 消息中包含图片、文件、音频、视频,需要下载 (5) 用户提到"聊天记录"、"消息"、"群里说了什么"、"话题回复"、"搜索消息"、"图片"、"文件下载" (6) 需要按时间范围过滤消息、分页获取更多消息