Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/yjwong/lark-cli/bitablenpx skills add yjwong/lark-cli --skill bitablegit clone --depth 1 https://github.com/yjwong/lark-cliWhat 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 | $0.00038 | $0.01200 |
| Opus 5 | $0.00019 | $0.00600 |
| Sonnet 5 | $0.00008 | $0.00240 |
| Haiku 4.5 | $0.00004 | $0.00120 |
Grade A, and why
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 2d 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 — 191 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Lark Bitable Skill
Access Lark Bitable (database) content via the lark CLI.
Running Commands
Ensure lark is in your PATH, or use the full path to the binary:
lark bitable <command>
Commands Reference
List Tables
lark bitable tables <app_token>
Lists all tables in a Bitable app. The app_token is from the Bitable URL.
For example, if the URL is https://xxx.larksuite.com/base/ABC123xyz, the app_token is ABC123xyz.
Output:
{
"app_token": "ABC123xyz",
"tables": [
{
"table_id": "tblXYZ789",
"name": "Projects"
},
{
"table_id": "tblABC456",
"name": "Tasks"
}
],
"count": 2
}
List Fields
lark bitable fields <app_token> <table_id>
Lists all fields (columns) in a Bitable table.
Output:
{
"app_token": "ABC123xyz",
"table_id": "tblXYZ789",
"fields": [
{
"field_id": "fldAAA111",
"field_name": "Name",
"type": "text",
"is_primary": true
},
{
"field_id": "fldBBB222",
"field_name": "Status",
"type": "select"
},
{
"field_id": "fldCCC333",
"field_name": "Due Date",
"type": "date"
}
],
"count": 3
}
Field types: text, number, select, multi_select, date, checkbox, person, phone, url, attachment, link, formula, duplex_link, location, group, created_time, created_user, modified_time, modified_user, auto_number
List Records
lark bitable records <app_token> <table_id> [--limit N] [--view <view_id>] [--filter <expression>]
Lists records (rows) in a Bitable table.
Options:
--limit: Maximum number of records to retrieve (default: no limit)--view: View ID to filter records--filter: Filter expression (see Lark API docs for syntax)
Output:
{
"app_token": "ABC123xyz",
"table_id": "tblXYZ789",
"records": [
{
"record_id": "recAAA111",
"fields": {
"Name": "Project Alpha",
"Status": "In Progress",
"Due Date": 1704067200000
}
},
{
"record_id": "recBBB222",
"fields": {
"Name": "Project Beta",
"Status": "Completed",
"Due Date": 1703462400000
}
}
],
"count": 2,
"has_more": false
}
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.
- 2d ago First seen · 191 lines · 38 tokens per session scan A 543147eaab06
bitable is a skill published in the GitHub repository yjwong/lark-cli (53 stars, last pushed 4mo ago), licensed MIT. It adds 38 tokens to every session and 1,200 once invoked, about $0.0002 per session on Opus 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.
Other skills, from other repositories
larksnap-fetch
把飞书/Lark 文档或普通网页抓取并保存到本地,也能编辑用户有权限的飞书文档,并用已登录浏览器执行一次网页搜索。用户要求下载、导出、抓取、写入飞书文档,或联网搜索资料/参考链接时使用本技能,即使没有提到 larksnap。底层通过技能自带 daemon 桥接已登录的 larksnap 浏览器扩展;arXiv 使用独立脚本。.
openlark-api
OpenLark 项目 API 接口实现规范(速查)。用于添加/重构飞书开放平台 API:确定落盘路径、实现 Body/Response + Builder(Request)、对齐 endpoints 常量/enum、补齐 mod.rs 导出,并明确"调用服务端 API"的方法签名/RequestOption 传递约定。触发关键词:API 接口、API 文件、飞书 API、添加 API、调用服务端 API.
openlark-api-field-verify
OpenLark API 字段核对技能。用于新增/重构飞书 API 后,核对 Rust 实现的请求体/响应体字段是否与飞书官方文档一致。通过 playwright 渲染飞书 SPA 文档页面,提取真实的请求/响应字段定义,对比代码实现找出不符项。触发关键词:字段核对、字段验证、字段不符、文档核对、核对请求字段、核对响应字段、飞书文档字段、推断字段、user 级接口、用户级接口字段.
openlark-design-review
OpenLark Rust SDK 的代码设计/公共 API 规范审查技能(面向 crate/模块)。用于系统化检查入口设计、feature gating、Request/Service/Builder 一致性、端点体系、Config/错误处理、导出与文档同步、测试与告警控制,并输出按优先级排序的整改清单与可落地改造方案。触发关键词:设计审查、crate 设计、API 设计、public API、feature flag、端点、Builder/Service、架构一致性.
openlark-naming
OpenLark Rust SDK 命名与对外 API 表达规范(Client/Service/Resource/Request/Builder)。用于新增/重构公开类型、设计 meta 调用链、调整模块导出与 prelude、或排查 Service 同名/语义错配/V{N}Service 版本层错位、Resource 与 Service 同类型两名、以及 Client/Service/Resource 调用风格不一致的问题。触发关键词:命名规范、Client vs Service、Resource、重命名、V1Service 版本层、meta 调用链、公开 API.
openlark-api-validation
OpenLark API 覆盖率验证技能。用于验证各 crate 的 API 实现数量与覆盖率,基于 tools/validateapis.py 脚本和 apilistexport.csv 对比实际代码实现。触发关键词:API 验证、API 覆盖率、验证 API 数量、检查 API 实现、API 统计.