# Feishu

The user's 飞书 / Lark through its command-line tool (lark-cli): agenda, people and...

- Repository: https://github.com/nano-muse/nanoMuse (2980 stars)
- Category: Engineering
- License: GPL-3.0
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add nano-muse/nanoMuse --skill feishu -g -a claude-code -y`
Codex: `npx skills add nano-muse/nanoMuse --skill feishu -g -a codex -y`
Cursor: `npx skills add nano-muse/nanoMuse --skill feishu -g -a cursor -y`
Gemini CLI: `npx skills add nano-muse/nanoMuse --skill feishu -g -a gemini-cli -y`

## Description

The user's 飞书 / Lark through its command-line tool (lark-cli): agenda, people and groups, reading and sending messages, events, tasks, documents, with no app open. Use when the user mentions 飞书, Lark, a 群, a 日程 or a 飞书文档, or wants a colleague told something.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 飞书 (Feishu / Lark) through lark-cli

飞书 has an API, and `lark-cli` (the official CLI from Larksuite) wraps it; this is done with `shell`, not on the phone's screen. Every call prints JSON: `ok` says whether it worked, `data` holds the result, `error.message` says what went wrong. Read the JSON, never the user's screen.

## Is it there?

`shell`: `lark-cli auth status`; `identities.user.available` must be true for anything done in the user's name (their agenda, their messages). If the command is missing, the answer says `not_configured`, or the user identity is not logged in, say so in one line and stop; setting it up is the user's job, in two steps they run themselves: `lark-cli config init --new` once (it prints a link that creates the CLI's own 飞书 app under their account), then `lark-cli auth login` (a link or a QR code to approve; `--domain calendar,im,task` narrows what it may touch). Do not try to install it, to run `config init` or to log in for them. In a sandbox the CLI and its login only exist when the user shared them (`sandbox.share_read_only` / `sandbox.share` in config.toml); the error then says "command not found"; tell the user which two lines to add.

## Reading

The rest: https://github.com/nano-muse/nanoMuse/blob/HEAD/nanomuse/skills/builtin/feishu/SKILL.md
