Back to articles

Feishu CLI Whiteboard Features: Full Functionality Overview

Feishu CLI Team··Source
Feishu CLI Complete Usage Manual
The complete usage manual for the Feishu CLI — from installation to all Skill modules, including whiteboard capabilities.

1. Quick Start

1.1 Install

npm install -g @larksuite/cli
npx skills add https://github.com/larksuite/cli -y -g

1.2 Initialize Configuration

lark-cli config init --new

Open the generated link and complete the application configuration in the Feishu Developer Console.

1.3 User Login

lark-cli auth login --domain calendar --domain im --domain docs

1.4 Identity Switching

IdentityFlagUse Case
User identity--as userAccess personal resources such as calendar and cloud drive
App identity--as botApp-level operations on the bot's own resources

2. Skill Modules

2.1 lark-doc — Cloud Docs

Core capabilities: create and edit Feishu Docs, search cloud documents, and insert media files.

CommandDescription
docs +createCreate a new document
docs +fetchFetch document content
docs +updateUpdate document content
docs +searchSearch cloud docs and sheets
docs +media-insertInsert images or files
docs +media-downloadDownload document media

Examples:

# Create a document
lark-cli docs +create --title "My Doc" --as user

# Search documents
lark-cli docs +search --query "Project Plan" --as user

2.2 lark-sheets — Spreadsheets

Core capabilities: create and operate spreadsheets, read and write data, and export files.

CommandDescription
sheets +createCreate a spreadsheet
sheets +infoGet spreadsheet information
sheets +readRead cells
sheets +writeWrite cells
sheets +appendAppend row data
sheets +findFind content
sheets +exportExport a spreadsheet
# Read spreadsheet data
lark-cli sheets +read --spreadsheet <token> --range "A1:D10" --as user

2.3 lark-base — Bitable

Core capabilities: manage Bitable, run analytics, and configure workflows.

CommandDescription
base +table-listList data tables
base +field-listList fields
base +record-listList records
base +record-upsertCreate or update records
base +data-queryAggregated analytics query
base +workflow-createCreate a workflow
# Aggregated data query
lark-cli base +data-query --base-token <token> --table-id <id> --json {...}

2.4 lark-im — Instant Messaging

Core capabilities: send messages, manage group chats, and search message history.

CommandDescription
im +messages-sendSend a message
im +messages-replyReply to a message
im +messages-searchSearch messages
im +chat-createCreate a group chat
im +chat-searchSearch group chats
# Send a text message
lark-cli im +messages-send --chat-id <id> --text "Hello!" --as bot

2.5 lark-calendar — Calendar

Core capabilities: agenda management, free/busy queries, and smart meeting time suggestions.

CommandDescription
calendar +agendaView agenda
calendar +createCreate an event
calendar +freebusyQuery free/busy status
calendar +suggestionSuggest free time slots
# View today's agenda
lark-cli calendar +agenda --as user

# Create a meeting
lark-cli calendar +create --summary "Project Review" --start "2026-03-30T10:00:00+08:00" --end "2026-03-30T11:00:00+08:00" --as user

2.6 lark-task — Tasks

Core capabilities: create tasks, manage task lists, and assign members.

CommandDescription
task +createCreate a task
task +updateUpdate a task
task +completeComplete a task
task +get-my-tasksGet my tasks
task +tasklist-createCreate a task list
task +assignAssign members
# Get my tasks
lark-cli task +get-my-tasks --as user

2.7 lark-mail — Email

Core capabilities: send and receive emails, manage drafts, and handle attachments.

CommandDescription
mail +triageView inbox summary
mail +messageRead an email
mail +sendSend email or save draft
mail +replyReply to email
mail +forwardForward email
# View inbox
lark-cli mail +triage --as user

2.8 lark-drive — Cloud Drive

Core capabilities: upload and download files, manage permissions, and add comments.

CommandDescription
drive +uploadUpload a file
drive +downloadDownload a file
drive +add-commentAdd a comment

2.9 lark-contact — Contacts

Core capabilities: search users and get organizational information.

CommandDescription
contact +search-userSearch users
contact +get-userGet user information
# Get current user info
lark-cli contact +get-user --as user

# Search users
lark-cli contact +search-user --query "John" --as user

2.10 lark-vc — Video Conferencing

Core capabilities: search meeting records and get meeting notes.

CommandDescription
vc +searchSearch historical meetings
vc +notesGet meeting notes

2.11 lark-minutes — Minutes

Core capabilities: get Minutes information such as title, cover, and duration.

lark-cli minutes minutes get --params '{"minute_token": "<token>"}'

2.12 lark-wiki — Wiki

Core capabilities: manage knowledge spaces and document nodes.

lark-cli wiki spaces get_node --params '{"token":"<wiki_token>"}'

2.13 lark-whiteboard — Whiteboard

Core capabilities: draw architecture diagrams, flowcharts, mind maps, and more.

Supported chart types:

  • Architecture diagrams and org charts
  • Flowcharts and sequence diagrams
  • Mind maps and fishbone diagrams
  • Bar charts, line charts, and funnel charts

3. Test Cases

Case 1: View today's agenda

lark-cli calendar +agenda --as user

Result: successfully retrieved today's agenda, including meeting topics, time, and attendees.

Case 2: Get personal information

lark-cli contact +get-user --as user

Result:

{
  "name": "AJ",
  "open_id": "ou_cdac69cfe18cff7cd7122464207908b9"
}

Case 3: Get my tasks

lark-cli task +get-my-tasks --as user

Result: successfully retrieved 26 tasks with titles, creation time, due dates, and more.


4. Permissions

Different features require corresponding scopes:

ModuleCommon scopes
Calendarcalendar:calendar:read, calendar:calendar.event:create
Messagingim:message:readonly, im:chat:read
Docsdocs:document:readonly, docx:document:create
Taskstask:task:read, task:task:write
Contactscontact:user.base:readonly

5. FAQ

Q: What if permissions are insufficient?

# Incremental authorization
lark-cli auth login --scope "calendar:calendar:read"

Q: How do I switch between user and bot identities?

# Use user identity
lark-cli calendar +agenda --as user

# Use app identity
lark-cli im +messages-send --as bot

Q: How should Wiki links be handled?

Wiki links require resolving the real token first:

lark-cli wiki spaces get_node --params '{"token":"<wiki_token>"}'

More details: https://github.com/larksuite/cli

Source: Feishu Knowledge Base. Original article.