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

# Classic AI triggers

> Control which tickets should start a Classic AI run.

Classic AI triggers decide when the legacy AI agent should run on a ticket.

<Warning>
  Move existing Classic AI triggers to AI Agents over time, not only new automation. Follow the [migration guide](/ai-agents/migrate-from-classic-ai) to test new matching in a controlled scope and turn off overlapping Classic AI triggers before expanding. Start with [Getting started](/ai-agents/getting-started), and open the [Classic AI agent list](https://armin.cx/app/_/ai/agents) only during migration or for necessary maintenance.
</Warning>

## How triggers work

A trigger can combine two layers:

1. **Event and property filters**, such as a new customer message on a ticket with specific tags, status, or channel.
2. **Semantic matching**, such as detecting that the customer asks about a refund, delivery status, or cancellation.

Both layers must match for the agent to run.

In mixed setups, ongoing work on the ticket continues first. A matching legacy AI-guided workflow may start before a new AI Agent. Once an AI Agent owns the conversation, Classic AI backs off. See [Routing and ownership](/ai-agents/routing-and-ownership) for the exact behavior.

## Test a trigger

Use manual test runs from the [Classic AI agent list](https://armin.cx/app/_/ai/agents) to preview which triggers match a ticket.

When a trigger does not run, check:

* whether the ticket event occurred
* whether ticket status, channel, tags, and fields match
* whether semantic matching is too narrow
* whether a workflow or AI Agent already handles the conversation

## Debug a trigger

Ask Torben can inspect a specific case. Include:

* ticket number
* Classic AI agent name
* expected trigger
* approximate time

Ask Torben will explain which trigger layer matched or failed.
