Skip to content
@Auto-Pipeline-AI

AutoPipeline AI

AutoPipelineAI AutoPipelineAI

Turn a plain-English sentence into a validated CI/CD pipeline.

Latest release License: MIT Paper Tests Eval


👋 About

AutoPipelineAI is a graduation project from the Faculty of Computers and Artificial Intelligence (FCAI), Cairo University, developed under the technical mentorship of Siemens Egypt and the supervision of Dr. Mohammad El-Ramly.

Writing CI/CD configuration by hand is slow and easy to get wrong: you have to learn platform-specific YAML, guess at the right actions and versions, and debug failures one push at a time. AutoPipelineAI does that work for you. Point it at a real codebase, describe what you want in plain English, and a multi-agent LLM system analyzes your project, plans a pipeline, generates GitHub Actions or GitLab CI YAML, validates it with real linters, and self-corrects until it is valid. The whole process streams to you live, and you approve every shell command and file write along the way.

It is delivered as a three-tier desktop product (an Electron / Next.js client, a NestJS backend-for-frontend, and a FastAPI multi-agent engine), split across the three repositories in this organization and composed into one runnable app by the AutoPipeline launcher.

with thanks to

Cairo University      FCAI      Siemens

🚀 Start here

You don't need to touch the three repos individually. The AutoPipeline repo is a one-command launcher that clones all three, installs everything, and runs them together as a single desktop app:

git clone https://github.com/Auto-Pipeline-AI/AutoPipeline.git
cd AutoPipeline
npm run setup   # clone the 3 app repos + install dependencies
npm start       # launch agent + backend + frontend + the desktop window

You pick a provider and paste a key inside the app itself, encrypted in your OS keychain.

Project picker (dark theme)   Session workspace (light theme)

🏗️ Architecture

A deterministic Supervisor (zero LLM calls) routes between specialized agents (Planner, Analyzer, Researcher, Generator, Validator, Writer) on a LangGraph graph. The backend is a thin proxy and persistence layer, and the frontend never talks to the agent directly.

AutoPipeline three-tier architecture

📦 Repositories

Repo Role Port
AutoPipeline One-command launcher: clones and runs the other three as one app n/a
agent Multi-agent LLM engine (Python/FastAPI): analyzes, plans, generates, validates, self-corrects :8000
backend Backend-for-frontend (NestJS): sessions, persistence, NDJSON proxy, model catalog :3333
frontend Desktop client (Next.js + Electron): streaming chat UI, HITL prompts, key storage :3001

✨ Features

  • Multi-agent engine: Planner, Analyzer, Researcher, Generator, Validator, and Writer agents orchestrated by a deterministic, zero-LLM Supervisor.
  • Repository-aware: the Analyzer inspects your actual build files, test runners, and deploy configs so pipelines are grounded in reality, not guesses.
  • Self-correcting reflexion loop: generated YAML is linted with actionlint (GitHub Actions) or the GitLab CI Lint API, and regenerated automatically on failure.
  • Live web research: a ReAct Researcher agent looks up current action versions and syntax rather than relying on stale training data.
  • Multi-platform: GitHub Actions and GitLab CI, from the same natural-language prompt.
  • Multi-provider LLMs: OpenAI, Anthropic, Google Gemini, Groq, or any OpenAI-compatible endpoint (Ollama, vLLM, LM Studio); provider, model, and key are supplied per-request.
  • Real-time NDJSON streaming: see reasoning tokens, tool calls, plans, and YAML drafts as they happen, not just the final result.
  • Human-in-the-loop: explicit approval gates before running shell commands or writing files to disk.
  • Security by design: commands are classified safe / modifying / dangerous before execution, and streamed payloads are scanned with entropy-based secret detection.
  • Desktop-native: Electron provides a project folder picker, OS-keychain-encrypted API key storage, and a file-save bridge.

🧰 Tech stack

Tier Technologies
Agent (intelligence) Python 3.11+, FastAPI, LangGraph + LangChain, LiteLLM, Pydantic v2, actionlint, detect-secrets
Backend (BFF) Node.js 20+, NestJS 11, TypeScript, Prisma 7, SQLite
Frontend (client) Next.js 16, React 19, Electron 41, TypeScript, Tailwind CSS 4
Testing & tooling pytest, Jest, Vitest, ESLint, GitHub Actions CI, PlantUML/Kroki

📊 Evaluation

The pipeline-generation capability was evaluated end-to-end on six open-source repositories across four languages (Click and Peewee in Python, Hugo in Go, p-limit and Vite in JS/TS, Rustlings in Rust) using four LLMs (GLM, Qwen, Kimi, MiniMax). Each project was judged against 10 repository-specific functional requirements (240 requirements in total), asking a concrete question of every one: does the generated pipeline actually do what was asked?

Overall functional pass rate by model
ModelPass rateErrorsHallucinations
GLM78.3%190
Qwen75.0%180
Kimi71.7%200
MiniMax60.0%290

Reliability varies by project and model, so the per-project breakdown matters:

Functional pass rate by project and model

Why zero hallucinations?

Across all 240 evaluated requirements, not one model hallucinated. The error breakdown makes the point clearly: every failure was a Configuration Error or an Omission (a missing step), never an invented action, tool, or fact.

Error-type distribution per model; the Hallucination row is zero everywhere

That result is by design, not luck. No single component is trusted to be correct on its own; every stage either grounds the model in something real or checks its output against something real before the run moves forward. The Analyzer reads your actual repo instead of guessing, the Researcher pulls live docs instead of relying on stale training data, and structured-output schemas keep responses on rails instead of free-form text. Most importantly, the Generator's YAML is never taken on faith: it is linted by real tools (actionlint, the GitLab CI Lint API), and on failure the concrete errors are fed back into a bounded reflexion loop that regenerates until the output is valid or the retry limit is hit. Nothing reaches the Writer, and nothing is written to disk, until it has survived that gate.

Multi-agent orchestration graph: a deterministic Supervisor routes between LLM and non-LLM nodes

See the associated paper for the full per-project results.


✅ Testing

Each service ships its own hermetic, boundary-mocked test suite that runs in CI. Together they add up to 459 automated tests:

Service Framework Tests Coverage
Agent pytest 310 (265 unit + 45 integration) 84%
Backend Jest 106 unit 87%
Frontend Vitest 43 unit 86%

🔒 Security

LLM API keys are supplied per-request and stored encrypted in the OS keychain, and are never committed or logged. Shell commands are classified safe / modifying / dangerous and gated behind an explicit human approval prompt, and file writes require the same. All streamed payloads pass through entropy-based secret redaction before reaching the UI.


🎓 Team & paper

Built by Youssef Mohamed, Mohamed Ahmed Hemdan, Mahmoud Saleh Saad, Ahmed Mohamed Tolba, and Seif Gamal Abdelmonem, supervised by Dr. Mohammad El-Ramly (FCAI, Cairo University).

The project is also written up as a research paper, "AutoPipelineAI: Context-Aware CI/CD Pipeline Generation from Natural Language", available on arXiv (2606.06662).


All three services are MIT licensed.

🎬 See it in action

One prompt turns into a validated GitHub Actions pipeline: the agent analyzes the repo, plans, streams the reasoning and YAML live, self-corrects, and asks for approval before writing the file:

AutoPipelineAI generating a CI/CD pipeline end to end
visitor counter

Popular repositories Loading

  1. AutoPipeline AutoPipeline Public

    🚀 One-command launcher for the full AutoPipelineAI stack: clones, installs, and runs the agent, backend, and desktop frontend as a single desktop app that turns a plain-English prompt into a valida…

    JavaScript 3

  2. evaluation evaluation Public

    Python 1

  3. .github .github Public

    Organization profile for AutoPipelineAI: turn a plain-English sentence into a validated CI/CD pipeline

  4. backend backend Public

    🧩 The BFF tier of AutoPipelineAI: a NestJS backend-for-frontend that persists sessions and messages (Prisma + SQLite), proxies the agent's NDJSON stream, merges human-in-the-loop events, and serves…

    TypeScript

  5. frontend frontend Public

    🖥️ The client tier of AutoPipelineAI: a Next.js 16 + Electron 41 desktop app with real-time streaming chat, human-in-the-loop approvals, encrypted API-key storage, and multi-provider LLM selection

    TypeScript

  6. agent agent Public

    🤖 The intelligence tier of AutoPipelineAI: a LangGraph multi-agent system (FastAPI) that analyzes your codebase, plans, generates, lint-validates, and self-corrects GitHub Actions / GitLab CI workf…

    Python

Repositories

Showing 6 of 6 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…