From oh-my-feishu
Creates, fetches (simple/with-ids/full/partial modes), updates (str_replace/insert/replace/delete/move/append/overwrite), manages media, and searches Feishu (Lark) cloud documents via lark-cli. For doc editing and cloud resource discovery.
npx claudepluginhub yjzhang2003/oh-my-feishu --plugin oh-my-feishuThis skill uses the workspace's default tool permissions.
> **⚠️ API 版本:本 skill 使用 v2 API。所有 `docs +create`、`docs +fetch`、`docs +update` 命令必须携带 `--api-version v2`。**
references/lark-doc-create.mdreferences/lark-doc-fetch.mdreferences/lark-doc-md.mdreferences/lark-doc-media-download.mdreferences/lark-doc-media-insert.mdreferences/lark-doc-media-preview.mdreferences/lark-doc-search.mdreferences/lark-doc-update.mdreferences/lark-doc-whiteboard.mdreferences/lark-doc-xml.mdreferences/style/lark-doc-create-workflow.mdreferences/style/lark-doc-style.mdreferences/style/lark-doc-update-workflow.mdManages Lark (Feishu) Drive: upload/download files, create/copy/move/delete folders/files, view metadata, manage comments/permissions/titles, subscribe comment events, import local Word/MD/Excel/CSV/.base to online docx/sheet/bitable.
Automates creating blank documents in Feishu/Lark workspaces via browser automation. Navigates drive UI, authenticates, inputs title/content using agent-browser Bash commands.
Uploads markdown/docs to Nudocs.ai for rich collaborative editing, generates shareable links, lists documents, and pulls edited exports. Triggers on 'send to nudocs', 'edit in nudocs', 'pull from nudocs'.
Share bugs, ideas, or general feedback.
⚠️ API 版本:本 skill 使用 v2 API。所有
docs +create、docs +fetch、docs +update命令必须携带--api-version v2。
# 常用示例
lark-cli docs +fetch --api-version v2 --doc "文档URL或token"
lark-cli docs +create --api-version v2 --content '<title>标题</title><p>内容</p>'
lark-cli docs +update --api-version v2 --doc "文档URL或token" --command append --content '<p>内容</p>'
CRITICAL — 执行对应操作前,MUST 先用 Read 工具读取以下文件,缺一不可:
../lark-shared/SKILL.md — 认证、权限处理、全局参数(所有操作通用)docs +fetch) → 必读 lark-doc-fetch.md(--scope / --detail 选择、局部读取策略、<fragment> / <excerpt> 输出结构)lark-doc-xml.md(XML 语法规则,仅当用户明确要求 Markdown 时改读 lark-doc-md.md);从零创建时加读 lark-doc-create-workflow.md;编辑已有文档时加读 lark-doc-update-workflow.md未读完以上文件就执行相应操作会导致参数选择错误、格式错误或样式不达标。
格式选择规则(全局):
- 创建 / 导入场景(
docs +create,或docs +update --command append/overwrite的整段写入):XML 和 Markdown 都可以。用户提供.md本地文件、或明确说"导入 Markdown"时,直接用 Markdown;否则默认 XML(可用 callout、grid、checkbox 等富 block)。- 精准编辑场景(
docs +update的str_replace/block_insert_after/block_replace/block_delete/block_move_after等局部精修指令):优先使用 XML(--doc-format xml,即默认值)。XML 能稳定表达 block 结构和样式,局部精修更可控;不要因为 Markdown 更简单就自行切换。
lark-doc-xml.md 的「三、资源块」章节lark-cli docs +media-previewlark-cli docs +media-downloadlark-cli docs +media-download --type whiteboard(不要用 +media-preview)lark-cli docs +search 做资源发现docs +search 不只搜文档/Wiki,结果里会直接返回 SHEET 等云空间对象lark-sheets 做对象内部操作lark-drive 处理<sheet>、<bitable> 或 <cite file-type="sheets|bitable"> 标签时 → 必须主动提取 token 并切到对应技能下钻读取内部数据,不能只呈现标签本身| 标签 / 属性 | 提取字段 | 切到技能 |
|---|---|---|
<sheet token="..." sheet-id="..."> | token -> spreadsheet_token, sheet-id | lark-sheets |
<bitable token="..." table-id="..."> | token -> app_token, table-id | lark-base |
<cite type="doc" file-type="sheets" token="..." sheet-id="..."> | 同 <sheet> | lark-sheets |
<cite type="doc" file-type="bitable" token="..." table-id="..."> | 同 <bitable> | lark-base |
<synced_reference src-token="..." src-block-id="..."> | src-token -> doc_token, src-block-id -> block_id | 用 docs +fetch 读取 src-token 文档,定位 block |
补充: docs +search 也承担"先定位云空间对象,再切回对应业务 skill 操作"的资源发现入口角色;当用户口头说"表格/报表"时,也优先从这里开始。
Shortcut 是对常用操作的高级封装(lark-cli docs +<verb> [flags])。有 Shortcut 的操作优先使用。
| Shortcut | 说明 |
|---|---|
+search | Search Lark docs, Wiki, and spreadsheet files (Search v2: doc_wiki/search) |
+create | Create a Lark document (XML / Markdown) |
+fetch | Fetch Lark document content (XML / Markdown) |
+update | Update a Lark document (str_replace / block_insert_after / block_replace / ...) |
+media-insert | Insert a local image or file at the end of a Lark document (4-step orchestration + auto-rollback) |
+media-download | Download document media or whiteboard thumbnail (auto-detects extension) |
+whiteboard-update | Alias of whiteboard +update. Update an existing whiteboard with DSL, Mermaid or PlantUML. Prefer whiteboard +update; refer to lark-whiteboard skill for details. |