Technical
Three-Tool Pipeline Example: Scrape, Transcribe, Publish
The skill soup thesis is that combining narrow tools beats one giant tool. Last week I built a pipeline that proves the point: scrape a video page, transcribe the audio, publish a post. Three tools, one workflow, zero heroics. Here is how the pieces fit.
The Problem
I had a backlog of recorded talks that needed to become blog posts. Manually this is hours of work each: watch, transcribe, edit, format, publish. The skill soup approach is to let each tool handle the part it is good at.
The Pipeline
Step 1: fetch video page HTML -> Python + httpx
Step 2: extract audio track -> yt-dlp + ffmpeg
Step 3: transcribe audio -> OpenAI Whisper
Step 4: clean and structure transcript -> Claude via API
Step 5: publish as draft post -> local posts APINo tool does more than one job. Each one has a clear input and output. If any stage breaks I can rerun from the last good artifact without redoing the rest.
The Glue Code
The pipeline itself is about 80 lines of Python. The heavy lifting is in the tools; the glue just moves artifacts between them:
def pipeline(video_url: str) -> str:
html = fetch_page(video_url)
audio = extract_audio(video_url)
transcript = whisper_transcribe(audio)
structured = claude_structure(transcript)
slug = publish_draft(structured)
return slugEach function is small. Each function has its own error handling. If Whisper is slow that day, only transcription is slow. If Claude hits a rate limit, I retry just that step.
What Makes This Work
The whole thing only works because every tool produces a persistable artifact. The HTML is a file. The audio is a file. The transcript is a file. The structured post is a file. That means the pipeline is restartable and cacheable. Running it again on the same input skips work that is already done.
This is the skill soup in practice. Not a single monolithic system that does everything. A set of narrow tools glued together by a workflow that respects each one's boundaries.
Read the OpenAI Whisper documentation for transcription options.
RELATED READING
The Consulting Shift I Am Making In Year Two
After a year of writing and building, my consulting practice is changing shape. Shorter engagements. Sharper outcomes.
ReadThe Frontend Shift: Shipping Less JavaScript In Year Two
A year ago I reached for Next.js for everything. This year I often reach for nothing.
ReadThe Serverless Lesson I Would Write On A Sticky Note
After a year of shipping serverless projects, one rule explains most of the wins and all of the losses.
Read