Skip to main content

Automate Workflows

Workflow Automation continuously monitors your application and notifies your team when something goes wrong — without writing any code.

Overview

A workflow is a set of rules that run on a schedule:

  1. Trigger — How often to check (e.g., every 5 minutes)
  2. Condition — What to check (e.g., error rate > 5%)
  3. Action — What to do when the condition is met (e.g., send a Slack message)

Workflows can also include wait steps to pause for a response (e.g., wait for Slack acknowledgment) before taking further action.

How Workflows Are Set Up

During your onboarding call, the Sailfish team configures monitoring workflows tailored to your team's priorities. Workflows are described in plain English — for example:

  • "Alert me on Slack if the error rate on /api/checkout exceeds 5% in the last 15 minutes"
  • "Notify #engineering when exception count for a specific error goes above 10 in an hour"
  • "Send an email if the funnel dropoff between /pricing and /signup exceeds 40%"
  • "Alert when there are more than 50 console errors in the last 30 minutes"

Sailfish's AI translates these into automated workflows with trigger, condition, and action nodes.

To request new workflows or modify existing ones, reach out to your Sailfish team.

What You Can Monitor

Sailfish tracks several categories of application data that workflows can alert on:

CategoryExamples
Exceptions / ErrorsException counts, new error types, error spikes
Network RequestsAPI error rates, slow responses, failed requests
LogsError log counts, warning patterns
Function PerformanceSlow function detection, execution time thresholds
Page VisitsFunnel dropoff rates between pages
Tracking EventsCustom event counts (e.g., checkout_started, payment_completed)

Action Types

Workflows support notification channels and automated actions:

Run Autofix

Automatically investigate and fix an issue using the AI autofix agent. When triggered, the workflow spins up a dedicated container that:

  1. Retrieves the issue's exception details and telemetry
  2. Investigates the root cause using logs, stack traces, and source code
  3. Implements a fix and creates a pull request
  4. Reports findings back to the issue

Configuration:

ParameterRequiredDescription
issue_idYesThe Sailfish issue ID to investigate
issue_titleYesTitle of the issue
ai_generated_descriptionYesAI-generated description of the issue
repo_clone_urlNoGit repository clone URL
timeout_minutesNoMaximum time to wait for completion (default: 30)

The workflow waits for the autofix job to complete before proceeding to the next step. Results (job status and output) are available to subsequent nodes via the workflow context.

Notification Channels

Workflows support the following notification channels:

Slack

Send alerts to a Slack channel. The message includes:

  • Severity indicator (critical, warning, info)
  • Alert details and context
  • An Acknowledge button to confirm the alert was seen

Requires a Slack integration to be configured.

Email

Send alerts to one or more email addresses with a subject and body. Configure recipients per-workflow.

Webhooks

Send alert payloads to any HTTP endpoint for custom integrations. See Messaging & Alerts for webhook configuration.

Managing Workflows

The Workflow Automation list page shows all workflows for your organization:

ColumnDescription
NameWorkflow name — click to view details
StatusNormal (active, not firing), Firing (condition met), or Inactive (disabled)
CreatorEmail of the user who created the workflow
Created atWhen the workflow was created
Last runWhen the workflow last executed

Workflow States

StateMeaning
NormalThe workflow is active and monitoring, but the condition is not currently met
FiringThe condition is met and the action has been triggered
InactiveThe workflow is disabled and not monitoring

Actions

  • Toggle — Enable or disable a workflow without deleting it
  • Duplicate — Create a copy of an existing workflow to use as a starting point
  • Delete — Permanently remove a workflow

How It Works

Under the hood, each active workflow runs as a Temporal scheduled workflow:

  1. On each trigger interval, the workflow engine evaluates the condition by querying your application's telemetry data
  2. If the condition is met, the configured action fires (Slack message, email, webhook)
  3. If a wait step is present, the workflow pauses until a response is received or a timeout expires
  4. The workflow tracks its state (normal vs. firing) and updates automatically