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:
- Trigger — How often to check (e.g., every 5 minutes)
- Condition — What to check (e.g., error rate > 5%)
- 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/checkoutexceeds 5% in the last 15 minutes" - "Notify
#engineeringwhen exception count for a specific error goes above 10 in an hour" - "Send an email if the funnel dropoff between
/pricingand/signupexceeds 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:
| Category | Examples |
|---|---|
| Exceptions / Errors | Exception counts, new error types, error spikes |
| Network Requests | API error rates, slow responses, failed requests |
| Logs | Error log counts, warning patterns |
| Function Performance | Slow function detection, execution time thresholds |
| Page Visits | Funnel dropoff rates between pages |
| Tracking Events | Custom 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:
- Retrieves the issue's exception details and telemetry
- Investigates the root cause using logs, stack traces, and source code
- Implements a fix and creates a pull request
- Reports findings back to the issue
Configuration:
| Parameter | Required | Description |
|---|---|---|
issue_id | Yes | The Sailfish issue ID to investigate |
issue_title | Yes | Title of the issue |
ai_generated_description | Yes | AI-generated description of the issue |
repo_clone_url | No | Git repository clone URL |
timeout_minutes | No | Maximum 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:
| Column | Description |
|---|---|
| Name | Workflow name — click to view details |
| Status | Normal (active, not firing), Firing (condition met), or Inactive (disabled) |
| Creator | Email of the user who created the workflow |
| Created at | When the workflow was created |
| Last run | When the workflow last executed |
Workflow States
| State | Meaning |
|---|---|
| Normal | The workflow is active and monitoring, but the condition is not currently met |
| Firing | The condition is met and the action has been triggered |
| Inactive | The 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:
- On each trigger interval, the workflow engine evaluates the condition by querying your application's telemetry data
- If the condition is met, the configured action fires (Slack message, email, webhook)
- If a wait step is present, the workflow pauses until a response is received or a timeout expires
- The workflow tracks its state (normal vs. firing) and updates automatically