Automatically recreate your competitors' posts with WP AutoFlow - OpenSource

FabioSelau

Senior Member
Joined
Oct 19, 2018
Messages
848
Reaction score
463
A while back I created a project where I built a Scrapy post bot that automatically published to my blog with an expired domain, and I got millions of hits over that year and a half. (https://www.blackhatworld.com/seo/journey-domain-expired-scrapy-ia-my-new-blog.1613608/)

Now I'm reworking my code to release it as open-source. The idea is that you configure your WordPress site, add target sites, and based on the configured cron (every hour, every 6 hours...) it retrieves posts from the target WordPress sites (with proxy if configured), rewrites them with AI (if enabled), uploads the image (if enabled), adds your site's watermark (if enabled), publishes to your site, pings IndexNow (if enabled), and finally calls your webhook if configured.

The entire architecture uses a Redis queue with several configurable queue types, such as sequential, parallel... The architecture was designed to be scalable and easy to implement features, meaning that if instead of retrieving the original image, we need to create one using some AI service, we can easily implement it.

Below are some features:
AI Content Engine
* Smart Rewriting: Uses LLMs (GPT-4o, DeepSeek) to rewrite titles and content, avoiding plagiarism.
* Context Awareness: Preserves the original meaning while improving SEO and readability.
* Internal Linking: Automatically builds internal links based on your site's history (SEO Link Building).

⚡ Orchestration & Performance
* Queue System: Powered by Redis & BullMQ. Handles massive workloads without timeouts.
* Concurrency Control: Configurable execution modes (Sequential or Staggered) to prevent server overload.
* Robust Scheduling: Built-in CRON scheduler to fetch new content automatically.

️ Media Management
* Auto-Upload: Extracts images from source, downloads, and uploads them to the WordPress Media Library.
* Watermarking: Automatically applies watermarks to images before uploading.
* Featured Image: Sets the featured image automatically.

️ Network & Security
* Proxy Support: Native support for Scrape.do (API Mode - freemium) or Standard Tunnel Proxies.
* Stealth Mode: Mimics real browser headers to bypass basic anti-bot protections.

Modern Dashboard
* React + Vite: A blazing fast interface to manage sites, view logs, and monitor queues.
* Real-time Stats: Monitor success rates, errors, and queue status instantly.


1765807106355.png



The idea is to improve the AI prompts and have it recreate the article using all SEO best practices, as well as integrate with WordPress SEO plugins.

The project will be open-source with Docker and PM2 already configured; just do a `git clone` and a `docker compose` and everything will be ready.

Do you have any suggestions for features?
 
Sounds like a wonderful project mate
 
solid work! maybe add content freshness logic, like updating old posts when competitors update theirs, plus basic humanization controls such as tone variance or intentional imperfections?
 
solid architecture . redis + bullmq is the only way to handle real volume without the worker nodes hanging every 10 mins
r u planning to add any entity-based anchor swapping ?
would be huge if u could scrape the competitor copy , identify specific entities ( brands / products ) via nlp and auto-swap them with ur own internal links or affiliate ids before the ai rewrite pass
also , for the image handler .. u might wanna add a simple pixel-level uniquification ( slight color shift or metadata stripping ) . google's vision algo is getting good at clustering scraped media based on visual hashes even if u watermark them
looking forward to the repo link
 
solid architecture . redis + bullmq is the only way to handle real volume without the worker nodes hanging every 10 mins
r u planning to add any entity-based anchor swapping ?
would be huge if u could scrape the competitor copy , identify specific entities ( brands / products ) via nlp and auto-swap them with ur own internal links or affiliate ids before the ai rewrite pass
also , for the image handler .. u might wanna add a simple pixel-level uniquification ( slight color shift or metadata stripping ) . google's vision algo is getting good at clustering scraped media based on visual hashes even if u watermark them
looking forward to the repo link

Sorry for the delay, I honestly didn't see any notifications about this post. Today, when I searched to see if anyone liked it or commented with feedback, I realized there were replies to the topic.

I've revived the project and am making adjustments. I want to release the code by the end of the month. In the image, it retrieves the original post image and uploads it to your WordPress site. If you add a watermark image, it attaches your logo to the image. This prevents Google from detecting it as a duplicate image. I can also add opacity and blue light options in the future.
1776867959037.png


Your suggestion is good, but I believe it's already possible to do this. For example, in the platform settings, you can add extra instructions for the title and body of the post. There you can do whatever you want, such as: replace every link or mention of x with y. Every mention of Apple products includes a hyperlink to https://apple.com?ref=bhw as nofollow0w, and so on... Do you think that's sufficient, or would a 'text replacement' setting be needed?

1776867764948.png
 
solid work! maybe add content freshness logic, like updating old posts when competitors update theirs, plus basic humanization controls such as tone variance or intentional imperfections?
That's a good tip about updating. Currently, I store the post data in MongoDB to avoid duplication (for example, post ID 123 on the target blog has already been published on your blog, in which case it won't publish it again), but nothing prevents us from listing these posts in the future with an 'update content' option. This retrieves the new post and compares it to the old one, and if they are different, sends the old, updated post and the one from your blog back to GPT so that it updates your post based on the other update.
 
I am waiting for you impatiently. The month is over now, and you still haven't added the update. Please hurry up, my friend.
 
I am waiting for you impatiently. The month is over now, and you still haven't added the update. Please hurry up, my friend.
This project is open-source now. wpautoflow[dot]com
 
checked out the site, looks like a solid stack. is the docker setup lightweight enough to run on a basic vps or does the redis and mongo queue eat up too much ram? tbh some of my target sites are pretty aggressive with cloudflare so i might need to test how the proxy setup handles it. thanks for open sourcing this, gonna try spinning it up this weekend.
 
checked out the site, looks like a solid stack. is the docker setup lightweight enough to run on a basic vps or does the redis and mongo queue eat up too much ram? tbh some of my target sites are pretty aggressive with cloudflare so i might need to test how the proxy setup handles it. thanks for open sourcing this, gonna try spinning it up this weekend.
I run it on the smallest DigitalOcean droplet without any issues.

What I had to do was set up swap:
Code:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

The `npm run build` process was taking too long due to the limited memory, but creating the swap file solved the problem. I've actually been running it for months now, and everything is fine.
 
looks pretty cool. any plans to support local llms like ollama? using gpt-4o or even deepseek for high volume is gonna get pricey tbh...
 
Back
Top