Skip to main content

DevOps learning and architecture companion CLI

Project description

ClioraOps - DevOps Learning Companion

CI/CD Pipeline codecov License: MIT Python 3.9+

Transform GitHub Copilot CLI into an interactive, safety-conscious DevOps mentor.

🚀 Quick Start

Prerequisites

  1. Python 3.10+
  2. GitHub CLI (gh) installed: Installation Guide
  3. GitHub Copilot Extension:
    gh extension install github/gh-copilot
    gh auth login
    

Installation

# Clone the repository
git clone https://github.com/CloudFay/clioraOps.git
cd clioraOps

# Install in editable mode
pip install -e .

Running ClioraOps

# Start an interactive session
clioraops start

✨ Features

  • 🎓 Dual Modes:

    • Beginner: Analogies, simple explanations, and safety warnings.
    • Architect: Technical depth, production best practices, and trade-offs.
  • 🛡️ Safety First:

    • Intelligent try command checks for dangerous operations (e.g., rm -rf /, kubectl delete in prod).
    • Risk analysis and safe alternative suggestions.
  • 🤖 AI-Powered:

    • Explain: Deep dive into concepts or commands.
    • Generate: Create Dockerfiles, K8s manifests, and CI pipelines tailored to your stack.
    • Debug: Analyze error messages to find root causes and fixes.
  • 📊 Visualizer:

    • Generate ASCII architecture diagrams for mental models (Microservices, K8s, etc.).
  • 📝 Code Review:

    • Scan scripts for security risks and bad practices before running them.

🎮 Interactive Commands

Once inside the session (clioraops start), try these:

Command Description Example
try <cmd> Check if a command is safe to run try docker run -it ubuntu
explain <query> Get a detailed explanation explain kubernetes pods
design <pattern> Visualize an architecture design microservices
generate <type> Generate boilerplate code generate dockerfile python fastapi
debug <error> Analyze an error message debug connection refused
review <file> Scan a script for issues review deploy.sh
learn <topic> Start a learning session learn ci/cd

📚 Examples & Learning Paths

ClioraOps includes several example workflows demonstrating different features:

Run any example with:

python examples/basic_flow.py

See examples/README.md for detailed descriptions and learning paths.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

For detailed contribution guidelines, see CONTRIBUTING.md.

📊 Development & Testing

Running Tests Locally

# Run all tests
pytest tests/ -v

# Run with coverage report
pytest tests/ --cov=clioraOps_cli --cov-report=html --cov-report=term-missing

# Run specific test file
pytest tests/test_app.py -v

Code Quality

# Format code with black
black clioraOps_cli tests

# Lint with flake8
flake8 clioraOps_cli

# Type check with mypy
mypy clioraOps_cli --ignore-missing-imports

Version Management

# Bump version (major, minor, or patch)
python scripts/bump_version.py patch

# Create release (manual git process)
git tag -a v0.2.0 -m "Release 0.2.0"
git push origin main --follow-tags

See PUBLISHING.md for release procedures.

📄 License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clioraops-0.2.0.tar.gz (49.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clioraops-0.2.0-py3-none-any.whl (52.4 kB view details)

Uploaded Python 3

File details

Details for the file clioraops-0.2.0.tar.gz.

File metadata

  • Download URL: clioraops-0.2.0.tar.gz
  • Upload date:
  • Size: 49.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for clioraops-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2aa36105f951ca38f5b5d06c83b145464d38663188116a57a803dc19c50cccb0
MD5 ab19c9fd8b7512525b038d3de9ad0728
BLAKE2b-256 0869aadbccee85f2b2faeecf79e2940b2bc5133da730a293c3223f605515e5e1

See more details on using hashes here.

File details

Details for the file clioraops-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: clioraops-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 52.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for clioraops-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 663c2f28c6e87876f5399d1ae20a1cca3b6516a890bb62a1c6a4d137d5a70d2f
MD5 ccf6dc4b698b59bb81d266c2d9542e42
BLAKE2b-256 356ff125389da98f5e016ca18346b5f24cfdbf3b2f23693a99fc37559b6a0a90

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page