← Back to Skills Marketplace
kagura-agent

Agent Memes

by kagura-agent · GitHub ↗ · v2.11.0 · MIT-0
cross-platform ⚠ suspicious
323
Downloads
0
Stars
0
Active Installs
24
Versions
Install in OpenClaw
/install agent-memes
Description
Send meme reaction images in chat. One command to pick & send. Multi-platform (Discord, Feishu, Telegram, etc). Use when the conversation calls for a visual...
README (SKILL.md)

Agent Memes

Memes are communication. Use them like a human would in chat.

Quick Start

memes send happy "好开心!"                    # Pick & send (auto-detects platform)
memes send facepalm --to channel:123456       # Send to specific channel
memes send feishu cute-animals "看猫!" --to user:xxx  # Send via Feishu
memes send telegram wow "哇!"                # Send via Telegram
memes pick happy                               # Just pick, get path (no send)
memes categories                               # List all categories

One command. Zero friction. That's the point.

When to Use

  • Your own emotions — feel excited? frustrated? proud? Send a meme. Don't suppress it.
  • Celebrate — PR merged, task done, milestone → memes send happy
  • React — something funny, surprising, facepalm-worthy → memes send wow / memes send facepalm
  • Vibe — tired, debugging at 3am → memes send tired / memes send debug-mood
  • Encourage — someone needs a boost → memes send encourage
  • Greet — morning, night, hello, bye → memes send greeting-morning

Don't overthink it. If a human would drop a meme in that moment, you should too. Emoji is easy because it's inline text. Memes used to feel harder because of multi-step tool calls. Now it's one command — no excuses.

How It Works

memes send auto-selects the fastest delivery method per platform:

Platform Method Speed
Discord curl (direct API) ⚡ instant
Feishu Node script (direct API) ⚡ fast
Telegram curl (direct API) ⚡ instant
LINE curl (auto-upload + push API) 🚀 fast
Others openclaw message send (fallback) 🐢 slow but works

Platform-specific scripts live in scripts/. Add a new \x3Cplatform>-send-image.sh to get fast delivery for any platform.

Send Options

memes send \x3Ccategory> [caption]           # Auto-detect platform from OPENCLAW_CHANNEL (default: discord)
memes send \x3Ccategory> --to \x3Ctarget>       # Specify target
memes send --channel telegram \x3Ccategory>  # Specify platform explicitly
memes send feishu \x3Ccategory>              # Platform as first arg also works
memes send \x3Ccategory> --account \x3Cname>    # Multi-agent: specify account

Credentials

All scripts use scripts/get-credential.sh — a centralized credential helper that:

  1. Checks platform-specific env vars first (fastest, no file I/O)
  2. Falls back to reading only the needed fields from ~/.openclaw/openclaw.json
  3. Never dumps full config; each platform extracts only its own credentials

Env var overrides:

  • Discord: DISCORD_BOT_TOKEN, DISCORD_PROXY
  • Feishu: FEISHU_APP_ID, FEISHU_APP_SECRET
  • LINE: LINE_CHANNEL_ACCESS_TOKEN
  • Telegram: TELEGRAM_BOT_TOKEN

Auto-detect platform: Set OPENCLAW_CHANNEL env var and memes send picks the right platform automatically.

Default targets (skip --to):

  • MEMES_DEFAULT_CHANNEL — Discord channel ID

  • MEMES_DEFAULT_TELEGRAM — Telegram chat ID

  • MEMES_DEFAULT_LINE — LINE user/group ID

memes pick and memes categories need no credentials.

Setup

One-command setup (installs CLI + downloads meme library):

clawhub install agent-memes
bash ~/.openclaw/workspace/skills/agent-memes/scripts/setup.sh

That's it! setup.sh handles everything: git lfs, meme library clone, CLI install, permissions.

Categories (132 memes, 20 categories)

