Skip to content

Every hour

Turn videos and docs into a blog post and an X thread

Each new item on your source list becomes a WordPress blog post and an X thread linking to it.

Runs
Every hour
Apps
WordPress, X
AI
Yes, uses the built-in AI allowance
Access
WordPress Author+; tweet.write

Send this to your assistant

Create a ClickRuntime automation: every hour, check my content feed for new videos or articles. Turn each into a blog post on my WordPress site and a 5-post X thread that links to it.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Creators who make videos or long documents rarely have time to turn each one into a blog post and a thread as well. Yet those formats reach different people: search visitors read blogs, X followers read threads. Without repurposing, most of the work reaches only one audience.

Turning each new piece into both formats as soon as it appears means one effort reaches several audiences. The thread links to the blog, and the blog keeps working in search for months.

What you get out of it

  • One piece, three audiences

    Video viewers, blog readers and X followers each get the content in the format they prefer.

  • Threads bring readers to your site

    The last post of each thread links to the full article, sending X readers to your blog.

  • Search traffic from videos

    A written version of each video gives search engines something to index, so the content can be found long after it was published.

  • Each item done once

    Items already repurposed are remembered, so nothing is posted twice.

How it works

What happens, step by step

  1. Every hour ClickRuntime checks your content feed for new items.

  2. It skips anything it has already repurposed.

  3. AI writes a blog post and a five-post thread from each new item.

  4. The blog post is published on WordPress, then the thread is posted on X with the last post linking to the article.

Before it runs live

  • Connect WordPress
  • Connect X

What you get

RunsEvery hour
Turn videos and docs into a blog post and an X threadtoday, 9:00Succeeded
X · @acmestudio1/ We filmed our whole product launch, mistakes included. Here are the 4 things we'd do differently 🧵 … 5/ Full write-up: blog.example.com/launch-lessons

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Change what the AI looks for, or how it writes the result
  • Add another app, for example also send it to Slack
  • Combine it with other WordPress and X steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
repurpose_content_into_a_post_and_a_thread.pyexample
import feedparser
from clickruntime import on_trigger, report_fetched, credentials, http, state, ai

FEED, SITE = "https://www.youtube.com/feeds/videos.xml?channel_id=UCxxxxxxxx", "https://blog.example.com"
SCHEMA = {"type": "object", "required": ["title", "html", "thread"], "properties": {"title": {"type": "string"},
          "html": {"type": "string"}, "thread": {"type": "array", "items": {"type": "string"}}}}

@on_trigger
def run(event):
    seen = set(state.get("seen") or [])
    new = [e for e in feedparser.parse(FEED).entries[:5] if e.link not in seen]
    report_fetched(len(new))
    if not new:
        return {"done": 0}
    x = {"Authorization": "Bearer " + credentials.connection("x", "main")}
    for e in new:
        out = ai.generate(f"{e.title}\n{e.get('summary', '')[:5000]}", json_schema=SCHEMA, max_output_tokens=2048,
                          system="Write a blog post (title, HTML body) and an X thread of 4 posts under 260 characters each.").json
        link = http.post(f"{SITE}/wp-json/wp/v2/posts", auth=("editor", credentials.secret("WP_APP_PASSWORD")),
                         json={"title": out["title"], "content": out["html"], "status": "publish"}).json()["link"]
        reply_to = None
        for text in out["thread"][:4] + [f"Full write-up: {link}"]:
            body = {"text": text[:280], **({"reply": {"in_reply_to_tweet_id": reply_to}} if reply_to else {})}
            reply_to = http.post("https://api.x.com/2/tweets", headers=x, json=body).json()["data"]["id"]
        seen.add(e.link)
    state.set("seen", list(seen)[-300:])
    return {"done": len(new)}

FAQ

Common questions

What sources can it use?
Any RSS feed, such as a YouTube channel feed, a podcast feed or another blog. The description or summary text from the feed is used as the source material.
How long is the thread?
Five posts by default: a hook, three key points and a final post with the article link.
Can the blog post be saved as a draft?
Yes. Ask for drafts instead, and the thread can wait until you publish.
What permissions does it need?
WordPress Author+; tweet.write. Nothing else in your accounts is used.
Does it need AI?
Yes. It uses ClickRuntime's built-in AI, so you don't need an OpenAI or Anthropic key. Every plan includes a monthly AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Turn videos and docs into a blog post and an X thread” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.