listenhub-cli — Claude Code skill: routes podcast, video and TTS tasks
Reads your request, picks the right ListenHub skill and hands the job over: podcast, voiceover, video, music, images.
npx skills add marswaveai/skills --skill listenhub-cli -a claude-codeWhat listenhub-cli does
This one is a router, not a generator. It reads the message, works out the category and passes control to a specialised skill: /podcast, /explainer, /slides, /tts, /image-gen, /video-gen, /music, /content-parser, /asr, /creator, /voice-clone, /listenhub-voice. The agent then follows that skill's own instructions.
When the intent is unclear, the router asks a clarifying question with a list of options: ListenHub Voice, voice cloning, podcast, explainer video, slides, music, video. So a vague request about an article does not get sent down a random path.
Before doing anything, the skill checks auth with listenhub auth status --json. If the CLI is missing or you are not logged in, it installs npm install -g @marswave/listenhub-cli and runs listenhub auth login, which opens a browser. One exception: /asr runs locally and needs neither the CLI nor an API key. Worth knowing if you would rather the agent did not quietly drop a global npm package on your machine.
What it helps with
- pick the right ListenHub skill from a loosely worded request
- turn a linked article into a podcast or narrated video
- read text aloud without picking a voice by hand
- generate music or a cover image for a piece of content
- transcribe audio locally with no API key
Example prompts for the agent
- make a podcast from this article
- read this text aloud and save it as mp3
- generate a video from this description
How to install listenhub-cli
1Skills CLI (Vercel)
npx skills add marswaveai/skills --skill listenhub-cli -a claude-code2Manually: put the files in place
~/.claude/skills/listenhub-cli/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/listenhub-cli/
1Skills CLI (Vercel)
npx skills add marswaveai/skills --skill listenhub-cli -a codex2Manually: put the files in place
.agents/skills/listenhub-cli/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add marswaveai/skills --skill listenhub-cli -a cursor2Manually: put the files in place
.cursor/skills/listenhub-cli/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install marswaveai/skills listenhub-cli2Manually: put the files in place
.github/skills/listenhub-cli/SKILL.md1Skills CLI (Vercel)
npx skills add marswaveai/skills --skill listenhub-cli -a gemini-cli2Platform CLI
gemini skills install https://github.com/marswaveai/skills --path listenhub-cliManually: put the files in place
.devin/skills/listenhub-cli/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add marswaveai/skills --skill listenhub-cli -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about listenhub-cli
How do I install listenhub-cli in Claude?
Run npx skills add marswaveai/skills --skill listenhub-cli -a claude-code. The skill lands in ~/.claude/skills/listenhub-cli/SKILL.md.
What does listenhub-cli do?
It reads your message, decides which task you want — podcast, voiceover, video, music, image, link parsing — and routes it to the matching ListenHub skill.
Do I need an API key?
Most skills need the ListenHub CLI with an active login: the router checks the status and, if needed, installs the package and opens a browser for auth. The /asr skill runs locally and needs no CLI or key.
Source text
SKILL.md · MIT
---
name: listenhub-cli
description: |
ListenHub CLI skills router. Routes to the correct skill based on user intent.
Triggers on: "make a podcast", "explainer video", "read aloud", "TTS",
"generate image", "generate video", "做播客", "解说视频", "朗读", "生成图片",
"生成视频", "幻灯片", "slides", "音乐", "music", "generate music", "翻唱",
"cover song", "pixverse", "口型", "lipsync", "对口型",
"parse URL", "解析链接", "提取内容".
metadata:
openclaw:
emoji: "🎧"
requires:
bin: ["listenhub"]
primaryBin: "listenhub"
---
## Purpose
This is a router skill. When users trigger a general ListenHub action, this skill identifies the intent and delegates to the appropriate specialized skill.
## Routing Table
| User intent | Keywords | Route to |
|-------------|----------|----------|
| ListenHub Voice end-to-end audio | "端到端音频", "语音生成", "图片转音频", "图片生成音频", "多音色对白", "参考音频克隆", "克隆音色", "音效", "生成音效" | `/listenhub-voice` |
| Podcast | "podcast", "播客", "debate", "dialogue" | `/podcast` |
| Explainer video | "explainer", "解说视频", "tutorial video" | `/explainer` |
| Slides / PPT | "slides", "幻灯片", "PPT", "presentation" | `/slides` |
| Voice cloning (persistent) | "克隆我的声音", "克隆音色", "声音克隆", "语音克隆", "用我的声音", "自定义音色", "clone my voice", "custom voice" | `/voice-clone` |
| TTS / Read aloud | "TTS", "read aloud", "朗读", "配音", "语音合成" | `/tts` |
| Image generation | "generate image", "画一张", "生成图片", "AI图" | `/image-gen` |
| Video generation | "video", "视频", "seedance", "pixverse", "生成视频", "text to video", "做视频", "口型", "lipsync", "对口型" | `/video-gen` |
| Music | "music", "音乐", "生成音乐", "翻唱", "cover" | `/music` |
| Content extraction | "parse URL", "extract content", "解析链接" | `/content-parser` |
| Audio transcription | "transcribe", "ASR", "语音转文字" | `/asr` |
| Creator workflow | "创作", "写公众号", "小红书", "口播" | `/creator` |
## How to Route
1. Read the user's message and identify which category it falls into
2. Tell the user which skill you're routing to
3. Follow that skill's SKILL.md completely
If the intent is ambiguous, ask the user to clarify:
```
Question: "What would you like to create?"
Options:
- "ListenHub Voice" — End-to-end audio: sound effects, multi-voice dialogue, reference-audio cloning, image→audio
- "Voice Cloning" — Clone your own voice into a reusable speaker
- "Podcast" — Audio discussion on a topic
- "Explainer Video" — Narrated video with AI visuals
- "Slides" — Slide deck / presentation
- "Music" — AI-generated music or cover
- "Video" — AI video generation from text or reference materials
```
## Prerequisites
Most skills require the ListenHub CLI. Check:
```bash
listenhub auth status --json
```
If not installed or not logged in, handle automatically — never ask the user to run install commands:
1. Auto-install: run `npm install -g @marswave/listenhub-cli` silently
2. Auto-login: run `listenhub auth login` (opens browser)
Exception: `/asr` runs locally and needs no CLI or API key.
© marswaveai · MIT · marswaveai/skills