Skip to main content

feishu-doc

Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.

来源信息

仓库
linuxhsj/openclaw-zero-token
最近来源活动
2026年2月28日 00:00
检测到的 SKILL.md 语言
英语
星标
5,204
分支
1,231

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
2 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
feishu-doc
description
Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.
# Feishu Document Tool Single tool `feishu_doc` with action parameter for all document operations, including table creation for Docx. ## Token Extraction From URL `https://xxx.feishu.cn/docx/ABC123def` → `doc_token` = `ABC123def` ## Actions ### Read Document ```json { "action": "read", "doc_token": "ABC123def" } ``` Returns: title, plain text content, block statistics. Check `hint` field - if present, structured content (tables, images) exists that requires `list_blocks`. ### Write Document (Replace All) ```json { "action": "write", "doc_token": "ABC123def", "content": "# Title\n\nMarkdown content..." } ``` Replaces entire document with markdown content. Supports: headings, lists, code blocks, quotes, links, images (`![](url)` auto-uploaded), bold/italic/strikethrough. **Limitation:** Markdown tables are NOT supported. ### Append Content ```json { "action": "append", "doc_token": "ABC123def", "content": "Additional content" } ``` Appends markdown to end of document. ### Create Document ```json { "action": "create", "title": "New Document", "owner_open_id": "ou_xxx" } ``` With folder: ```json { "action": "create", "title": "New Document", "folder_token": "fldcnXXX", "owner_open_id": "ou_xxx" } ``` **Important:** Always pass `owner_open_id` with the requesting user's `open_id` (from inbound metadata `sender_id`) so the user automatically gets `full_access` permission on the created document. Without this, only the bot app has access. ### List Blocks ```json { "action": "list_blocks", "doc_token": "ABC123def" } ``` Returns full block data including tables, images. Use this to read structured content. ### Get Single Block ```json { "action": "get_block", "doc_token": "ABC123def", "block_id": "doxcnXXX" } ``` ### Update Block Text ```json { "action": "update_block", "doc_token": "ABC123def", "block_id": "doxcnXXX", "content": "New text" } ``` ### Delete Block ```json { "action": "delete_block", "doc_token": "ABC123def", "block_id": "doxcnXXX" } ``` ### Create Table (Docx Table Block) ```json { "action": "create_table", "doc_token": "ABC123def", "row_size": 2, "column_size": 2, "column_width": [200, 200] } ``` Optional: `parent_block_id` to insert under a specific block. ### Write Table Cells ```json { "action": "write_table_cells", "doc_token": "ABC123def", "table_block_id": "doxcnTABLE", "values": [ ["A1", "B1"], ["A2", "B2"] ] } ``` ### Create Table With Values (One-step) ```json { "action": "create_table_with_values", "doc_token": "ABC123def", "row_size": 2, "column_size": 2, "column_width": [200, 200], "values": [ ["A1", "B1"], ["A2", "B2"] ] } ``` Optional: `parent_block_id` to insert under a specific block. ### Upload Image to Docx (from URL or local file) ```json { "action": "upload_image", "doc_token": "ABC123def", "url": "https://example.com/image.png" } ``` Or local path with position control: ```json { "action": "upload_image", "doc_token": "ABC123def", "file_path": "/tmp/image.png", "parent_block_id": "doxcnParent", "index": 5 } ``` Optional `index` (0-based) inserts the image at a specific position among sibling blocks. Omit to append at end. **Note:** Image display size is determined by the uploaded image's pixel dimensions. For small images (e.g. 480x270 GIFs), scale to 800px+ width before uploading to ensure proper display. ### Upload File Attachment to Docx (from URL or local file) ```json { "action": "upload_file", "doc_token": "ABC123def", "url": "https://example.com/report.pdf" } ``` Or local path: ```json { "action": "upload_file", "doc_token": "ABC123def", "file_path": "/tmp/report.pdf", "filename": "Q1-report.pdf" } ``` Rules: - exactly one of `url` / `file_path` - optional `filename` override - optional `parent_block_id` ## Reading Workflow 1. Start with `action: "read"` - get plain text + statistics 2. Check `block_types` in response for Table, Image, Code, etc. 3. If structured content exists, use `action: "list_blocks"` for full data ## Configuration ```yaml channels: feishu: tools: doc: true # default: true ``` **Note:** `feishu_wiki` depends on this tool - wiki page content is read/written via `feishu_doc`. ## Permissions Required: `docx:document`, `docx:document:readonly`, `docx:document.block:convert`, `drive:drive`
在 GitHub 查看