feishu-bitable

v2026.09.25

When 飞书多维表格 (Bitable) needs CRUD or management → create/query/edit apps, records, fields, views with advanced filtering and batch ops.

GitHub
Install command
npx skhub add cklxx/feishu-bitable
Markdown
SKILL.md

Feishu Bitable (多维表格) Skill

执行前必读

  • 写记录前:先调用 field list 获取字段 type/ui_type,否则格式极易出错
  • 默认表的空行坑:app create 自带的默认表中会有空记录!插入数据前先 record list + record batch_delete 清空
  • 人员字段:默认 open_id(ou_...),值必须是 [{id:"ou_xxx"}](数组对象)
  • 日期字段:毫秒时间戳(例如 1674206443000),不是秒
  • 单选字段:字符串(例如 "选项1"),不是数组
  • 多选字段:字符串数组(例如 ["选项1", "选项2"])
  • 附件字段:必须先上传到当前多维表格,使用返回的 file_token
  • 批量上限:单次 ≤ 500 条,超过需分批
  • 并发限制:同一数据表不支持并发写,需串行调用

快速索引:意图 → 工具调用

⚠️ CLI 支持的动作(标注 ✅)可直接用 python3 skills/feishu-cli/run.py 调用;未标注的需改用 api 原始调用。

用户意图moduletool_action必填参数常用可选
✅ 查表有哪些字段bitablelist_fieldsapp_token, table_id-
✅ 查记录bitablelist_recordsapp_token, table_idfilter, sort, field_names
✅ 新增一行bitablecreate_recordapp_token, table_id, fields-
✅ 更新一行bitableupdate_recordapp_token, table_id, record_id, fields-
✅ 删除记录bitabledelete_recordapp_token, table_id, record_id-
✅ 查看所有表bitablelist_tablesapp_token-
🔧 批量导入apiPOST /bitable/v1/apps/{app_token}/tables/{table_id}/records/batch_createrecords (≤500)-
🔧 批量更新apiPUT /bitable/v1/apps/{app_token}/tables/{table_id}/records/batch_updaterecords (≤500)-
🔧 创建多维表格apiPOST /bitable/v1/appsnamefolder_token
🔧 创建数据表apiPOST /bitable/v1/apps/{app_token}/tablesnamefields

调用方式

python3 skills/feishu-cli/run.py '{"action":"tool","module":"bitable","tool_action":"list_records","app_token":"S404b...","table_id":"tbl..."}'

核心约束(Schema 未透露的知识)

详细参考文档

当遇到字段配置、记录值格式问题或需要完整示例时,查阅以下文档:

何时查阅:

  • 创建/更新字段时收到 125408X 错误码 → 查 field-properties.md
  • 写入记录时收到 125406X 错误码 → 查 record-values.md
  • 需要完整的操作流程和参数示例 → 查 examples.md

字段类型与值格式必须严格匹配

typeui_type字段类型正确格式常见错误
11User人员[{id: "ou_xxx"}]传字符串或 [{name: "张三"}]
5DateTime日期1674206443000(毫秒)传秒时间戳或字符串
3SingleSelect单选"选项名"传数组 ["选项名"]
4MultiSelect多选["选项1", "选项2"]传字符串
15Url超链接{link: "...", text: "..."}只传字符串 URL
17Attachment附件[{file_token: "..."}]传外部 URL

强制流程:

  1. 先调用 list_fields 获取字段的 type 和 ui_type
  2. 根据上表或 record-values.md 构造正确格式
  3. 错误码 125406X 或 1254015 → 检查字段值格式

筛选查询(高级筛选)

filter 参数示例:

{
  "conjunction": "and",
  "conditions": [
    {"field_name": "状态", "operator": "is", "value": ["进行中"]},
    {"field_name": "截止日期", "operator": "isLess", "value": ["ExactDate", "1740441600000"]}
  ]
}

filter operator 列表:

operator含义value 要求
is等于单个值
isNot不等于单个值
contains包含可多个值
doesNotContain不包含可多个值
isEmpty为空必须为 []
isNotEmpty不为空必须为 []
isGreater大于单个值
isLess小于单个值

日期字段特殊值: ["Today"], ["Tomorrow"], ["ExactDate", "毫秒时间戳"]


常见错误与排查

错误码原因解决方案
1254064日期格式错误必须用毫秒时间戳,不能用字符串或秒时间戳
1254068超链接格式错误必须用 {text, link} 对象
1254066人员字段格式错误必须传 [{id: "ou_xxx"}]
1254015字段值与类型不匹配先 list_fields,按类型构造
1254104批量超 500 条分批调用
1254291并发写冲突串行调用 + 延迟 0.5-1 秒
1254045字段名不存在检查字段名(包括空格、大小写)

资源层级与限制

App (多维表格应用)
 ├── Table (数据表) ×100
 │    ├── Record (记录/行) ×20,000
 │    ├── Field (字段/列) ×300
 │    └── View (视图) ×200
 └── Dashboard (仪表盘)
限制项上限
批量创建/更新/删除500(单次)
单元格文本10 万字符
单选/多选选项20,000/字段
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.25

Published

Sep 25, 2026

Category

Uncategorized

License

MIT

Source path

skills/feishu-bitable

Default branch

main

Latest commit

bc94628

Tree SHA

f9fa2e7