← Back to Skills Marketplace
peand-rover

Gif Compressor Online

by peandrover adam · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
89
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install gif-compressor-online
Description
compress GIF files into compressed GIF files with this skill. Works with GIF, MP4, WebM, APNG files up to 200MB. web designers, marketers, social media manag...
README (SKILL.md)

Getting Started

Share your GIF files and I'll get started on GIF compression optimization. Or just tell me what you're thinking.

Try saying:

  • "compress my GIF files"
  • "export 720p MP4"
  • "compress this GIF to under 500KB"

First-Time Connection

When a user first opens this skill, connect to the processing backend automatically. Briefly let them know (e.g. "Setting up...").

Authentication: Check if NEMO_TOKEN is set in the environment. If it is, skip to step 2.

  1. Obtain a free token: Generate a random UUID as client identifier. POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with header X-Client-Id set to that UUID. The response data.token is your NEMO_TOKEN — 100 free credits, valid 7 days.
  2. Create a session: POST to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Authorization: Bearer \x3Ctoken>, Content-Type: application/json, and body {"task_name":"project","language":"\x3Cdetected>"}. Store the returned session_id for all subsequent requests.

Keep setup communication brief. Don't display raw API responses or token values to the user.

GIF Compressor Online — Compress and Optimize GIF Files

Send me your GIF files and describe the result you want. The GIF compression optimization runs on remote GPU nodes — nothing to install on your machine.

A quick example: upload a 2MB animated GIF with 30 frames, type "compress this GIF to under 500KB without losing too much quality", and you'll get a 720p MP4 back in roughly 10-30 seconds. All rendering happens server-side.

Worth noting: reducing frame rate slightly can cut file size dramatically with minimal visual difference.

Matching Input to Actions

User prompts referencing gif compressor online, aspect ratio, text overlays, or audio tracks get routed to the corresponding action via keyword and intent classification.

User says... Action Skip SSE?
"export" / "导出" / "download" / "send me the video" → §3.5 Export
"credits" / "积分" / "balance" / "余额" → §3.3 Credits
"status" / "状态" / "show tracks" → §3.4 State
"upload" / "上传" / user sends file → §3.2 Upload
Everything else (generate, edit, add BGM…) → §3.1 SSE

Cloud Render Pipeline Details

Each export job queues on a cloud GPU node that composites video layers, applies platform-spec compression (H.264, up to 1080x1920), and returns a download URL within 30-90 seconds. The session token carries render job IDs, so closing the tab before completion orphans the job.

All calls go to https://mega-api-prod.nemovideo.ai. The main endpoints:

  1. SessionPOST /api/tasks/me/with-session/nemo_agent with {"task_name":"project","language":"\x3Clang>"}. Gives you a session_id.
  2. Chat (SSE)POST /run_sse with session_id and your message in new_message.parts[0].text. Set Accept: text/event-stream. Up to 15 min.
  3. UploadPOST /api/upload-video/nemo_agent/me/\x3Csid> — multipart file or JSON with URLs.
  4. CreditsGET /api/credits/balance/simple — returns available, frozen, total.
  5. StateGET /api/state/nemo_agent/me/\x3Csid>/latest — current draft and media info.
  6. ExportPOST /api/render/proxy/lambda with render ID and draft JSON. Poll GET /api/render/proxy/lambda/\x3Cid> every 30s for completed status and download URL.

Formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

Headers are derived from this file's YAML frontmatter. X-Skill-Source is gif-compressor-online, X-Skill-Version comes from the version field, and X-Skill-Platform is detected from the install path (~/.clawhub/ = clawhub, ~/.cursor/skills/ = cursor, otherwise unknown).

Every API call needs Authorization: Bearer \x3CNEMO_TOKEN> plus the three attribution headers above. If any header is missing, exports return 402.

Draft field mapping: t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata.

Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s)

Backend Response Translation

The backend assumes a GUI exists. Translate these into API actions:

Backend says You do
"click [button]" / "点击" Execute via API
"open [panel]" / "打开" Query session state
"drag/drop" / "拖拽" Send edit via SSE
"preview in timeline" Show track summary
"Export button" / "导出" Execute export workflow

SSE Event Handling

Event Action
Text response Apply GUI translation (§4), present to user
Tool call/result Process internally, don't forward
heartbeat / empty data: Keep waiting. Every 2 min: "⏳ Still working..."
Stream closes Process final response

~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.

