Lark CLI (lark-cli) is the command-line interface for the Lark and Feishu collaboration platform, built for people working in a terminal and for AI agents. It covers 18 business domains, including messaging, documents, Drive, Base tables, spreadsheets, slides, calendar, mail, tasks, meetings, wiki, contacts, approvals, OKRs, and attendance, through more than 200 commands, and ships a set of agent skills so coding assistants can operate Lark without further setup.
Commands sit in three layers. Shortcuts, prefixed with +, wrap common operations with defaults, table output, and dry-run previews. API commands are generated from Lark Open Platform metadata and map one-to-one to platform endpoints. Raw API calls reach any of the 2,500+ Open Platform endpoints directly. A schema command shows any method's parameters, request body, response structure, supported identities, and required scopes.
Authentication uses OAuth with scope selection by domain or by exact scope. A non-blocking mode returns the verification URL immediately so an agent can pass it to the user and resume polling with a device code later. Commands run as the user or as a bot with --as. Output defaults to a JSON envelope with distinct success and error shapes, and can switch to pretty, table, NDJSON, or CSV formats; pagination flags fetch all pages or a bounded number.
Because an agent acts under the authorising user's identity, several protections are on by default: input injection filtering, terminal output sanitisation, credential storage in the operating system keychain, and a risk-control signal (operating system type and device hardware model) sent with requests to official Lark and Feishu domains to help flag anomalous API activity. Enterprises embedding the CLI in their own agent can add centralised credentials, audit logging, and a restricted command surface through wrapper packages.
Features
- Messenger: send and reply to messages, manage group chats, read history and threads, search messages, and download media
- Docs, Drive, and wiki: create, read, update, and search documents, whiteboards, and Drive-native Markdown files; upload, download, and comment on files; manage knowledge spaces and nodes
- Base and Sheets: tables, fields, records, views, dashboards, workflows, forms, roles, and aggregation in Base; read, write, append, find, and export spreadsheet data
- Calendar and meetings: create and update events, invite attendees, find rooms, RSVP, check free/busy, and search meetings, participants, transcripts, and Minutes
- Mail and tasks: browse, search, send, reply, forward, and draft email, watch for new mail, and manage tasks, task lists, subtasks, comments, and reminders
- Approvals, OKRs, and attendance: query and act on approval tasks, manage objectives and key results, and read personal check-in records
- Agent skills: 26 skills covering each domain plus event subscriptions over WebSocket, whiteboard DSL rendering, an API explorer, a skill-maker framework, and workflow skills for meeting summaries and standup reports
- Identity and scopes: OAuth login by domain or exact scope, multi-user login, user or bot identity per command, and scope checks with exit codes
- Output contract: JSON success and error envelopes, pretty, table, NDJSON, and CSV formats, auto-pagination, and --dry-run previews for side-effecting commands
- Security defaults: injection filtering, output sanitisation, keychain credential storage, and a switchable risk-control signal
- Enterprise embedding: extension packages for centralised credentials, audit logging, and a restricted command surface
