Skip to content

Abiorh001/devops_copilot

Repository files navigation

Project Logo

DEVOPS_COPILOT.GIT

Automate DevOps. Accelerate impact. Elevate your workflow.

license last-commit repo-top-language repo-language-count

Built with the tools and technologies:

JSON Redis Prometheus TOML Grafana Rich
Ruff Docker Python uv YAML


☀️ Table of Contents

Table of Contents

🌞 Overview


🔥 Features

Component Details
⚙️ Architecture
  • Event-driven (OmniDaemon)
  • Agent-based (OmniCoreAgent)
  • Microservice-ready (Docker, docker-compose)
  • Configurable via YAML/JSON
🔩 Code Quality
  • PEP8 compliance (ruff linter)
  • Type hints (Python 3)
  • Rich logging (rich)
  • Modular file structure
📄 Documentation
  • docker-compose.yml, Dockerfile
  • Config samples (config.yaml, dashboards.yml)
  • README (not included by default)
🔌 Integrations
  • Grafana dashboards
  • Prometheus metrics
  • OpenTelemetry (API, SDK, OTLP exporter)
  • Redis
🧩 Modularity
  • Separation of configs (YAML/JSON)
  • Independent agent logic
  • Plug-and-play monitoring (Prometheus, Grafana)
🧪 Testing
  • Not explicitly defined in codebase
  • Testable via Docker/compose
  • Manual dashboard validation
⚡️ Performance
  • Asynchronous event handling
  • Prometheus-client for metric efficiency
  • Optimized via minimal containers
🛡️ Security
  • Secrets via environment/ dotenv
  • Container isolation
  • Dependency lock (uv.lock)
📦 Dependencies
  • omnicoreagent
  • python-dotenv
  • opentelemetry-*
  • prometheus-client
  • grafana, prometheus, redis (via docker)

🌅 Project Structure

└── devops_copilot.git/
    ├── Dockerfile
    ├── LICENSE
    ├── Makefile
    ├── README.md
    ├── __init__.py
    ├── bash.py
    ├── cli.py
    ├── config.py
    ├── config.yaml
    ├── devops_copilot_agent.py
    ├── docker-compose.yml
    ├── main.py
    ├── monitoring
    │   ├── grafana-datasources.yml
    │   ├── grafana-provisioning
    │   │   └── dashboards
    │   └── prometheus.yml
    ├── observability.py
    ├── pyproject.toml
    ├── system_prompt.py
    ├── tests
    │   ├── __init__.py
    │   └── tests_bash.py
    └── uv.lock

🌄 Project Index

