Concepts

What is a pipeline

Understand the unit of work Bilbis runs - from a plain-English task to a merged MR.

Short answer

A pipeline is one task you give Bilbis. You describe the work in plain English, and Bilbis runs a chain of AI agents that plan it, write the code, test it, push a branch, open a merge request, and shepherd it through review until it merges or fails.

You start a pipeline. The agents finish it. The pipeline is the job ticket that ties it all together.

How it works

Every pipeline starts the same way: you fill in the New pipeline form with a task description, a repo, a type, and a budget cap. Bilbis dispatches a team of agents and watches them.

Internally, a pipeline is a small state machine. It moves through states like Coding, Testing, CI, and Reviewing as different agents pick it up. You don't drive the state machine directly - you watch it on the pipeline detail page and react when it asks you something or when it stops.

The shape of one full run:

  1. Routing - The Repo Router reads your task and decides what to do.
  2. Coding - The Implementation Agent writes the code.
  3. Testing - The Test Runner runs the project's tests.
  4. Pushing - The PR Publisher commits and pushes a branch.
  5. CI - Your CI provider runs its checks. If they fail, the Implementation Agent reads the logs and pushes a fix.
  6. Reviewing - The Review Agent reads the diff and writes review comments.
  7. Awaiting approval - The merge request is open, waiting for a person to approve.
  8. Merging - The MR or PR merges into the target branch.
  9. Done - Pipeline complete.

Pauses can happen along the way. The most common are Awaiting clarification (the agents have a question) and Awaiting approval (the MR needs a human approval before merging).

What a pipeline is not

  • A task tracker. Pipelines run, then stop. They don't replace Linear or Jira. You can link a Jira ticket to a pipeline, but the pipeline isn't the ticket.
  • A long-running job. Most pipelines finish in minutes. A pipeline that's been "running" for hours is usually paused on a person, not still working.
  • Reusable on its own. A pipeline is one-shot. To run the same task again, dispatch a new pipeline - saved templates make this one click. See Templates.
  • Tied to a single MR. A pipeline can split into child pipelines when Let Bilbis pick routes a task across multiple repos. Each child opens its own MR.

Where you see it in Bilbis

  • Pipelines → New - the form where you create one. See Create a pipeline.
  • Pipelines → list - every pipeline in the organization, filterable by state.
  • Pipelines → detail page - the live view of one running pipeline, with tabs for the timeline, AI calls, CI, the diff, and more. See Review pipeline results.
  • MRs - every merge request a pipeline has opened. See Merge requests.
  • Dashboard - recent pipelines, KPIs, and the setup checklist.

How a pipeline is identified

Each pipeline has a UUID. You'll see the first eight characters of it in the browser tab title and the URL. The pipeline detail page renders the task description as the visible heading, but the UUID is what the API and the timeline use under the hood.

When something is wrong with a specific pipeline, paste its URL or the first eight characters of its id when asking for help. That gives whoever is helping enough to find it.

Cost

Every pipeline spends money on AI engine calls. The Budget cap on the form halts a pipeline if cost exceeds the cap. Spend is visible on the detail page header and in the LLM calls tab.

See Budgets, dry runs, and priority for the cost levers.

Safety nets

  • Dry run - finishes coding and stops before pushing. No branch, no MR. Useful when you want a preview.
  • Budget cap - hard ceiling on spend.
  • Cancel - stops further state transitions on a non-terminal pipeline.
  • Awaiting clarification - pipelines that aren't sure pause and ask you, instead of guessing.

On this page