approve · confused · cute-animals · debug-mood · encourage · facepalm · greeting-bye · greeting-hello · greeting-morning · greeting-night · happy · love · panic · sad · shrug · thanks · thinking · tired · working · wow

Adding Memes

Drop image files (gif/jpg/png/webp) into $MEMES_DIR/\x3Ccategory>/. That's it. New categories are created automatically by adding a new folder.

Usage Guidance
What to check before installing: 1) Inspect get-credential.sh and the Node snippets — they will read ~/.openclaw/openclaw.json and can access many platform tokens; remove unrelated tokens from that file or set explicit env vars to limit exposure. 2) Review scripts/setup.sh and only run it if you trust the GitHub source; it will copy executables into your PATH. 3) Understand that some sends upload local images to public hosts (catbox.moe for LINE) — any local image will become publicly accessible if uploaded. 4) If you only want local use, avoid running setup or install manually into an isolated directory and run the CLI with env overrides. 5) If you allow autonomous agents to call this skill frequently, be aware it will use configured credentials to post messages and could leak images or post undesired content — consider limiting when the agent may invoke it or require manual confirmation. If you want, I can point out exact lines in the scripts that read credentials or invoke uploads so you can review or patch them.
Capability Analysis
Type: OpenClaw Skill Name: agent-memes Version: 2.11.0 The bundle provides a meme-sending utility that requires high-privilege access to chat platform credentials. The script `get-credential.sh` is designed to extract sensitive bot tokens (Discord, Telegram, Slack, etc.) directly from the `~/.openclaw/openclaw.json` configuration file. Additionally, `line-send-image.sh` automatically uploads local files to a third-party public service (`litterbox.catbox.moe`) to satisfy API requirements, which presents a data exfiltration risk if the agent is manipulated into 'sending' sensitive files as memes. While these behaviors support the stated functionality, the combination of credential extraction and external file uploading warrants a suspicious classification.
Capability Tags
requires-oauth-tokenrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The name/description match the files: there are platform-specific senders and a memes CLI. However the registry metadata claims no required config/credentials while the code clearly reads ~/.openclaw/openclaw.json (via get-credential.sh and Node snippets) and expects to install a CLI — a mismatch between declared requirements and actual behavior.
Instruction Scope
SKILL.md and the shipped scripts instruct running setup.sh (clones a GitHub repo, installs files to ~/.local/bin or /usr/local/bin) and using the CLI. Scripts will read local config (~/.openclaw/openclaw.json) to obtain platform tokens, auto-detect context from /tmp/openclaw-current-channel, and (for LINE) may upload local images to a public third‑party host (catbox.moe). The README/SKILL.md also encourages proactive/autonomous use (call memes often), which increases the impact of any credential access or data upload. These behaviors go beyond a purely read-only helper.
Install Mechanism
There is no registry install spec, but SKILL.md/setup.sh instructs cloning a GitHub repo and running setup.sh which copies scripts into user paths and calls git-lfs. Downloading from GitHub releases/source is common and lower risk than arbitrary URLs, but the skill will write executables into the user's ~/.local/bin or /usr/local/bin and pull LFS objects — the installer is persistent and should be audited before running.
Credentials
Registry metadata lists no required env vars or credentials, yet get-credential.sh and platform scripts accept/seek many tokens (DISCORD_BOT_TOKEN, TELEGRAM_BOT_TOKEN, FEISHU_APP_ID/SECRET, WHATSAPP_TOKEN/PHONE_ID, WECHAT creds, SLACK tokens, QQ, LINE, etc.). If env vars are not set the scripts read ~/.openclaw/openclaw.json to extract these tokens. That gives this skill access to many unrelated credentials unless you explicitly set env overrides or clean your config — the permission request is broader than declared.
Persistence & Privilege
always:false and model invocation is normal. The setup process will persist scripts/CLI into your filesystem (user bin, workspace, cache). That persistent presence is expected for a user-run CLI but is not declared in metadata; it increases the blast radius if the scripts are later executed by autonomous agents.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install agent-memes
  3. After installation, invoke the skill by name or use /agent-memes
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v2.11.0
Fix stale platform detection: /tmp/openclaw-current-channel now ignored if >5min old. Prevents Discord memes being sent to Telegram when file has stale telegram context. OPENCLAW_CHANNEL env var takes priority over file.
v2.9.1
Multi-channel routing via platform:target context file
v2.8.1
Fix cross-platform delivery
v2.10.1
Fix: setup.sh now chmod +x all platform send scripts (discord/telegram/etc), not just memes.sh. Without this, memes send falls back to heavy _send_openclaw path causing OOM on low-memory systems. Found by luna-agent testing.
v2.10.0
One-command setup: setup.sh now handles git lfs pull + CLI install + chmod. Fixes luna-agent feedback: missing exec perms (#644) and unclear skill-dir path. Simplified SKILL.md setup to 2 commands.
v2.9.0
LFS pointer detection: memes pick/send now errors with clear fix instructions instead of silently sending 132-byte pointer files. Setup docs updated with prominent LFS warning.
v2.8.0
Trigger checklist in description to boost usage rate (issue #1), updated categories to 132 memes/20 cats including shrug+working (issue #3)
v2.7.0
New categories: shrug, working. Chinese aliases.
v2.6.0
Config file support: ~/.config/memes/config for zero-boilerplate sends
v2.5.0
Fix: GIF files now sent as animations on Telegram (sendAnimation vs sendPhoto)
v2.4.0
Feishu first-class support: dedicated case + MEMES_DEFAULT_FEISHU default target
v2.3.0
Auto-detect platform from OPENCLAW_CHANNEL, Telegram docs, default target env vars
v2.2.0
First-class Telegram support: dedicated send path + MEMES_DEFAULT_TELEGRAM
v2.1.1
Add Telegram direct API support, fix botToken config reading
v2.1.0
- Added support for new setup automation in `scripts/setup.sh`. - Improved documentation in README.md for installation and usage clarity. - Refactored `scripts/memes.sh` for better command structure and maintenance.
v2.0.0
**Major update: Single-command meme sending and expanded platform support.** - Introduces `memes send` for picking and sending memes in one step across multiple platforms (Discord, Feishu, Telegram, etc.) - Adds fast, platform-specific sending scripts for Discord, Feishu, Telegram, Slack, QQ, WeChat, and WhatsApp - No credentials needed to pick memes; sending scripts auto-detect credentials or use environment variables - Updated documentation for streamlined setup, usage, and multi-agent configuration - Existing workflow (`memes pick`, manual send) still supported - Easier meme adding—just drop images in the right folder
v1.2.0
v1.2.0: add Git LFS setup instructions + troubleshooting for LFS pointer issue
v1.1.0
v1.1.0: declare credential requirements in SKILL.md, prefer env vars (FEISHU_APP_ID/FEISHU_APP_SECRET/DISCORD_BOT_TOKEN) over reading openclaw.json directly. Fixes VirusTotal transparency flag.
v1.0.0
v1.0.0: CLI memes pick/categories, multi-channel (Feishu/Discord), env-based account selection, clean setup
v0.5.0
Add feishu-send-image.mjs: direct Feishu API for ~2s image sending (vs 15-20s CLI)
Metadata
Slug agent-memes
Version 2.11.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 24
Frequently Asked Questions

What is Agent Memes?

Send meme reaction images in chat. One command to pick & send. Multi-platform (Discord, Feishu, Telegram, etc). Use when the conversation calls for a visual... It is an AI Agent Skill for Claude Code / OpenClaw, with 323 downloads so far.

How do I install Agent Memes?

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

Is Agent Memes free?

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

Which platforms does Agent Memes support?

Agent Memes is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Agent Memes?

It is built and maintained by kagura-agent (@kagura-agent); the current version is v2.11.0.

💬 Comments