← Back to Skills Marketplace
jkzleond

Feishu Upload Image

by jkzleond · GitHub ↗ · v1.0.3 · MIT-0
cross-platform ⚠ suspicious
168
Downloads
0
Stars
0
Active Installs
4
Versions
Install in OpenClaw
/install feishu-upload-image
Description
Upload a local image to Feishu and get its image_key. Use when you need to send an image via Feishu IM but first need the image_key returned by the upload AP...
README (SKILL.md)

Feishu Upload Image

Upload a local image file to Feishu and receive the image_key needed for sending via feishu_im_user_message.

只做一件事:本地文件 → image_key

Usage

bash \x3Cskill-dir>/scripts/upload-image.sh /path/to/image.png

Environment variables

export FEISHU_IMAGE_PATH="/path/to/image.png"
bash \x3Cskill-dir>/scripts/upload-image.sh

Output

img_v3_02104_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxg

Complete Workflow

# 1. Upload → get image_key
IMAGE_KEY=$(bash \x3Cskill-dir>/scripts/upload-image.sh /path/to/image.png)

# 2. Send via feishu_im_user_message tool (OpenClaw-native, user token auto-managed)
#    action=send, msg_type=image, content="{\"image_key\":\"\x3CIMAGE_KEY>\"}"

Credentials

Reads appId and appSecret from openclaw.json at channels.feishu. Can be overridden with env vars FEISHU_APP_ID and FEISHU_APP_SECRET.

Usage Guidance
This skill's functionality is straightforward, but there are a few red flags you should address before installing: (1) The script reads credentials from /root/.openclaw/openclaw.json by default — the registry metadata did not declare this config path. Verify that file only contains the expected Feishu credentials or instead set FEISHU_APP_ID and FEISHU_APP_SECRET in the environment. (2) The script requires curl and python3 but the skill metadata doesn't declare required binaries; ensure those binaries are available in the runtime. (3) The script caches an app token in /tmp; ensure that caching policy is acceptable in your environment. (4) Confirm the skill source and owner (no homepage/origin provided). If you proceed, run the script in a least-privileged environment (isolated container or dedicated runner), review the openclaw.json contents, and consider updating the skill metadata to declare the config path and primary credential so the requirement is explicit.
Capability Analysis
Type: OpenClaw Skill Name: feishu-upload-image Version: 1.0.3 The skill is classified as suspicious because it performs high-risk actions such as reading sensitive credentials from '/root/.openclaw/openclaw.json' and making external network requests to the Feishu API. While these actions are aligned with the stated purpose in 'SKILL.md', the script 'scripts/upload-image.sh' contains a shell injection vulnerability in the 'get_cred' function where the 'OPENCLAW_JSON' environment variable is interpolated directly into a 'python3 -c' command. Additionally, it stores sensitive access tokens in a world-readable location ('/tmp/feishu_app_token.cache'), which is a risky security practice.
Capability Assessment
Purpose & Capability
The skill's purpose (upload a local image to Feishu and return image_key) matches the script's behavior. However, the registry metadata declares no required config paths, env vars, or primary credential, while the SKILL.md and script read credentials from an OpenClaw config file (default /root/.openclaw/openclaw.json) or FEISHU_APP_ID/FEISHU_APP_SECRET. This mismatch between declared requirements and actual needs is incoherent.
Instruction Scope
SKILL.md and the script are narrowly scoped (local file -> Feishu image_key) and use only Feishu's API. But the instructions (and script) explicitly read a platform config file for credentials and cache an app token in /tmp. The SKILL.md does not declare the dependency on reading that config path, nor does it declare required binaries (curl, python3) that the script uses.
Install Mechanism
No install spec; this is an instruction-only skill with an included shell script. No packages are downloaded or extracted during install, so the install mechanism itself is low-risk.
Credentials
Requesting Feishu appId/appSecret is proportionate to the task. However: (1) the skill did not declare these as required credentials in metadata (no primary credential), (2) it reads the OpenClaw config file by default which may contain other sensitive data on the host, and (3) required binaries (python3, curl) are not declared. The use of a default path (/root/.openclaw/openclaw.json) is a surprise capability that increases the risk surface.
Persistence & Privilege
The skill is not always-enabled, does not modify other skills, and only writes a short-lived token cache to /tmp/feishu_app_token.cache. It does not request elevated or persistent system privileges.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install feishu-upload-image
  3. After installation, invoke the skill by name or use /feishu-upload-image
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.3
Fix: remove hardcoded path; fix JSON escaping in example
v1.0.2
Fix: Credentials section no longer references non-existent skill
v1.0.1
Fix: credentials now read from openclaw.json, no hardcoded secrets
v1.0.0
Initial release: upload local image to Feishu and get image_key
Metadata
Slug feishu-upload-image
Version 1.0.3
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 4
Frequently Asked Questions

What is Feishu Upload Image?

Upload a local image to Feishu and get its image_key. Use when you need to send an image via Feishu IM but first need the image_key returned by the upload AP... It is an AI Agent Skill for Claude Code / OpenClaw, with 168 downloads so far.

How do I install Feishu Upload Image?

Run "/install feishu-upload-image" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Feishu Upload Image free?

Yes, Feishu Upload Image is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Feishu Upload Image support?

Feishu Upload Image is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Feishu Upload Image?

It is built and maintained by jkzleond (@jkzleond); the current version is v1.0.3.

💬 Comments