RTP← Back to cases
Case 01

Autonomous content system for Threads

One post: 770,000 views, 35,000 likes, the top post on the whole account, with Kyivstar showing up in the comments. Running the blog became a pipeline: generate, approve with one tap, publish automatically, all in the author's own voice.

Role: RTP Agency·Timeline: Running in production·Status: Threads
Threads Autopilot dashboard: 2.9M views in 90 days

Client dashboard over 90 days: 2.9M views, +4,687 followers

01
Format rankingexport posts, sort by reach
02
Voice profilefew-shot from the author's real posts
03
Generationtext + POV visual for the format
04
LLM-as-judgerevises to match the voice until it passes
05
One-tap approvalcards in a Telegram bot
06
Auto-publishingThreads Graph API on schedule

The problem

A private German tutor ran Threads entirely by hand: coming up with posts, building screenshot mockups, publishing, and tracking by eye what worked. It ate his time, and content came out irregularly, so the account was essentially stuck.

The content had to hit a very specific personal voice: sharp, ironic, with dark humor. That's how Threads gives reach and how posts gently lead the audience to lessons. Doing it consistently every day is a full job on top of the main one. So it didn't get done.

The goal: turn blog management into a pipeline of generate, approve with one tap, publish automatically, while keeping the author's voice and growing reach and leads.

The solution

We built an autonomous content system that runs the whole cycle on its own.

Format ranking before generation

In practice this turned out to matter more than the text itself. Before generating anything, the system exports all of the account's posts and ranks them by reach to find which formats actually work for this audience. The pipeline then leans on the winning format, with enough variety mixed in so it doesn't get stale. Most automation tools skip this step and generate blind, but hitting a format the platform already rewards is half the result.

A voice that doesn't sound like AI

Plain model output always reads like a robot. The system builds a "voice profile" from the author's real posts and picks similar successful examples for each generation (few-shot on vector search). Every draft then goes through an LLM-as-judge: a model scores the text against the author's voice and revises it until it passes. No generic descriptions of tone, just convergence on one specific living style.

Realistic visuals

The winning format is the POV screenshot: a short caption with a cursor over a notification mockup (a message from a "student", a payment notice). The system generates these so they're visually indistinguishable from real ones, using the author's real posts as reference. Text and details in the image are edited straight from the bot with a free-form description, and a series mode lets you write "part 2" of a viral story with the same character and tone.

One-tap approval, auto-publishing

The author reviews ready cards in Telegram (approve, edit, reject, regenerate), and approved posts publish themselves to Threads on schedule through the Threads Graph API.

The system learns

The author rates posts ("his voice / not his"), and posts that led to a lesson booking are flagged. This keeps improving the system's aim, both on voice and on the formats that actually convert.

Technology

Python, FastAPI, Celery for background tasks and the scheduler. PostgreSQL with pgvector for style search, Redis. A provider-agnostic LLM layer (OpenAI / xAI Grok / Anthropic) that picks the least "censored" model for a sharp voice, with structured JSON output by schema. An image model with the author's real samples as references and a programmatic render template as a fallback. Threads Graph API (OAuth, two-step publishing, insights) and a Telegram bot (aiogram) for approval. Docker Compose, deployment on a dedicated server, automatic migrations.

Result

The tutor got a content desk in his pocket: the system proposes ready posts in his voice with realistic visuals, and publishing takes one approval tap. Manual work shrank to approving.

770,000
Views on a single post
35,000
Likes
Top-1
Post on the whole account

The numbers speak for themselves. One post got 770,000 views and 35,000 likes, became the top post on the whole account, and Kyivstar, one of the country's biggest telecom brands, showed up in the comments. The account could never have reached that by hand.

And importantly, this isn't a one-off viral post. It now happens every day, whether the client has time or not. Consistency is a question of system, not willpower.

Have a similar task?

Tell us what you're building — we'd be glad to talk it through.

Discuss →