Makani Tech: Build. Automate. Evolve.

Content Repurposer with n8n + Claude (free workflow)

How to turn every YouTube video into LinkedIn, X and IG drafts in your voice

FreeWorkflowBy Kishan Makani · updated 19 October 2026 · 4 min read

YouTube/RSSClaudeGoogle DocsSlackBuffer

Downloads

  • Download the n8n workflow (JSON)

    content-repurposing-n8n-claude.json · n8n workflow · 20 steps · starts with New YouTube video · uses RSS, Google Sheets, Google Docs, Anthropic, Slack · 28 KB

    Import into n8n: Create Workflow, then the menu, then Import from File.

How to import it into n8n
  1. In n8n, create a new workflow.
  2. Open the ⋯ menu at the top right and choose Import from File, then pick the downloaded .json. (Or open the file, copy everything and paste it on the canvas.)
  3. Open each node with a warning and connect your own account: the file carries no passwords or keys.
  4. Run it once with Test workflow, check the result, then switch it to Active.

What this workflow does

When you publish a YouTube video, n8n downloads its captions, reads your Voice guide doc and asks Claude for three drafts: a LinkedIn post, an X post and an Instagram caption, plus three hook options. A Code check enforces hard limits (280 characters on X, 5 hashtags on Instagram, no dashes). The drafts land in one Google Doc and Slack asks you to Approve. Approve queues the LinkedIn and X posts in Buffer, and the Content log records what happened.

Who it is for

Founders, consultants, coaches and small marketing teams who make long videos or blogs and never find the time to post about them.

What you need

  • An n8n account (Cloud or self-hosted)
  • Your YouTube channel (you must own it to download captions through the API)
  • An Anthropic API key for Claude
  • Google Docs, Google Sheets and Slack
  • A Buffer account with your LinkedIn and X channels connected, and a Buffer API key

The workflow, step by step

Step 1 · New video spotted

New YouTube video checks your channel's RSS feed every hour. Clean up video details pulls out the video id, title, link and date. Check content log looks for that video id in the Content log tab, and New video? continues only if it is not there.

Step 2 · Transcript and your voice

List caption tracks asks the YouTube Data API which captions exist. Download captions fetches the best English track as SRT (manual captions first, auto captions if that is all there is). If captions are not ready yet, the error goes to Problem alert. Clean transcript removes cue numbers and timestamps. Get voice guide reads your Voice guide doc.

Step 3 · Claude drafts three posts

Write the posts gives Claude the transcript and your Voice guide with clear rules: only ideas from the transcript, your rhythm, your never list. Posts format returns the LinkedIn post, X post, IG caption, hook options and a key quote. Check post rules replaces any dashes, trims X to 280 characters and keeps only 5 IG hashtags, and notes what it changed.

Step 4 · Drafts doc and one-tap approval

Create drafts doc makes a doc called "Drafts: video title" in your folder, and Write drafts into doc fills it with the hooks, all three drafts and the checks. Approve on Slack shows the first hook, the X post and the doc link with Approve and Reject. Approved? splits the answer.

Step 5 · Queued on Buffer, logged

One post per channel makes one item for LinkedIn and one for X. Queue on Buffer adds each to your Buffer queue through the Buffer API. The Instagram caption stays in the doc, because Instagram needs the reel or image itself. Log content writes the video, doc link and status (Queued or Rejected). Buffer errors go to Problem alert.

Setup

  1. Import the JSON into n8n.
  2. Find your channel ID (YouTube Studio → Settings → Channel → Advanced) and put it in the feed URL in New YouTube video.
  3. Create a YouTube OAuth2 credential with the account that owns the channel, and select it on both caption nodes.
  4. Create a Voice guide Google Doc with your best 5 or 6 posts and a "never" list. Paste its URL in Get voice guide, and a Drive folder ID in Create drafts doc.
  5. Create the Content log tab (Video ID, Title, Video URL, Doc, Status, Date) and connect Google Sheets, Anthropic and Slack.
  6. In Buffer, create an API key and find your channel IDs. Add a Header Auth credential (Authorization: Bearer YOUR_KEY) to Queue on Buffer and the IDs to One post per channel. Check the Buffer API docs for the current field names.
  7. Run the workflow by hand once with your latest video already in the feed, read the doc, and approve.

How to customise

  • Blog posts: point the trigger at your blog's RSS and replace the caption nodes with an HTTP Request for the article and an HTML node to extract the text.
  • Hindi or Hinglish posts: add that to the system message; the Voice guide examples matter most.
  • More formats: add fields to Posts format for a newsletter intro or a WhatsApp broadcast.
  • Instagram too: if you post carousels through Buffer, add an Instagram item with an image URL in One post per channel.

Guardrails

  • Claude may only use ideas and numbers from your transcript.
  • Hard limits are enforced in code, not trusted to the prompt.
  • Nothing is queued until you tap Approve, and queued posts can still be edited in Buffer.

Troubleshooting

  • 403 on captions: the YouTube credential must belong to the channel owner.
  • No captions yet: YouTube can take a while after upload. Run the workflow again later; the Content log check makes that safe.
  • Posts don't sound like you: add more and better examples to the Voice guide doc.
  • Buffer error: check the API key, the channel IDs and the current mutation fields in Buffer's API docs.

Want the members-only resources too?

A free account unlocks them all, including the ones shared in DMs.

Create a free account