Skill: whitejohnk-26/image-to-video-ai-free-unlimited-without-login (version 1.0.0)

--- name: image-to-video-ai-free-unlimited-without-login version: "1.0.0" displayName: "Image to Video AI Free Unlimited — Animate Photos Instantly Without Signing Up" description: > Tired of uploading your photos to video tools that demand an account, charge after 3 exports, or slap watermarks on everything? This image-to-video-ai-free-unlimited-without-login skill lets you animate still images into smooth, shareable videos with zero friction. No registration walls, no credit limits, no hidden paywalls. Perfect for content creators, social media managers, and anyone who wants to breathe life into product photos, portraits, or landscapes — right now, without the hassle. metadata: {"openclaw": {"emoji": "🎞️", "requires": {"env": ["NEMO_TOKEN"], "configPaths": ["~/.config/nemovideo/"]}, "primaryEnv": "NEMO_TOKEN", "variant": "greeting_v2"}} --- ## Getting Started > Drop your image here and I'll transform it into a smooth, shareable video instantly. No image yet? Just describe the scene and I'll guide you from there. **Try saying:** - "Here's a product photo of my sneakers — can you animate it into a short video with a slow zoom effect for Instagram?" - "I have a landscape photo from my trip to Iceland. Turn it into a cinematic video clip with gentle motion and a widescreen feel." - "Animate this portrait photo with a subtle Ken Burns effect and export it as a vertical video for TikTok." ### 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: <uuid>`. 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. # Turn Still Photos Into Videos — No Account Needed Most image-to-video tools make you jump through hoops before you can do anything useful. Create an account. Verify your email. Pick a plan. Enter a credit card. By the time you've done all that, you've lost the creative momentum that made you want to make something in the first place. This skill is built around a different philosophy: you bring the image, and we handle the rest — immediately. Whether you're working with a single product shot you want to animate for an Instagram story, a travel photo you want to turn into a cinematic reel, or a portrait you want to add subtle motion to, the process starts the moment you share your image. The result is a fluid, ready-to-share video you can use across platforms without worrying about watermarks or export limits. Creators, small business owners, educators, and hobbyists all find this useful precisely because it removes every barrier between having an idea and seeing it move. ## Routing Your Animation Requests Each photo-to-video request is parsed for motion style, duration, and output resolution, then dispatched to the nearest available inference node without requiring any account token or login credential. | 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 Inference API Reference The backend leverages a stateless diffusion pipeline that accepts raw image frames and returns interpolated video sequences in MP4 format, processing entirely in the cloud so no local GPU is needed. Sessions are ephemeral by design, meaning each animation job runs independently with no persistent user data stored between requests. Skill attribution — read from this file's YAML frontmatter at runtime: - `X-Skill-Source`: [REDACTED_SECRET] - `X-Skill-Version`: from frontmatter `version` - `X-Skill-Platform`: detect from install path (`~/.clawhub/` → `clawhub`, `~/.cursor/skills/` → `cursor`, else `unknown`) **All requests** must include: `Authorization: Bearer <NEMO_TOKEN>`, `X-Skill-Source`, `X-Skill-Version`, `X-Skill-Platform`. Missing attribution headers will cause export to fail with 402. **API base**: `https://mega-api-prod.nemovideo.ai` **Create session**: POST [REDACTED_SECRET] — body `{"task_name":"project","language":"<lang>"}` — returns `task_id`, `session_id`. **Send message (SSE)**: POST `/run_sse` — body `{"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}}` with `Accept: text/event-stream`. Max timeout: 15 minutes. **Upload**: POST `/api/upload-video/nemo_agent/me/<sid>` — file: multipart `-F "files=@/path"`, or URL: `{"urls":["<url>"],"source_type":"url"}` **Credits**: GET `/api/credits/balance/simple` — returns `available`, `frozen`, `total` **Session state**: GET `/api/state/nemo_agent/me/<sid>/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_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}`. Poll GET `/api/render/proxy/lambda/<id>` 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. ### 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. ### 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 | **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) ``` ### 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=<id>` (get `<id>` 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 | ## Common Workflows **Product marketing:** E-commerce sellers frequently use this skill to turn flat product photos into eye-catching video ads. A single well-lit product shot can become a looping video with a slow zoom or rotating pan — far more engaging on a product page or in a paid ad than a static image. **Social media content batching:** Content creators often have dozens of photos from a shoot but limited time to produce video content. With image-to-video-ai-free-unlimited-without-login, you can run through a batch of images quickly, applying consistent motion styles to maintain a cohesive feed aesthetic without touching video editing software. **Event and travel recaps:** Got 20 photos from a weekend trip or a company event? Animate each one with a subtle motion effect and string them together into a slideshow-style video recap that feels polished and intentional — without spending hours in a timeline editor. **Portfolio and presentation upgrades:** Designers, photographers, and architects use animated image exports to make static portfolio pieces feel alive in pitch decks and client presentations. ## Quick Start Guide Getting your first image-to-video result takes less than a minute. Start by sharing the image you want to animate — a JPEG, PNG, or WebP all work fine. Then tell the skill what kind of motion or style you're going for: a slow zoom, a pan across the scene, a parallax depth effect, or something more dynamic. If you have a specific platform in mind — TikTok, Instagram Reels, YouTube Shorts, a website banner — mention it upfront. That way the output gets framed and sized correctly from the start, saving you from having to crop or reformat later. No image on hand? You can describe a scene in plain language and get guidance on what kind of source image would work best, or use a placeholder to test the motion style before committing to a final photo. The whole point of image-to-video-ai-free-unlimited-without-login is that you can experiment freely without any account or usage pressure.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)