OmniLead: The Tech Lead that never sleeps, never complains, and literally fixes your code.
Inspiration
The idea for OmniLead was born directly from the trenches of our university Final Year Project (FYP). While doing real hands-on development, we noticed a massive bottleneck that had nothing to do with code: project bureaucracy.
Our team leader was constantly frustrated by the sheer amount of time wasted writing reports and manually assigning tasks on our Trello board instead of actually building the product. Meanwhile, us coders were notorious for forgetting to drag tickets to "Done" or close issues after finishing a feature, leading to constant miscommunications and stalled sprints. We realized that management overhead was draining our team's velocity. This real-world frustration inspired a simple vision: What if an AI could just take over the entire management process? Thus, OmniLead was born—an autonomous AI Tech Lead that handles all the operational work so developers can just code.
How we built it
OmniLead is powered by a robust and highly asynchronous architecture:
- The Brain: We used Google's Gemini 3.5 Flash for lightning-fast reasoning, code generation, and complex context understanding.
- The Framework: We built our agent logic on top of the Google Agent Development Kit (ADK).
- The Hands: We leveraged the Model Context Protocol (MCP) to give Gemini direct, real-time read/write access to GitLab.
- The Backend: A high-performance Python FastAPI server acts as the central nervous system, handling GitLab Webhooks and orchestrating AI tasks.
- The Frontend: A sleek, dynamic Next.js UI provides the command center for the "human" team to oversee the AI's operations.
When an idea is dropped into the Launchpad, OmniLead uses MCP to instantly create a GitLab repo, push the initial codebase, and write the backlog. Through webhooks, it actively listens for Merge Requests, reviews the code, pushes auto-fix commits if it finds bugs, and auto-merges the request flawlessly.
Challenges we ran into
Our biggest hurdle was managing the concurrency between GitLab's strict webhook requirements and the natural latency of LLM inference.
Initially, our FastAPI backend was handling the AI Tech Lead review synchronously inside the webhook endpoint. This caused the main event loop to block while waiting for Gemini to finish reviewing code. Since GitLab enforces a strict 10-second timeout on webhooks, this blocking behavior starved the server and resulted in repeated Net::ReadTimeout failures.
We solved this by re-architecting our backend. We refactored the synchronous AI tasks to run entirely within a dedicated background thread pool. This allowed our server to instantly acknowledge GitLab's webhooks with an HTTP 200, while OmniLead quietly reviewed the code and pushed commits in the background without blocking the main thread.
What we learned
We gained profound insights into the Model Context Protocol (MCP) and how it fundamentally shifts LLMs from passive conversational bots to active, autonomous software agents.
We also learned a mathematical reality about engineering efficiency. If $N$ is the number of developers on a team and $t$ is the time spent on administrative overhead per developer per day, the total lost engineering time $T$ is:
$$ T = \sum_{i=1}^{N} t_i $$
By introducing OmniLead to handle the operational work, we effectively reduce $t_i \to 0$. We realized that with an autonomous Tech Lead, engineering velocity scales purely with raw coding ability, completely unshackled from management overhead.
What's next for OmniLead
We plan to expand OmniLead's capabilities to integrate directly with CI/CD pipelines. This will allow the AI to automatically analyze failed deployment logs, roll back bad commits, and write/deploy hotfixes entirely without human intervention. We also want to implement cross-repository context sharing so OmniLead can manage entire microservice ecosystems simultaneously.
Built With
- fastapi
- gemini-api
- gitlab-api
- google-cloud
- model-context-protocol
- next.js
- node.js
- python
- react
- render
- tailwind-css
- typescript
Log in or sign up for Devpost to join the conversation.