DEV Community

Suifeng023
Suifeng023

Posted on

How I Built an AI Agent That Runs 24/7 and Generates Passive Income — The Complete Guide

How I Built an AI Agent That Runs 24/7 and Generates Passive Income — The Complete Guide

For the last 3 months, I've been running an AI agent that works around the clock — writing articles, uploading designs to print-on-demand platforms, and researching new income channels. It costs me less than $50/month to run, and it's completely changed how I think about "passive" income.

Here's the exact technical blueprint for building your own autonomous money-making agent.

Why This Isn't Just Another "AI Hype" Article

Most articles about AI income talk about using ChatGPT to write faster. That's not what this is.

This is about building a fully autonomous system that:

  • Wakes up every hour and decides what to do next
  • Publishes content to Dev.to, Medium, and Chinese platforms
  • Uploads designs to multiple PoD platforms
  • Researches new monetization channels
  • Reports progress via WeChat
  • Operates 24/7 without human intervention

I'm sharing the exact architecture, code patterns, and mistakes I made so you can build your own.

The Architecture: How It Works

The Core Loop

Every agent needs a loop. Here's mine:

import schedule
import time
from datetime import datetime

def agent_cycle():
    state = load_state()
    cycle_type = get_next_cycle(state)

    if cycle_type == "content":
        publish_articles()
    elif cycle_type == "pod":
        distribute_designs()
    elif cycle_type == "explore":
        research_new_channels()

    update_state(state)
    report_progress()

# Run every hour
schedule.every().hour.do(agent_cycle)

while True:
    schedule.run_pending()
    time.sleep(60)
Enter fullscreen mode Exit fullscreen mode

The key insight is the strategy rotation: Content → PoD → Explore → repeat. This prevents the agent from getting stuck in one mode and ensures diversification.

The State Machine

The agent maintains persistent state across cycles:

{
  "cycle": 9,
  "task": "content",
  "operations": 169,
  "revenue": 0,
  "content_written": 12,
  "content_published_devto": 10,
  "pod_uploaded": 0,
  "pod_sent_to_user": 5,
  "explore_channels": []
}
Enter fullscreen mode Exit fullscreen mode

This state is critical — without it, the agent would repeat work and waste resources. I store it in a simple JSON file, but you could use Redis, SQLite, or even a GitHub gist.

Layer 1: Content Generation & Publishing

Writing Articles That Actually Get Read

The biggest mistake people make with AI-generated content is publishing raw output. Here's my pipeline:

  1. Research phase: Scrape trending topics from Dev.to, Hacker News, Reddit
  2. Outline phase: Generate a structured outline with data points
  3. Draft phase: Write the full article with specific examples
  4. Human touch: Add personal anecdotes and opinions
  5. Publish: Push to platforms with proper tags and formatting
def write_article(topic, platform="devto"):
    # Step 1: Research
    trending = search_web(f"{topic} trending articles 2025")

    # Step 2: Create outline
    outline = generate_outline(topic, trending)

    # Step 3: Write draft
    draft = generate_article(outline, style="conversational-developer")

    # Step 4: Add personal elements
    draft = inject_personal_anecdotes(draft)

    # Step 5: Save and publish
    save_file(f"article_{timestamp}.md", draft)

    if platform == "devto":
        devto_publish(
            title=draft.title,
            body=draft.body,
            tags=draft.suggested_tags
        )
Enter fullscreen mode Exit fullscreen mode

The Dev.to API — Dead Simple

Dev.to has one of the easiest APIs I've ever worked with:

import requests

API_KEY = "your-devto-api-key"

def publish_to_devto(title, markdown, tags):
    response = requests.post(
        "https://dev.to/api/articles",
        headers={"api-key": API_KEY},
        json={
            "article": {
                "title": title,
                "body_markdown": markdown,
                "tags": tags.split(","),
                "published": True
            }
        }
    )
    return response.json()
Enter fullscreen mode Exit fullscreen mode

One API call. That's it. Your article is live.

Pro tip: Articles that perform best on Dev.to share specific numbers, code snippets, and honest failures. The "how I made $X" format works, but only if you include the technical details.

Layer 2: Design Distribution (Print-on-Demand)

The Bottleneck Problem

I generated 86 designs, but here's the thing — uploading them to platforms is the hard part. Each platform has different requirements:

Platform Upload Method Automation Level
Redbubble Manual ❌ No API
TeePublic Manual ❌ No API
Threadless Manual ❌ No API
Printify API Available ✅ Automatable
PayHip Direct upload ✅ Easy

My Workaround: WeChat Integration

When I can't automate an upload, I use WeChat to send designs to myself with captions:

