Agent skill

Openclaw Kaipai AI

by LeoYeAI in LeoYeAI/openclaw-master-skills

Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessionsspawn (main session).

MITAuto-check: notes

Install Openclaw Kaipai AI

skills CLI
$ npx skills add LeoYeAI/openclaw-master-skills --skill openclaw-kaipai-ai -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LeoYeAI/openclaw-master-skills openclaw-kaipai-ai --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LeoYeAI/openclaw-master-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/kaipai-skill .claude/skills/openclaw-kaipai-ai && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
openclaw-kaipai-ai
GitHub stars
2.2k
Token cost
~6k tokens
SKILL.md length
2,412 words
Files
21 (incl. scripts)
Skills in repo
1,235
Repo updated
First seen
Licence
MIT

At a glance

Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessionsspawn (main session).

  • Works in 5 steps: Pre-Flight Check (MANDATORY — run before… → Pick task and input → Install dependencies → …
  • The user asks for watermark removal
  • SKILL.md covers When to Use This Skill, Billing and user-facing claims…, Supported Algorithms and Multi-stage pipelines…, plus 8 more sections
  • Runs Python scripts from its folder; calls python3 and curl; reaches open.feishu.cn; needs TELEGRAM_BOT_TOKEN

What it does

Openclaw Kaipai AI is an agent skill from LeoYeAI/openclaw-master-skills. Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessionsspawn (main session). Image → eraserwatermark or imagerestoration + blocking run-task only (never spawn-run-task for image tasks). Process images or video with Kaipai AI — four tasks — image watermark removal (eraserwatermark), video watermark removal (videoscreenclear), image quality restoration (imagerestoration), video quality restoration (hdvideoallinone). Use when the user asks for watermark removal or quality restoration on images…

Its SKILL.md is about 6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 24 other files, including scripts (for example `README.md`, `_meta.json` and `docs/errors-and-polling.md`).

The repository describes itself as: 🧠 Curated collection of 1209+ best OpenClaw skills — weekly updated by MyClaw.ai. The licence is MIT.

When your agent uses it

  • The user asks for watermark removal
  • Quality restoration on images

Example prompts

  • “/openclaw-kaipai-ai”

Requirements

  • Python 3
  • A credential in TELEGRAM_BOT_TOKEN

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Pre-Flight Check (MANDATORY — run before anything else)
  2. Pick task and input
  3. Install dependencies
  4. Run the task
  5. Deliver result to the channel

What it can do on your machine

Read from SKILL.md and the folder at commit e5199b5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 10 files in scripts/ (Python, from the files we listed), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • open.feishu.cn

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • TELEGRAM_BOT_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Openclaw Kaipai AI loads about 6k tokens when it runs. Until then it costs about 213 tokens; SKILL.md has 2,412 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~213
When it runs · the whole SKILL.md, loaded when a task matches
~6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:93
    "Set **MT_AK** and **MT_SK** in `scripts/.env`, then run:\n```\nsource scripts/.env\n```\nIf you do not have keys, conta
  • NoteMentions a .env fileSKILL.md:107
    Set MT_AK and MT_SK in scripts/.env, then run:
  • NoteMentions a .env fileSKILL.md:108
    source scripts/.env
  • NoteMentions a .env fileSKILL.md:353
    _AK` / `MT_SK` first; if unset, `scripts/.env` is read automatically (same as `SkillClient`).

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from LeoYeAI/openclaw-master-skills at commit e5199b5, republished under its MIT licence (© LeoYeAI). 2,412 words, ~6,012 tokens.

Download SKILL.mdSave it as .claude/skills/openclaw-kaipai-ai/SKILL.md (or your agent's skills folder). This skill also uses 20 other files; get the full folder from GitHub.
name
openclaw-kaipai-ai
description
Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessions_spawn (main session). Image → eraser_watermark or image_restoration + blocking run-task only (never spawn-run-task for image tasks). Process images or video with Kaipai AI — four tasks — image watermark removal (eraser_watermark), video watermark removal (videoscreenclear), image quality restoration (image_restoration), video quality restoration (hdvideoallinone). Use when the user asks for watermark removal or quality restoration on images or video. Paid API (consumes tenant quota); never claim the service is free or invent pricing. For videoscreenclear and hdvideoallinone, always use spawn-run-task plus OpenClaw sessions_spawn in the main session (never blocking run-task there); only bypass spawn if the host explicitly forbids sessions_spawn.
version
1.2.2

Kaipai Skill

When to Use This Skill

Activate when the user wants any of the following:

  • Watermark removal on images or video (remove watermark, eraser watermark, etc.)
  • Image quality restoration (restore, upscale, enhance, super-resolution)
  • Video quality restoration (video restore, upscale, hdvideo-style enhancement)

Billing and user-facing claims (MANDATORY)

  • Fact: Each successful run-task (including inside a sessions_spawn worker) goes through server-side quota / credit consumption for the MT_AK tenant. This is a paid, metered commercial API, not free compute bundled with the skill or the host.
  • Forbidden: Do not state or imply that the service is free, costs nothing, uses no quota, has unlimited trial, or similar. Do not invent prices, plan names, promotions, or trial rules.
  • Allowed: Neutral wording — e.g. processing uses the Kaipai account quota tied to the configured keys; billing and plans are per your console or administrator. If the user asks about cost, point them to admin / official billing docs / console; do not guess. When the API returns quota or membership errors, follow Step 3 — MANDATORY (quota / consume failures) using server detail and pricing_url when present.
  • On success too: Success summaries must stay factual (task completed, delivery). Do not add “free” or zero-cost implications.

Supported Algorithms

task_nameCapabilityInput
eraser_watermarkImage watermark removalImage path or URL
videoscreenclearVideo watermark removalVideo path or URL
image_restorationImage quality restorationImage path or URL
hdvideoallinoneVideo quality restorationVideo path or URL
Video tasks — default execution

For videoscreenclear and hdvideoallinone: spawn-run-task → pass sessions_spawn_args to sessions_spawn (main session does not block on run-task). Command shape, runTimeoutSeconds (default 3600), worker install-deps / run-task / Step 4, polling and recovery: §3b and docs/errors-and-polling.md.


Multi-stage pipelines (chaining tasks) / 多阶段管线

When the user asks for more than one Kaipai step on the same media (e.g. remove watermark then restore quality), treat each step as a separate job:

Typical chainStages
Imageeraser_watermark → image_restoration
Videovideoscreenclear → hdvideoallinone

Rules:

  1. After stage A completes with skill_status: "completed", use primary_result_url or output_urls[0] as --input for stage B with a new --task. That is a new job, not a retry of stage A. For video, stage B means a new spawn-run-task + sessions_spawn (each spawn embeds a single run-task), not a second run-task inside the same embed.
  2. “Do not re-run run-task” in this skill means: do not submit run-task again for the same task_id / the same submitted job (use query-task to resume polling instead). It does not forbid the next pipeline stage with a different task_name and the previous result URL as input.
  3. Step 4 (delivery): Prefer final-stage native delivery when the user wanted the full pipeline; intermediate stages may still run embedded Step 4 per worker (one spawn per video stage) — tune the user-facing copy if they only care about the last asset.
  4. Video chains (medeo-style): One sessions_spawn = one embedded run-task. Do not put two run-task calls in one spawn. Chain = multiple spawns: after stage A, read primary_result_url from stdout or last-task / history, then spawn-run-task for stage B with that URL as --input. No video run-task in the main session. Optional one-line user update before the second spawn.

See also Step 3 success bullets and agent_instruction in the JSON.


API submission path (MANDATORY)

  • New jobs: Submit only via python3 {baseDir}/scripts/kaipai_ai.py run-task … (§3a / §3b), or the same run-task command embedded in spawn-run-task → sessions_spawn. Do not hand-craft HTTP to wapi.kaipai.ai or AIGC / invoke endpoints to replace that flow — that skips POST /skill/consume.json (quota and permission) and breaks the supported pipeline.
  • Exception: query-task --task-id is only for resuming status polling on an existing full task_id (no upload, no second consume). Do not use it instead of run-task for a new submission.
  • No curl replay: This skill does not emit debug curl for API calls. Do not hand-craft HTTP to wapi / AIGC to mimic requests — always use the CLI above so /skill/consume.json runs before algorithm submit.

0. Pre-Flight Check (MANDATORY — run before anything else)

Verify AK/SK are configured (only run this command; do not read other Python sources first):

bash
python3 {baseDir}/scripts/kaipai_ai.py preflight
  • Output ok → continue to Step 1
  • Output missing → stop and send the user the configuration message below

Feishu — send an interactive card via the Feishu API (do not use the message tool for this):

python
import json, urllib.request
cfg = json.loads(open("~/.openclaw/openclaw.json").read())
feishu = cfg["channels"]["feishu"]["accounts"]["default"]
token = json.loads(urllib.request.urlopen(urllib.request.Request(
    "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal",
    data=json.dumps({"app_id": feishu["appId"], "app_secret": feishu["appSecret"]}).encode(),
    headers={"Content-Type": "application/json"}
)).read())["tenant_access_token"]
card = {
    "config": {"wide_screen_mode": True},
    "header": {"title": {"tag": "plain_text", "content": "🖼️ Kaipai — credentials required"}, "template": "blue"},
    "elements": [{"tag": "div", "text": {"tag": "lark_md", "content": "Set **MT_AK** and **MT_SK** in `scripts/.env`, then run:\n```\nsource scripts/.env\n```\nIf you do not have keys, contact your administrator."}}],
}
urllib.request.urlopen(urllib.request.Request(
    "https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=open_id",
    data=json.dumps({"receive_id": "<USER_OPEN_ID>", "msg_type": "interactive", "content": json.dumps(card)}).encode(),
    headers={"Authorization": f"Bearer {token}", "Content-Type": "application/json"}
))

Telegram / Discord / other channels — use the message tool with plain text:

🖼️ Kaipai — credentials required

Set MT_AK and MT_SK in scripts/.env, then run:
  source scripts/.env

If you do not have keys, contact your administrator.

Step 1 — Pick task and input

Choose task_name from the table above and confirm the input file location.

Media type → task_name (MANDATORY checklist):

  1. Video — Path or URL ends with common video extensions (e.g. .mp4, .mov, .webm, .mkv, .m4v) or the user / attachment clearly indicates video / clip / footage → choose only videoscreenclear (watermark) or hdvideoallinone (quality). Then use §3b (spawn-run-task + sessions_spawn), not blocking run-task in the main session.
  2. Image — Extensions like .jpg, .jpeg, .png, .webp, .gif, .bmp or the user says photo / picture / screenshot / 图 (static image) → choose only eraser_watermark or image_restoration. Use §3a (run-task in the main session). Do not use spawn-run-task for these tasks (the CLI rejects it).
  3. Watermark vs quality — “Remove watermark / 去水印” → eraser_watermark (image) or videoscreenclear (video). “Restore / upscale / enhance / 画质修复 / 清晰化” → image_restoration (image) or hdvideoallinone (video).
  4. Uncertain — If media type is ambiguous (e.g. user only says “去水印” with no file), ask one short clarifying question (image or video?) or infer from IM attachment type per docs/im-attachments.md; do not guess the wrong modality.
  5. Same message: video + extra still image — IM payloads often include both a video and a separate still (Feishu preview / image_key, Telegram or other cover / thumbnail, or an extra photo next to the clip). If the user’s wording targets the video (watermark or quality on the clip), use only that video as --input for videoscreenclear or hdvideoallinone (§3b). Do not submit eraser_watermark or image_restoration for the sibling image unless the user explicitly asks to process that picture too. Optional cover for sending the result is a delivery helper concern (docs/feishu-send-video.md, Telegram --cover-url), not a second Kaipai job.

Getting media from IM messages (full detail: docs/im-attachments.md):

PlatformHow to obtain
FeishuMessage resource URL / image_key + message_id → optional resolve-input
Telegramfile_id → resolve-input --telegram-file-id (needs TELEGRAM_BOT_TOKEN)
Discordattachments[0].url — often usable directly as --input
GenericURL or path
bash
python3 {baseDir}/scripts/kaipai_ai.py resolve-input --file /tmp/saved.jpg --output-dir /tmp
# or: --url, --telegram-file-id, --feishu-image-key + --feishu-message-id

Use the JSON path field as --input.

--input as http(s):// URL: In shells, quote the whole URL so & in query strings (e.g. signed OSS links) is not split. Large or slow downloads: defaults are 120s read timeout and 100MB max (same as resolve-input --url); override with MT_AI_URL_READ_TIMEOUT, MT_AI_URL_CONNECT_TIMEOUT, MT_AI_URL_MAX_BYTES. For very large video or flaky links, prefer resolve-input --url then --input with the local path.

If the user already gave a path or URL when triggering the skill, go to Step 2 without asking again.

Reply immediately to acknowledge the task, for example:

"🖼️ Processing — please wait a moment…"


Step 2 — Install dependencies

bash
python3 {baseDir}/scripts/kaipai_ai.py install-deps

If dependencies are already installed this step is quick; then continue to Step 3.


Step 3 — Run the task

If task is videoscreenclear or hdvideoallinone, use only §3b (spawn-run-task + sessions_spawn). Use §3a only for image tasks (eraser_watermark, image_restoration).

3a — Inline (blocking, image tasks only)

Use when the host can wait on the shell until the command returns (eraser_watermark, image_restoration).

bash
python3 {baseDir}/scripts/kaipai_ai.py run-task \
  --task "<task_name>" \
  --input "<image_url_or_path>"

Replace <task_name> and <image_url_or_path> with the real values.

Default params include rsp_media_type: url. For custom JSON params:

bash
python3 {baseDir}/scripts/kaipai_ai.py run-task \
  --task "<task_name>" \
  --input "<url_or_path>" \
  --params '{"parameter":{"rsp_media_type":"url"}}'

When run-task exits 0, stdout is JSON that includes:

  • skill_status: "completed" — the algorithm and polling are finished; the result is in this response. If the user asked for only this stage, proceed to Step 4. If they asked for a multi-stage pipeline, use primary_result_url as --input for the next --task (see Multi-stage pipelines above); Step 4 after the last stage. Do not re-submit run-task for the same task_id (same job); use query-task to resume polling if needed.
  • output_urls — ordered http(s) links (same extraction as before: data.result.urls, images, media_info_list, etc.).
  • primary_result_url — same as output_urls[0] when present; convenient for delivery scripts.
  • task_id — full task id as a top-level string when known (from data.result.id or the polling session). Keep it for manual status recovery or support handoff; do not truncate. Some synchronous completions may omit it if the API does not return an id.
  • agent_instruction — short reminder for the model.
  • meta / data — full API payload for debugging.

MANDATORY (user-visible outcome): When stdout JSON has skill_status: "completed" (from run-task or query-task), you must (1) send the user a short natural-language summary (success + what was done), and (2) complete Step 4 on their channel (delivery scripts below) using primary_result_url or output_urls[0], unless the user explicitly asked only for the URL with no IM delivery. Do not end the turn with only raw JSON in the tool transcript — the user should see a normal reply and the media or link in the chat.

When run-task exits non-zero, stdout is JSON with skill_status: "failed" (or an error field) — explain it to the user; do not treat as success or Step 4 delivery.

MANDATORY (quota / consume failures): When stdout JSON has failure_stage: "consume_quota" and error is credit_required (typically api_code 60002): you must send the user a clear, user-visible message grounded in the server detail (API msg). If the JSON includes pricing_url (extracted from that message when it contains an https link), must include it as a clickable link; if pricing_url is absent, must quote or paste the full detail so any links or instructions from the API still reach the user. Do not only dump raw JSON; do not retry run-task expecting success from tweaking --task / --params alone. When error is membership_required (60001): same rule (pricing_url when present, else full detail). When error is consume_param_error: treat as parameter / invocation mistakes — fix --task, --input, --params per SKILL and remote config; do not tell the user to recharge.

Video tasks use §3b in the main session. Polling, stderr, MT_AI_*, timeouts, SIGKILL / host caps, query-task / last-task recovery: docs/errors-and-polling.md and §3c–§3d. Optional: raise host tool/session wait limits — does not replace §3b for video.

Show full SKILL.md (798 more words)Show less
3b — Async worker (sessions_spawn, video tasks only)

Forbidden: Do not call spawn-run-task for eraser_watermark or image_restoration. Image tasks use §3a only. The CLI exits with an error if --task is not a video algorithm.

Same pattern as medeo-video spawn-task: the main agent does not block on polling; a sub-session runs run-task and is told exactly how to detect success and deliver.

  1. Build the payload (<task_name> must be videoscreenclear or hdvideoallinone):
bash
python3 {baseDir}/scripts/kaipai_ai.py spawn-run-task \
  --task "<task_name>" \
  --input "<video_url_or_path>" \
  --deliver-to "<oc_xxx_or_ou_xxx_or_chat_id>" \
  --deliver-channel "feishu"

Optional: --params '<json>' (same as run-task), --deliver-channel telegram|discord|..., --run-timeout-seconds (default 3600, aligned with extended poll budget). Do not reduce runTimeoutSeconds below the payload default unless you accept timeout risk — wall time varies (often minutes to tens of minutes).

  1. Call OpenClaw sessions_spawn with the printed sessions_spawn_args (task, label, runTimeoutSeconds) without reducing runTimeoutSeconds unless you intentionally accept timeout risk.

  2. Reply immediately to the user that processing has started (same as Step 1 acknowledgment). The sub-agent completes install-deps (if needed), run-task, then Step 4 using skill_status / output_urls per the embedded task text. For video tasks on Feishu/Telegram, the payload instructs feishu_send_video.py / telegram_send_video.py after curl download.

Multi-stage + spawn: One embed = one run-task (medeo-style). Video chains: Multi-stage pipelines (rule 4). Image chains: §3a only — run run-task once per stage in the main session (or host-equivalent blocking shell); do not use spawn-run-task for image stages.

3c — Resume polling (query-task)

When you already have a full task_id (from a previous stdout JSON, e.g. success, poll_timeout, or poll_aborted, or from stderr task_id=... lines) and the job may still be running on the server — do not run run-task again for that id; resume polling only:

bash
python3 {baseDir}/scripts/kaipai_ai.py query-task \
  --task-id "<full_task_id>"

Optional --task sets the task_name field in the success JSON for your logs (default labels as query_task). Uses the same MT_AK / MT_SK and remote config as the original submit. Stdout JSON and exit codes match run-task: exit 0 with skill_status: "completed" when the task finishes successfully; exit non-zero with skill_status: "failed" / error on timeout, query errors, or API-reported failure.

3d — Last task and history (user-visible)

Local state under ~/.openclaw/workspace/openclaw-kaipai-ai/ (last_task.json, history/task_*.json, last 50 records). For async run-task, last_task.json may briefly show skill_status: "polling" with task_id while the client is still polling (checkpoint so query-task can resume if the process is killed mid-poll):

bash
python3 {baseDir}/scripts/kaipai_ai.py last-task
python3 {baseDir}/scripts/kaipai_ai.py history

Use when the user asks whether a recent job finished, or for a short history summary. Do not expose raw secrets.


Step 4 — Deliver result to the channel

Required after success: When skill_status is completed, deliver here — the CLI does not post to IM by itself. Send the processed image or video back on the user’s platform (and keep the Step 3 MANDATORY summary in the same turn).

Resolve deliver-to target
PlatformSourceFormat
Feishu groupconversation_label or chat_id without chat: prefixoc_xxx
Feishu DMsender_id without user: prefixou_xxx
TelegramInbound message chat_ide.g. -1001234567890
Discordchannel_ide.g. 123456789
Feishu — image tasks
bash
python3 {baseDir}/scripts/feishu_send_image.py \
  --image "<result_url>" \
  --to "<oc_xxx or ou_xxx>"
Feishu — video tasks (videoscreenclear, hdvideoallinone)
bash
curl -sL -o /tmp/kaipai_result.mp4 "<primary_result_url_or_output_urls[0]>"
python3 {baseDir}/scripts/feishu_send_video.py \
  --video /tmp/kaipai_result.mp4 \
  --to "<oc_xxx or ou_xxx>" \
  --video-url "<primary_result_url_or_output_urls[0]>" \
  [--cover-url "<optional_thumb_url>"] \
  [--duration <milliseconds_if_known>]

--video-url adds a second message with the download link. Optional cover/duration; details: docs/feishu-send-video.md.

Telegram — image tasks
bash
TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" python3 {baseDir}/scripts/telegram_send_image.py \
  --image "<result_url>" \
  --to "<chat_id>" \
  --caption "✅ Done"
Telegram — video tasks
bash
curl -sL -o /tmp/kaipai_result.mp4 "<primary_result_url_or_output_urls[0]>"
TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" python3 {baseDir}/scripts/telegram_send_video.py \
  --video /tmp/kaipai_result.mp4 \
  --to "<chat_id>" \
  --video-url "<primary_result_url_or_output_urls[0]>" \
  [--cover-url "<optional_thumb_url>"] \
  [--duration <seconds>] \
  --caption "✅ Done"

--video-url sends a follow-up text message with the download link. Max ~50 MB for Bot API video; larger files rely on the link line.

Discord

Download the result, then send with the message tool (use .mp4 for video, .jpg / .png for image):

bash
curl -L "<result_url>" -o /tmp/result_image.jpg

Then:

message(action="send", channel="discord", target="<channel_id>", filePath="/tmp/result_image.jpg")

For files over ~25MB, send the result URL as a link instead.

WhatsApp / Signal / others

Use the message tool with media, or send the result URL directly.


Quick commands reference (agent)

CommandDescriptionUser-facing?
preflightAK/SK ok / missingNo
install-depspip install requirementsNo
run-taskSubmit + poll until doneIndirectly
query-taskResume poll by task_idWhen recovering
spawn-run-taskPrint sessions_spawn payload — videoscreenclear / hdvideoallinone onlyNo
resolve-inputIM/URL → local path for --inputNo
last-taskLast job JSONYes — “last job?”
historyUp to 50 recent recordsYes — “history?”

Notes

  • Single business entrypoint: algorithm runs and config fetch go through kaipai_ai.py; agents do not need to open client.py / ai/api.py. Must not bypass this with direct HTTP to AIGC/wapi for new jobs — see API submission path (MANDATORY) above. query-task is the supported way to resume polling when a task_id is already known.
  • Video tasks: spawn-run-task + sessions_spawn in the main session (mandatory path); the worker runs run-task and delivery. run-task in the main session is for image tasks (§3a) and for recovery (query-task). Polling and env tuning: docs/errors-and-polling.md.
  • AK/SK loading: environment variables MT_AK / MT_SK first; if unset, scripts/.env is read automatically (same as SkillClient).
  • Client init pulls the latest algorithm config from the server; no manual INVOKE setup.
  • Bot token safety: pass TELEGRAM_BOT_TOKEN and similar only via environment variables — never as CLI arguments.
  • On failure: stdout JSON has skill_status: "failed" / error, exit code ≠ 0 — explain to the user; check AK/SK, network, quotas; timeouts / SIGKILL / no final JSON: docs/errors-and-polling.md. URL input errors may mention HTTP 403 (expired signed URL) or timeout — see MT_AI_URL_* env vars above.
  • More docs: README.md, docs/multi-platform.md, docs/im-attachments.md, docs/feishu-send-video.md.

© LeoYeAI, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 20 other files (scripts) in skills/kaipai-skill of LeoYeAI/openclaw-master-skills.

  • SKILL.md
  • README.md
  • _meta.json
  • docs/errors-and-polling.md
  • docs/feishu-send-video.md
  • docs/im-attachments.md
  • docs/multi-platform.md
  • scripts/ai/__init__.py
  • scripts/ai/api.py
  • scripts/ai/gid_cache.py
  • scripts/client.py
  • scripts/config.py
  • scripts/feishu_send_image.py
  • scripts/feishu_send_video.py
  • scripts/kaipai_ai.py
  • scripts/requirements.txt
  • scripts/sign_sdk/__init__.py
  • … and 4 more

Open the folder on GitHubat commit e5199b5

Compare with similar skills

Openclaw Kaipai AI next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Openclaw Kaipai AI compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Openclaw Kaipai AI this skillLeoYeAI/openclaw-master-skills2.2k—~6kAutomated safety check: NotesMIT
Spawnalirezarezvani/claude-skills28k—~829Automated safety check: PassMIT
Spawnkoolamusic/claudefiles130—~1.4kAutomated safety check: PassMIT
Orchestrator Container Spawnsamugit83/redamon3k—~1.7kAutomated safety check: PassMIT
Agentica Spawnparcadei/Continuous-Claude-v33.9k1 repos~512Automated safety check: PassMIT
Spawn Instanceaeonfun/aeon770—~3.8kAutomated safety check: PassMIT

Similar skills

  • Spawn

    alirezarezvani/claude-skills

    Launch N parallel subagents in isolated git worktrees to compete on the session task.

    28k GitHub stars~829 tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check passed
  • Spawn

    koolamusic/claudefiles

    Fan out work to parallel sub-agents with worktree isolation.

    130 GitHub stars~1.4k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Spawning and hardening scan containers from the recon orchestrator: the security flags that look correct and break the container, and the sibling bind-mount path handling.

    3k GitHub stars~1.7k tokensUpdated 2 days ago
    SecurityAuto-check passed
  • Agentica Spawn

    parcadei/Continuous-Claude-v3

    Spawn Agentica multi-agent patterns

    3.9k GitHub starsUsed in 1 repo~512 tokens
    Agent WorkflowsAuto-check passed
  • Spawn Instance

    aeonfun/aeon

    Clone this Aeon agent into a new GitHub repo - fork, configure skills, validate, and register in the fleet

    770 GitHub stars~3.8k tokensUpdated yesterday
    Auto-check passed
  • Spawn Reviewers

    closedloop-ai/claude-plugins

    Spawn and collect the reviewer fleet at stage20spawnreviewers.

    122 GitHub stars~12k tokensUpdated yesterday
    DevelopmentAuto-check passed

More from LeoYeAI/openclaw-master-skills

All 1,200 skills in this repo
  • DevOps Pipeline Management

    LeoYeAI/openclaw-master-skills

    Manages pipelines on a DevOps quality and efficiency platform through its OpenAPI: list workspaces and templates, create, update, run and cancel pipelines, and read run records.

    2.2k GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check: notes
  • Feishu Document Collaboration

    LeoYeAI/openclaw-master-skills

    Patches OpenClaw's Feishu extension so an edited document triggers an isolated agent session that reads the doc and replies inline, turning it into a live chat space.

    2.2k GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Files Memory System

    LeoYeAI/openclaw-master-skills

    Multi-context memory management system for OpenClaw agents with group-isolated storage, global shared memory, workspace organization, and group-specific skills isolation.

    2.2k GitHub stars~3.8k tokensUpdated 2 mo ago
    Auto-check passed
  • GEO-Claw AI Visibility Agent

    LeoYeAI/openclaw-master-skills

    Runs a brand's AI-search visibility work end to end: diagnosing how AI platforms represent it, repositioning it, producing AI-optimized content and monitoring ongoing mentions.

    2.2k GitHub stars~4.7k tokensUpdated 2 mo ago
    Auto-check passed
  • Google Workspace CLI

    LeoYeAI/openclaw-master-skills

    Installs and authenticates the gws CLI, then automates Gmail, Drive, Sheets, Calendar, Docs, Chat and Tasks with ready-made recipes, persona bundles and security audits.

    2.2k GitHub stars~2.6k tokensUpdated 2 mo ago
    Auto-check: notes
  • HealthFit Health Advisors

    LeoYeAI/openclaw-master-skills

    Runs four advisor roles, a fitness coach, nutritionist, data analyst and TCM practitioner, to build a health profile and track workouts, diet and wellness over time.

    2.2k GitHub stars~4.4k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Openclaw Kaipai AI

What does Openclaw Kaipai AI do?

Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessionsspawn (main session). Openclaw Kaipai AI is an agent skill from LeoYeAI/openclaw-master-skills. Video file → videoscreenclear or hdvideoallinone + spawn-run-task and sessionsspawn (main session).

When should I use Openclaw Kaipai AI?

Openclaw Kaipai AI fits situations like: the user asks for watermark removal; quality restoration on images.

How do I install Openclaw Kaipai AI in Claude Code?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill openclaw-kaipai-ai -a claude-code`. Or copy the skill folder (skills/kaipai-skill in LeoYeAI/openclaw-master-skills) into .claude/skills/openclaw-kaipai-ai in your project. Claude Code loads it when a task matches its description.

How do I install Openclaw Kaipai AI in Codex?

Run `npx skills add LeoYeAI/openclaw-master-skills --skill openclaw-kaipai-ai -a codex`. Or copy the skill folder (skills/kaipai-skill in LeoYeAI/openclaw-master-skills) into .agents/skills/openclaw-kaipai-ai in your project. Codex loads it when a task matches its description.

Can I use Openclaw Kaipai AI in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LeoYeAI/openclaw-master-skills --skill openclaw-kaipai-ai -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/openclaw-kaipai-ai, .gemini/skills/openclaw-kaipai-ai, .github/skills/openclaw-kaipai-ai and .opencode/skills/openclaw-kaipai-ai in your project.

What does Openclaw Kaipai AI need to run?

Going by SKILL.md and its folder, Openclaw Kaipai AI needs Python for the scripts in its folder, the command-line tools its instructions call (python3 and curl) and credentials named TELEGRAM_BOT_TOKEN. Our summary lists: Python 3; A credential in TELEGRAM_BOT_TOKEN.

Does Openclaw Kaipai AI access the network?

SKILL.md names 1 domain. In commands or code: open.feishu.cn; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Openclaw Kaipai AI safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Openclaw Kaipai AI use?

Openclaw Kaipai AI is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Openclaw Kaipai AI use?

About 6k tokens (SKILL.md is roughly 24k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Openclaw Kaipai AI?

Skills that share tags, products or a category with Openclaw Kaipai AI: Spawn (alirezarezvani/claude-skills, 28k stars), Spawn (koolamusic/claudefiles, 130 stars), Orchestrator Container Spawn (samugit83/redamon, 3k stars) and Agentica Spawn (parcadei/Continuous-Claude-v3, 3.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Openclaw Kaipai AI?

LeoYeAI (a GitHub user) maintains it in LeoYeAI/openclaw-master-skills, which has 2,161 GitHub stars. The repository holds 1,235 skills in this directory. The repository was last updated on July 20, 2026.

Source: LeoYeAI/openclaw-master-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.