listenhub
Turn ideas into podcasts, explainer videos, voice narration, and AI images via ListenHub. Use when the user wants to "make a podcast", "create an explainer video", "read this aloud", "generate an image", or share knowledge in audio/visual form. Supports: topic descriptions, YouTube links, article URLs, plain text, and image prompts. Requires LISTENHUB_API_KEY environment variable (get from https://listenhub.ai/settings/api-keys).
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/kkaticld/listenhub-aiListenHub
Generate podcasts, explainer videos, TTS audio, and AI images through shell scripts that wrap the ListenHub API.
Setup
Set LISTENHUB_API_KEY before first use. Two options:
Option A — OpenClaw env config (recommended):
Add to ~/.openclaw/openclaw.json under env:
{ "env": { "LISTENHUB_API_KEY": "lh_sk_..." } }
Option B — Shell export:
export LISTENHUB_API_KEY="lh_sk_..."
Get your key: https://listenhub.ai/settings/api-keys
For image generation, also set LISTENHUB_OUTPUT_DIR (defaults to ~/Downloads).
Script Location
All scripts live at scripts/ relative to this SKILL.md. Resolve the path:
SCRIPTS="$(cd "$(dirname "<path-to-this-SKILL.md>")" && pwd)/scripts"
Dependencies: curl, jq (install if missing).
Modes
| Mode | Script | Use Case |
|---|---|---|
| Podcast | create-podcast.sh | 1-2 speaker discussion |
| Explainer | create-explainer.sh + generate-video.sh | Narration + AI visuals |
| TTS | create-tts.sh | Pure voice reading |
| Speech | create-speech.sh | Multi-speaker scripted audio |
| Image | generate-image.sh | AI image generation |
Helper scripts: get-speakers.sh (list voices), check-status.sh (poll progress).
Hard Constraints
- Execute ONLY through provided scripts. Direct API calls are forbidden.
- Never hardcode speakerIds — call
get-speakers.shto discover them. - The API is proprietary; endpoints and parameters are internal to scripts.
Mode Detection
Auto-detect from user input:
- Podcast: "podcast", "chat about", "discuss", "debate" →
create-podcast.sh - Explainer: "explain", "introduce", "video", "tutorial" →
create-explainer.sh - TTS: "read aloud", "convert to speech", "tts" →
create-tts.sh - Image: "generate image", "draw", "create picture" →
generate-image.sh
If ambiguous, ask user.
Quick Reference
Get Speakers
$SCRIPTS/get-speakers.sh --language zh # or en
Returns JSON with data.items[].speakerId. If user doesn't specify a voice, pick the first match for the language.
Podcast (One-Stage, default)
$SCRIPTS/create-podcast.sh --query "topic" --language zh|en --mode quick|deep|debate --speakers <id1[,id2]> [--source-url URL] [--source-text TEXT]
quickis default mode.debaterequires 2 speakers.- Multiple
--source-url/--source-textallowed.
Podcast (Two-Stage: text → review → audio)
Use only when user wants to review/edit the script before audio generation.
Stage 1: $SCRIPTS/create-podcast-text.sh (same args as one-stage)
Review: Poll with check-status.sh --wait, save draft, STOP and wait for user approval.
Stage 2: $SCRIPTS/create-podcast-audio.sh --episode <id> [--scripts modified.json]
Explainer Video
$SCRIPTS/create-explainer.sh --content "text" --language zh|en --mode info|story --speakers <id>
$SCRIPTS/generate-video.sh --episode <id>
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-kkaticld-listenhub-ai": {
"enabled": true,
"auto_update": true
}
}
}