> ## Documentation Index
> Fetch the complete documentation index at: https://docs.colossal.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Automation Library

> Ready-made automations that merchants are using on Colossal today. Recreate any of them in the dashboard.

These are the automations shipping in the dashboard automation catalog. Open the [Colossal dashboard](https://app.colossal.sh) and the agent will tailor the steps and connections to your project.

export const integrationMeta = {
  "slack": {
    name: "Slack",
    icon: "https://cdn.brandfetch.io/slack.com/icon/light/fallback/lettermark/w/32/h/32"
  },
  "resend": {
    name: "Resend",
    icon: "https://avatars.githubusercontent.com/u/109384852?s=128"
  },
  "airtable": {
    name: "Airtable",
    icon: "https://cdn.brandfetch.io/airtable.com/icon/light/fallback/lettermark/w/32/h/32"
  },
  "mailchimp": {
    name: "Mailchimp",
    icon: "https://cdn.brandfetch.io/mailchimp.com/icon/light/fallback/lettermark/w/32/h/32"
  },
  "smile-io": {
    name: "Smile.io",
    icon: "https://cdn.brandfetch.io/id2gJaAqhU/icon/light/fallback/lettermark/w/32/h/32"
  },
  "gorgias": {
    name: "Gorgias",
    icon: "https://cdn.brandfetch.io/gorgias.com/icon/light/fallback/lettermark/w/128/h/128"
  },
  "quickbooks": {
    name: "QuickBooks",
    icon: "https://cdn.brandfetch.io/quickbooks.intuit.com/icon/light/fallback/lettermark/w/128/h/128"
  }
};

export const agents = [{
  slug: "smart-order-alerts",
  title: "Analyze every order with AI and alert your team",
  description: "When an order is placed, AI reviews the customer's history and flags anything notable — VIPs, potential fraud, large orders — then posts a summary to Slack.",
  integrations: ["slack"],
  prompt: "When an order is placed, look at the customer's purchase history and analyze the order. Determine if this is a VIP customer, if there's anything suspicious about the order, or if it's unusually large. Post a smart summary to Slack with your findings."
}, {
  slug: "weekly-business-report",
  title: "Get a weekly AI business briefing every Monday",
  description: "Every Monday morning, AI reviews your recent orders, revenue, and inventory — then writes a plain-English report and posts it to Slack.",
  integrations: ["slack", "resend"],
  prompt: "Every Monday at 9am, analyze the project's recent performance. Look at orders, revenue trends, top-selling products, and inventory levels. Write a concise weekly briefing in plain English with insights and recommended actions. Post it to Slack and email it to the project owner."
}, {
  slug: "customer-milestone-emails",
  title: "Celebrate customer milestones automatically",
  description: "When an order is placed, check if it's the customer's 1st, 3rd, or 5th purchase and send a personalized email for each milestone.",
  integrations: ["resend", "slack", "smile-io"],
  prompt: "When an order is placed, check how many orders this customer has made. If it's their first order, send them a welcome email via Resend thanking them for their purchase. If it's their third order, send a thank-you email recognizing them as a returning customer. If it's their fifth order or more, award 500 bonus loyalty points in Smile.io, send a VIP thank-you email, and notify the team on Slack."
}, {
  slug: "flag-repeat-refunds",
  title: "Flag customers with repeat refund requests",
  description: "When an order is refunded, AI checks the customer's refund history and creates a Gorgias ticket if there's a pattern.",
  integrations: ["gorgias", "slack"],
  prompt: "When an order is refunded, check the customer's order history to see if they've had previous refunds. If this is their second or more refund, create a ticket in Gorgias tagged 'repeat-refund' with the customer's refund history and total refunded amount. Also post an alert to Slack so the team can review the pattern."
}, {
  slug: "daily-inventory-check",
  title: "Get a daily inventory report every morning",
  description: "Every morning at 8am, AI checks your stock levels and posts a report to Slack — flagging anything that's low or out of stock.",
  integrations: ["slack", "airtable"],
  prompt: "Every morning at 8am, check inventory levels across all products. Identify anything that's out of stock or running low. Post a summary to Slack organized by urgency — out of stock items first, then low stock, then everything healthy. Also log any out-of-stock products to Airtable so the team can track restock history."
}, {
  slug: "loyalty-points-on-purchase",
  title: "Award smart loyalty points on every purchase",
  description: "When an order is completed, award loyalty points in Smile.io based on the order total — with AI deciding bonus points for customers close to their next tier.",
  integrations: ["smile-io", "resend"],
  prompt: "When an order is completed, check the customer's loyalty status in Smile.io. Award them points based on their purchase amount — 1 point per dollar spent. Then check if they're close to the next loyalty tier. If they're within 100 points of a tier upgrade, award a bonus to push them over and send them an email via Resend celebrating the upgrade."
}, {
  slug: "order-to-quickbooks",
  title: "Sync every order to QuickBooks automatically",
  description: "When an order is completed, create or find the customer in QuickBooks and generate a sales receipt with all line items.",
  integrations: ["quickbooks", "slack"],
  prompt: "When an order is completed, sync it to QuickBooks. Find the customer by email in QuickBooks — if they don't exist, create them. Then create a sales receipt with the order's line items, amounts, and total. Post a confirmation to Slack."
}, {
  slug: "new-product-announcement",
  title: "Generate marketing copy when a product goes live",
  description: "When a product is published, AI writes a marketing description and email subject lines, then posts them to Slack for your team to use.",
  integrations: ["slack", "resend"],
  prompt: "When a new product is published, write marketing copy for it. Generate a one-paragraph marketing description, three email subject line options, and a short social media caption. Post everything to Slack so the marketing team can grab what they need. Also send a notification email via Resend to the team with the generated copy."
}, {
  slug: "reorder-reminder",
  title: "Remind customers to reorder consumable products",
  description: "30 days after a purchase, AI checks if the products were consumable and sends a personalized reorder reminder email.",
  integrations: ["resend"],
  prompt: "When an order is completed, wait 30 days. Then analyze the products the customer purchased and determine if any of them are consumable or likely to need replenishment. If so, send a personalized reminder email via Resend suggesting they reorder, mentioning the specific products that might be running low."
}, {
  slug: "dead-inventory-finder",
  title: "Find products with no sales and recommend what to do",
  description: "Every month, AI identifies products that haven't sold in 30+ days and recommends whether to discount, bundle, or archive them.",
  integrations: ["slack", "airtable"],
  prompt: "On the first of every month, look at all products and identify any that haven't had a single sale in the past 30 days. For each one, check the inventory level and how long it's been listed. Recommend an action — discount it, bundle it with a popular product, or archive it. Post the full list to Slack with recommendations. Also log the flagged products to Airtable so the team can track dead inventory over time."
}, {
  slug: "cross-sell-recommendations",
  title: "Send personalized product recommendations after purchase",
  description: "3 days after an order is completed, AI analyzes what the customer bought and emails them a recommendation for complementary products.",
  integrations: ["resend"],
  prompt: "When an order is completed, wait 3 days. Then analyze what the customer purchased and look at what other products in the project would complement their order. Write a short, personalized recommendation email suggesting 1-2 products they might like, and explain why based on what they bought. Send it via Resend."
}, {
  slug: "log-orders-to-airtable",
  title: "Log every order to Airtable automatically",
  description: "When an order is completed, add a row to Airtable with the customer name, email, order total, and product details.",
  integrations: ["airtable"],
  prompt: "When an order is completed, add a row to Airtable with the order details. Include the customer name, email, order number, total amount, and a list of the products they ordered. This creates a running log of all orders the team can reference."
}, {
  slug: "churn-risk-detection",
  title: "Detect customers at risk of churning every week",
  description: "Every week, AI identifies customers whose ordering patterns have dropped off, adds them to a Mailchimp segment, and reports to Slack.",
  integrations: ["slack", "mailchimp"],
  prompt: "Every week, look at customers who used to order regularly but haven't placed an order in 60+ days. Figure out who's at risk of churning based on how their ordering pattern changed. Add each at-risk customer to a 'win-back' list in Mailchimp so they can be targeted with a re-engagement campaign. Send the team a Slack report with the at-risk customers and a suggested action for each one."
}, {
  slug: "refund-follow-up",
  title: "Follow up with customers after a refund",
  description: "When an order is refunded, AI drafts a follow-up message and creates a support ticket so your team can find out what went wrong.",
  integrations: ["gorgias", "slack"],
  prompt: "When an order is refunded, look at the order details and draft a follow-up message to the customer asking what went wrong and if there's anything that could be done to improve their experience. Create a Gorgias ticket with this draft so the support team can review and send it. Also notify the team on Slack that a refund happened with the order details."
}, {
  slug: "ai-product-descriptions",
  title: "Auto-write product descriptions with AI",
  description: "When a new product is created with an empty description, AI writes a compelling one based on the product details and updates it.",
  integrations: [],
  prompt: "When a new product is created, check if it has a description. If the description is empty or very short, use AI to write a compelling product description based on the product name, category, and any other available details. Then update the product with the new description."
}];

export const AgentCard = ({agent}) => {
  return <div className="relative flex flex-col gap-2 rounded-xl border border-gray-100 hover:border-gray-200 hover:shadow-sm dark:border-gray-800 dark:hover:border-gray-700 bg-white dark:bg-gray-900 p-4 text-left transition-all duration-200 ease-out">
      <div className="flex items-center gap-2">
        {agent.integrations.length > 0 ? <div className="flex -space-x-1">
            {agent.integrations.map((id, idx) => {
    const meta = integrationMeta[id];
    return <div key={id} title={meta?.name ?? id} className="flex h-6 w-6 items-center justify-center overflow-hidden rounded-full border border-gray-100 dark:border-gray-800 bg-white" style={{
      zIndex: agent.integrations.length - idx
    }}>
                  {meta?.icon ? <img src={meta.icon} alt={meta.name} className="h-full w-full object-cover" /> : <span className="text-[10px] font-medium uppercase text-gray-400">{id.charAt(0)}</span>}
                </div>;
  })}
          </div> : <div className="flex h-6 w-6 items-center justify-center rounded-full bg-purple-50 dark:bg-purple-900/30">
            <span className="text-[11px] font-semibold text-purple-500">AI</span>
          </div>}
      </div>
      <h3 className="text-sm font-semibold leading-snug text-gray-900 dark:text-gray-100">{agent.title}</h3>
      <p className="text-xs leading-relaxed text-gray-500 dark:text-gray-400">{agent.description}</p>
    </div>;
};

<div className="not-prose my-6 grid grid-cols-1 gap-3 sm:grid-cols-2">
  {agents.map((agent) => <AgentCard key={agent.slug} agent={agent} />)}
</div>

## Create one

Open the [Colossal dashboard](https://app.colossal.sh) and describe the automation you want in chat -- pick one of the above or your own variation. The assistant generates the automation, validates it against your installed [connections](/automations/connections), and creates it in your project.

See [Create an automation](/quickstart/create-an-automation) for the full quick start, and [Automation Builder](/automations/overview) for the event and step-type reference.
