Skip to content
Kartikvyas1604Public

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

48 Commits

Folders and files

Repository files navigation

GenieOps ๐Ÿงž

AI-Powered DevOps Automation Platform

VS Code TypeScript License Gemini AI

Talk to your infrastructure like you talk to a friend. Deploy, monitor, and manage everything with natural language.


๐Ÿš€ Quick Start

  1. Install GenieOps from the VS Code Marketplace
  2. Click the ๐Ÿงž icon in the Activity Bar (left sidebar)
  3. Configure your Gemini API Key:
    • Get your free key from Google AI Studio
    • Paste it when prompted (or in Settings โ†’ GenieOps โ†’ Google API Key)
  4. Start chatting! Press Cmd+Shift+O (Mac) or Ctrl+Shift+O (Windows/Linux)

โœจ What Can GenieOps Do?

๐Ÿ’ฌ Natural Language Commands

Just type what you want in plain English:

"Deploy my app to AWS"
"Show me all running containers"
"Create a CI/CD pipeline for this Next.js project"
"Scale my Kubernetes deployment to 5 replicas"
"What's using the most CPU in production?"

โ˜๏ธ Multi-Cloud Support

Provider What You Can Do
AWS Deploy Lambda functions, manage S3, EC2, ECS, CloudWatch monitoring
Google Cloud Cloud Run, GKE clusters, Cloud Functions, GCS storage
Azure App Service, AKS, Functions, Blob Storage, Container Registry

๐Ÿณ Container & Orchestration

  • Docker: Build, run, stop, logs, inspect containers and images
  • Kubernetes: Deploy, scale, update pods, services, and deployments
  • Helm: Install and manage charts

๐Ÿ”„ CI/CD & Git

  • GitHub: Repos, PRs, Issues, Actions workflows
  • GitLab: Pipelines, Merge Requests
  • Jenkins: Jobs and builds

๐Ÿ’ฌ Team Collaboration

  • Slack: Send deployment notifications and alerts
  • Jira: Create issues, update tickets, sprint management

๐ŸŽจ Beautiful Interface

GenieOps features a modern chat interface inspired by GitHub Copilot:

  • Multiple AI Models: Choose between Gemini Pro, Gemini Flash, Claude, GPT-4, and Perplexity
  • Agent Modes: Agent, Assistant, Code, or DevOps specialized modes
  • Smart Suggestions: Context-aware command suggestions
  • Real-time Typing Indicators: See when GenieOps is thinking
  • Visual Message Groups: Clean, organized conversation view

๐Ÿ”ง Key Features

  • ๐ŸŽฏ Project Auto-Detection: Automatically detects your stack (Next.js, React, Node.js, Python, etc.)
  • ๐Ÿ” Secure Credential Storage: All API keys safely stored in VS Code's secure storage
  • ๐Ÿ“Š Real-time Monitoring: Live status updates for deployments and infrastructure
  • ๐Ÿ”„ Workflow Automation: Pre-built templates for common DevOps tasks
  • ๐Ÿ“ Command History: Track and replay previous operations
  • ๐ŸŒ Multi-Cloud: Switch between AWS, GCP, and Azure seamlessly

โš™๏ธ Configuration

Required: Gemini API Key

  1. Open VS Code Settings (Cmd+, on Mac, Ctrl+, on Windows/Linux)
  2. Search for "GenieOps"
  3. Enter your Gemini API Key (get one free at Google AI Studio)

Optional: Other AI Models

Configure additional models for specialized tasks:

  • Claude API Key: For complex reasoning tasks
  • OpenAI API Key: For GPT-4 support
  • Anthropic API Key: For Claude 3.5

Optional: Cloud Providers

Connect your cloud accounts:

  1. Click the ๐Ÿงž icon in the Activity Bar
  2. Go to "Connections" view
  3. Click "+" to add AWS, GCP, or Azure credentials

๐ŸŽฎ Usage Examples

Example 1: Deploy a Web App

Open Chat (Cmd+Shift+O) and type:
"Deploy my Next.js app to Vercel"

Example 2: Docker Management

"Show me all running containers"
"Stop the nginx container"
"Build a Docker image from the current directory"

Example 3: Kubernetes Operations

"Scale my web deployment to 5 replicas"
"Show me pods in the production namespace"
"Update the config map with new environment variables"

Example 4: CI/CD Pipeline

"Generate a GitHub Actions workflow for this project"
"Create a Dockerfile optimized for production"

โŒจ๏ธ Keyboard Shortcuts

Shortcut Action
Cmd+Shift+O (Mac) or Ctrl+Shift+O (Win/Linux) Open Chat Panel
Cmd+Shift+G (Mac) or Ctrl+Shift+G (Win/Linux) Run Quick Command

