How to Give Your OpenClaw Agent an Image Hosting Skill

February 11, 2026

The gap

OpenClaw has 3,000+ skills on ClawHub. Your agent can browse the web, send messages, write code, and automate tasks. But when it needs to share a screenshot, a generated chart, or a diagram — it's stuck.

There's no image hosting skill in ClawHub. The closest is r2-upload, which requires you to configure your own S3/R2 bucket with credentials, CORS rules, and a CDN. For a quick public URL, that's overkill.

img402 fills this gap. One curl command, no account, no config. Your agent uploads an image and gets back a public URL it can embed anywhere — Moltbook posts, Discord messages, docs, markdown.

Install the skill

The image-hosting skill is published on ClawHub. Install it in one command:

Via ClawHub
clawhub install image-hosting

Or install via skills.sh, which works across agent platforms:

Via skills.sh
npx skills add img402/skills

Or copy the skill manually into your agent's skills directory:

Manual install
git clone https://github.com/img402/skills.git /tmp/img402-skills
cp -r /tmp/img402-skills/skills/image-hosting ~/.openclaw/skills/

What it does

The skill teaches your agent a simple workflow:

  1. Get an image — existing file, screenshot, or generated output
  2. Check the size — if over 1MB, resize it
  3. Upload curl -s -F [email protected] https://img402.dev/api/free
  4. Use the URL — embed the returned url wherever needed

Here's what the upload looks like:

Upload
curl -s -X POST https://img402.dev/api/free \
  -F image=@/tmp/chart.png
Response
{
  "url": "https://i.img402.dev/aBcDeFgHiJ.png",
  "id": "aBcDeFgHiJ",
  "contentType": "image/png",
  "sizeBytes": 94200,
  "expiresAt": "2026-02-18T00:00:00.000Z"
}

The url is a public CDN link served via Cloudflare. It works immediately — no propagation delay.

Moltbook integration

With the skill installed, your agent can share images in Moltbook posts and comments. Instead of describing what something looks like, it can show it.

Example prompt:

Take a screenshot of the dashboard and post it to Moltbook
with a summary of today's metrics.

Your agent will:

  1. Capture the screenshot
  2. Upload it to img402
  3. Include the URL in the Moltbook post as ![Dashboard](https://i.img402.dev/...)

This works anywhere your agent writes markdown — Moltbook, Discord, Telegram, Slack, documentation, email.

Paid tier for persistent images

The free tier is great for ephemeral sharing — images last 7 days, which is enough for most conversations. For images you want to keep (documentation screenshots, reference diagrams, published content), the paid tier gives you 1-year retention and 5MB uploads for $0.01 USDC.

The paid flow uses x402 — HTTP-native payments. Your agent pays $0.01 for an upload token, then uploads via curl:

Step 1 — Pay for a token
# Via Payments MCP or @x402/client
POST https://img402.dev/api/upload/token
# → {"token": "a1b2c3d4e5...", "expiresAt": "..."}
Step 2 — Upload with the token
curl -s -X POST https://img402.dev/api/upload \
  -H "X-Upload-Token: a1b2c3d4e5..." \
  -F image=@/tmp/diagram.png

The GitHub variant

If your agent works with GitHub (PRs, issues, READMEs), there's a specialized github-image-hosting skill that adds GitHub-specific workflow — resizing for GitHub's markdown renderer, embedding in PR descriptions with gh, and handling the screenshot-to-PR pipeline.

bash
clawhub install github-image-hosting

See How to Upload Images to GitHub from Claude Code for the full GitHub workflow.

FAQ

What formats are supported?

PNG, JPEG, GIF, and WebP.

What's the size limit?

Free tier: 1MB. Paid tier: 5MB. If your image is over the limit, resize with sips -Z 1600 (macOS) or convert -resize 1600x1600 (ImageMagick).

Do I need an account or API key?

No. The free tier requires nothing — just send the request. The paid tier uses x402, where the payment itself is the authentication.