def send_design_for_manual_upload(design_path, platform):
    send_wechat_image(
        image_path=design_path,
        caption=f"🎨 {design_name} — 请手动上传到 {platform}\n"
                f"标签: {tags}\n"
                f"建议价格: ${suggested_price}"
    )
Enter fullscreen mode Exit fullscreen mode

This creates a queue I can process in batches. Not fully automated, but it scales.

AI Design Generation

For creating new designs, I use GPT-Image-2 with carefully crafted prompts:

prompts = {
    "kawaii_coder": "A cute kawaii cat wearing glasses, typing on a laptop, "
                     "pastel colors, clean vector style, white background, "
                     "suitable for t-shirt printing",
    "retro_programmer": "Retro sunset with mountain silhouette, "
                        "palm trees, 'CODE' in retro text, "
                        "vaporwave color palette, 80s aesthetic",
    "minimalist_dev": "Minimalist line art of a coffee cup with code symbols "
                      "floating above, black and white, clean design"
}
Enter fullscreen mode Exit fullscreen mode

Key design rules for PoD:

  • Always use a transparent or white background — buyers need versatility
  • Test at 300 DPI minimum — most platforms require this for print quality
  • Keep text readable at small sizes — phone cases are unforgiving
  • Create for niches, not everyone — "funny SQL shirt" outsells "funny shirt"

Layer 3: Exploring New Income Channels

The Revenue Diversification Strategy

Relying on a single income stream is fragile. My agent rotates through "explore" cycles to find new opportunities:

new_channels = [
    "Gumroad — sell design bundles directly",
    "Ko-fi — membership + digital downloads", 
    "LemonSqueezy — global tax compliance built-in",
    "Medium — Partner Program for long-form content",
    "Fiverr — AI design gig offerings",
    "Etsy — POD integration through Printify"
]
Enter fullscreen mode Exit fullscreen mode

For each channel, the agent:

  1. Checks signup requirements
  2. Attempts automated registration
  3. Documents the process
  4. Reports feasibility back to me via WeChat

Lessons Learned (The Honest Stuff)

What Worked

  • Dev.to API — The easiest publishing pipeline. Genuinely one-function simple.
  • Strategy rotation — Prevents tunnel vision and ensures steady progress across fronts.
  • State persistence — Without tracking what's been done, you'll duplicate effort endlessly.
  • WeChat notifications — Creates accountability even in autonomous mode.

What Didn't Work

  • Redbubble/TeePublic automation — These platforms actively block automated uploads. Plan for manual work here.
  • Generating too many designs upfront — I created 86 before uploading any. Now I have a backlog problem.
  • Ignoring SEO — Early articles had generic titles. Specific, keyword-rich titles get 3-5x more views.

The Revenue Reality

I'm not going to pretend this is printing money. Here's my honest numbers:

Month Content Published Designs Uploaded Revenue
Month 1 4 articles 0 designs $0
Month 2 8 articles 12 designs $0
Month 3 12 articles 24 designs $33

The $33 came from PayHip digital product sales. Small, but real. The compounding effect of more content and more designs is starting to show.

How to Build Your Own: The Quickstart Guide

Minimum Viable Agent (30 minutes)

  1. Pick your stack: Python + schedule + requests is all you need
  2. Define your cycle: Content → Distribute → Explore
  3. Start with one output: Publishing to Dev.to is the easiest win
  4. Add state tracking: A simple JSON file prevents重复 work
  5. Add notifications: Even a simple email works

Scaling Up (Week 2+)

  1. Add more platforms: Medium, Chinese tech blogs (Juejin, Zhihu)
  2. Design pipeline: Generate → Review → Distribute
  3. Revenue tracking: Log every dollar, even $3 sales
  4. Optimize based on data: Which articles get views? Which designs sell?

The Future: Where This Is Going

The dream is a fully autonomous agent that:

  • Writes content that ranks and earns
  • Designs products that sell
  • Manages inventory across platforms
  • Handles customer service
  • Reinvests profits into better tools

We're not there yet. But each cycle gets us closer. The key is starting with something simple, measuring results, and iterating.

Final Thoughts

Building an autonomous income-generating agent isn't about replacing yourself — it's about multiplying your effort. The agent handles the repetitive tasks while you focus on strategy and creative direction.

If you're a developer interested in this space, start small. Publish one article automatically. Upload one design. Research one platform. Then let the loop do its thing.

The compound effect of daily automated output is more powerful than any single viral post.

What's your experience with AI automation for income? Drop a comment — I'd love to learn from your approach.


If you found this useful, follow me for more on autonomous AI systems, print-on-demand strategies, and developer-focused passive income.

Top comments (0)