DEVOPS_COPILOT.GIT/
__root__
⦿ __root__
File Name Summary
observability.py - Centralizes observability for the OmniDevOpsCopilot platform by managing metrics collection, logging, auditing, health checks, and rate limiting
- Enables monitoring of system health, command and session activity, LLM queries, and blocked or rate-limited actions, supporting both operational insights and security auditing
- Integrates with Prometheus for metrics exposure and is essential for maintaining transparency, performance tracking, and compliance across the entire agent orchestration architecture.
main.py - Provides the primary entry point for launching the OmniDevOpsCopilot agent, initializing the application and signaling successful startup
- Serves as the user-facing command to activate the DevOps automation workflow, linking the project’s core orchestration layer with the rest of the system components
- Ensures the event-driven runtime is accessible for further agent operations within the OmniDevOpsCopilot architecture.
pyproject.toml - Defines the foundational metadata, dependency requirements, and compatibility standards for the OmniDevOpsCopilot project within the broader architecture
- Facilitates automated environment setup, ensures consistent packaging, and integrates essential libraries for agent orchestration, observability, and event-driven runtime via OmniDaemon
- Establishes the baseline configuration necessary for development, deployment, and smooth interoperability with OmniCoreAgent and supporting DevOps automation components.
cli.py - Interactive command-line interface empowers users to engage with OmniDevOpsCopilot’s AI-driven DevOps automation, providing natural language querying and secure operations management
- Serves as the main user entry point, orchestrating agent interaction, session management, observability commands, and event/store switching, all while leveraging OmniCoreAgent and OmniDaemon to deliver a production-ready, event-driven DevOps assistant experience.
LICENSE - Granting users and contributors broad rights to use, modify, and distribute the OmniDevOpsCopilot project, the MIT License empowers collaboration and adoption while limiting liability for creators
- Promoting open-source values, it ensures that all components—including core orchestration agents and the event-driven OmniDaemon—remain accessible for innovation and integration within diverse DevOps automation workflows.
docker-compose.yml - Defines the containerized service environment for OmniDevOpsCopilot by orchestrating essential infrastructure components including Redis for state management, Prometheus for monitoring, and Grafana for visualization, all networked for seamless communication
- Establishes a robust foundation for event-driven DevOps automation and observability, ensuring system reliability, real-time metrics, and extensibility within the overall OmniCoreAgent and OmniDaemon-powered architecture.
config.yaml - Centralizes critical configuration for OmniDevOpsCopilot, governing DevOps automation workflows, agent behavior, AI model integration, storage backends, security policies, and observability features
- Sets operational boundaries and resources for the agent, ensuring robust event-driven orchestration, efficient memory usage, secure interactions, and seamless integration with OmniCoreAgent and OmniDaemon within the overall DevOps automation platform.
Makefile - Enables streamlined management of the OmniDevOpsCopilot project lifecycle, providing straightforward commands for building Docker images, orchestrating the full DevOps automation stack, accessing logs, launching the CLI, and opening monitoring dashboards like Grafana and Prometheus
- Facilitates rapid development, testing, and operation of the agent-driven automation architecture, supporting both local development and observability for the entire event-driven ecosystem.
system_prompt.py - Defines the guiding system prompt for the LLM agent, shaping its secure, production-grade DevOps assistant persona
- Establishes operational boundaries, permitted command set, response structure, and best practices to ensure safety, clarity, and efficacy during automated DevOps tasks
- Plays a pivotal role in maintaining the integrity and reliability of OmniDevOpsCopilot’s agent-driven, event-based automation environment.
Dockerfile - Enables containerized, production-grade deployment of OmniDevOpsCopilot by provisioning all required DevOps tools, Docker and Kubernetes CLIs, Python dependencies, and security best practices
- Supports event-driven automation, agent orchestration, and secure multi-environment operations by configuring necessary user permissions, health checks, and environment variables, ensuring seamless integration within the overall OmniCoreAgent-powered agent architecture.
bash.py - Summary for bash.py**The bash.py file serves as the command execution interface for the OmniDevOpsCopilot system
- Its primary role is to securely and efficiently run shell commands as part of the automation workflows orchestrated by the broader agent architecture
- By integrating robust configuration handling, logging, auditing, health checks, and rate limiting, this module enables observability and operational safeguards for all shell-level actions initiated by the copilot
- This makes bash.py a foundational component that bridges high-level DevOps automation logic with underlying system operations within the event-driven, modular OmniDevOpsCopilot platform.
config.py - Centralizes and manages all configuration aspects for OmniDevOpsCopilot, enabling seamless integration of environment variables, YAML files, and runtime overrides
- Ensures that DevOps agent, model, storage, security, and observability settings are consistently loaded, validated, and applied across the system, thereby supporting robust, flexible, and production-grade behavior for the entire event-driven DevOps automation platform.
devops_copilot_agent.py - Acts as the main orchestration layer for the OmniDevOpsCopilot, initializing configuration, observability, and tool registration to enable DevOps automation through a conversational AI agent
- Bridges user input and system actions, manages secure command execution, tracks metrics, and ensures robust session management while integrating with OmniCoreAgent, event-driven runtimes, and memory routing for seamless, auditable DevOps workflows.
monitoring
⦿ monitoring
File Name Summary
prometheus.yml - Enables centralized monitoring of the DevOps Copilot agent by configuring Prometheus to regularly collect metrics from the agent’s internal metrics endpoint
- Supports real-time observability for the automation platform, allowing operators to track application health and performance within the overall OmniDevOpsCopilot architecture
- Integrates seamlessly with the broader monitoring strategy to ensure system reliability and rapid incident detection.
grafana-datasources.yml - Configuration establishes Grafanas integration with Prometheus as the default data source, enabling seamless visualization and monitoring of metrics collected from OmniDevOpsCopilot and its supporting components
- By streamlining observability setup, it supports the projects event-driven automation and orchestration workflows, contributing to real-time insights and proactive management across the DevOps automation ecosystem.
grafana-provisioning
⦿ monitoring.grafana-provisioning
dashboards
⦿ monitoring.grafana-provisioning.dashboards
File Name Summary
copilot-dashboard.json - Summary of monitoring/grafana-provisioning/dashboards/copilot-dashboard.json**This file defines the Grafana dashboard for OmniDevOpsCopilot, serving as the central visualization layer for monitoring and managing the AI-powered DevOps automation agent within the OmniCoreAgent architecture
- The dashboard aggregates and displays key metrics such as agent activity, system health, security status, and real-time DevOps automation performance
- It gives operators, developers, and stakeholders an intuitive, live overview of OmniDevOpsCopilot operations, helping ensure reliability, security, and effective orchestration as enabled by the event-driven runtime (OmniDaemon) and the broader agent framework
- This monitoring component is essential for observability and operational transparency within the overall codebase.
dashboards.yml - Enables automated provisioning and management of Grafana dashboards tailored for OmniDevOpsCopilot’s observability layer
- Integrates dashboard configurations into Grafana, ensuring that monitoring interfaces remain up-to-date and centrally controlled
- Supports seamless dashboard updates and edits, contributing to a cohesive and real-time visualization experience within the broader DevOps automation and monitoring architecture of the project.

