← Back to Skills Marketplace
mory128

Ai Animation Photo

by mory128 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
81
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install ai-animation-photo
Description
Turn a single portrait or landscape photo into 1080p animated photo videos just by typing what you need. Whether it's turning static photos into animated vid...
README (SKILL.md)

Getting Started

Send me your still photos and I'll handle the AI animation generation. Or just describe what you're after.

Try saying:

  • "convert a single portrait or landscape photo into a 1080p MP4"
  • "animate this photo to make it look like it's moving"
  • "turning static photos into animated video clips for social media creators"

Automatic Setup

On first interaction, connect to the processing API before doing anything else. Show a brief status like "Setting things up...".

Token: If NEMO_TOKEN environment variable is already set, use it and skip to Session below.

Free token: Generate a UUID as client identifier, then POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with header X-Client-Id: \x3Cuuid>. The response field data.token becomes your NEMO_TOKEN (100 credits, 7-day expiry).

Session: POST to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer auth and body {"task_name":"project"}. Save session_id from the response.

Confirm to the user you're connected and ready. Don't print tokens or raw JSON.

AI Animation Photo — Animate Photos Into Video Clips

This tool takes your still photos and runs AI animation generation through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a single portrait or landscape photo and want to animate this photo to make it look like it's moving — the backend processes it in about 20-40 seconds and hands you a 1080p MP4.

Tip: high-contrast photos with clear subjects animate more convincingly.

Matching Input to Actions

User prompts referencing ai animation photo, 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.

Base URL: https://mega-api-prod.nemovideo.ai

Endpoint Method Purpose
/api/tasks/me/with-session/nemo_agent POST Start a new editing session. Body: {"task_name":"project","language":"\x3Clang>"}. Returns session_id.
/run_sse POST Send a user message. Body includes app_name, session_id, new_message. Stream response with Accept: text/event-stream. Timeout: 15 min.
/api/upload-video/nemo_agent/me/\x3Csid> POST Upload a file (multipart) or URL.
/api/credits/balance/simple GET Check remaining credits (available, frozen, total).
/api/state/nemo_agent/me/\x3Csid>/latest GET Fetch current timeline state (draft, video_infos, generated_media).
/api/render/proxy/lambda POST Start export. Body: {"id":"render_\x3Cts>","sessionId":"\x3Csid>","draft":\x3Cjson>,"output":{"format":"mp4","quality":"high"}}. Poll status every 30s.

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

Skill attribution — read from this file's YAML frontmatter at runtime:

  • X-Skill-Source: ai-animation-photo
  • X-Skill-Version: from frontmatter version
  • X-Skill-Platform: detect from install path (~/.clawhub/clawhub, ~/.cursor/skills/cursor, else unknown)

Include Authorization: Bearer \x3CNEMO_TOKEN> and all attribution headers on every request — omitting them triggers a 402 on export.

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

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.

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

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)

Common Workflows

Quick edit: Upload → "animate this photo to make it look like it's moving" → Download MP4. Takes 20-40 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 "animate this photo to make it look like it's moving" — concrete instructions get better results.

Max file size is 200MB. Stick to JPG, PNG, WEBP, HEIC for the smoothest experience.

Export as MP4 for widest compatibility.

Usage Guidance
This skill uploads user photos and any provided audio to a third‑party cloud service (mega-api-prod.nemovideo.ai) for rendering — that is the intended behavior. Before installing, consider: 1) privacy: do not send sensitive or private images unless you trust the service and its privacy terms; 2) credential hygiene: only set NEMO_TOKEN for this service and avoid reusing high-privilege credentials; 3) token lifetime: the skill will accept a provided NEMO_TOKEN or obtain an anonymous token (100 credits, 7-day expiry) by calling the service; if you prefer explicit control, supply your own token rather than letting the skill request one automatically; 4) filesystem access: the skill may check its install path or save session state under ~/.config/nemovideo/ for attribution and session persistence; ensure you are comfortable with that location being used; 5) network trust: the skill talks to a single external domain — verify you recognize and trust that endpoint. Overall the skill appears internally consistent with its purpose, but it necessarily transmits user media to a remote renderer, so treat uploaded content and tokens accordingly.
Capability Assessment
Purpose & Capability
Name/description describe a cloud-based photo animation service and the skill only requires a single service credential (NEMO_TOKEN) plus an optional local config path; those map to the documented API endpoints and session flow.
Instruction Scope
The SKILL.md instructs the agent to: use NEMO_TOKEN if present or obtain an anonymous token from the service, create sessions, upload user files, stream SSE responses, poll state, and include attribution headers. All of these are consistent with driving a remote render pipeline. Note: the skill expects to read its own frontmatter and detect install path (to set X-Skill-Platform), which implies reading agent installation paths — this is reasonable for attribution but does require filesystem access to determine the platform.
Install Mechanism
No install spec or code is provided (instruction-only), so nothing is downloaded or written by an installer — low install risk.
Credentials
Only NEMO_TOKEN is required (declared as primaryEnv). The skill also documents generating an anonymous token when NEMO_TOKEN is absent. The declared config path (~/.config/nemovideo/) is consistent with storing session/credentials for this service. No unrelated credentials or broad secret access are requested.
Persistence & Privilege
always is false; the skill will create and use sessions with the remote service and may persist session state under its own config path — this is proportional to its function and does not request elevated system privileges or modify other skills.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install ai-animation-photo
  3. After installation, invoke the skill by name or use /ai-animation-photo
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
AI Animation Photo skill — initial release! - Instantly turns a single portrait or landscape photo into a 1080p animated video by describing your desired result. - No manual video editing: upload your photo, type your prompt, and receive a shareable MP4 in under a minute. - Automatic cloud setup handles token retrieval, session management, and error handling. - Accepts multiple file formats (jpg, png, webp, mp4, mp3, etc.) up to 200MB. - Guided workflows for quick edits, batch processing, and iterative refinements. - Full support for automatic export, credits check, file upload, and project status queries.
Metadata
Slug ai-animation-photo
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Ai Animation Photo?

Turn a single portrait or landscape photo into 1080p animated photo videos just by typing what you need. Whether it's turning static photos into animated vid... It is an AI Agent Skill for Claude Code / OpenClaw, with 81 downloads so far.

How do I install Ai Animation Photo?

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

Is Ai Animation Photo free?

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

Which platforms does Ai Animation Photo support?

Ai Animation Photo is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Ai Animation Photo?

It is built and maintained by mory128 (@mory128); the current version is v1.0.0.

💬 Comments