Favicon of Lark/Feishu CLI

Lark/Feishu CLI

MIT-licensed Go CLI for Lark/Feishu covering Docs, Base, Sheets, Calendar, Mail, and more, with built-in AI Agent skills.

Lark/Feishu CLI website screenshot
Lark/Feishu CLI GitHub repository preview

lark-cli is the official command-line tool for Lark/Feishu, maintained by the larksuite team. It wraps over 2500 Open Platform APIs into 200+ curated commands across 18 business domains, and ships 26 structured Skills so AI Agents can operate Lark features without extra glue code. It's built for individual developers scripting against Lark/Feishu, and for enterprise IT or ISV teams embedding Lark access into their own agents or platforms.

Key features

  • Three-layer command system: shortcuts (prefixed with +) for quick, human- and AI-friendly operations; API commands auto-generated 1:1 from platform endpoints; raw API calls for full coverage of 2500+ endpoints.
  • Agent Skills: 26 ready-made Skills (calendar, IM, docs, drive, sheets, slides, base, tasks, mail, contact, wiki, approval, OKR, meetings, and more) compatible with popular AI tooling.
  • Broad domain coverage: Messenger, Docs, Base, Sheets, Slides, Calendar, Mail, Tasks, Meetings, Wiki, Contact, Attendance, Approval, OKR, and Apps.
  • Structured output contract: consistent JSON success/error envelopes (ok field), plus pretty, table, ndjson, and csv output formats for scripting and piping.
  • Pagination and dry-run support: --page-all, --page-limit, --page-delay flags for list endpoints, and --dry-run to preview side-effecting requests before they run.
  • Schema introspection: lark-cli schema inspects any API method's parameters, request body, response shape, supported identities, and required scopes.
  • Secure credential handling: OS-native keychain storage, input injection protection, terminal output sanitization, and optional DPoP (Demonstrating Proof of Possession) token binding.
  • Identity switching: run commands as a user or as a bot with --as user / --as bot.
  • Extension model for enterprises: wrap the CLI with a custom main package (via the extension/ packages) for centralized credential storage, audit logging, and a restricted command surface, without forking the source.

Ideal use cases

Use lark-cli if you need to automate Lark/Feishu actions from scripts or CI: sending messages, managing calendar events, reading or writing Docs/Sheets/Base records, or querying meetings and approvals from the terminal. It's a good fit for teams building an internal AI Agent or chatbot that needs to call Lark APIs, since the Skills and structured JSON output are designed for Agent consumption with minimal glue code.

It also suits enterprise platforms that want a single, auditable command surface over Lark's APIs instead of each team writing its own API client, using the extension/ packages to add centralized auth and logging.

It is not the right tool if you don't use Lark/Feishu at all, or if you need a GUI-first experience rather than a terminal/scripting workflow. If you need Meegle (Project) features, note those live in a separate meegle-cli repository, not here.

Installation

Requirements: Node.js (npm/npx) for the standard install; Go 1.23+ and Python 3 only if building from source.

Install from npm (recommended):

npx @larksuite/cli@latest install

Install from source:

git clone https://github.com/larksuite/cli.git
cd cli
make install

# Install CLI SKILL (required)
npx skills add larksuite/cli -y -g

Configure and use:

# 1. Configure app credentials (one-time, interactive guided setup)
lark-cli config init

# 2. Log in (--recommend auto-selects commonly used scopes)
lark-cli auth login --recommend

# 3. Start using
lark-cli calendar +agenda

For AI Agents, the setup is similar but runs config init --new and auth login in the background, extracting the authorization URL to pass to the user, then verifying with lark-cli auth status.

Frequently asked questions

Share:

Stars
17.7K
Forks
1.4K
Last commit
3 days ago
Repository age
7 months
License
MIT
Self-hosted
No
Activity score
81/100
View Repository
Ad
Favicon

 

  
 

Similar to Lark/Feishu CLI

Favicon

 

  
 
Favicon

 

  
 
Favicon