How the Pipeline Works
The three stages of the content calendar pipeline at a glance — monthly research, approval-gated daily drafts, and automated publish.
What the Pipeline Is
The Content Calendar Pipeline is an end-to-end automation for running a real blog content program. Your AI employee does the research, proposes topics, writes the drafts, and publishes the finished posts — you review and approve at two gates. It runs as three linked stages on cron: monthly research on the 20th of each month, daily drafting after you approve rows in a sheet, and a publish loop that fires every 15 minutes against your inbox looking for your "approved" replies. Between the three stages there is a Google Sheet that holds the calendar state and a CMS at the end that receives the published posts. The client interaction is entirely in Telegram and one shared sheet.
Your AI employee does not deploy the pipeline on a fresh install by default. The five workflows are built from templates the first time you ask for a content calendar ("set up a content calendar for me", or anything equivalent). This keeps fresh instances clean until the client actually wants the pipeline.
The Three Stages
Stage 1 — Monthly Research. On the 20th of every month at 09:00 UTC, the research workflow fires: it runs blog gap analysis against your seed keywords, creates a fresh Google Sheet with 30 ranked keyword opportunities, writes a first-person title and content idea into every row using the LLM, and emails you a link to the sheet. You then flip the status column from "proposed" to "approved" on the rows you want to publish. Stage 2 — Daily Drafter. Every day at 08:30 IST (~03:00 UTC) the drafter picks the first row where status=approved and draft_status=pending, generates a full ~900-word first-person article, sources a hero image from Unsplash, delivers the draft as a Google Doc, and emails you the link. Stage 3 — Publish Loop. Every 15 minutes the publisher polls your inbox over IMAP for replies containing "approved". When it finds one, it pulls the stored draft out of your knowledge base, fires a publish webhook into your CMS, and updates the sheet row with the final URL.
Kicking off the pipeline
One sentence sets up the entire program.
The Two Approval Gates
The pipeline has two points where you decide what goes forward. Gate one is at the end of Stage 1 — the Google Sheet lands in your inbox with 30 proposed topics, and you flip the status column from "proposed" to "approved" on the rows you like. Rejecting a row costs you nothing; you can also edit a row's title, keyword, or content idea before approving. Gate two is at the end of Stage 2 — each drafted article lands in your email as a Google Doc link. You reply "approved" to publish, or you reply with changes and the drafter re-generates. Nothing gets published without your explicit approval on both gates. There is no auto-publish setting and there never will be.
Pace and Throughput
The pipeline is deliberately calm. Thirty keyword opportunities per month, one draft per day maximum, and a 15-minute poll interval on the publisher. At that pace, you can comfortably ship 10-20 posts a month if you approve aggressively, or 3-4 posts a month if you are selective. If you need to go faster, you can trigger the drafter manually ("draft the next two approved rows now") — the drafter will pick and process them in sequence rather than waiting for tomorrow's cron. If you need to slow down (holiday, launch week, personal bandwidth), leave rows as proposed and the drafter will quietly idle — the zero-pending-rows heartbeat tells you it has nothing to do without being alarming.