An AI-driven DevOps Copilot and CLI Client for managing bare-metal servers securely
Project description
DevOps-Copilot 🚀
An open-source, AI-driven DevOps Copilot and CLI Client designed to manage raw root/bare-metal servers securely. It features persistent credential encryption, real-time terminal streaming, and semantic security guardrails using a local vector database.
Key Features
- Lean RAG Knowledge Base: Automatically chunks and indexes executed SSH command outputs, logs, and server configs into separate ChromaDB collections, enabling the agent to search past server history before executing new commands.
- Semantic Guardrails: Uses local vector search to intercept and block dangerous terminal commands.
- Human-in-the-Loop (HITL): Enforces admin approval (
[y/N]) inside the terminal for any state-modifying actions with clean prompt synchronization. - CLI Connection Resilience: Automatically reconnects to the WebSocket server using exponential backoff if the network drops or the server restarts.
- Real-Time Streaming: Streams LLM thoughts and active SSH
stdout/stderrline-by-line using WebSockets with 30s execution timeouts. - Encrypted Credentials: Securely encrypts passwords and SSH private keys using Fernet (AES-256).
- Server & Session CRUD: Full REST API support for updating/deleting server connections and deleting chat sessions (with cascade cleanup).
- Flexible AI Models: Powered by OpenRouter (supports Llama 3, Gemini, GPT, etc.).
📦 Quick Start (Backend Server)
1. Configure Settings
Copy the env file and populate keys:
cp .env.example .env
Make sure to add your OPENROUTER_API_KEY and a custom base64 ENCRYPTION_KEY in .env.
2. Run with Docker Compose
docker compose up -d --build
The server will boot on port 8000. Database tables and security blacklist vectors are automatically seeded on startup.
💻 Quick Start (CLI Client)
1. Install Globally
Install the package in editable mode from your local repository root:
uv pip install -e .
2. Authenticate
Configure the server URL and log in to get your JWT access token:
devops-copilot login
3. Interactive Chat
Start the real-time DevOps chat session:
devops-copilot chat
Ask the agent to check stats or run actions. Approve state-modifying commands directly in the prompt.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file devops_copilot-0.1.0.tar.gz.
File metadata
- Download URL: devops_copilot-0.1.0.tar.gz
- Upload date:
- Size: 26.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccf7d47a3c8724aac90960a7c5ef6375a28e21f3360c4a76109ac282f06472c5
|
|
| MD5 |
0fb803e42f8bdee54ed9ddff6e85fa60
|
|
| BLAKE2b-256 |
c87eef4ec26db43d29a4ddf4abf648cb0fe8f5dba4ddeb8e95a8881afa0559a4
|
File details
Details for the file devops_copilot-0.1.0-py3-none-any.whl.
File metadata
- Download URL: devops_copilot-0.1.0-py3-none-any.whl
- Upload date:
- Size: 32.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fefc4b051628c7bb0663819446a7af8bc4efe2de7effe4cd2a015e04818f16eb
|
|
| MD5 |
74c27e44f2ff38a717fca0e30d6ac85e
|
|
| BLAKE2b-256 |
468f7b6c40a870d705c4cba3ca54202584b04ad63d5aa5666726745aadcf86af
|