qqbot-media

qqbot-media is a skill for Claude Code, Codex from EthanChan050430/Saki-AI. It costs 108 tokens per session (2,032 once invoked), scanned A, original, Apache-2.0.

A QQBot messaging capability for receiving and sending images, voice recordings, videos, and files. QQBot is a communication channel that uses special tags to represent these media types.

In plain words
What is it for?
Use it when handling QQBot media messages, downloading received images, or sending local or online images, audio, video, and files.
Why use it?
It explains the exact tags and file-path rules needed for rich media to be delivered correctly through QQBot.

Skill for Claude CodeCodex

Which agent this was written for is unclear — built for openclaw. Also seen: built for openclaw.

Not installable: its command points at a path on the author’s own machine, so it runs nowhere else. The line is /Users/james23/.openclaw/workspace/.

Good fit Use it when handling QQBot media messages, downloading received images, or sending local or online images, audio, video, and files.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for qqbot-media

README.md
[![agentmods](https://agentmods.dev/badge/skills/ethanchan050430/saki-ai/qqbot-media/github.svg)](https://agentmods.dev/skills/ethanchan050430/saki-ai/qqbot-media)
Your own site
<a href="https://agentmods.dev/skills/ethanchan050430/saki-ai/qqbot-media"><img src="https://agentmods.dev/badge/skills/ethanchan050430/saki-ai/qqbot-media/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for qqbot-media

Your own site · 80×15
<a href="https://agentmods.dev/skills/ethanchan050430/saki-ai/qqbot-media"><img src="https://agentmods.dev/badge/skills/ethanchan050430/saki-ai/qqbot-media.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 108 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,032 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00108 $0.02032
Opus 5 $0.00054 $0.01016
Sonnet 5 $0.00022 $0.00406
Haiku 4.5 $0.00011 $0.00203

Measured 10d ago against content hash 95bd06b2fb5e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

qqbot-media scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

backend/qqbot/skills/qqbot-media/SKILL.md · 195 lines

How it starts

The opening of the file, as written. The whole thing — 195 lines — stays where its author put it; the contents beside it link to each section on GitHub.

QQBot 图片/语音/视频/文件收发

标签速查(直接复制使用)

类型 标签格式 示例
图片 <qqimg>绝对路径或URL</qqimg> <qqimg>/tmp/pic.jpg</qqimg>
语音 <qqvoice>绝对路径</qqvoice> <qqvoice>/tmp/voice.mp3</qqvoice>
视频 <qqvideo>绝对路径或URL</qqvideo> <qqvideo>/tmp/video.mp4</qqvideo>
文件 <qqfile>绝对路径或URL</qqfile> <qqfile>/tmp/doc.pdf</qqfile>

标签拼写必须严格按上表,只有这 4 个标签名:qqimgqqvoiceqqvideoqqfile

⚠️ 重要:你有能力发送本地图片!

当用户要求发送本地图片时,只需使用 <qqimg> 标签包裹图片路径即可。系统会自动处理文件读取和发送。

❌ 绝对不要说"无法发送本地图片"! ✅ 使用 <qqimg> 标签,系统就能发送任何本地图片!


📸 发送图片(推荐方式:<qqimg> 标签)

使用 <qqimg> 标签包裹图片路径,即可发送图片:

<qqimg>图片路径</qqimg>

✅ 发送本地图片示例

当用户说"发送那张图片"、"把图发给我"、"发上面生成的图片"等,你应该直接输出:

这是你要的图片:
<qqimg>/Users/xxx/images/photo.jpg</qqimg>

✅ 发送之前生成/创建的图片

如果你之前生成了图片(比如绘图、截图等),并且知道图片路径,直接用 <qqimg> 发送:

好的,这是刚才生成的图片:
<qqimg>/Users/xxx/Pictures/openclaw-drawings/drawing_xxx.png</qqimg>

✅ 发送网络图片示例

这是网络上的图片:
<qqimg>https://example.com/image.png</qqimg>

支持格式:jpg, jpeg, png, gif, webp, bmp。支持 </qqimg></img> 闭合。

接收图片

用户发来的图片自动下载到本地,路径在上下文【会话上下文 → 附件】中。 可直接用 <qqimg>路径</qqimg> 回发。历史图片在 ~/.openclaw/qqbot/downloads/ 下。

发送语音

使用 <qqvoice> 标签包裹已有的本地音频文件路径即可发送语音:

<qqvoice>/tmp/tts/voice.mp3</qqvoice>

注意:语音发送需要有可用的音频文件(通常由 TTS 工具生成)。如果会话上下文中的【语音消息说明】提示 TTS 未配置,则不要使用 <qqvoice> 标签。

发送视频

使用 <qqvideo> 标签包裹视频路径或公网 URL 即可发送视频:

<qqvideo>/path/to/video.mp4</qqvideo>
<qqvideo>https://example.com/video.mp4</qqvideo>

支持本地文件路径(系统自动读取上传)和公网 HTTP/HTTPS URL。

发送文件

使用 <qqfile> 标签包裹路径即可发送文件(本地路径或网络 URL):

这是你要的所有图片:
<qqimg>/Users/xxx/image1.jpg</qqimg>
<qqimg>/Users/xxx/image2.png</qqimg>

📝 标签说明

⚠️ 关键注意事项(必须遵守)

  1. 必须使用绝对路径:标签内的路径必须是绝对路径(以 / 开头),禁止使用相对路径如 ./pic.jpg
    • ❌ 错误:<qqimg>./pic.jpg</qqimg>
    • ✅ 正确:<qqimg>/Users/james23/.openclaw/workspace/pic.jpg</qqimg>
  2. 标签格式必须完整<qqimg> 开头和 </qqimg> 结尾都不能少,不能漏掉 < 符号
    • ❌ 错误:qqimg>./pic.jpg</qqimg>
    • ✅ 正确:<qqimg>/absolute/path/to/pic.jpg</qqimg>
  3. 工作空间路径:当前工作空间为 /Users/james23/.openclaw/workspace/,文件路径应基于此拼接绝对路径
  4. 标签必须单独成行或前后有空格,不要嵌入在句子中间
  5. 文件大小限制:上传文件(图片、语音、视频、文件)最大不超过 20MB

Read the full file on GitHub · 195 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 195 lines · 108 tokens per session scan A 95bd06b2fb5e

Subscribe to this mod's changes

qqbot-media is a skill published in the GitHub repository EthanChan050430/Saki-AI (11 stars, last pushed 2mo ago), licensed Apache-2.0. It adds 108 tokens to every session and 2,032 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.