Building AI Operations in Reality
What it actually looks like to deploy AI agents in a real company. No theory. Just the parts, how they work together, and what I learned trying to make bots productive employees.
The Starting Point
January 2026. I'm COO of a public company. We have 4 product brands, wholesale + DTC channels, supply chain across three continents, marketing running on 6 platforms, and a sales pipeline I can't see without logging into three different systems.
I started playing with Claude in December 2025. By January, I had one bot running on my laptop. By March, I had 10 bots running across two VPS servers, coordinating through a shared database, handling 101 automated tasks daily.
This isn't a "how AI will change work" piece. This is what actually happened when I tried to make AI agents productive in a messy, real company.
The Parts
The system has four layers. Each layer solves a different problem.
Layer 1: The Runtime (OpenClaw)
This is the engine that runs the bots. I use OpenClaw — an open-source AI agent runtime built by Peter Steinberger, acquired by OpenAI.
What it does:
- Executes agents (gives them shells, file access, tools)
- Manages credentials (APIs, tokens, secrets)
- Handles scheduling (cron jobs for recurring tasks)
- Routes messages (Discord, Telegram, web chat)
Why it matters: Without a runtime, you're copy-pasting prompts into ChatGPT. With a runtime, agents can actually do things — run scripts, call APIs, write files, schedule work.
Layer 2: The Fleet (10 Bots)
I started with one bot. That lasted about two weeks.
The problem: when one bot does everything, it's confused. Is it helping with marketing? Sales? Supply chain? The context is a mess.
The solution: specialization.
I now run 10 bots:
| Bot | Purpose | Crons |
|---|---|---|
| jbot | Main orchestrator, personal assistant | 12 |
| salesbot | HubSpot, pipeline, deals, outreach | 21 |
| mktgbot | Meta Ads, Klaviyo, performance | 23 |
| opsbot | Supply chain, freight, vendor intel | 6 |
| shipbot | Fulfillment, inventory, late orders | 15 |
| contentbot | SEO, product copy, Amazon listings | 8 |
| adsbot | Ad creative, fatigue detection | 4 |
| socialbot | Social content calendar | 4 |
| studiobot | Influencer finder, UGC analysis | 6 |
| sysbot | Fleet monitor, cost watchdog | 13 |
101 cron jobs total. Each one is a recurring task that runs in the background — daily sales summaries, weekly content ideas, hourly inventory checks, etc.
Cost: $12-18/day to run the entire fleet.
Layer 3: The Shared Brain (Supabase)
Specialized bots are great. But they need to talk to each other.
Example: opsbot detects a freight delay (3 weeks late from China). That affects fulfillment (shipbot), sales (salesbot needs to notify wholesale customers), and marketing (mktgbot should pause ads for out-of-stock products).
If each bot only knows its own domain, they can't coordinate.
The solution: a shared database.
I use Supabase (Postgres). Every bot can read and write to it. When opsbot detects a delay, it writes a signal:
opsbot writes → {
signal_type: "freight_delay",
severity: "alert",
payload: { shipment_id: "SHKGH0525145", delay_days: 21 }
}
-- Other bots read it:
shipbot reads → updates fulfillment forecast
salesbot reads → drafts customer notification
jbot reads → alerts me on Telegram
This is the "lattice" layer. Bots operate independently but share context through the database.
Layer 4: The Channels (Discord + Telegram)
Bots need to communicate. But where?
I use two channels:
1. Discord (the work floor)
- 9 bots, 9 channels (#sales-bot, #mktg-bot, #ops-alerts, etc.)
- Team visibility — anyone can see what bots are doing
- Full detail — every cron job output, every alert, every report
- Searchable history — "what did adsbot say about creative fatigue last Tuesday?"
Why Discord for the work floor: It's where the work happens in public. The team can see what bots are working on. They can ask questions in the channel. It creates shared context.
2. Telegram (the executive layer)
- Direct messages to me (COO)
- High-priority alerts only (critical errors, approvals needed)
- Synthesized summaries (not full detail)
- Mobile-first (I can respond from anywhere)
Why Telegram for me: I don't want 101 cron job notifications. I want the 5 things that need my attention right now. Telegram is my operator interface — fast, mobile, direct.
The routing rule:
- Routine work → Discord (team visibility)
- Alerts + approvals → Telegram (executive action)
How They Work Together
Here's a real workflow from last week:
Monday 8:30 AM: salesbot runs its daily HubSpot sync (cron job). Finds 3 new deals, 2 stale deals (no activity in 14 days), 1 closed-won.
What happens:
- salesbot writes to Supabase →
bot_signalstable → "2 stale deals detected" - salesbot posts to Discord #sales-bot → full detail (deal names, owners, last touch date)
- jbot reads the signal from Supabase → sees severity = "warning"
- jbot sends me a Telegram message → "2 wholesale deals stale (>14 days). Review?"
- I reply in Telegram → "Follow up on both, draft emails"
- salesbot drafts 2 follow-up emails → posts to Discord for review
- I approve in Discord → salesbot sends emails, marks deals as "re-engaged" in HubSpot
Total time for me: 3 minutes (read Telegram alert, reply, approve emails).
What the bot did: Detected the problem, escalated it, drafted the solution, executed after approval.
That's the system working.
What I Learned
1. Specialization > Generalization
One bot that "does everything" is useless. It has no clear responsibility, no domain expertise, and every conversation is context-switching.
10 bots, each with a narrow focus, are far more valuable. salesbot only thinks about sales. mktgbot only thinks about marketing. They're experts, not generalists.
2. Coordination Is the Hard Part
Getting one bot to work is easy. Getting 10 bots to work together is the challenge.
The shared database (Supabase) is what makes coordination possible. Without it, bots are islands. With it, they're a nervous system.
3. Humans Still Decide
I thought automation meant "bots do everything." That's wrong.
Bots are great at:
- Monitoring (check 100 things, flag 5 that need attention)
- Drafting (write the email, I approve it)
- Routing (this goes to Discord, that goes to Telegram)
- Executing (after I approve, send it)
Humans are still required for:
- Judgment (is this deal worth chasing?)
- Strategy (should we pause ads or push harder?)
- Approval (don't send that email without my OK)
The system works because bots handle the mechanical work (monitoring, drafting, routing) and escalate decisions to me.
4. Discord + Telegram Is the Right Split
I tried running everything in one place. It doesn't work.
All in Discord: Too noisy. I can't see the 5 urgent things in a feed of 50 routine updates.
All in Telegram: Team can't see what bots are doing. No shared context. They don't trust the bots because the work is invisible.
Discord for work floor, Telegram for executive layer: Perfect.
The team sees full detail in Discord. I get synthesized alerts in Telegram. Everyone has the right level of visibility.
5. Cost Is Reasonable
$12-18/day to run 10 bots doing 101 tasks.
That's $360-540/month.
The alternative: hire someone to do these tasks manually. Even part-time, that's $2K-4K/month minimum.
ROI: 4-10x.
What's Next
This system is working. But it's still evolving.
What I'm building now:
- Extracting reusable patterns (what works for sales at my company probably works for sales at yours)
- Documenting the architectur (so others can replicate it)
- Testing it in other contexts (does this work in B2B SaaS? Agencies? Manufacturing?)
I call it the JBOT Protocol — the methodology I use to deploy AI agents in real companies.
It's not a product. It's a playbook.
And I'm building it in public because I think this architecture should exist.