Cloudflare Turns CI/CD Into a Workflow: Store, Build, Test, Deploy — All on Their Platform
Cloudflare's new CI SDK lets you define CI/CD pipelines as TypeScript Workflows, with sandboxed steps, dependency caching, and direct event triggers from Artifacts — no more YAML fatigue or queue plumbing.

Cloudflare is stitching together its developer platform to cover the entire code lifecycle: store, build, test, and deploy. The latest piece is a CI SDK built on Cloudflare Workflows and the Sandbox SDK, letting you define a CI pipeline as a Workflow in TypeScript instead of YAML.
The SDK, available as @cloudflare/ci, provides a CIWorkflow class and a ci.runner() method. Each step in your pipeline — install, lint, test, typecheck, build, deploy — runs in its own isolated sandbox, with retries and timeouts inherited from Workflows. You can cache dependencies via sandbox snapshots stored in R2, so your install step runs once and subsequent steps reuse it.
Triggering a CI run is now simpler. Instead of wiring up an event subscription, a Queue, a consumer, and a handler, you add an events field to your wrangler configuration. Point an artifact push event at your Workflow, and every push to an Artifacts repo spawns a Workflow instance — visible step-by-step in the Workflows dashboard.
The pitch is aimed at platforms: companies storing millions of repos on Artifacts can write one CI/CD pipeline and run it across all their customers' apps, while still letting individual customers define their own Workflows for custom CI. Both can coexist in the same namespace.
Cloudflare also highlights a self-healing example where an AI agent reviews build failures, fixes them, and pushes a commit for approval — all orchestrated from within the CI Workflow.
A CI/CD pipeline is just a Workflow. Instead of YAML, you can define your CI/CD pipeline in TypeScript for greater customization and configurability.
| Aspect | Cloudflare CI | Traditional CI/CD |
|---|---|---|
| Definition | TypeScript Workflow | YAML |
| Isolation | Sandbox per step | Container per job |
| Caching | R2 snapshots | Cache directories |
| Trigger | Artifact push event | Webhooks, scheduled |
| Observability | Workflows dashboard | CI provider UI |