Inspiration
Modern CI/CD pipelines are reactive. They lint, test, and warn — but the final decision still depends on humans.
We asked a simple question:
What if the pipeline itself could decide whether code is safe to ship?
That idea led to AuraOps — an Autonomous Unified Release Authority that doesn’t just analyze code, but fixes it, verifies it, and makes the final release decision.
As DevOps complexity grows — with security risks, compliance requirements, sustainability concerns, and constant release pressure — developers are overwhelmed.
AuraOps removes that burden.
What We Built
AuraOps is a multi-agent AI system integrated directly with GitLab Merge Requests.
When a merge request is opened, AuraOps:
- Intercepts the webhook
- Extracts the code diff
- Runs a 3-phase autonomous pipeline powered by AI agents
- Outputs a final APPROVE / BLOCK decision with confidence
Pipeline Overview
- Phase 1 (Parallel): Security + Sustainability
- Phase 2 (Sequential): Validation + Risk Decision
- Phase 3 (Parallel): Compliance + Deployment
The AI Agents
SecurityAgent
Detects vulnerabilities (SQL injection, XSS, secrets, etc.) and auto-remediates them by writing and committing patches, then re-validates its own fixes.
GreenOpsAgent
Optimizes infrastructure using real-time carbon data and suggests lower-emission deployment regions.
ValidationAgent
Runs the GitLab CI/CD pipeline to ensure the AI-generated fixes didn’t break anything. Includes graceful fallback if CI is unavailable.
RiskEngine
The decision-making core. Combines all signals into a confidence score and outputs: → APPROVE or BLOCK
ComplianceAgent
Checks code and deployment against SOC2, GDPR, and HIPAA requirements.
DeployAgent
Builds and deploys the application to Google Cloud Run, selecting the most optimal and green region.
Scorecard (Final Output)
AuraOps aggregates all results into a single release scorecard, including:
- Security score
- Sustainability index
- Number of vulnerabilities auto-fixed
- Time saved via automation
- CO₂ emissions avoided
- Final AI decision + confidence
The Scorecard is the final output, not an agent.
How We Built It
AuraOps is powered by a multi-agent orchestration architecture:
- Google Gemini 2.5 Flash → Core intelligence for all agents
- GitLab Webhooks + API → MR interception & CI triggering
- Google Cloud Run → Deployment layer
- Carbon Intensity APIs → Sustainability optimization
- React + Three.js (React Three Fiber) → 3D pipeline visualization
Execution Flow
Merge Request → Webhook → Orchestrator
→ Phase 1 (Security + GreenOps)
→ Phase 2 (Validation → RiskEngine)
→ Phase 3 (Compliance + Deploy)
→ Scorecard → Final Decision
Challenges We Faced
Autonomous Decision Making
Designing a system that can block a release without human input required balancing:
- Security risk
- CI results
- Sustainability impact
- Compliance status
We built a weighted model to generate a confidence score.
Reliable Auto-Remediation
Detecting issues is easy — safely fixing them is not.
We implemented:
- Patch generation
- Auto-commit to GitLab
- Multi-pass revalidation (up to 3 cycles)
Failure Resilience
Real-world systems fail — APIs rate limit, CI breaks, configs are missing.
AuraOps was built with graceful degradation:
- CI failures → safely skipped
- API limits → retry with backoff
- Missing configs → bypass without crashing
Sustainability Integration
Mapping infrastructure to real-time carbon data and quantifying CO₂ savings was a key challenge.
What We Learned
- AI can move beyond assistance into autonomous decision-making
- Systems must be designed to never fail catastrophically
- AI can own the entire fix → verify → decide loop
- Sustainability can be treated as a first-class engineering metric
Final Thought
AuraOps represents a shift:
From:
“AI that helps developers”
To:
“AI that takes responsibility for production decisions.”
LaTeX Math Usage
AuraOps uses a weighted decision model to compute a final confidence score:
$$ C = \alpha S + \beta E + \gamma V $$
Where:
- ( S ) = Security Score
- ( E ) = Eco (Sustainability) Score
- ( V ) = Validation Result
- ( \alpha, \beta, \gamma ) = Weight coefficients
Inline Example
The release is approved if ( C \geq 0.75 ), otherwise it is blocked.
Normalized Form
$$ C = \frac{w_1 S + w_2 E + w_3 V}{w_1 + w_2 + w_3} $$
Decision Function
$$ \text{Decision} = \begin{cases} \text{APPROVE}, & C \geq T \ \text{BLOCK}, & C < T \end{cases} $$



Log in or sign up for Devpost to join the conversation.