跳到正文
dsh-market 浏览插件 GitHub EN

2286893544/feishu-dsh-plugin

飞书(Lark)集成:25 个工具,覆盖群消息与聊天记录、云文档(含知识库页面、自动生成的图表与图片)、多维表格记录、电子表格区间读写与文档授权,基于企业自建应用。

Star 数 ★ 2 分类 工具与能力 收录于 2026-09-15

安装

在 DeepSeek Harness 里通过 dsh-market 安装

dsh plugin --profile web add dshmarket

或使用命令行

dsh plugin --profile web add github:2286893544/feishu-dsh-plugin

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络。请先审阅源码,并尽量锁定 commit(github:owner/repo#sha)。

README

该插件的 README 只有英文版本。

Feishu (Lark) tools for DeepSeek Harness: 25 feishu_* tools covering chat messages, cloud documents (including images, generated charts and tables), bitable records, spreadsheet ranges and drive permissions — through your own enterprise self-built Feishu app. Pure Node, no external dependencies, no Python.

Install

Requires DeepSeek Harness with plugin support (dsh plugin).

dsh plugin --profile web add dsh-plugin-feishu                  # once published to npm
dsh plugin --profile web add github:2286893544/feishu-dsh-plugin # straight from GitHub

Reload the profile, then configure the plugin on its own settings page: Settings → 飞书(Feishu). The client half (client/client.js) contributes that sidebar page (a settings.section, the same slot community plugins such as the side card use); it writes into the feishu-bridge settings namespace, so a saved change applies immediately:

Field Meaning
appId Feishu app ID of your self-built app (cli_...)
appSecret Feishu app secret — declared role("secret"), so it is redacted from every page read and shown as a password control that starts blank
tenantDomain Optional (acme.feishu.cn); auto-detected from the tenant API when empty
defaultChatId Optional (oc_...) used by the chat tools when a call omits chat_id
grantOpenId Optional (ou_...) — every document/bitable the plugin creates is shared with this user (full_access), so the person operating the bot keeps control of what the bot made
wikiSpaceId Optional knowledge-base space id; when set, new documents are created inside that knowledge base and the returned URL is a /wiki/ link
wikiParentNodeToken Optional default parent node for new wiki documents (empty means the knowledge-base root)

On a host without a settings service the card is simply absent and the composed configuration stands. Both fallbacks remain: the profile patch entry (config: { appId, appSecret, ... }) and the environment variables FEISHU_APP_ID, FEISHU_APP_SECRET, FEISHU_TENANT_DOMAIN.

The page also carries a 测试连接 (test connection) button. It POSTs to the host route /dsh-plugin-feishu/test-connection, which exercises the stored credentials against the Feishu API and answers with non-secret facts only: the app name, the tenant name and domain, a masked key fingerprint (pkQi…E2h (len 32)) and which configuration layers supplied the values. The raw secret never leaves the host, and the route refuses GETs and cross-origin calls.

Tools (25)

Chat & messages — feishu_list_chats, feishu_list_chat_members, feishu_send_text, feishu_send_post_message, feishu_read_chat_history, feishu_recall_message

Documents (docx) — feishu_create_document, feishu_read_document, feishu_read_document_blocks, feishu_append_document_blocks, feishu_update_document_block, feishu_delete_document_block, feishu_insert_table_into_document, feishu_insert_image_into_document, feishu_insert_chart_into_document, feishu_resolve_wiki_node

Bitable — feishu_create_bitable, feishu_list_bitable_tables, feishu_list_bitable_fields, feishu_write_bitable_record, feishu_read_bitable_records

Sheets (classic v2 range API) — feishu_read_sheet_range, feishu_write_sheet_range

Permissions — feishu_grant_document_access, feishu_set_document_link_sharing

A bundled feishu skill documents the workflows and known limits for the agent.

Notes and limits

  • Charts are rendered locally (pure Node PNG encoder + 5×7 ASCII font); chart titles and category labels are ASCII-only — non-ASCII characters are dropped. For Chinese labels, generate the image yourself and use feishu_insert_image_into_document.
  • Spreadsheet tools use the classic sheets v2 range API.
  • Only chats the bot belongs to can be read; other users' private chats are not accessible through the Feishu API.

Prerequisites (Feishu side)

  • Enterprise self-built app with the bot enabled.
  • Published scopes for reading chat history (im:message.group_msg …), docx read/write, bitable, sheets and drive permission management; the bot must be a member of the target chats, and documents the app must read must be shared with it.
  • Credentials stay local; never share appSecret in chat or documents.

Development

node scripts/verify-registration.mjs   # offline: registers 25 tools + skill, renders a chart
node scripts/smoke.mjs                 # live API check (needs credentials; optional doc id)

License

MIT

内容来自项目 README(GitHub)↗

评论

评论存放在 GitHub Discussions。用 GitHub 账号登录后可发表评论或点表情。