Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.anyshift.io/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Annie Instructions let you define automation rules that control what Annie does when it receives messages in Slack. Rules determine whether Annie investigates, responds as a chat, offers a manual action, or stays silent. Each rule follows a simple pattern:
If [sources] send [condition] in [channels] then Annie [action]
Sources and channels are both optional scopes: leave them empty and the rule applies anywhere; pick one or more to narrow it down. Annie already knows your infrastructure from connected integrations and learned patterns. Instructions tell it what to do and how to respond in specific situations.

How It Works

Message arrives → Annie evaluates rules top-to-bottom → First match wins
  1. Annie checks each rule in order (top = highest priority).
  2. The first rule whose condition matches determines the action.
  3. If no rule matches, Annie’s AI decides between RCA and Chat automatically.
  4. Default instructions are appended as extra context to any response.

Action Types

When a rule matches, Annie takes one of these actions:
Annie’s AI decides whether to run an RCA investigation or respond as a chat — the rule just provides extra context to guide the response.Best for: general-purpose rules where you want Annie to adapt based on the message content.
Annie performs a full root cause analysis, querying your connected integrations (Datadog, Grafana, AWS, etc.) to investigate the alert.Best for: alerts that always need deep investigation.
Annie responds conversationally, using the rule’s instructions as a processing prompt. The original message provides the context.Best for: validation questions, quick lookups, or automated workflows that need a direct answer rather than a full investigation.
Annie acknowledges the alert but doesn’t investigate automatically. It shows a “Start RCA” button so a team member can trigger the investigation when ready.Best for: low-priority alerts or noisy sources where you want human-in-the-loop.
Annie does nothing — no message, no reaction, no response. The alert is completely ignored.Best for: known noise, test alerts, or bot messages that don’t need attention.

Rule Scoping

Each rule can narrow on two independent axes: sources (who sent the message) and channels (where the message was posted). Both are optional and both accept multiple values.

Source scoping

  • Anyone (empty): the rule matches any sender.
  • One or more identities: the rule only fires when the message is from one of the selected Slack users or bots.
Sources are picked from the Slack identities list (see below). If the user or bot you want to target isn’t in the list yet, click Add Slack user in the source picker to register them on the spot without subscribing them to Annie.

Channel scoping

  • Any channel (empty): the rule matches regardless of where the message was posted.
  • One or more channels: the rule only fires in the selected Slack channels. Safe across multiple workspaces: channels are workspace-aware, so picking #infra-alerts from workspace A won’t accidentally match #infra-alerts from workspace B.

Combining scopes

Sources and channels compose with AND. For example, a rule with sources = [PagerDuty, Datadog] and channels = [#prod-incidents] fires when either of those bots posts in that channel and nowhere else.
When you subscribe a new bot or user to Annie, a catch-all “any message → Run Investigation” rule is automatically created for that source. You can then customize it, change the action, add more specific rules above it, or delete it.

Page Layout

The instructions page has four sections:

Default Action

Extra context that Annie always includes in its responses. This is not a rule. It doesn’t determine what Annie does, only how it responds. Use it for formatting preferences, team conventions, or baseline investigation steps.
FieldDescriptionExample
InstructionsWhat Annie should always consider”Always check CloudWatch logs first”
FormattingHow Annie structures responses”Use bullet points, include severity”

Rules

An ordered list of automation rules. First match wins. Drag to reorder priority. Each rule defines:
  • Sources: zero or more Slack identities that trigger this rule (empty = anyone)
  • Condition: natural language description of when to match
  • Channels: zero or more Slack channels the rule applies to (empty = any channel)
  • Action: what Annie does when matched
  • Instructions (optional): extra context for the action

Slack identities

A single list of every Slack user and bot the rule engine can target on this project. Each row carries a Subscribed / Unsubscribed toggle that defines what Annie does with their messages outside of automation rules:
  • Subscribed: Annie processes every message from this identity automatically, following any default instructions and matching rules. This is the right choice for alerting bots (PagerDuty, Datadog, Amazon Q).
  • Unsubscribed: Annie only processes a message from this identity when the user or bot tags @Annie in it. This is the right default for human teammates, so Annie doesn’t respond to every sentence they type.
Click the status toggle on any row to flip it without losing the rules that reference the identity. Use Add identity to register a Slack user or bot that isn’t listed yet. Automation rules can target any identity in this table, whether they’re subscribed or not.

Duplicate Alert Detection

A time window for suppressing repeated alerts. When enabled, Annie detects if the same alert was already processed recently and links to the existing investigation instead of starting a new one.

Examples

A common pattern for teams using Amazon Q to forward AWS Health Events to Slack:Setup:
  1. Subscribe the Amazon Q bot to Annie
  2. Create rules:
PrioritySourceConditionAction
1Amazon QAWS Health Event with RDSAsk Annie: “Validate whether the reported service had a real failure”
2Amazon Qany messageSilently ignore
Annie validates RDS health events and silently ignores everything else from Amazon Q.
Source: anyone
Condition: Alert contains "RDS" or "database" or "postgres"
Action: Run Investigation

Instructions:
- Check recent schema migrations in the last 24h
- Review connection pool metrics and active connections
- Look for long-running queries (>30s)
- Check for recent deployments that might have changed queries
Source: anyone
Condition: PagerDuty priority not P1 or P2
Action: Offer manual RCA
Annie shows a “Start RCA” button instead of investigating automatically. Team members can click to investigate when they have time.
Source: anyone
Condition: Alert tags contain "test"
Action: Silently ignore
Annie completely ignores test alerts — no response, no reaction.
For teams that have a Slack workflow bot forwarding alerts to Annie:
PrioritySourceConditionAction
1Workflow BotCritical production errorRun Investigation with instructions: “Focus on recent deployments”
2Workflow Botany messageAnnie chooses
Critical errors get immediate RCA with deployment focus. Everything else gets Annie’s best judgment.

Get Started

Create Account

Sign up for Anyshift

Request Demo

See Annie Instructions in action