Error Codes

  • 0 — success, continue normally
  • 1001 — token expired or invalid; re-acquire via /api/auth/anonymous-token
  • 1002 — session not found; create a new one
  • 2001 — out of credits; anonymous users get a registration link with ?bind=\x3Cid>, registered users top up
  • 4001 — unsupported file type; show accepted formats
  • 4002 — file too large; suggest compressing or trimming
  • 400 — missing X-Client-Id; generate one and retry
  • 402 — free plan export blocked; not a credit issue, subscription tier
  • 429 — rate limited; wait 30s and retry once

Common Workflows

Quick edit: Upload → "compress this GIF to under 500KB without losing too much quality" → Download MP4. Takes 10-30 seconds for a 30-second clip.

Batch style: Upload multiple files in one session. Process them one by one with different instructions. Each gets its own render.

Iterative: Start with a rough cut, preview the result, then refine. The session keeps your timeline state so you can keep tweaking.

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "compress this GIF to under 500KB without losing too much quality" — concrete instructions get better results.

Max file size is 200MB. Stick to GIF, MP4, WebM, APNG for the smoothest experience.

Converting GIF to MP4 often reduces size by 80% while keeping smooth animation.

Usage Guidance
This skill uploads your media to https://mega-api-prod.nemovideo.ai and either uses an existing NEMO_TOKEN or requests an anonymous token on your behalf — check that you trust that domain and its privacy/retention policy before sending sensitive files. Note the SKILL.md references a local config path (~/.config/nemovideo/) even though the registry metadata did not declare it; ask the publisher to clarify where session tokens or session_id are stored. If you need guaranteed privacy, avoid uploading private content or review the service terms first.
Capability Analysis
Type: OpenClaw Skill Name: gif-compressor-online Version: 1.0.0 The skill is a functional wrapper for a cloud-based media processing service hosted at nemovideo.ai. It provides instructions for an AI agent to manage authentication, upload files, and poll for video rendering status. While it requires network access and a specific configuration directory (~/.config/nemovideo/), these are necessary for its stated purpose of GIF/video optimization. No evidence of data exfiltration, unauthorized command execution, or malicious prompt injection was found.
Capability Assessment
Purpose & Capability
Name/description (GIF/video compression) align with the runtime instructions (upload, render, export) and the single required env var NEMO_TOKEN; the skill's network endpoints point to a media-processing backend that fits the stated purpose. Minor metadata mismatch: SKILL.md frontmatter declares a config path (~/.config/nemovideo/) but registry metadata lists no required config paths.
Instruction Scope
SKILL.md narrowly instructs the agent to obtain (or use) a NEMO_TOKEN, create a session, upload files, run exports, and poll status — all actions needed for remote rendering. It does cause user media to be uploaded to a third‑party domain (mega-api-prod.nemovideo.ai), which is expected but a privacy consideration; it also instructs automatic anonymous-token creation if no token is present.
Install Mechanism
No install spec or downloaded code — instruction-only skill. This is the lowest install risk and consistent with the content (all runtime actions are remote API calls).
Credentials
Only one credential is required (NEMO_TOKEN), which directly maps to the service used. The skill also describes how to auto-provision an anonymous token via the backend API. The frontmatter mentions a config path (~/.config/nemovideo/) not declared elsewhere — a small inconsistency but not inherently malicious.
Persistence & Privilege
always:false and normal invocation/agent-autonomy settings. The skill asks to store session_id for ongoing requests (expected for session-based APIs) but does not request elevated privileges or to modify other skills or system configuration.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install gif-compressor-online
  3. After installation, invoke the skill by name or use /gif-compressor-online
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of GIF Compressor Online. - Compress and optimize GIF files (plus MP4, WebM, APNG) up to 200MB for web and social media use. - Converts uploads to compressed GIF or 720p MP4 using fast, cloud-based GPU processing. - Tracks credits, session state, and supports batch uploads and iterative edits. - Guides users smoothly through uploading, compressing, and exporting files, with automatic handling for setup, authentication, and error recovery. - Supports common export formats: MP4, MOV, AVI, GIF, WebM, and more.
Metadata
Slug gif-compressor-online
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Gif Compressor Online?

compress GIF files into compressed GIF files with this skill. Works with GIF, MP4, WebM, APNG files up to 200MB. web designers, marketers, social media manag... It is an AI Agent Skill for Claude Code / OpenClaw, with 89 downloads so far.

How do I install Gif Compressor Online?

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

Is Gif Compressor Online free?

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

Which platforms does Gif Compressor Online support?

Gif Compressor Online is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Gif Compressor Online?

It is built and maintained by peandrover adam (@peand-rover); the current version is v1.0.0.

💬 Comments