Install
openclaw skills install @runware/animate-imageTurn a still image into motion. Use when the user says "animate this photo", "make this picture move", "bring this illustration to life", "add motion to this image", "image to video", or wants a static still to become a short clip, including copying motion from another video onto your still. For a deliberately filmic look with lens, camera moves, and color grade, use cinematic-video. For a product spot, use product-ad-video. To make a face talk, use talking-avatar.
openclaw skills install @runware/animate-imageTake one still image (a photo, a render, an illustration) and produce a short video where it moves. The image fixes the subject, composition, color, and lighting. Your job is to direct only what changes over time, not to re-describe what the image already shows.
Confirm the live model and its schema via runware-models + runware-run before calling. Never hardcode a stale AIR. The catalog moves weekly.
runway:1@2) - strong camera and subject control, reads cinematic move names directly. Gen-4 Turbo is the cheaper, faster tier for iteration.luma:ray@3.2) - cinematic motion, first/last/intermediate keyframes, up to 1080p. Produces a silent MP4 (no audio).bytedance:seedance@2.0) - alternative image-to-video pick for high-motion shots.io:image-to-video, e.g. Kling 2.5 Turbo Pro klingai:6@1) - another strong image-to-video option. Confirm the specific tier and its AIR via lookup.prunaai:p-video@animate) - when you want another video's exact motion, timing, and camera move applied onto your still. The image is who, the video is what.runware-run) and confirm the input field for the source image and the allowed dimension/duration values. This is async.inputs.frameImages with { "image": ..., "frame": "first" }. On Pruna Video Animate the still is inputs.referenceImages and the motion source is inputs.referenceVideos.videoInference asynchronously: the task returns a taskUUID, then poll getResponse until terminal. Do not block a sync call on a minutes-long render.videoURL (Ray's EXR sequence, when enabled, lands under outputs.files[]).first and last frames and Ray interpolates between them. Intermediate frame indices choreograph beats across one clip (a 10s clip at 24fps is 240 frames, so 0-240, or -1 for last).positivePrompt blank to transfer motion as-is, or add it to override one specific behavior (a gesture, an expression, lip-synced words). The model is style-agnostic: photoreal, cartoon, 3D, and mascots all carry through.Motion brief template. Fill in the two channels for a prompt-directed clip. Leave a channel empty by stating its hold. Do not re-describe the scene: anything already in the source image does not belong here.
Subject motion: <what moves inside the frame, or "no subject motion">
Camera motion: <named move + pace, or "the camera holds completely still">
Atmosphere: <rain, smoke, steam, hair, ripples the still implies, optional>
Load references/examples.md for three worked recipes (subtle product motion, a character gesture with camera push-in, motion transfer via Pruna) with the full async request and result shape.
inputs.frameImages - exactly one image marked first for standard image-to-video; Ray also accepts last and numeric frame positions for keyframes.inputs.referenceImages + inputs.referenceVideos - the Pruna Video Animate motion-transfer pair (one each).positivePrompt - motion direction only (1 to 1000 chars on Gen-4.5). Optional on Pruna Video Animate.width / height - output dimensions, independent from the source. Match the source aspect to avoid crop/letterbox. Gen-4.5 allows 1280×720, 720×1280, 1104×832, 832×1104, 960×960.duration - Gen-4.5: 5, 8, or 10 (default 10). Ray: 5 or 10. Confirm per model, these differ.resolution - 360p / 540p / 720p / 1080p. Set aspect via resolution or an explicit width/height, not both.settings.hdr / settings.loop - HDR and loop both run at the 5s duration only and are mutually exclusive; exrExport requires hdr.resolution (720p/1080p), fps (24/48, omit to match source), settings.preserveAudio (default true).seed - fix for reproducibility. Confirm exact field names against the live schema; never guess.runware-run, runware-models, runware-prompting; product-ad-video (product still to ad clip), multi-shot-video (several beats in one generation), cinematic-video (text-to-video shot grammar).