> For the complete documentation index, see [llms.txt](https://docs.pipekit.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pipekit.io/concepts/cron-and-externally-triggered.md).

# Cron & Externally Triggered

Most [Runs](/concepts/run.md) are created when you (or a teammate, or a Git event) submit a `Workflow` to Pipekit. Two other execution models bypass that path.

## CronWorkflows

A `CronWorkflow` is an Argo construct that schedules a `Workflow` to run on a recurring cron expression. In Pipekit, a Pipe whose underlying YAML is a `CronWorkflow` behaves the same as any other Pipe, except submissions update the existing schedule on the cluster instead of creating a new Run. The Runs you see in the Pipe are produced by the Argo scheduler when the cron expression fires.

You can suspend, resume, trigger immediately, or delete `CronWorkflows` from the Pipekit UI, the Pipekit CLI, or by editing the YAML in Git. For task-oriented documentation, see [Using Pipekit > Pipes > Cron](/using-pipekit/pipes/cron.md).

## Externally Triggered Workflows

An externally triggered Workflow is a `Workflow` that started outside of Pipekit. It is submitted directly to your cluster via `kubectl`, Argo CLI, Argo Events, Argo API, or any other path that bypasses Pipekit. Pipekit can be configured to discover these Workflows via the in-cluster informer and surface them in the same Pipes and Runs UI as Pipekit-submitted Workflows.

This is useful during migration to Pipekit, or for teams who want to keep an existing submission method but still get Pipekit's observability surface. The feature is opt-in and is enabled in the Pipekit Agent's Helm values.

For task-oriented documentation, see [Using Pipekit > Pipes > Externally Triggered](/using-pipekit/pipes/externally-triggered.md).
