Claude Code plugin & CLI

Type a topic. Get a Reel.

Topic2Reel turns one line of text into a ready-to-post 9:16 Instagram Reel: animated scenes, Hindi voiceover, music and a caption with hashtags. It runs on your machine, with no API key and no upload.

Free · about 2 minutes to render a 35 s reel · 7 scene types

Demo

Two topics, same engine

Both reels below were rendered from a short JSON spec and a Hindi Piper voice (Pratham). Press play, sound on.

Study tips for examstopic: “Exam preparation: smart study habits”
Women’s fitness truthstopic: “Women’s fitness: 6 truths”

The voice is synthetic (Piper, Hindi). English loanwords can be mispronounced, so listen before you post your own reels.

Prompt builder

Set the options, get the prompt

Choose a topic and a few options. The prompt updates as you go. Paste it into Claude Code (with the plugin), or open it in Claude in the cloud, and the reel gets made.

3. Length
4. Tone
5. Middle scenes hook first and call to action last are always added
6. Hook
7. Call to action
Facts and things to avoid optional


        

    Templates

    Start from a ready topic

    Every template uses the plugin's own scene types. Press Use in builder to tweak it, or copy the prompt as it is (it follows the tab you chose above).

    How it works

    A topic, a spec, a video

    1. You give a topic

      “Study tips for exams”, for an audience you name. In Claude Code: /topic2reel:reel study tips for exams.

    2. Claude writes the spec

      Six scenes as JSON, following one prompt. A validator checks shape, length and script before anything renders.

    3. The engine renders

      A locked-down headless browser draws every frame, Piper speaks each line, ffmpeg mixes voice and music into one MP4 plus a caption file.

    One scene of a spec

    Scene length follows the length of the voice line, so you never retime anything by hand.

    {
      "type": "hook",
      "headline": ["Raat bhar ratta", "mat maaro!"],
      "highlight": ["ratta", "mat"],
      "emoji": "ЁЯУЪ", "stamp": "no",
      "badge": "Ratta system",
      "voice": "рдкрд░реАрдХреНрд╖рд╛ рд╕реЗ рдкрд╣рд▓реЗ рдкреВрд░реА рд░рд╛рдд рдЬрд╛рдЧрдХрд░ рд░рдЯрдирд╛ рдмрдВрдж рдХрд░реЛред"
    }

    Scene types

    Seven building blocks

    Visuals are emoji and shapes drawn in code, so they fit any topic. Stills below are real frames from the demo reels.

    Install

    Plugin or command line

    As a Claude Code plugin

    /plugin marketplace add sahibsingh/Instagram-topic2Reel
    /plugin install topic2reel@topic2reel
    /topic2reel:reel study tips for exams

    Written from Claude Code’s plugin docs; not yet tried against this repository. Local test: claude --plugin-dir ./Instagram-topic2Reel.

    From the command line

    pip install -r requirements.txt
    npm ci && npx playwright install chromium
    scripts/get_voice.sh hi_IN-pratham-medium
    python3 engine/topic2reel.py --doctor
    python3 engine/topic2reel.py examples/study_tips.json \
      -o out/study.mp4 --voice piper \
      --piper-model "$TOPIC2REEL_PIPER_MODEL"

    Honest limits

    What to know before you post

    • On-screen text is Roman script (Hinglish). Devanagari is used only for the spoken line.
    • Facts come from the LLM. Read health, money and legal topics before posting.
    • Voice quality depends on the Piper voice. English words can be mispronounced; re-spell them in Devanagari.
    • Private by design: the render browser has no network access (tested), the tool needs no API key, and child processes do not inherit your secrets.
    • Licences: piper-tts is GPL-3.0-or-later and each voice has its own licence. See SECURITY.md in the repository for the full review.