🚀 Getting Started

🌟 Prerequisites

This project requires the following dependencies:

  • Programming Language: Python
  • Package Manager: Uv
  • Container Runtime: Docker

⚡ Installation

Build devops_copilot.git from the source and intsall dependencies:

  1. Clone the repository:

    ❯ git clone https://github.com/Abiorh001/devops_copilot.git
  2. Navigate to the project directory:

    cd devops_copilot.git
  3. Install the dependencies:

<!-- [![docker][docker-shield]][docker-link] -->
<!-- REFERENCE LINKS -->
<!-- [docker-shield]: https://img.shields.io/badge/Docker-2CA5E0.svg?style={badge_style}&logo=docker&logoColor=white -->
<!-- [docker-link]: https://www.docker.com/ -->

**Using [docker](https://www.docker.com/):**

```sh
❯ docker build -t Abiorh001/devops_copilot.git .
```
<!-- [![uv][uv-shield]][uv-link] -->
<!-- REFERENCE LINKS -->
<!-- [uv-shield]: https://img.shields.io/badge/uv-DE5FE9.svg?style=for-the-badge&logo=uv&logoColor=white -->
<!-- [uv-link]: https://docs.astral.sh/uv/ -->

**Using [uv](https://docs.astral.sh/uv/):**

```sh
❯ uv sync --all-extras --dev
```

🔆 Usage

Run the project with:

Using docker:

docker run -it {image_name}

Using uv:

uv run python {entrypoint}

🌠 Testing

Devops_copilot.git uses the {test_framework} test framework. Run the test suite with:

Using uv:

uv run pytest tests/

🌻 Roadmap

  • Task 1: Implement feature one.
  • Task 2: Implement feature two.
  • Task 3: Implement feature three.

🤝 Contributing

Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your github account.
  2. Clone Locally: Clone the forked repository to your local machine using a git client.
    git clone https://github.com/Abiorh001/devops_copilot.git
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.
    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message describing your updates.
    git commit -m 'Implemented new feature x.'
  6. Push to github: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
  8. Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Contributor Graph


📜 License

Devops_copilot.git is protected under the LICENSE License. For more details, refer to the LICENSE file.


✨ Acknowledgments

  • Credit contributors, inspiration, references, etc.


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors