Depot CI

Depot CI

Depot CI is a programmable CI system for engineers and agents. Workflows in Depot CI run entirely on Depot compute with built-in job visibility, debuggability, and control. GitHub Actions is the first syntax Depot CI supports: migrate your existing GitHub Actions workflows, and get fast, reliable runs on optimized infrastructure.

Switching to Depot CI

Switching to Depot CI starts with one command: depot ci migrate.

The interactive wizard helps you install our GitHub App, discovers your GitHub Actions workflows, analyzes them for compatibility, and copies selected workflows and any local actions to a .depot/ directory. Secrets and variables can then be automatically imported from GitHub in a separate step with depot ci migrate secrets-and-vars.

Your original .github/ workflows continue running on GitHub in parallel until you're ready to switch over to Depot CI completely. For a step-by-step walkthrough, see the quickstart.

Feature summary

GitHub Actions compatibility
  • Runs your existing GitHub Actions YAML workflows.
  • Supports push, pull request, schedule, workflow dispatch, workflow call, workflow run, and merge group triggers.
Fast runs
  • Commit to running job in 2-3 seconds.
  • Performance-tuned compute with pre-warmed sandboxes.
  • Depot Cache is built in with no configuration required.
Custom images
  • Build a custom image with your dependencies and tooling pre-installed and use it from any Depot CI workflow.
  • Jobs start with everything they need in the sandbox environment instead of rebuilding from scratch on every run.
Built-in debuggability
  • Connect to the sandbox running your job using SSH.
  • CPU and memory metrics are captured for every job.
  • Search logs across runs from the dashboard. Retrieve logs for runs via the CLI.
Local workflow runs
CLI for engineers and agents
  • Trigger runs, fetch logs, and monitor job status from the CLI.
  • Works for engineers and agents: no GitHub event required to start a local run.
Workflows, logs, and metrics in the dashboard
  • View and manage all workflows from the Depot CI page in your Depot dashboard.
  • Retry failed jobs without re-running the entire workflow.
  • See job-level metrics, step-level timing, and CPU and memory usage for your workflows.

How Depot CI works

Depot CI is built on top of Switchyard. Switchyard is a system that takes an arbitrary task and ensures it is executed across a fleet of compute.

Switchyard has two components:

  • Orchestrator: Schedules tasks across the compute fleet. Handles dependencies between jobs and monitors progress.
  • Compute: Executes workflow jobs. Receives a task from the orchestrator, provisions the compute resources needed (sandboxes), and executes the task.

Depot CI translates CI workflows and pipelines for the Switchyard orchestrator. The first syntax Depot CI supports is GitHub Actions YAML. Depot CI handles compatibility with how a standard GitHub Actions runner behaves, including environment variables, expressions, and action execution.

When you add a workflow file to .depot/workflows/ in your repository and merge it to your default branch, Depot registers automatic triggers for that workflow. When a trigger fires, the orchestrator schedules jobs across the compute fleet and sends logs back to the Depot dashboard and CLI.

While Depot CI today runs GitHub Actions YAML, the system is programmable. Switchyard can give your own CI frontend direct API access to workflows, orchestration, and compute.

Compatibility with GitHub Actions

Depot CI supports the most commonly used GitHub Actions syntax, including workflow-, job-, and step-level configuration, expressions, and all major action types.

For the full compatibility matrix, see Depot CI compatibility with GitHub Actions.

Pricing

Depot CI sandbox usage is tracked and billed by the second, with no one-minute minimum per run. The minutes included with each plan are based on the smallest sandbox size (2 CPUs/8 GB). The included plan minutes aren't a hard cap. Additional usage is billed automatically. For sandbox sizes and additional usage pricing, see Depot CI sandboxes.

Developer planStartup planBusiness plan
Plan cost$20/month$200/monthCustom
Depot CI minutes2,000 included min/month
+ $0.0001/second after
20,000 included min/month
+ $0.0001/second after
Custom
Cache25 GB included
+ $0.20/GB/month after
250 GB included
+ $0.20/GB/month after
Custom

Plans also include container build minutes and GitHub Actions runner minutes. See Pricing for more about plan features and costs.

Depot CI sandboxes

Depot CI runs your workflows in x86_64 sandboxes. Sandboxes can use from 2 CPUs/8 GB of memory up to 64 CPUs/256 GB of memory. The default sandbox image is based on Ubuntu 24.04.

Larger sandboxes consume the Depot CI minutes included in your plan faster and cost more per second for extra usage. For example, a 4-CPU sandbox uses 2 minutes for every 1 minute of running time.

Use a Label from the following table in the runs-on key of your workflow. For custom images, use a Sandbox size paired with a Depot Registry custom image URL in the runs-on key.

LabelSandbox sizeCPUsMemoryPer-second pricePlan minutes multiplier
depot-ubuntu-24.042x828 GB$0.00011x
depot-ubuntu-24.04-44x16416 GB$0.00022x
depot-ubuntu-24.04-88x32832 GB$0.00044x
depot-ubuntu-24.04-1616x641664 GB$0.00088x
depot-ubuntu-24.04-3232x12832128 GB$0.001616x
depot-ubuntu-24.04-6464x25664256 GB$0.003232x

Depot CI doesn't provide sandboxes for Arm, macOS, or Windows. Labels for these runner types (as listed in Depot GitHub Actions runner types) aren't compatible with Depot CI.

FAQ

What is Depot CI?

Depot CI is a programmable CI system for engineers and agents. It's an entirely new CI engine, not a wrapper around GitHub Actions. Depot CI sits on top of Depot's own orchestrator and compute layer, built from the ground up for performance. GitHub Actions is the first workflow syntax Depot CI supports, so you can migrate your existing workflows from .github/ to .depot/ with a single command and run them on Depot's infrastructure without any YAML rewrites. Jobs start in 2-3 seconds, Depot Cache is built in with no configuration required, and everything has an API/CLI, so both engineers and agents can trigger runs, fetch logs, and monitor jobs without a GitHub event or the dashboard.

Do I need to change my workflow YAML to use Depot CI?

In most cases, no. Depot CI is designed to run your existing GitHub Actions YAML without modification. The depot ci migrate command copies your workflows and analyzes them for any compatibility issues before you commit.

Can I run Depot CI and GitHub Actions at the same time?

Yes. After migrating, your .github/workflows/ files remain untouched and continue running on GitHub. Depot CI runs the copies in .depot/workflows/ in parallel. This lets you test Depot CI without any risk to your existing workflows. Be mindful of workflows that write to external systems (deploys, artifact updates) since they will execute twice.

Can I run a workflow without pushing to GitHub?

Yes. The depot ci run command submits a local workflow file to Depot CI and applies any uncommitted changes automatically. You can also pass --job to run a subset of jobs and --ssh-after-step to open an interactive SSH debug session at a specific step.

Next steps