tokenhop-video
Generate videos via tokenhop /v1/videos/generations using xAI Grok Imagine (grok-imagine-video).
Skill by tokenhop
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tokenhop-tokenhop-video
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/tokenhop-video
What's inside
- Skill name
tokenhop-video- Description
- Generate videos via tokenhop /v1/videos/generations using xAI Grok Imagine (grok-imagine-video). Async job flow - submit, poll request_id until done, download MP4. Use when the user wants to create, generate, or render a video, text-to-video (txt2vid), or image-to-video.
- License
- MIT
- Instructions
- 75 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Files (1)
- SKILL.md
SKILL.md (first lines)
# tokenhop — Video Generation (xAI Grok Imagine)
Requires `TOKENHOP_URL` (and `TOKENHOP_KEY` if auth enabled). See <https://raw.githubusercontent.com/tokenhop/tokenhop/refs/heads/master/skills/tokenhop/SKILL.md> for setup.
If they are unset, use the legacy `NINEROUTER_URL` / `NINEROUTER_KEY` instead. <!-- legacy(9router): remove in v2 -->
Requires a connected **xAI account** in the tokenhop dashboard — either **Grok Build OAuth** (SuperGrok / X Premium+ subscription sign-in) or a direct **xAI API key** from console.x.ai. The two are separate auth types with separate billing; the dashboard shows which one each connection uses.
## Endpoints (async job flow)
Video generation is **asynchronous**: the POST returns a `request_id` immediately, then you poll until the job is `done` or `failed`.
| Endpoint | Purpose |
| ----------------------------- | ------------------------------ |
| `POST /v1/videos/generations` | text-to-video / image-to-video |
| `POST /v1/videos/edits` | edit an existing video |
| `POST /v1/videos/extensions` | extend an existing video |
| `GET /v1/videos/{request_id}` | poll job status |
Request fields (passed through to xAI unchanged — see <https://docs.x.ai/developers/rest-api-reference/inference/videos>):
| Field | Required | Notes |
| -------------- | ---------------- | -------------------------------------------------------------------- |
| `model` | no | `xai/grok-imagine-video` (prefix is stripped before upstream) |
| `prompt` | yes for T2V | video description |
| `duration` | no | seconds |
| `aspect_ratio` | no | `16:9`, `9:16`, `1:1`, `4:3`, `3:4`, `3:2`, `2:3` |
| `resolution` | no | `480p`, `720p`, `1080p` |
| `image` | no | `{ "url": "https://… or data:image/…;base64,…" }` for image-to-video |
| `video` | edits/extensions | `{ "url": "…mp4" }` or `{ "file_id": "…" }` |
## Examples
Submit a job:
```bash
curl -X POST "$TOKENHOP_URL/v1/videos/generations" \
-H "Authorization: Bearer $TOKENHOP_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"xai/grok-imagine-video","prompt":"A cinematic tracking shot through a neon city at night","duration":8,"aspect_ratio":"16:9","resolution":"720p"}'
# → {"request_id":"abc123"} (response header x-tokenhop-connection-id: <id>)
```
Poll until done (echo the connection header back so the same account polls the job):
```bash
curl "$TOKENHOP_URL/v1/videos/abc123" \
-H "Authorization: Bearer $TOKENHOP_KEY" \
-H "x-connection-id: <id from create response>"
# → {"status":"pending","progress":42}
# → {"status":"done","video":{"url":"https://…mp4","duration":8},"model":"grok-imagine-video"}
# → {"status":"failed","error":{"code":"…","message":"…"}}
```
Download: fetch `video.url` from the `done` response.
## CLI one-shot
```bash
tokenhop xai video \
--prompt "A cinematic tracking shot through a neon city at night" \
--output video.mp4
# options: --model --duration --aspect-ratio --resolution --image --timeout --port --api-key
```
Submits, polls with progress, downloads to `video.mp4.part`, atomically renames on success. Ctrl+C cancels cleanly; non-zero exit on failure.
## Notes & limits
- Jobs are **account-bound** upstream: poll with the same connection that created the job (`x-connection-id` header, value from the create response's `x-tokenhop-connection-id`).
- Creation POSTs are **never auto-retried** (a retry could create and bill two videos). Only a 401→token-refresh→single-retry is performed, which upstream rejects before job creation.
- Video models are tagged `kind: "video"` and are excluded from chat model lists and chat fallback combos.
- Grok Build **subscription OAuth** tokens are sent to the same `api.x.ai/v1/videos` endpoints as API keys; whether a given subscription tier includes video-generation quota is controlled by xAI and is not verified by tokenhop — a `403`/`permission_denied` from upstream means the connected account has no video access.From tokenhop/tokenhop, MIT.
More from tokenhop/tokenhop
- 0.587score
tokenhop-stt
tokenhop
Speech-to-text via tokenhop /v1/audio/transcriptions using OpenAI Whisper / Groq / Gemini / Deepgram / AssemblyAI / NVIDIA / HuggingFace models.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop
tokenhop
Entry point for tokenhop — local/remote AI gateway with OpenAI-compatible REST for chat, image, TTS, embeddings, web search, web fetch.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-chat
tokenhop
Chat / code generation via tokenhop using OpenAI /v1/chat/completions or Anthropic /v1/messages format with streaming + auto-fallback combos.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-embeddings
tokenhop
Generate vector embeddings via tokenhop /v1/embeddings using OpenAI / Gemini / Mistral / Voyage / Nvidia / GitHub embedding models for RAG, semantic search…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-web-fetch
tokenhop
Fetch URL → markdown / text / HTML via tokenhop /v1/web/fetch using Ollama Cloud / Firecrawl / Jina Reader / Tavily Extract / Exa Contents.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-web-search
tokenhop
Web and X search via tokenhop /v1/search using Tavily / Exa / Brave / Serper / SearXNG / Google PSE / Linkup / SearchAPI / You.com / Perplexity / Xquik.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-tts
tokenhop
Text-to-speech via tokenhop /v1/audio/speech using OpenAI / ElevenLabs / Deepgram / Edge TTS / Google TTS / Hyperbolic / Inworld voices.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-image
tokenhop
Generate images via tokenhop /v1/images/generations using OpenAI / Gemini Imagen / DALL-E / FLUX / MiniMax / SDWebUI / ComfyUI / Codex models.
SkillAFreshness: A★ 1Claude Code +9 - 0.579score
9router-video
tokenhop
This skill moved to tokenhop-video.
SkillAFreshness: A★ 1Claude Code +9 - 0.579score
9router-web-fetch
tokenhop
This skill moved to tokenhop-web-fetch.
SkillAFreshness: A★ 1Claude Code +9 - 0.579score
9router
tokenhop
This skill moved to tokenhop.
SkillAFreshness: A★ 1Claude Code +9 - 0.579score
9router-chat
tokenhop
This skill moved to tokenhop-chat.
SkillAFreshness: A★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 1
- Open issues
- 7
- Last commit (this folder)
- Oct 2, 2026 (27 days ago)
- Last release
- Oct 23, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/tokenhop/tokenhop
- Website
- tokenhop.dev
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tokenhop
- 0.587score
tokenhop
tokenhop
Entry point for tokenhop — local/remote AI gateway with OpenAI-compatible REST for chat, image, TTS, embeddings, web search, web fetch.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-chat
tokenhop
Chat / code generation via tokenhop using OpenAI /v1/chat/completions or Anthropic /v1/messages format with streaming + auto-fallback combos.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-stt
tokenhop
Speech-to-text via tokenhop /v1/audio/transcriptions using OpenAI Whisper / Groq / Gemini / Deepgram / AssemblyAI / NVIDIA / HuggingFace models.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-image
tokenhop
Generate images via tokenhop /v1/images/generations using OpenAI / Gemini Imagen / DALL-E / FLUX / MiniMax / SDWebUI / ComfyUI / Codex models.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-tts
tokenhop
Text-to-speech via tokenhop /v1/audio/speech using OpenAI / ElevenLabs / Deepgram / Edge TTS / Google TTS / Hyperbolic / Inworld voices.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
tokenhop-embeddings
tokenhop
Generate vector embeddings via tokenhop /v1/embeddings using OpenAI / Gemini / Mistral / Voyage / Nvidia / GitHub embedding models for RAG, semantic search…
SkillAFreshness: A★ 1Claude Code +9
Cite this page
tokenhop-video skill. Agent Mart. https://agentmart.dev/skills/tokenhop-tokenhop-video (last updated 2026-10-24)