lark-baselisted
Install: claude install-skill aiskillstore/marketplace
# base
> **前置条件:** 先阅读 [`../lark-shared/SKILL.md`](../lark-shared/SKILL.md)。
> **执行前必做:** 执行任何 `base` 命令前,必须先阅读对应命令的 reference 文档,再调用命令。
> **命名约定:** 仅使用 `lark-cli base +...` 形式的命令。
## Agent 快速执行顺序
1. **先判断任务类型**
- 临时统计 / 聚合分析 → `+data-query`
- 要把结果长期显示在表里 → formula 字段
- 用户明确要 lookup,或确实更适合 `from/select/where/aggregate` → lookup 字段
- 明细读取 / 导出 → `+record-list / +record-get`
2. **先拿结构,再写命令**
- 至少先拿当前表结构:`+field-list` 或 `+table-get`
- 跨表场景必须再查**目标表**的结构
3. **formula / lookup 有硬门槛**
- 先读对应 guide
- 读完 guide 后,再创建对应字段
4. **写记录前先判断字段可写性**
- 只写存储字段
- 系统字段 / formula / lookup 默认只读
## Agent 禁止行为
- 不要把 `+record-list` 当聚合分析引擎
- 不要没读 guide 就直接创建 formula / lookup 字段
- 不要凭自然语言猜表名、字段名、公式表达式里的字段引用
- 不要把系统字段、formula 字段、lookup 字段当成 `+record-upsert` 的写入目标
- 不要在 Base 场景改走 `lark-cli api GET /open-apis/bitable/v1/...`
- 不要因为 wiki 解析结果里的 `obj_type=bitable` 就去找 `bitable.*`;在本 CLI 里应继续使用 `lark-cli base +...`
## Base 基本心智模型
1. **Base 字段分三类**
- **存储字段**:真实存用户输入的数据,通常适合 `+record-upsert` 写入,例如文本、数字、日期、单选、多选、人员、关联。**附件字段例外**:对 agent 而言,文件上传必须走 `+record-upload-attachment`。
- **系统字段**:平台自动维护,只读,典型包括创建时间、最后更新时间、创建人、修改人、自动编号。
- **计算字段**:通过表达式或跨表规则推导,只读,典型包括 **公式字段(formula)** 和 **查找引用字段(lookup)**。
2. **写记录前先判断字段类别** — 只有存储字段可直接写;公式 / lookup / 创建时间 / 更新时间 / 创建人 / 修改人 / 自动编号都应视为只读输出字段,不能拿来做 `+record-upsert` 入参。
3. **Base 不只是存表数据,也能内建计算** — 用户提出“统计、比较、排名、文本拼接、日期差、跨表汇总、状态判断”等需求时,不能默认导出数据后手算;要先判断是否应通过 `+data-query` 或公式字段在 Base 内完成。
## 分析路径决策
1. **一次性分析 / 临时查询** → 优先 `+d