Inspiration

Every developer has lost hours staring at a failing CI/CD pipeline. The logs are cryptic, the error messages are vague, and the root cause is buried somewhere in hundreds of lines of output. I built PipelineIQ to eliminate that friction entirely.

What It Does

PipelineIQ is a GitLab Duo agent that automatically diagnoses CI/CD pipeline failures. When a pipeline fails, simply mention @ai-pipelineiq-gitlab-ai-hackathon in an issue comment with the pipeline URL. The agent immediately:

  1. Fetches the failed job logs via the GitLab API
  2. Sends them to Claude (Anthropic) for root cause analysis
  3. Posts a structured diagnosis with specific fix recommendations directly in your workflow

No manual log reading. No Stack Overflow rabbit holes. Just answers.

How I Built It

PipelineIQ has two layers:

GitLab Duo Agent Platform — A flow configuration that gives the agent a bot identity (@ai-pipelineiq-gitlab-ai-hackathon). When mentioned in an issue or MR comment, it triggers automatically and uses built-in tools like get_pipeline_failing_jobs and get_job_logs to fetch real pipeline data.

FastAPI Webhook Backend — A Python backend that listens for GitLab pipeline failure webhooks, fetches job logs via the GitLab REST API, sends them to Claude for analysis, and posts the diagnosis as a commit comment automatically — no human trigger required.

Tech stack: Python, FastAPI, Anthropic Claude API, GitLab Duo Agent Platform, httpx

Challenges

  • Timeouts — GitLab webhooks have a short timeout window. The fix was using FastAPI's BackgroundTasks to return 200 OK immediately and process the Claude API call async.
  • GitLab Duo Agent Platform — Completely new territory. Learning the flow YAML schema, validating tool names against the catalog, and understanding the trigger mechanism all took iteration.
  • Tool validation — The agent platform has strict schema validation. Tools like ci_job_output don't exist — you have to use exact names from the tool catalog.

What I Learned

  • How to build and deploy a GitLab Duo flow from scratch
  • How to integrate Claude into a real developer workflow as an action-taking agent, not just a chatbot
  • The importance of async design in webhook-driven architectures

What's Next

  • Auto-open a draft merge request with the suggested fix applied
  • Support for multi-stage pipeline analysis
  • Slack/email notification with the diagnosis summary ## Challenges we ran into

Accomplishments that I'm proud of

Building a fully working AI agent that takes real action — not just chat. PipelineIQ triggers on actual pipeline failures, fetches real logs, calls Claude, and posts a structured diagnosis with fix recommendations in under 30 seconds. Getting the GitLab Duo Agent Platform flow working end-to-end — from YAML config to live bot identity to issue comment trigger — was a major milestone, especially having never used the platform before.

What we learned

  • How to build and deploy a GitLab Duo flow from scratch with no prior experience
  • How to design async webhook architectures — returning 200 OK immediately and processing heavy API calls in the background using FastAPI BackgroundTasks
  • How strict the GitLab Duo Agent Platform schema validation is — tool names must match the catalog exactly or the pipeline fails
  • How powerful Claude is as an action-taking agent when given real context like raw CI logs — the diagnoses it produces are genuinely useful and actionable

What's next for PipelineIQ

  • Auto-fix MRs — automatically open a draft merge request with the suggested fix already applied, not just recommended
  • Pipeline history analysis — detect recurring failures across multiple pipelines and flag systemic issues
  • Slack and email notifications — push the diagnosis summary to the team the moment a pipeline fails
  • Multi-stage support — analyze dependencies between stages to catch cascading failures and identify the true root cause across complex pipelines
  • Custom fix rules — let teams define their own remediation playbooks that Claude incorporates into its recommendations

Built With

  • anthropic-claude-api
  • fastapi
  • gitlab-duo-agent-platform
  • gitlab-rest-api
  • httpx
  • ngrok
  • python
  • uvicorn
Share this project:

Updates