← 返回 Skills 市场
peand-rover

Gif Converter

作者 peandrover adam · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
66
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install gif-converter
功能描述
convert GIF files into converted MP4 files with this skill. Works with GIF, WEBP, APNG, MP4 files up to 200MB. social media creators use it for converting GI...
使用说明 (SKILL.md)

Getting Started

Send me your GIF files and I'll handle the GIF to video conversion. Or just describe what you're after.

Try saying:

  • "convert a 3-second looping GIF animation into a 1080p MP4"
  • "convert this GIF to an MP4 video file"
  • "converting GIF animations into shareable MP4 videos for social media creators"

Getting Connected

Before handling any user request, establish a connection to the backend API. Show a brief status like "Connecting...".

If NEMO_TOKEN is in the environment, use it directly and create a session. Otherwise, acquire a free starter token:

  • Generate a UUID as client identifier
  • POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with the X-Client-Id header
  • The response includes a token with 100 free credits valid for 7 days — use it as NEMO_TOKEN

Then create a session by POSTing to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer authorization and body {"task_name":"project","language":"en"}. The session_id in the response is needed for all following requests.

Tell the user you're ready. Keep the technical details out of the chat.

GIF Converter — Convert GIFs to MP4 Videos

This tool takes your GIF files and runs GIF to video conversion through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 3-second looping GIF animation and want to convert this GIF to an MP4 video file — the backend processes it in about under 30 seconds and hands you a 1080p MP4.

Tip: shorter GIFs with fewer frames convert faster and produce smaller file sizes.

Matching Input to Actions

User prompts referencing gif converter, 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 requests must include: Authorization: Bearer \x3CNEMO_TOKEN>, X-Skill-Source, X-Skill-Version, X-Skill-Platform. Missing attribution headers will cause export to fail with 402.

Headers are derived from this file's YAML frontmatter. X-Skill-Source is gif-converter, 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).

API base: https://mega-api-prod.nemovideo.ai

Create session: POST /api/tasks/me/with-session/nemo_agent — body {"task_name":"project","language":"\x3Clang>"} — returns task_id, session_id.

Send message (SSE): POST /run_sse — body {"app_name":"nemo_agent","user_id":"me","session_id":"\x3Csid>","new_message":{"parts":[{"text":"\x3Cmsg>"}]}} with Accept: text/event-stream. Max timeout: 15 minutes.

Upload: POST /api/upload-video/nemo_agent/me/\x3Csid> — file: multipart -F "files=@/path", or URL: {"urls":["\x3Curl>"],"source_type":"url"}

Credits: GET /api/credits/balance/simple — returns available, frozen, total

Session state: GET /api/state/nemo_agent/me/\x3Csid>/latest — key fields: data.state.draft, data.state.video_infos, data.state.generated_media

Export (free, no credits): POST /api/render/proxy/lambda — body {"id":"render_\x3Cts>","sessionId":"\x3Csid>","draft":\x3Cjson>,"output":{"format":"mp4","quality":"high"}}. Poll GET /api/render/proxy/lambda/\x3Cid> every 30s until status = completed. Download URL at output.url.

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

Error Handling

Code Meaning Action
0 Success Continue
1001 Bad/expired token Re-auth via anonymous-token (tokens expire after 7 days)
1002 Session not found New session §3.0
2001 No credits Anonymous: show registration URL with ?bind=\x3Cid> (get \x3Cid> from create-session or state response when needed). Registered: "Top up credits in your account"
4001 Unsupported file Show supported formats
4002 File too large Suggest compress/trim
400 Missing X-Client-Id Generate Client-Id and retry (see §1)
402 Free plan export blocked Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export."
429 Rate limit (1 token/client/7 days) Retry in 30s once

Translating GUI Instructions

The backend responds as if there's a visual interface. Map its instructions to API calls:

  • "click" or "点击" → execute the action via the relevant endpoint
  • "open" or "打开" → query session state to get the data
  • "drag/drop" or "拖拽" → send the edit command through SSE
  • "preview in timeline" → show a text summary of current tracks
  • "Export" or "导出" → run the export workflow

Reading the SSE Stream

Text events go straight to the user (after GUI translation). Tool calls stay internal. Heartbeats and empty data: lines mean the backend is still working — show "⏳ Still working..." every 2 minutes.