๐Ÿ—๏ธ Architecture

GenieOps is built with:

  • TypeScript for type safety
  • VS Code Extension API for native integration
  • Gemini AI as the primary intelligence layer
  • MCP (Model Context Protocol) for tool orchestration
  • Secure credential storage in VS Code's SecretStorage

๐Ÿ“ฆ Development

Want to contribute or customize GenieOps?

# Clone the repository
git clone https://github.com/Kartikvyas1604/GenieOps.git
cd GenieOps

# Install dependencies
npm install

# Compile TypeScript
npm run compile

# Watch mode for development
npm run watch

Then press F5 in VS Code to launch the Extension Development Host.

๐Ÿค Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to your fork
  5. Open a Pull Request

๐Ÿ“ License

MIT License - see LICENSE file for details

๐Ÿ› Troubleshooting

"API key not configured"

Go to Settings โ†’ GenieOps โ†’ Google API Key and enter your Gemini API key

"Cannot connect to cloud provider"

Check your credentials in the Connections panel. Click the service to re-authenticate.

Chat panel is blank

Try reloading VS Code (Cmd+R or Ctrl+R)

Extension not appearing

Make sure you've clicked the ๐Ÿงž genie icon in the Activity Bar (left sidebar)

โ“ FAQ

Q: Is GenieOps free?
A: Yes! GenieOps is open source. You only pay for your cloud/API usage (Gemini has a generous free tier).

Q: What's the difference between Agent and Assistant modes?
A: Agent mode can execute actions automatically, while Assistant mode provides guidance without making changes.

Q: Can I use this in production?
A: Yes, but always review commands before execution and test in staging first.

Q: Which AI model should I use?
A: Gemini Pro is the best balance of speed and capability. Use Gemini Flash for quick queries or Claude/GPT-4 for complex reasoning.

๐Ÿ™ Acknowledgments

Built with:


Made with ๐Ÿ’œ by developers, for developers

Report Bug ยท Request Feature ยท Documentation

โญ Star us on GitHub if GenieOps helps you!


๐Ÿ”Œ MCP Server Tools

The extension exposes 35+ tools via Model Context Protocol:

Docker Tools

  • docker_list_containers - List all containers
  • docker_run_container - Run a new container
  • docker_stop_container - Stop running container
  • docker_build_image - Build Docker image
  • docker_push_image - Push image to registry

Kubernetes Tools

  • k8s_get_pods - List pods in namespace
  • k8s_apply_manifest - Apply YAML manifest
  • k8s_scale_deployment - Scale deployment replicas
  • k8s_rollout_status - Check rollout status
  • helm_install - Install Helm chart

Cloud Tools

  • aws_lambda_invoke - Invoke Lambda function
  • aws_s3_list_buckets - List S3 buckets
  • gcp_run_deploy - Deploy to Cloud Run
  • azure_function_invoke - Invoke Azure Function

Git Tools

  • git_clone - Clone repository
  • git_create_branch - Create new branch
  • git_create_pr - Create pull request
  • github_trigger_workflow - Trigger GitHub Action

๐Ÿ›ก๏ธ Resilience & Reliability

Built-in patterns for production reliability:

import { resilience, CircuitBreaker, RetryManager } from './utils';

// Combined resilience policy
const policy = resilience()
  .withCircuitBreaker({ failureThreshold: 5 })
  .withRetry({ maxAttempts: 3, backoffMultiplier: 2 })
  .withBulkhead({ maxConcurrent: 10 })
  .withTimeout(30000);

const result = await policy.execute(() => apiCall());

Features

  • Circuit Breaker: Prevents cascading failures
  • Retry with Backoff: Exponential backoff with jitter
  • Bulkhead: Concurrency isolation
  • Rate Limiting: Token bucket & sliding window
  • Timeout Control: Configurable operation timeouts

๐Ÿ“Š Observability

Comprehensive metrics collection:

import { metrics, commandMetrics } from './utils';

// Track command execution
commandMetrics.executed.inc();
commandMetrics.duration.time(async () => {
  await executeCommand();
});

// Export Prometheus metrics
const prometheusOutput = metrics.exportPrometheus();

Metrics Types

  • Counter: Monotonically increasing values
  • Gauge: Values that can go up/down
  • Histogram: Distribution of values
  • Timer: Duration measurements with percentiles

๐Ÿงช Testing

# Run all tests
npm test

# Run specific test suite
npm test -- --grep "GitHub"

# Run with coverage
npm run test:coverage

Test coverage includes:

  • Unit tests for all integrations
  • AI orchestrator tests
  • NLP parsing tests
  • Workflow engine tests
  • MCP tool tests

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ™ Acknowledgments


Built with โค๏ธ for the DevOps community

Documentation ยท Report Bug ยท Request Feature

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages