Inspiration

I often work with .gitlab-ci.yml files. They are powerful, but sometimes hard to write and understand. I wanted to create a tool that uses AI to analyze, fix, and explain these files easily.

What it does

CI Copilot is an AI-powered assistant for GitLab CI/CD pipelines. It helps developers by:

  1. Suggesting improvements

  2. Fixing common issues

  3. Auditing the file for problems in security or performance

  4. Explaining what the pipeline does in simple English

You can use it from the command line or as a local API server.

How we built it

  1. The CLI is built with Go

  2. The AI service uses FastAPI in Python

  3. I use Gemini 1.5 (Google AI) for generating responses

  4. Prompts are stored in separate files so they can be updated or reused

The structure is modular, so it’s easy to add new models or features later

Challenges we ran into

  1. Making the AI give clean and useful answers

  2. Keeping the format strict (no extra markdown or broken JSON)

  3. Designing the CLI to be simple but powerful

  4. Organizing the project so it’s easy to maintain and grow

Accomplishments that we're proud of

  1. I built both the CLI and AI server by myself

  2. Everything works together smoothly

  3. It’s easy to use and extend

  4. It’s already helpful for real CI/CD use cases

What we learned

  1. Prompt design is key — the AI needs good instructions

  2. Gemini works great for DevOps tasks

  3. Simple tools can solve real problems

  4. Building AI-powered dev tools is very fun and useful

What's next for CI Copilot

  1. GitLab-native integration Run checks automatically when a .gitlab-ci.yml file is pushed — no need to modify pipeline files. This could be done using GitLab server-side hooks or custom integrations.

  2. Standalone CI/CD AI module Build a dedicated AI model trained only on real-world .gitlab-ci.yml files. This model would be fast, reliable, and focused — no extra logic, just CI/CD understanding.

  3. Pluggable AI Currently powered by Google Gemini. The system is designed to grow — I plan to develop a personalized AI model trained specifically for CI/CD workflows.

  4. Custom rule sets Let teams define their own CI/CD rules (style, security, policies) and let the assistant enforce them.

  5. IDE integration Create a plugin for VS Code or JetBrains to give real-time suggestions while editing .gitlab-ci.yml.

  6. Web dashboard Show issues, improvements, and project stats in a web UI — perfect for teams or DevOps leads.

  7. Enterprise mode Support offline usage, internal AI models, and extra security settings for companies.

Built With

Share this project:

Updates