Skip to content
Agentmart
Submit a tool

feishu-bitable

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

Skill by cklxx

IndexedMIT★ 11
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/cklxx-feishu-bitable

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

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

Use cases: writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/feishu-bitable

What's inside

Skill name
feishu-bitable
Description
When 飞书多维表格 (Bitable) needs CRUD or management → create/query/edit apps, records, fields, views with advanced filtering and batch ops.
License
MIT
Instructions
139 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (5)

  • SKILL.md
  • examples.md · references/
  • field-properties.md · references/
  • record-values.md · references/
  • run.py

SKILL.md (first lines)

# 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` 原始调用。

| 用户意图 | module | tool_action | 必填参数 | 常用可选 |
|---------|--------|-------------|---------|---------|
| ✅ 查表有哪些字段 | bitable | list_fields | app_token, table_id | - |
| ✅ 查记录 | bitable | list_records | app_token, table_id | filter, sort, field_names |
| ✅ 新增一行 | bitable | create_record | app_token, table_id, fields | - |
| ✅ 更新一行 | bitable | update_record | app_token, table_id, record_id, fields | - |
| ✅ 删除记录 | bitable | delete_record | app_token, table_id, record_id | - |
| ✅ 查看所有表 | bitable | list_tables | app_token | - |
| 🔧 批量导入 | api | POST /bitable/v1/apps/{app_token}/tables/{table_id}/records/batch_create | records (≤500) | - |
| 🔧 批量更新 | api | PUT /bitable/v1/apps/{app_token}/tables/{table_id}/records/batch_update | records (≤500) | - |
| 🔧 创建多维表格 | api | POST /bitable/v1/apps | name | folder_token |
| 🔧 创建数据表 | api | POST /bitable/v1/apps/{app_token}/tables | name | fields |

### 调用方式

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

---

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

### 详细参考文档

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

- **[字段 Property 配置详解](references/field-properties.md)** — 每种字段类型创建/更新时的 `property` 参数结构
- **[记录值数据结构详解](references/record-values.md)** — 每种字段类型在记录中对应的 `fields` 值格式
- **[使用场景完整示例](references/examples.md)** — 完整场景示例

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

---

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

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

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

---

## 筛选查询(高级筛选)

filter 参数示例:

```json
{
  "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 | 字段名不存在 | 检查字段名(包括空格、大小写) |

From cklxx/elephant.ai, MIT.

More from cklxx/elephant.ai

Signals

Stars
11
Forks
2
Open issues
1
Last commit (this folder)
Mar 23, 2026 (7 months ago)
Last release
Feb 16, 2026 (8 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from cklxx

Cite this page

feishu-bitable skill. Agent Mart. https://agentmart.dev/skills/cklxx-feishu-bitable (last updated 2026-10-24)