Every creator I know has the same Tuesday problem. The video is done. Now the machine demands: three Shorts scripts, an X thread, a LinkedIn post, a carousel, a newsletter blurb. Same insight, five formats, zero additional brain cells available.
I automated it. Not with an app — with an architecture. This is the build log.
Most people open n8n and start dragging nodes. That's how you get a fragile Rube Goldberg machine. Instead, separate concerns:
My first version reposted the same thread four times in one night. The fix is boring and non-negotiable:
// mark processed ONLY after the last node succeeds
const staticData = $getWorkflowStaticData('global');
staticData.processedIds = staticData.processedIds || [];
for (const item of $('Filter New Videos').all()) {
staticData.processedIds.push(item.json.videoId);
}
Mark state at the end of the chain, never after generation. If the LLM call fails mid-run, the item stays unprocessed and retries cleanly. n8n only persists static data on successful executions, which gives you this behavior almost for free — if you order the nodes correctly.
Tempting to auto-publish everything. Don't. Platforms increasingly detect and suppress obvious bot patterns, and one bad AI-generated take can outrun your real voice. Drafts into a review queue keep the last mile human — which is also why the pack I sell ships as Sheets + Telegram notifications rather than direct posting.