lark-markdown

A tool for working with native Markdown files stored in Feishu, a Chinese workplace collaboration platform. It can read, create, upload, edit, compare, and update those files.

In plain words
What is it for?
Use it to fetch a Feishu Markdown file, create or overwrite one, make text or regular-expression replacements, and compare a cloud version with a local draft or an earlier version.
Why use it?
It keeps local Markdown drafts and their Feishu copies aligned, while showing differences between versions. It also makes clear when a request belongs to file storage or online documents instead.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/larksuite/cli/lark-markdown
Any agent
npx skills add larksuite/cli --skill lark-markdown
Clone the repo
git clone --depth 1 https://github.com/larksuite/cli

Made for: Claude Code, Codex.

Per session 90 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,361 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00090 $0.01361
Opus 5 $0.00045 $0.00681
Sonnet 5 $0.00018 $0.00272
Haiku 4.5 $0.00009 $0.00136

Measured 3d ago against content hash dd533844109c, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

lark-markdown 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 3d 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.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

skills/lark-markdown/SKILL.md · 71 lines

How it starts

The opening of the file, as written. The whole thing — 71 lines — stays where its author put it; the contents beside it link to each section on GitHub.

markdown (v1)

CRITICAL — 开始前 MUST 先用 Read 工具读取 ../lark-shared/SKILL.md,其中包含认证、权限处理

快速决策

  • 身份:Markdown 文件通常属于用户云空间资源,优先使用 --as user。如为自动化场景,或应用已创建并持有目标文件权限,可按场景使用 --as bot。首次以 user 身份访问前执行 lark-cli auth login

  • markdown +create / +overwrite 失败时,先判断是不是身份和权限问题:bot 更常见的是 app scope 或目标目录 ACL,user 更常见的是用户授权或用户 ACL;不要不加判断地来回切身份重试。

  • 用户要上传、创建一个原生 .md 文件,使用 lark-cli markdown +create

  • 用户要比较原生 .md 文件的历史版本差异,或比较远端 Markdown 与本地草稿,使用 lark-cli markdown +diff

  • 用户要读取 Drive 里某个 .md 文件内容,使用 lark-cli markdown +fetch

  • 用户要对 Markdown 文件做局部文本替换 / 正则替换,优先使用 lark-cli markdown +patch

  • 用户要覆盖更新 Drive 里某个 .md 文件内容,使用 lark-cli markdown +overwrite

  • 用户要先拿 Markdown 文件的历史版本号,再做比较/下载/回滚,先用 lark-drivelark-cli drive +version-history

  • 用户要把本地 Markdown 导入成在线新版文档(docx),不要用本 skill,改用 lark-drivelark-cli drive +import --type docx

  • 用户要对 Markdown 文件做rename / move / delete / 搜索 / 权限 / 评论等云空间(云盘/云存储)操作,不要留在本 skill,切到 lark-drive

  • markdown +create / +overwrite 命中 missing scopepermission deniednot foundquota_exceededversion limit 时,默认停止重试并按报错 hint 处理;只有 rate_limitserver_error 或临时网络错误才做有限退避重试。

  • markdown +create 的目标参数不要猜:Drive 文件夹用 --folder-token,Wiki 节点用 --wiki-token。如果用户给的是 URL,可以直接传完整 URL;CLI 会归一成 token。不要把 doc/sheet/wiki URL 放进 --folder-token 试错。

核心边界

  • 本 skill 处理的是 Drive 中作为普通文件存储的 Markdown,不是 docx 文档
  • --name 和本地 --file 文件名都必须显式带 .md 后缀;不满足时 shortcut 会直接报错
  • --content 支持:
    • 直接传字符串
    • @file 从本地文件读取内容
    • - 从 stdin 读取内容
  • markdown +patch 的内部语义是:先完整下载 Markdown,再本地替换,再整文件覆盖上传
  • markdown +patch 不是服务端原子 patch;它是 CLI 侧编排出来的局部更新能力
  • markdown +patch 当前只支持单组 --pattern / --content
  • markdown +patch 替换后的最终内容不能为空;CLI 会拒绝上传空文件,因为 Drive 不支持零字节 Markdown,且空文件通常是误操作
  • --file 只接受本地 .md 文件路径

正则替换时要特别注意 --pattern 的转义:

# BAD: 未转义正则特殊字符,可能匹配到错误位置
lark-cli markdown +patch --file-token boxcnxxxx --regex --pattern "version (1.0)" --content "version (2.0)"

# GOOD: 显式转义括号和点号
lark-cli markdown +patch --file-token boxcnxxxx --regex --pattern "version \\(1\\.0\\)" --content "version (2.0)"

Read the full file on GitHub · 71 lines

Files

What ships with it

5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 3d ago First seen · 71 lines · 90 tokens per session scan A dd533844109c

Subscribe to this mod's changes

lark-markdown is a skill published in the GitHub repository larksuite/cli (16,925 stars, last pushed yesterday), licensed MIT. It adds 90 tokens to every session and 1,361 once invoked, about $0.0005 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.

Related

Other skills, from other repositories

notion

Notion API for creating and managing pages, databases, and blocks. Use when the user wants to create a Notion page, query a Notion database, update Notion properties, search Notion, add content to Notion, manage Notion blocks, or interact with Notion data sources and workspaces via the API.

elizaOS/eliza · 69 tokens

feishu

Work with Feishu or Lark bots, docs, sheets, bitables, approval flows, and OpenAPI/MCP setup without hardcoding credentials.

Hmbown/CodeWhale · 33 tokens

sn-da-large-file-analysis

万行以上 Excel 数据集的高性能分析引擎。提供 openpyxl readonly 流式读取(iterrows 支持 10 万行以上)、Parquet 转换加速、内存优化、分块处理和大文件写入模式。遇到以下任一情况就主动使用本 skill:①数据行数 ≥ 10k(由 sn-da-excel-workflow 的行数评估步骤触发);②用户出现触发词:大文件 / 大数据量 / 性能优化 / 内存不足 / OOM / 百万行 / 十万行 / 流式读取 / Parquet / 分块处理 / large file / big data / streaming read / chunked processing;③直接使用…

OpenSenseNova/SenseNova-Skills · 218 tokens

resilient-document-pipeline

Unified document generation with tool failure detection, domain knowledge fallback, progressive conversion, and Unicode safety.

HKUDS/OpenSpace · 25 tokens

category-filtering-and-difficulty-analysis

对Excel数据进行自定义分类统计、交叉分析与可视化,并基于多维度指标(如文本长度、术语密度、正则匹配等)进行综合评分与分级,适用于多类别数据分布统计及文本内容难度/质量评估场景。.

OpenSenseNova/SenseNova-Skills · 74 tokens

summarize-document

Summarize a long PDF, scan, office file, text file, or markdown file through the connected Superlinked MCP edge instead of reading the whole source into model context. Use when the user asks for a summary, overview, digest, or "what does this document say" about a large file.

superlinked/sie · 66 tokens