About 30% of edit operations close the stream without any text. When that happens, poll /api/state to confirm the timeline changed, then tell the user what was updated.

Draft JSON uses short keys: t for tracks, tt for track type (0=video, 1=audio, 7=text), sg for segments, d for duration in ms, m for metadata.

Example timeline summary:

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

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "convert this GIF to an MP4 video file" — concrete instructions get better results.

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

Export as MP4 for widest compatibility across all social platforms and devices.

Common Workflows

Quick edit: Upload → "convert this GIF to an MP4 video file" → Download MP4. Takes under 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.

安全使用建议
This skill uploads files you give it to an external service (mega-api-prod.nemovideo.ai). It will use a NEMO_TOKEN from the environment if present or obtain an anonymous token automatically. Before installing: 1) confirm you trust nemo‑video (privacy of uploaded media); 2) avoid supplying sensitive content unless you control the destination; 3) prefer using an account token you control rather than relying on anonymous tokens; 4) ask the platform whether the skill will be allowed to read ~/.config/nemovideo/ or inspect install paths (the skill's metadata lists that path but the instructions don't clearly use it); and 5) note the skill's source/homepage are unknown — lack of provenance increases risk. If you need higher assurance, request the skill's source or an official integration from the service owner.
功能分析
Type: OpenClaw Skill Name: gif-converter Version: 1.0.0 The skill provides a functional interface for a GIF-to-MP4 conversion service using the `nemovideo.ai` API. It includes detailed instructions for the agent to handle authentication, session management, file uploads, and rendering status via standard REST and SSE endpoints. The requested permissions (environment variables and config paths) are specific to the service, and no evidence of malicious intent, data exfiltration, or harmful prompt injection was found in SKILL.md or the metadata.
能力评估
Purpose & Capability
The name/description (GIF → MP4 conversion) align with the runtime instructions: the SKILL.md describes creating a session, uploading files, rendering, and returning a download URL on a nemo video backend. Requesting a NEMO_TOKEN credential is reasonable for this integration.
Instruction Scope
Instructions stay largely within the conversion task (auth, session creation, upload, render/poll, download). They require sending user files to https://mega-api-prod.nemovideo.ai and include SSE/video-edit workflows. Minor scope issues: the skill tells the agent to 'detect the install path' to set X-Skill-Platform (which would require checking host paths) and expects attribution headers derived from the skill file — these are implementation details but may cause the agent to inspect filesystem paths or the skill file.
Install Mechanism
No install spec or external downloads are provided (instruction-only), so nothing is written to disk by an installer. This is lower risk.
Credentials
The skill declares a single primary env var (NEMO_TOKEN), which fits the stated backend API usage. However metadata also lists a config path (~/.config/nemovideo/) that is not referenced in the SKILL.md instructions — this mismatch is unexplained and could indicate the skill expects to read a local config/token although the runtime instructions prefer an environment variable or anonymous-token flow.
Persistence & Privilege
always:false and default autonomous invocation are normal. The skill does not request global/system modifications and does not declare writing other skills' configs. The only extra privilege implied is potential read access to the user's home config path (per metadata), which you should confirm with the platform before granting.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install gif-converter
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /gif-converter 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Initial release of GIF Converter (v1.0.0): convert GIF, WEBP, APNG, and MP4 files up to 200MB into 1080p MP4 videos optimized for social media. - Fast cloud processing with automatic session management and token handling (supports both registered and free/anonymous users). - Simple workflows: upload files, issue natural language instructions, and download converted videos—typical conversion time under 30 seconds. - Automatic error handling for unsupported files, token/session issues, and file limits, with user-friendly messaging. - Built-in support for exporting in multiple formats, reviewing timeline states, and managing credits/balances through clear chat prompts.
元数据
Slug gif-converter
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Gif Converter 是什么?

convert GIF files into converted MP4 files with this skill. Works with GIF, WEBP, APNG, MP4 files up to 200MB. social media creators use it for converting GI... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 66 次。

如何安装 Gif Converter?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install gif-converter」即可一键安装,无需额外配置。

Gif Converter 是免费的吗?

是的,Gif Converter 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Gif Converter 支持哪些平台?

Gif Converter 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Gif Converter?

由 peandrover adam(@peand-rover)开发并维护,当前版本 v1.0.0。

💬 留言讨论