2
4 Comments

Show IH: I automated 3 YouTube channels with GitHub Actions — here's the full stack

Hey IH,

Built something over the past 6 months I think this community will find interesting: a fully automated YouTube Shorts pipeline running across 3 channels.

What it does: GitHub Actions triggers on a cron schedule → Python script calls Claude/OpenAI API to generate a video script → edge-tts converts it to voiceover → Pexels API pulls stock footage → ffmpeg assembles everything → YouTube Data API uploads the finished video. Logs to Google Sheets.

Total API cost: ~$15/month. Three channels posting daily.

What I learned that wasn't obvious:

The prompt engineering is 90% of the product. I'm on v3 of my main channel prompt. Each version was driven by analytics — specific title patterns that underperform, hook structures that lose viewers in the first 3 seconds, duration targets by video format. The prompt includes a self-check the AI runs before returning output. Generic prompts produce garbage at scale.

The dedup system matters more than you'd think. Without a ledger tracking which Pexels clips you've used, the pipeline silently reuses the same footage. I commit a JSON file back to the repo after each run. Simple, effective, completely invisible to most tutorials on this topic.

OAuth token management is the #1 source of outages. YouTube tokens expire. If you don't have a process for re-OAuth and secret rotation, you'll have random upload failures at 2am and not know why until morning.

Current status: Three channels live. One public (@theminutezero on YouTube — business failures / corporate collapses niche). Two quiet. TikTok cross-posting pipeline built, waiting on app approval.

What I'm doing with it: Just launched ChannelStack (channelstack.net) — sharing the actual working files with operators who want to build the same thing. GitHub Actions YAML, Python scripts, Claude prompts — everything.

Happy to answer technical questions about the stack. The OAuth setup, the ffmpeg commands, the GH Actions patterns — whatever's useful.

on May 15, 2026
  1. 1

    The strongest part here is that you’re not selling “AI video automation” in the abstract. You’re packaging the actual operating system behind automated channels: prompts, deduping, OAuth handling, ffmpeg, upload flow, and the failure points most tutorials ignore.

    That makes ChannelStack more credible than another “make shorts with AI” product. The real buyer is probably not someone who wants a toy generator. It’s an operator who wants a repeatable media pipeline that keeps running after day one.

    One thing I’d watch is the name. ChannelStack explains the current use case well, but it also keeps the product tied tightly to YouTube/channel automation. If this expands into broader content ops infrastructure for AI media workflows, a cleaner platform-style name like Xevoa .com would give it more room.

    1. 1

      Appreciate that framing — "operating system" is exactly the right way to think about it. The failure points (OAuth drift, dedup, token rotation, prompt versioning) are the part no tutorial covers because they only surface after you've been running for a few weeks.
      On the name — noted. For now it fits the lane I'm in. If it expands, I'll revisit.

      1. 1

        That makes sense.

        ChannelStack is clear for the current lane, especially if the first wedge is YouTube/channel automation.

        The only thing I’d watch is whether the name starts shaping what users think the product is allowed to become.

        If operators begin using it less as a “channel tool” and more as the system that keeps AI media workflows running reliably, then the category gets bigger than the name.

        That is usually when the naming question becomes harder, because by then the narrow frame is already in the copy, user language, and product memory.

        So I would not force a rename now. But I would pressure-test one thing early:

        Are users buying ChannelStack because they want channel automation, or because they want reliable AI media operations?

        If it is the second, the broader platform-name question may come back sooner than expected.

  2. 1

    If you want to see what the output looks like, the public channel is @theminutezero on YouTube — business failures / corporate collapses niche, posting 2x daily via the pipeline described above.

    The community where I'm sharing the full stack (YAML, scripts, prompts) is at channelstack.net — $47/mo if you want to build the same thing.

    Happy to answer any technical questions here too.

Trending on Indie Hackers
7 years in agency, 200+ B2B campaigns, now building Outbound Glow User Avatar 105 comments How I built an AI workflow with preview, approval, and monitoring User Avatar 61 comments The "Book a Demo" Button Was Killing My Pipeline. Here's What I Replaced It With. User Avatar 55 comments Show IH: I'm building a lead gen + CRM tool for web designers targeting local businesses without websites — starting with Spain User Avatar 34 comments I built a desktop app to move files between cloud providers without subscriptions or CLI User Avatar 27 comments Show IH: I built an AI agent that helps founders find the right people User Avatar 24 comments