🌌 Inspiration

Context switching inside DevOps loops is incredibly expensive. When a continuous integration build or deployment script crashes, an engineer must drop their active development flow state, dig through thousands of lines of cluttered terminal text logs, spin up an isolated hotfix branch, and manually commit a patch. I built MendCI to eliminate this friction operating as an automated, first-responder Site Reliability Engineer that handles the tedious triage and code repair process autonomously in seconds, keeping developers perfectly in their flow state.

🛠️ What it does

MendCI is an autonomous, context-aware AI engineering assistant designed to monitor, diagnose, and repair broken pipeline frameworks in real time. It catches failing workspace telemetry variables, runs a progressive multi-turn diagnostics triage loop, and generates a functional code patch. By implementing a strict "Human-in-the-Loop" design parameter, MendCI automatically opens a fully configured Merge Request directly inside the target repository workspace, allowing engineers to validate and integrate fixes with a single click from an intuitive, interactive dashboard.

🏗️ How I built it

MendCI features a modern, full-stack reactive architecture:

  • Frontend Control Panel: A sleek, widescreen console built using Next.js and Tailwind CSS, featuring an animated Agentic Telemetry Map to visualize active execution states, latency stopwatches, and processed tokens on the fly.
  • Core Core Orchestration Engine: A Node.js backend utilizing the official Google GenAI SDK to leverage Gemini 2.5 Pro over a secure Vertex AI cloud platform pathway.
  • Infrastructure Layer: An asynchronous JSON-RPC client running over standard input/output pipes that bridges directly into the open-source Model Context Protocol (MCP) GitLab server ecosystem to safely authorize tree write mutations, branching, and commits.

🚧 Challenges we ran into

One significant hurdle was an internal schema constraint within the third-party open-source GitLab MCP server wrapper. For specific write tools like create_branch, the server rejected standard textual workspace string paths, resulting in unhandled mapping exceptions. I bypassed this elegantly without modifying the monolithic upstream library by engineering a custom fallback mapping mechanism into our Next.js API endpoint. This layer automatically intercept paths and uses the MCP registry to dynamically look up and translate strings into strict, clean numerical Project identifiers before triggering tool payloads.

🏆 Accomplishments that I am proud of

I am incredibly proud of building a robust, fully reactive agent architecture that moves beyond shallow text chat wrappers. Successfully integrating the Model Context Protocol (MCP) with Gemini's native tool-calling features allows my application to handle real-world filesystem conditions defensively. Seeing the agent gracefully handle a pipeline error, pivot dynamically, and fallback to creating a repository issue tracking item when write constraints were blocked was an immense validation of our system design.

🧠 What we learned

This project deeply expanded our expertise in Context Engineering and Spec-Driven tool design. I learned that structuring environment metadata boundaries and enforcing explicit structural rules inside the model's system instructions is far more vital for agent reliability than simple prompt tuning. I also mastered standard I/O streams and process management handlers inside serverless cloud-native runtime limits.

🚀 What's next for MendCI

I plan to scale MendCI from managing basic configuration files to executing localized application code patches by hooking into deep test suite environments. I aim to support multi-repo cross-dependency parsing, integrate advanced predictive analytics to preemptively catch build anomalies before they fire, and roll out cross-platform MCP nodes to support GitHub Actions and AWS deployment pipelines simultaneously.

Built With

  • ai
  • gemini-2.5-pro
  • git
  • gitlab-api
  • google-genai-sdk
  • json-rpc
  • model-context-protocol-(mcp)
  • next.js
  • node.js
  • tailwind-css
  • typescript
  • vertex-ai
Share this project:

Updates