Pre-release  ·  v0.x

CI/CD forged for the
agentic era

PocketCI is a local-first pipeline runtime where pipelines are TypeScript programs, not YAML configs. Built to run on your machine and scale to fleets of AI agents.

Local-first

Runs entirely on your machine with Docker or the native driver. No cloud account, no SaaS dependency, no data leaving your infrastructure.

Agent-ready

Designed from the start for AI agents. Pipelines expose an MCP server, webhooks fire into agentic loops, and the runtime API is scripted, not clicked.

Programmable

Pipelines are TypeScript programs. Loops, conditionals, parallel steps, shared volumes — use the language, not a new DSL. YAML compatibility for Concourse migrations.

A pipeline, unabridged

## After tests pass, an agent reviews the output and opens a PR comment.
## Follows the same input/output wiring as any task step.

jobs:
  - name: review-tests
    plan:
      - task: git-clone
        config:
          platform: linux
          image_resource:
            type: registry-image
            source: { repository: alpine/git }
          outputs:
            - name: my-repo
          run:
            path: sh
            args:
              - -c
              - |
                  git clone https://github.com/golang/example my-repo

      - agent: review-agent
        prompt: "Review the Go test results and summarise any failures"
        model: openrouter/google/gemini-3.1-flash-lite-preview
        config:
          platform: linux
          image_resource:
            type: registry-image
            source: { repository: golang, tag: "1.25" }
          inputs:
            - name: my-repo
          outputs:
            - name: review-result

The boiler is lit. The gauges are being calibrated.

PocketCI is pre-v1.0 and actively developed. The core pipeline runtime is solid and used in production workflows, but APIs may shift and some drivers are still experimental. Expect rough edges and fast iteration.

If you're building with AI agents, automating infrastructure, or just tired of YAML sprawl, this is a good time to kick the tyres. Star the repo to follow along, or open an issue if something breaks.