首页龙虾技能列表 › Send File — Send工具

Send File — Send工具

v1.0.1

发送文件到消息平台。触发词:发送文件、发送文档、发送截图、传文件、发文件。支持飞书等平台,内容优先级:生成的文档 > 本地文件 > 截图。

0· 266·1 当前·1 累计
by @wlong800·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/8
安全扫描
VirusTotal
无害
查看报告
OpenClaw
可疑
high confidence
The skill's behavior (local scripts that upload files to Feishu) matches its stated purpose, but the package metadata fails to declare required secrets (FEISHU_APP_ID / FEISHU_APP_SECRET) and the runtime instructions ask the agent to execute local scripts and persist credentials in shell rc files — these mismatches warrant caution.
评估建议
This skill appears to implement legitimate file-upload behavior for Feishu, but there are clear mismatches you should address before installing: (1) The registry metadata does not declare FEISHU_APP_ID / FEISHU_APP_SECRET even though the scripts and SKILL.md require them — ask the publisher to update metadata so automated systems know the skill needs secrets. (2) Inspect the bundled scripts yourself (they are short and readable) to confirm they only call official Feishu endpoints; the provided P...
详细分析 ▾
用途与能力
The skill claims to send files to messaging platforms (Feishu, Telegram, Discord) and includes scripts that implement Feishu upload/send flows — that is coherent. However, the registry metadata lists no required environment variables or primary credential, while both SKILL.md and scripts require FEISHU_APP_ID and FEISHU_APP_SECRET. The omission of those required credentials from the declared metadata is an important inconsistency.
指令范围
SKILL.md explicitly instructs the agent to execute a local Python script (exec) to upload files and to prefer generated files > local files > screenshots. That scope (reading local file paths, taking screenshots, and uploading them to an external service) is consistent with a 'send file' skill but grants the agent permission to access arbitrary user-supplied local paths and to run local scripts. The doc also suggests editing ~/.zshrc to store credentials, which is a persistence guidance the user should consider carefully.
安装机制
There is no install spec (instruction-only with included script files). No remote download or execution-from-URL is present. Scripts are bundled with the skill, so nothing is fetched from external release hosts during install. This is lower risk than remote installs, though shipped scripts still execute locally.
凭证需求
FEISHU_APP_ID and FEISHU_APP_SECRET are required by the Python script and are appropriate for Feishu integration, but the skill registry metadata does not declare any required env vars or a primary credential. That mismatch reduces transparency and prevents automated gating of secrets. The skill also instructs persisting secrets into shell rc files (e.g., ~/.zshrc), which is convenient but may be inappropriate for sensitive credentials.
持久化与权限
The skill does not request always:true and does not modify other skills or system-wide settings. However, the instructions encourage the user to persist Feishu credentials in shell rc files, which elevates long-term access to those credentials. The agent is also instructed to exec local scripts, allowing runtime execution of bundled code.
安装前注意事项
  1. The registry metadata does not declare FEISHU_APP_ID / FEISHU_APP_SECRET even though the scripts and SKILL.md require them — ask the publisher to update metadata so automated systems know the skill needs secrets. (
  2. Inspect the bundled scripts yourself (they are short and readable) to confirm they only call official Feishu endpoints; the provided Python script does call Feishu APIs and performs uploads, which is expected. (
  3. Avoid pasting sensitive secrets into ~/.zshrc; prefer a secure secret store or environment mechanism and remove long-lived creds when no longer needed. (
  4. Be aware the skill will run local scripts and can read any file path you give it (or that the agent may search for if you allow it to infer 'workspace' files), so don't ask it to send highly sensitive files without reviewing behavior. If you cannot verify the publisher or prefer stricter controls, run the scripts in a sandboxed environment or request the author to publish the skill with correct metadata and a vetted install procedure.
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.12026/3/18

修复:统一使用 stream 类型上传文件,避免飞书 API 对图片等类型的限制

● 无害

安装命令 点击复制

官方npx clawhub@latest install send-file
镜像加速npx clawhub@latest install send-file --registry https://cn.clawhub-mirror.com

技能文档

Overview

将文件发送到消息平台(飞书、Telegram、Discord 等)。

内容来源优先级(用户未指定时):

  • 🥇 生成的文档 - 刚刚由代码/工具生成的文件(报告、导出数据等)
  • 🥈 本地文件 - 用户机器上已存在的文件
  • 🥉 截图 - 屏幕截图或图片

配置(必须)

使用前需要配置飞书应用凭证:

# 临时配置(当前终端)
export FEISHU_APP_ID='cli_xxx'
export FEISHU_APP_SECRET='xxx'

# 永久配置(添加到 ~/.zshrc 或 ~/.bashrc) echo "export FEISHU_APP_ID='cli_xxx'" >> ~/.zshrc echo "export FEISHU_APP_SECRET='xxx'" >> ~/.zshrc source ~/.zshrc

获取飞书应用凭证:

  • 访问 飞书开放平台
  • 创建或选择应用
  • 在「凭证与基础信息」中获取 App ID 和 App Secret
  • 确保应用有 im:消息im:resource 权限

Quick 开始

用户请求发送文件时:

用户: 把这个文件发到飞书
用户: 发送 /path/to/file.pdf 给我
用户: 把刚才生成的报告发给我

重要:飞书文件发送必须用 Python 脚本

⚠️ OpenClaw 的 message tool 无法直接发送本地文件(只能发链接)。

正确做法:直接执行 Python 脚本

python ~/.openclaw/skills/send-file/scripts/send_feishu_file.py  

执行时机:

  • 用户说"发文件"、"发送xxx"、"把xxx发给我"时
  • 当前在飞书对话中,自动推断 open_id
  • 直接用 exec 调用脚本,不要用 消息 tool 的 filePath 参数

Platform Support

平台状态说明
飞书✅ 支持使用 message tool,支持多种文件类型
Telegram✅ 支持使用 message tool
Discord✅ 支持使用 message tool
Signal✅ 支持使用 message tool
微信⏳ 计划中暂未原生支持
QQ⏳ 计划中暂未原生支持

Workflow

Step 1: 确定文件来源(按优先级)

当用户说"发文件"但未明确指定时,按优先级判断:

优先 1: 生成的文档

  • 刚刚由工具生成的文件(如报告、代码、导出数据)
  • workspace 目录下的新文件
  • 直接使用该路径

优先 2: 本地文件

  • 用户明确指定路径:发送 /path/到/file.pdf
  • 模糊路径:发送桌面的那个pdf → 需要搜索或确认
  • 使用 读取 确认文件存在

优先 3: 截图

  • 用户明确要求截图
  • 需要先截图再发送
  • macOS: 使用 screencapture 命令

Step 2: 确定目标平台和接收者

当前对话自动推断

  • 如果用户在飞书对话中 → 发送到当前对话
  • 无需额外指定

明确指定

  • 发到飞书群xxx
  • 发到 Telegram
  • 使用 消息 tool 的 channeltarget 参数

Step 3: 发送文件

重要:飞书文件发送需要两步

飞书不能直接发送本地文件路径,必须先上传获取 file_key

Step 3.1: 上传文件到飞书

# 1. 获取 tenant_access_token
# 2. 调用 POST /open-apis/im/v1/files 上传文件
# 3. 获取返回的 file_key

Step 3.2: 发送文件消息

# 调用 POST /open-apis/im/v1/messages?receive_id_type=open_id
# msg_type: "file"
# content: {"file_key": ""}

Python 示例代码:

import requests
import json

# 1. 获取 token token_resp = requests.post( "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal", json={"app_id": APP_ID, "app_secret": APP_SECRET} ) token = token_resp.json()["tenant_access_token"]

# 2. 上传文件 with open(file_path, 'rb') as f: upload_resp = requests.post( "https://open.feishu.cn/open-apis/im/v1/files", headers={"Authorization": f"Bearer {token}"}, files={'file': (filename, f, mime_type)}, data={'file_type': file_type, 'file_name': filename} ) file_key = upload_resp.json()["data"]["file_key"]

# 3. 发送文件消息 requests.post( "https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=open_id", headers={"Authorization": f"Bearer {token}", "Content-Type": "application/json"}, json={ "receive_id": open_id, "msg_type": "file", "content": json.dumps({"file_key": file_key}) } )

file_type 对照表:

文件类型file_type
Excel (.xlsx/.xls)xlsx
Word (.docx/.doc)doc
PDFpdf
图片image
视频video
音频audio
其他stream

File 类型 Support

飞书支持的文件类型

类型扩展名大小限制
文档pdf, doc, docx, xls, xlsx, ppt, pptx30MB
图片jpg, jpeg, png, gif, webp20MB
音频mp3, wav, m4a, aac30MB
视频mp4, mov, avi50MB
压缩包zip, rar, 7z30MB

Examples

示例 1: 发送刚生成的文件

用户:把刚才生成的报告发到飞书

1. 确认生成的文件路径(通常是 workspace 目录)
  • 使用 message tool 发送

示例 2: 发送本地文件

用户:发送 /Users/wlong/Desktop/report.pdf 给我

1. 确认文件存在
  • 使用 message tool 发送,target 留空(当前对话)

示例 3: 截图并发送

用户:截个屏发给我

1. 使用 screencapture 截图
  • 保存到临时文件
  • 使用 message tool 发送

Scripts

scripts/send_feishu_file.py

飞书文件发送脚本,自动处理上传和发送流程。

用法:

python ~/.openclaw/skills/send-file/scripts/send_feishu_file.py  

示例:

# 发送文件给用户
python ~/.openclaw/skills/send-file/scripts/send_feishu_file.py \
  /Users/wlong/Downloads/report.xlsx \
  ou_26b058ca29943e674a9b0c9039329897

环境变量:

  • FEISHU_APP_ID: 飞书应用 ID(必须配置
  • FEISHU_APP_SECRET: 飞书应用密钥(必须配置

scripts/send_file.sh

通用文件发送辅助脚本(用于文件检查和验证)。

Notes

  • 大文件发送可能需要时间,告知用户等待
  • 飞书有文件大小限制,超大文件需要分片或压缩
  • 发送失败时检查文件格式和大小
  • 微信/QQ 支持待后续扩展
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务