Skip to content
Flo-bot, Business Automation Engine cover image
Back to work

Flo-bot, Business Automation Engine

Entire customer lifecycle automated end-to-end

A full business operating system that connects many services and automates the entire customer lifecycle, from first enquiry to shipped product. Built for a custom sportswear company managing dozens of concurrent projects.

Built with

Node.jsClaude APISlackGmail APIWooCommerceMailchimp

The Problem

Stolen Goat is a custom sportswear company that manages dozens of concurrent projects at any given time. Each project moves through a multi-stage lifecycle, from initial enquiry through design, webshop creation, production, and shipping. Every stage transition requires specific communications: confirmation emails, design proofs, order sheets, shipping notifications, and follow-ups. Before Flo-bot, every one of these was written and sent manually.

The team was spending hours each day on repetitive admin, drafting emails that followed the same patterns, chasing up clients who hadn't responded, building WooCommerce shops by hand, and pulling data from spreadsheets to create supplier order sheets. The work wasn't difficult, but it was relentless, and growing as the business scaled.

What I Built

Flo-bot is a Node.js Slack bot that connects many separate services into a single, orchestrated automation engine: FLO (the internal project management tool), Slack, Gmail, WooCommerce, Supabase, the Claude API, a .NET business database, and an Obsidian markdown vault used as a configuration layer.

The core mechanism is status-triggered email drafting. When a project changes status in FLO, Flo-bot detects the change, determines which email template applies, pulls in relevant context from the database, and drafts the appropriate message. That draft is posted to a Slack channel for human review and simultaneously created as a Gmail draft, ready to review, tweak, and send.

The system supports 12+ trigger statuses covering the full project lifecycle: enquiry received, design brief sent, design proof ready, webshop live, production ordered, shipping confirmed, and several more. Each status maps to a specific communication template, tone, and set of data fields.

Key Features

  • AI email drafting: Contextual, on-brand emails for every lifecycle stage. Templates and tone guides live in the Obsidian vault, so the team can update them without touching code.
  • Automated webshop creation: When a project reaches the right status, Flo-bot auto-builds a WooCommerce webshop, complete with products, size variants, images, and a newsletter signup form.
  • Supplier order sheets: Generates formatted order sheets by pulling live data from the business database, ready to send to production partners.
  • Inbox scanning: Monitors Gmail inboxes and drafts contextual replies to incoming messages, using project data for context.
  • Time-based follow-ups: A configurable nudge/flag system that tracks response times and automatically drafts follow-up emails when clients go quiet.
  • Prospect enrichment: Researches potential clients via web scraping, then uses AI to produce structured analysis reports.
  • Sales pitch generator: Scrapes a prospect's website, generates custom jersey design concepts, and creates tailored sales proposals, all triggered from a single Slack command.

The Safety Principle

The single most important design decision: nothing sends automatically. Every email Flo-bot creates is a draft. Every action is posted to Slack for review. The team stays in control, the bot handles the heavy lifting, but a human always hits send. This means the system can be aggressive with automation without any risk of embarrassing or incorrect messages reaching customers.

Architecture

Flo-bot runs locally on a dedicated machine using Slack Socket Mode, no cloud hosting costs, no serverless cold starts. It polls the FLO API every 15 minutes for status changes. The Obsidian vault acts as a configuration layer: email templates, tone guides, SOPs, and trigger mappings can all be edited by the team in plain Markdown without requiring any code changes or deployments.

This architecture means the system is both powerful and maintainable. New lifecycle stages can be added by creating a new template in the vault. Tone adjustments happen by editing a single document. The engineering stays separate from the day-to-day business logic.

Impact

The entire customer lifecycle, from first enquiry to shipped product, is now automated. The team focuses on relationships and creative work rather than admin. Email drafting that used to take 30–45 minutes per project stage now takes seconds. Webshop creation went from a half-day manual job to a fully automated process. Follow-ups that used to fall through the cracks now happen consistently and on time.

Want something similar?

Every project starts with a conversation. Tell us what you’re dealing with and we’ll figure out how to help.