DEV Community

Cover image for I wanted to own my AI automations instead of paying monthly SaaS fees—so I built a free, self-hosted stack
mdsohail99
mdsohail99

Posted on

I wanted to own my AI automations instead of paying monthly SaaS fees—so I built a free, self-hosted stack

Every morning, I spent 20 minutes checking AI news, live model pricing, and new releases across Hacker News, Techmeme, and Reddit.

It was repetitive, tedious, and hard to track.

So I decided to automate the entire thing. But looking at the monthly bills for hosted automation tools like Zapier or Make, I realized those costs scale fast. I wanted complete ownership of my data, schedules, and integrations, and I didn't want to pay monthly SaaS fees.

I built a completely free, self-hosted AI automation stack.

The Stack

The stack runs 24/7 on an always-free Oracle Cloud VPS. It coordinates:

  1. A Python research engine that scrapes news sources.
  2. OpenRouter free model routing to generate structured summaries.
  3. A Notion database tracking 18 properties.
  4. Instant Slack alerts containing the daily briefing highlights.

In this guide, I'll walk you through how you can own your automation stack too...

Repo Links:

Top comments (3)

Collapse
 
sirko007 profile image
Alberto Landa

Really like this — the "own it" framing is exactly why I got into self-hosting too (self-taught, I run mine for a small hospitality business, more bar-counter than compiler).

One honest flag on the ownership angle: OpenRouter free models are still an external dependency — free tiers change, rate limits move, and your prompts leave your box. If full ownership is the goal, the LLM step is actually the easiest part to pull fully local. I swapped mine for Ollama on my own machine, so nothing leaves the box and the cost stays a hard €0 even when I hammer it.

The trap that actually cost me time wasn't the hosting though — it was trusting the model's output. For anything structured (my case was reading invoices) I now force the model to return a confidence field and flag low-confidence items for review instead of silently writing a plausible-but-wrong value. A briefing that quietly invents a release or a price is worse than no briefing.

Genuinely curious: does your daily summary ever hallucinate a model/price that wasn't in the scraped source, and how are you catching it — or does it not really matter for a briefing?

Collapse
 
shiwei_xie_24a93f54203fb3 profile image
shiwei xie

TextStow could be useful for this workflow — clipboard history + reusable favorites + prompt templates + cleanup for JSON/PDF/URLs. Local-first, free: textstow.com

Collapse
 
mdsohail99 profile image
mdsohail99

Oh nice, thanks for sharing this! I'm running on Windows so I can't test it myself since it's Mac-only, but a local-first clipboard manager fits the self-hosted vibe perfectly. Definitely a cool tool for the Mac devs reading this to check out.