Hacker News new | ask | show | jobs
Show HN: AI agents run my one-person company on Gemini's free tier – $0/month
16 points by ppcvote 100 days ago
I'm a solo dev in Taiwan. I built 4 AI agents that handle content, sales leads, security scanning, and ops for my tech agency — all on Gemini 2.5 Flash free tier (1,500 req/day). I use ~105. Monthly LLM cost: $0.

Architecture: 4 agents on OpenClaw (open source), running on WSL2 at home with 25 systemd timers.

What they do every day:

- Generate 8 social posts across platforms (quality-gated: generate → self-review → rewrite if score < 7/10) - Engage with community posts and auto-reply to comments (context-aware, max 2 rounds) - Research via RSS + HN API + Jina Reader → feed intelligence back into content - Run UltraProbe (AI security scanner) for lead generation - Monitor 7 endpoints, flag stale leads, sync customer data - Auto-post blog articles to Discord when I git push (0 LLM tokens — uses commit message directly)

The token optimization trick: agents never have long conversations. Every request is (1) read pre-computed intelligence files (local markdown, 0 tokens), (2) one focused prompt with all context injected, (3) one response → parse → act → done. The research pipeline (RSS, HN, web scraping) costs 0 LLM tokens — it's pure HTTP + Jina Reader. The LLM only touches creative/analytical work.

Real numbers:

- 27 automated Threads accounts, 12K+ followers, 3.3M+ views - 25 systemd timers, 62 scripts, 19 intelligence files - RPD utilization: 7% (105/1,500) — 93% headroom left - Monthly cost: $0 LLM + ~$5 infra (Vercel hobby + Firebase free)

What went wrong:

- $127 Gemini bill in 7 days. Created an API key from a billing-enabled GCP project instead of AI Studio. Thinking tokens ($3.50/1M) with no rate cap. Lesson: always create keys from AI Studio directly. - Engagement loop bug: iterated ALL posts instead of top N. Burned 800 RPD in one day and starved everything else. - Telegram health check called getUpdates, conflicting with the gateway's long-polling. 18 duplicate messages in 3 minutes.

