Grok image to video
Use this Skill when the user wants to animate a local image into a short video with xAI Grok Imagine.
Always use the Studio media endpoint through the bundled helper. Do not call xAI directly, request credentials in chat, or fall back to another image/video generator when Studio reports an error. Studio owns xAI credential resolution, request polling, download, and Profile selection.
Workflow
- Resolve the exact local source image. It must be PNG, JPEG, or WebP and necessary for the user's requested generation.
- Write a motion prompt that preserves the user's intended subject, composition, camera movement, and style. Do not add people, branding, or sensitive traits the user did not request.
- Use the exact
profile shown under Runtime Context in the Ekko system prompt.
skill_view returns this Skill's baseDirectory. Run:
node <baseDirectory>/scripts/grok-image-to-video.mjs --profile <runtime-profile> --image-path /absolute/path/input.png --prompt "Slow cinematic push-in with subtle natural motion" [options]
- The helper calls Studio, waits for completion, verifies the downloaded file, and returns JSON containing
output_path.
- Verify the file exists, then return it as an absolute Markdown file link so Studio renders the video player.
Options
--profile <name>: required in Ekko runs; use the current runtime Profile.
--duration <seconds>: integer from 1 to 15; defaults to 8.
--output-path <absolute-path.mp4>: optional requested destination. When omitted, Studio writes under its media directory.
--timeout-ms <milliseconds>: defaults to 600000 and is capped at 1800000.
The local call can legitimately take several minutes. Set the terminal_exec tool timeout slightly above --timeout-ms; do not start duplicate generations while the first request is still pending.
Errors
missing_xai_token: configure XAI_API_KEY or complete xAI OAuth login for the current Profile in Ekko Studio.
profile_not_found: the Ekko Profile does not map to an existing Studio/Hermes Profile used by the media endpoint.
401, 403, connection failure, timeout, expired request, provider failure, or missing output: report the Studio error and stop. Do not bypass Studio or silently retry against another service.
1---2name: grok-image-to-video3description: Animate a local image into a short MP4 through Ekko Studio using xAI Grok Imagine.4---56# Grok image to video78Use this Skill when the user wants to animate a local image into a short video with xAI Grok Imagine.910Always use the Studio media endpoint through the bundled helper. Do not call xAI directly, request credentials in chat, or fall back to another image/video generator when Studio reports an error. Studio owns xAI credential resolution, request polling, download, and Profile selection.1112## Workflow13141. Resolve the exact local source image. It must be PNG, JPEG, or WebP and necessary for the user's requested generation.152. Write a motion prompt that preserves the user's intended subject, composition, camera movement, and style. Do not add people, branding, or sensitive traits the user did not request.163. Use the exact `profile` shown under **Runtime Context** in the Ekko system prompt.174. `skill_view` returns this Skill's `baseDirectory`. Run:1819```text20node <baseDirectory>/scripts/grok-image-to-video.mjs --profile <runtime-profile> --image-path /absolute/path/input.png --prompt "Slow cinematic push-in with subtle natural motion" [options]21```22235. The helper calls Studio, waits for completion, verifies the downloaded file, and returns JSON containing `output_path`.246. Verify the file exists, then return it as an absolute Markdown file link so Studio renders the video player.2526## Options2728- `--profile <name>`: required in Ekko runs; use the current runtime Profile.29- `--duration <seconds>`: integer from 1 to 15; defaults to 8.30- `--output-path <absolute-path.mp4>`: optional requested destination. When omitted, Studio writes under its media directory.31- `--timeout-ms <milliseconds>`: defaults to 600000 and is capped at 1800000.3233The local call can legitimately take several minutes. Set the `terminal_exec` tool timeout slightly above `--timeout-ms`; do not start duplicate generations while the first request is still pending.3435## Errors3637- `missing_xai_token`: configure `XAI_API_KEY` or complete xAI OAuth login for the current Profile in Ekko Studio.38- `profile_not_found`: the Ekko Profile does not map to an existing Studio/Hermes Profile used by the media endpoint.39- `401`, `403`, connection failure, timeout, expired request, provider failure, or missing output: report the Studio error and stop. Do not bypass Studio or silently retry against another service.