Portfolio / AI automation systems
HSID Shorts Engine
A devotional-content Shorts factory that writes, verifies, renders, and publishes two videos a day — every generative model local, every publish scheduled.
Built and run by Joel Wickremasinghe
running in production
2/day
publish cadence to YouTube + TikTok — 70 automated slots hit, Jun 19 – Jul 30 2026
measured · publish sentinel files
Problem
What needed to exist
A daily devotional channel lives or dies on cadence. Producing one short by hand — script, scene art, narration, captions, upload — takes hours, and a schedule that depends on someone showing up every day eventually breaks.
Faith content adds a harder constraint: a doctrinal error isn't a typo, it's a breach of trust. The pipeline needed a verification gate as rigorous as the render itself.
What we built
The system
A two-generation system. Era one was a nightly saint-of-the-day pipeline fired at 22:00 by Windows Task Scheduler (57 finished dailies). The current engine selects from a Needs × Moments content matrix and batch-builds a buffer of shorts — currently rendered 12 days ahead of the publish schedule.
Each short passes through a script grader, a theology verifier running a two-revision Reflexion loop on a separate model family, scene generation, a voice-cloned narration, word-synced burned captions, and a motion-upgrade finishing pass. Nothing publishes without human approval in a local review server — the publish gate enforces it.
Every generative stage runs on local GPUs: gemma4:26b writes and visually QCs, deepseek-r1:14b verifies theology, ComfyUI paints the scene, Qwen3-TTS narrates, faster-whisper times the captions. Zero cloud API calls in the render path. Publishing drives a real Chrome browser over the DevTools Protocol — two scheduled slots a day, timed to the US audience.
Live surface
Where it publishes
live channel
@HolySpiritInspirationDaily
The YouTube channel this pipeline publishes to, twice a day
live channel
@holyspiritinspirationd
The TikTok account the same pipeline cross-posts to automatically
Links checked 1 August 2026. Screenshots are static captures — the live site is the source of truth.
Architecture
HSID Shorts pipeline — as implemented
Stack
Built with
- Python
- Ollama · gemma4:26b
- Ollama · deepseek-r1:14b
- ComfyUI · SDXL
- Qwen3-TTS voice clone
- LTX-Video
- faster-whisper
- ffmpeg
- Chrome DevTools Protocol
- Windows Task Scheduler
- SQLite + JSONL ledgers
Outcome
Numbers, with provenance
608
videos rendered into the pipeline's output tree
measured · filesystem count
70
automated publish slots hit between Jun 19 and Jul 30 2026 — the latest one yesterday
measured · publish sentinels
7.4 min
median end-to-end build time per short, over 73 successful runs
measured · pipeline event log
12 days
content buffer built ahead of the publish schedule
measured · output folders vs. date
19,137
YouTube views across 194 tracked videos, as of the 2026-07-27 analytics import
measured · metrics.sqlite
1,660
channel subscribers at the last on-disk capture (2026-05-08)
measured · channel registry
62
TikTok cross-posts in the current era, fully automated
measured · upload sentinels
0
cloud API calls in the render path — every generative model runs on local GPUs
architecture · pipeline source
the freshest numbers on disk are dated above; we don't extrapolate
Every figure above is read from the system of record it describes. Gaps are marked, not filled in.
Also in this system
Supporting detail
The theology gate
A separate model family (deepseek-r1:14b) audits every script in a two-revision Reflexion loop before render, under hard content rules codified in the pipeline: no prosperity gospel, no health claims, no politics, no denominational judgment.
Nothing ships unreviewed
A local review server records an explicit human verdict on every short; the publish gate refuses anything not approved. Automation does the work — it doesn't get the final word.
Slots timed from analytics
The two daily publish slots (16:30 and 06:00 IST) map to 7:00 AM and 8:30 PM US Eastern — locked in June 2026 from the channel's own audience analytics, not guesswork.
Need content that ships every day without you?
This engine has hit 70 automated publish slots since June 19, with a 12-day content buffer so the schedule survives bad days. We build the same discipline for your content operation: local models, verification gates, honest telemetry.