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.1.0.tar.gz (49.8 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.1.0-py3-none-any.whl (52.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for clioraops-0.1.0.tar.gz
Algorithm Hash digest
SHA256 dd36575f9324beda17382a9d03e92d045f7882f39aac8fdb4793f87c29d1f483
MD5 78f32e58515a40b02dcd3af625675aef
BLAKE2b-256 647d24c9b8de1790605e289bd5fc086dcb116807096c5f499d2d489c5fac0c45

See more details on using hashes here.

File details

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

File metadata

  • Download URL: clioraops-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 52.2 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 df44fd1a695869bdee919c7db3405b327a07e7a7d50816db760ea5eea04967a1
MD5 c808f99104388cb11e7b82179748ffc6
BLAKE2b-256 bc4c38d9b4683986ec495091e324b9b662695e88d52438210d92c76ae527a9d8

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