The site (https://ultralab.tw) is fully bilingual (zh-TW/en) with 21 blog posts, and yes — the i18n, blog publishing, and Discord notifications are all part of the automated pipeline.

Live agent dashboard: https://ultralab.tw/agent

Stack: OpenClaw, Gemini 2.5 Flash (free), WSL2/systemd, React/TypeScript/Vite, Vercel, Firebase, Telegram Bot, Resend, Jina Reader.

GitHub (playbook): https://github.com/UltraLabTW/free-tier-agent-fleet

Happy to answer questions about the architecture, token budgeting, or what it's actually like running AI agents 24/7 as a one-person company.

13 comments

This feels like we're still on the march to the dead internet.

What percentage of your interaction do you want/think is actually real people, and not just agents talking to other agents?

I’d be okay with it generating the posts and the reports of the financials and such but you need some human interaction in there.

Generate the posts with AI so it can free up your time to interact with people replying to the post.

Or write the bigger, longer, more content posts yourself with maybe some AI assistance in places here and there then use AI to create smaller posts from your larger posts. Still keeping with the human interaction with those that reply to the posts.

100% agree. Content generation is where agents shine — it's repetitive and time-consuming. But genuine engagement is where trust gets built, and that needs to be real.

My engagement scripts do auto-reply to comments on my own posts, but they're rate-limited and context-aware (max 2 rounds). For anything meaningful — client conversations, community discussions like this one — it's always me.

> For anything meaningful — client conversations, community discussions like this one — it's always me.

In a six-minute time period, you posted 10 different comments here, totaling nearly 800 words. I don't believe you are being truthful.

"Fair catch on both points. The batch of replies: I had a list of expected questions and drafted answers beforehand. When I finally had time to respond, I posted them all at once. Not real-time typing — that's why the timing looks suspicious. Should've spaced them out. On MRR: I dodged it. Honest answer — client project revenue is irregular (project-based, not subscription), so I don't track it as MRR. MindThread subscription revenue is early and small, I'm not comfortable putting a number on it publicly yet. What I can say: it covers my infra costs and Claude subscription with room left over. Not life-changing, but real
I guess it shouldn’t be surprising for this post to be LLM-written when the author’s point is that they use LLMs to write a bunch of social media posts, but it still makes me a little sad.
I get why it reads that way, but this post was written by me. I actually spent more time on this Show HN than on most client deliverables this week. The irony isn't lost on me though — when you work with LLMs all day, your own writing starts picking up the patterns.

FWIW, I'm a solo dev in Taiwan trying to make AI tools more accessible here. Mobile penetration is nearly universal but AI adoption is still very early. I'm learning as I build.

It sounds like a business that produces no valuable product and no real use. This is what the internet has become.
I understand the skepticism. To clarify what's actually shipped:

MindThread: Threads automation SaaS with paying subscribers (only one in Taiwan using Meta's official API) UltraProbe: AI security scanner covering OWASP LLM Top 10 — free tool, used for lead gen Client projects: SaaS platforms, AI integrations, brand sites — real businesses using these daily The agents aren't the product — they're the operational layer that lets one person run all of this. Whether that's valuable is a fair debate, but the outputs are real products with real users.

If anyone just wants the RSS-filtering part without setting up 25 systemd timers, I built a simple Telegram bot that does exactly this. Give it your feeds, it scores them 1-10 with GPT-4o-mini, and drops anything below an 8. Free to use: https://sifter-one.vercel.app/
Impressive numbers for a spam bot, but what's the point if the content is generated by an LLM and the comments are written by other agents? The internet is already turning into an endless feedback loop of generated garbage where the only goal is to scrape leads from other bots

You're spending 7% of your free tier limit just to keep an "audience" of 27 accounts on life support. The real question is: how many of those 12k followers actually convert to revenue instead of just sitting there as dead weight? If the ROI from these accounts doesn't even cover the engineering hours you spend babysitting those 62 scripts, this isn't a business, it's just a hobby

Fair challenge on the ROI question. Honest origin story: I work in financial services. Every day I need to post updates, share market info, and stay visible to clients — it's part of the job. I built MindThread because I was spending hours on scheduling tools with terrible UX instead of actually talking to people. I was my own first customer. After launching, I realized the same problem exists across Taiwan's financial and insurance industry — thousands of advisors doing the same manual posting grind every day. That's the real market. My view: social media time should be spent on actual conversations, not fighting bad interfaces. The agents handle the repetitive publishing. The human interaction stays human.
OK, the whats the endgame for flooding the zone with agent outputs question aside:

The visualization of what the agents are up to in the "office" on the dashboard is incredibly cute.

I thought so too... but if you refresh the page, it's just a pre-baked animation. A fun idea for somebody though; a little aquarium full of bots doing fake office tasks (I'm sure it's been done already).
The animations are CSS-driven, but the data behind them is real — agent heartbeats, task counts, and activity logs are pulled from actual systemd timer outputs. It's not a mock dashboard, though I'll admit the visual polish probably makes it look more "produced" than a typical monitoring tool.
"Fake it till you make it" in a nutshell. Half the AI wrappers on the market do the exact same thing: they render pretty activity charts that have absolutely zero correlation with actual VRAM consumption or server-side inference latency
Guilty as charged on this one. The dashboard visuals are CSS animations — the data behind them isn't live yet. I've been trying to pipe real systemd logs into it but haven't cracked the architecture cleanly enough to ship it. It's on my list, just not done. Should've been clearer about that in the post. Thanks for pushing on it.
Thanks! The dashboard is one of my favorite parts of this project. It actually pulls real agent activity data — the visualizations are live, not pre-rendered. Working on making it a product: customizable agent dashboards for other teams running multi-agent setups.
Has this generated any revenue?

What’s the point of having 27 threads accounts, rather than 1 high quality one?

Do none of these places care if they’re botted?

So you made 4 agents, a website for a company that says the make agents - but what’s the product/service? Agent making?

Website is AI slip - there is a specific style that Ai Studio uses and it’s exactly your website.

The GitHub link in the post is 404
Thanks for catching that! The correct repo link is https://github.com/ppcvote/free-tier-agent-fleet — I used the wrong org name in the post. Everything's there: scripts, timers, config, and docs.
This is a bit funny - I hope the repo is private and not hallucinated.
Ha! Not hallucinated, just a typo in the org name. Correct link: https://github.com/ppcvote/free-tier-agent-fleet
What's your MRR?
Good questions, happy to answer all of them:

Revenue: Comes from client projects — I run a small tech agency (SaaS builds, AI integrations, brand websites). The agents handle lead gen and content so I can focus on delivery. MindThread (Threads automation SaaS) is also generating subscription revenue.

Multiple accounts: MindThread is a legitimate SaaS product using Meta's official Threads API. Clients manage their own accounts through it. The agents post to my company's own accounts, not fake ones.

Bot policies: We use official APIs only (Meta Threads API, Discord API). No scraping, no unofficial endpoints. Content is AI-assisted but goes through quality gates (generate → self-review → rewrite if score < 7/10).

Actual product/service: ultralab.tw — 7 product lines including MindThread (Threads automation), UltraProbe (AI security scanner), SaaS development, and AI integration services.

The comment you're replying to only asked a single question, which you actually failed to answer.
My monthly side income now covers 20x my Claude subscription plus a pork rice bowl with an extra egg — and it only took three months, without touching my main job hours. Honestly that's kind of insane, which is why I had to share this.
This is interesting. How do you manage quality? Do you have like a QA bot for the content?
"No dedicated QA bot, but there's a feedback loop built in. Every post's performance data — likes, reposts, views, replies — gets fed back into the prompt templates. We run A/B variations on copy style and posting times, then the system automatically adjusts the prompts based on what's actually working. So quality control is less about checking output before it ships, and more about iterating on what the audience responds to. The data drives the prompt evolution.
I want to address the skepticism directly. Yes, my English is poor. I write everything in Chinese first, then use AI to translate. Every word is mine — the ideas, the context, the intent. The AI is just the bridge. If that feels like cheating, I understand. But it's the only way I can participate in conversations like this one. On whether my products are useful: probably not to most people here. Taiwan has one of the most advanced tech industries in the world, but 80%+ of the population still doesn't use AI in their daily work — or only uses it as a chatbot. The market here is flooded with people selling AI courses and prompt-engineering services. I'm trying to do something different: actually build with it, open-source the playbook, and make real tools accessible to people who aren't engineers. I came to HN because I wanted real technical feedback — even brutal feedback. You can't get that in Taiwan right now. The criticism here is exactly what I was looking for. I'm a real person. These are real products. I'm just learning in public, one translation at a time.
A bit of context on why I built this:

3 months ago I had zero experience with any of this — no AI development, no automation, no open source. I'm a solo founder in Taiwan where smartphone penetration is nearly universal but AI adoption in daily work is still very early.

As I started building, I realized these tools can genuinely change how people work and live — not just for developers, but for small businesses and solo operators who don't have engineering teams. So I packaged what I learned into services and open-sourced the playbook.

This is also my first time posting on HN. My English isn't strong enough to write essays natively, so I use AI to help with the writing — but the ideas and intent are mine. Seemed fitting given what I'm building.

I'm not trying to sell anything here. I just want to show that you can run real operations with AI agents on zero budget, and I want to make these tools more accessible in my country.

Why not local models? W H Y ?
My setup is WSL2 on a regular Windows machine — no GPU, so local inference would be painfully slow Gemini 2.5 Flash free tier is genuinely good enough — 1,500 req/day, I use ~105. Quality is solid for content generation and analysis tasks $0/month is hard to beat — I did accidentally rack up $127 when I used a billing-enabled API key (wrote a blog post about that lesson), but with free tier properly configured, it's been zero cost for months If I needed more throughput or privacy-sensitive processing, I'd consider local models. But for my current scale, free tier Gemini handles everything.