Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/alextangson/feishu_skillsnpx agentmods add skills/alextangson/feishu_skills/feishu-bitableWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/alextangson/feishu_skills/feishu-bitable)<a href="https://agentmods.dev/skills/alextangson/feishu_skills/feishu-bitable"><img src="https://agentmods.dev/badge/skills/alextangson/feishu_skills/feishu-bitable/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/alextangson/feishu_skills/feishu-bitable"><img src="https://agentmods.dev/badge/skills/alextangson/feishu_skills/feishu-bitable.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00028 | $0.02175 |
| Opus 5.5 | $0.00011 | $0.00870 |
| Sonnet 5.5 | $0.00006 | $0.00435 |
| Haiku 4.5 | $0.00003 | $0.00217 |
Grade A, and why
feishu-bitable scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 232 lines — stays where its author put it; the contents beside it link to each section on GitHub.
飞书多维表格
通过 Bitable API 操作数据、字段、视图和权限。
Base URL: https://open.feishu.cn/open-apis/bitable/v1
认证与 Token 获取
从 feishu_skills 根目录执行共享脚本:
TOKEN="$(./scripts/get_feishu_token.sh)"
请求头统一使用 Authorization: Bearer ${TOKEN}。
如果业务接口返回 token 无效、过期或 401,强制刷新后仅重试一次原请求:
TOKEN="$(./scripts/get_feishu_token.sh --force-refresh)"
环境变量:
FEISHU_APP_IDFEISHU_APP_SECRET
本地缓存: ./.feishu_token_cache.json(未过期直接复用,默认提前 5 分钟刷新)
关键参数:
app_token: 多维表格 URL 中/base/后的字符串table_id: 调用列表 API 获取
记录操作
| API | 端点 | 说明 |
|---|---|---|
| 新增单条 | POST /apps/{app_token}/tables/{table_id}/records |
- |
| 批量新增 | POST .../records/batch_create |
最多 500 条,支持 Upsert |
| 更新 | PUT .../records/{record_id} |
- |
| 批量更新 | POST .../records/batch_update |
最多 500 条 |
| 批量删除 | POST .../records/batch_delete |
最多 500 条 |
| 查询 | POST .../records/search |
支持 filter/sort/分页 |
分页查询全部记录(单次最多 500 条,循环直到 has_more: false):
page_token = None
all_records = []
while True:
body = {"page_size": 500}
if page_token:
body["page_token"] = page_token
resp = post(".../records/search", json=body)
all_records.extend(resp["data"]["items"])
if not resp["data"].get("has_more"):
break
page_token = resp["data"]["page_token"]
请求示例:
{
"fields": {
"名称": "测试",
"金额": 100,
"进度": 0.75,
"评分": 4,
"日期": 1770508800000,
"状态": "进行中",
"标签": ["重要", "紧急"],
"完成": true,
"负责人": [{"id": "ou_xxx"}],
"电话": "13800138000",
"链接": {"text": "官网", "link": "https://example.com"}
}
}
⚠️ 数值不要传字符串,日期必须是 13 位毫秒时间戳。
字段类型格式
| type | ui_type | 中文名 | 写入格式 | 示例 |
|---|---|---|---|---|
| 1 | Text | 多行文本 | 字符串 | "办公用品" |
| 1 | 邮箱 | 字符串 | "[email protected]" |
|
| 2 | Number | 数字 | 数值 | 100 |
| 2 | Currency | 货币 | 数值 | 1280.50 |
| 2 | Progress | 进度 | 数值(0~1) | 0.25 (25%) |
| 2 | Rating | 评分 | 数值(1~5) | 3 |
| 3 | SingleSelect | 单选 | 字符串 | "支出" (自动创建选项) |
| 4 | MultiSelect | 多选 | 字符串数组 | ["餐饮","交通"] |
| 5 | DateTime | 日期 | 毫秒时间戳 | 1770508800000 |
| 7 | Checkbox | 复选框 | 布尔值 | true |
| 11 | User | 人员 | 对象数组 | [{"id":"ou_xxx"}] |
| 13 | Phone | 电话 | 字符串 | "13800138000" |
| 15 | Url | 超链接 | 对象 | {"text":"名称","link":"https://..."} |
| 17 | Attachment | 附件 | 对象数组 | [{"file_token":"xxx"}] |
| 18 | SingleLink | 单向关联 | 字符串数组 | ["recuxxx"] |
| 21 | DuplexLink | 双向关联 | 字符串数组 | ["recuxxx"] |
| 22 | Location | 地理位置 | 字符串 | "116.397,39.903" |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 232 lines · 28 tokens per session scan A f8f5d19d67b6
feishu-bitable is a skill published in the GitHub repository alextangson/feishu_skills (64 stars, last pushed 7mo ago), licensed MIT. It adds 28 tokens to every session and 2,175 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
feishu-bitable compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| feishu-bitablealextangson/feishu_skills | Skill | 64 | 7mo ago | MIT | A | 28 | Claude Code, Codex |
| lark-basePinvou/pinvou-agent | Skill | 2.9k | yesterday | MIT | A | 174 | Claude Code, Codex |
| smart-data-collectionUnicomAI/wanwu | Skill | 2.4k | 14d ago | Apache-2.0 | A | 115 | Claude Code |
| feishu-bitableop7418/CodePilot | Skill | 6.5k | 1mo ago | none | A | 159 | Claude Code, Codex |
| mcp-sheet-cache-bridgezapier/gtm-cheat-codes | Skill | 356 | 3mo ago | MIT | A | 34 | Claude Code |
| airtable-cliAirtable/skills | Skill | 53 | 3mo ago | MIT | A | 60 | Claude Code |
| feishu-bitableOPPO-Mente-Lab/X-OmniClaw | Skill | 269 | 5mo ago | Apache-2.0 | A | 29 | Claude Code, Codex |