OpsHero CLI — Analyze CI/CD pipeline errors from your terminal
Project description
🚀 OpsHero CLI
Analyze CI/CD pipeline errors from your terminal in <100ms.
Installation
pip install opshero
Quick Start
# Login with GitHub
opshero login
# Analyze an error
opshero analyze "npm ERR! code ENOENT"
# Pipe from your CI/CD
npm test 2>&1 | opshero analyze
# View history
opshero history
# Search patterns
opshero patterns search docker
Features
- ⚡ Ultra-fast analysis - <100ms for 85% of errors
- 🎯 100+ patterns - Docker, Node.js, Python, Git, K8s, tests
- 🤖 AI fallback - Groq LLM for unknown errors
- 📊 History tracking - All analyses saved and searchable
- 🔄 Sync - Access from CLI, dashboard, or API
- 🌐 Offline mode - Local pattern matching
Commands
Authentication
opshero login # Login with GitHub
opshero logout # Logout
opshero whoami # Show current user
Analysis
opshero analyze TEXT # Analyze error text
opshero analyze --file error.log # Analyze from file
echo "error" | opshero analyze # Pipe input
opshero analyze --language nodejs # With context
History
opshero history # List all analyses
opshero history --last 10 # Last 10 analyses
opshero history show ID # Show details
opshero history search docker # Search in history
Patterns
opshero patterns list # List all patterns
opshero patterns list --category docker # Filter by category
opshero patterns show ID # Show pattern details
opshero patterns search "permission" # Search patterns
Contributions
opshero contribute pattern # Submit new pattern
opshero contribute list # My contributions
opshero contribute status ID # Check status
Sync
opshero sync analyses # Sync analyses from cloud
opshero sync patterns # Sync patterns
opshero sync all # Sync everything
Configuration
opshero config show # Show config
opshero config set api_url https://api... # Set value
opshero config reset # Reset to defaults
Examples
Analyze npm Error
$ opshero analyze "npm ERR! code ENOENT"
✅ Analysis Complete (47ms)
Pattern Matched: npm_missing_file
Confidence: 95%
Problem:
npm cannot find a required file or module
Solutions:
1. npm install (confidence: 95%)
Install missing dependencies
2. Check package.json (confidence: 80%)
Verify all dependencies are listed
3. Clear cache (confidence: 60%)
npm cache clean --force && npm install
Pipe from CI/CD
# In your CI/CD script
npm test 2>&1 | opshero analyze
# Or with Docker
docker build . 2>&1 | opshero analyze
Search History
$ opshero history search docker
Found 5 analyses:
1. docker_permission_denied (2 days ago)
Status: Resolved
2. docker_build_failed (1 week ago)
Status: Resolved
...
Configuration
Config file: ~/.config/opshero/config.json
{
"api_url": "https://api.opshero.dev",
"cache_enabled": true,
"offline_mode": false
}
Environment Variables
OPSHERO_API_URL # Override API URL
OPSHERO_TOKEN # Auth token (set by login)
OPSHERO_OFFLINE # Enable offline mode
Development
# Clone repo
git clone https://github.com/your-org/opshero.git
cd opshero/cli
# Install in editable mode
pip install -e .
# Run tests
pytest
# Lint
ruff check .
Links
- Dashboard: https://opsherodev.vercel.app
- Admin: https://opshero-admin.vercel.app
- API: https://opshero-backend-production.up.railway.app
- GitHub Backend: https://github.com/NICE-DEV226/opshero-backend
- GitHub Dashboard: https://github.com/NICE-DEV226/opshero-web
- GitHub Admin: https://github.com/NICE-DEV226/opshero-admin
License
MIT License - see LICENSE file for details
Support
- Email: opshero.dev@gmail.com
- GitHub Issues: https://github.com/NICE-DEV226/opshero-backend/issues
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
opshero-0.1.0.tar.gz
(32.6 kB
view details)
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
opshero-0.1.0-py3-none-any.whl
(39.9 kB
view details)
File details
Details for the file opshero-0.1.0.tar.gz.
File metadata
- Download URL: opshero-0.1.0.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61fef6aa1a5137ada850d43f34aae49989121a8e0eaacd57c2564e2022ef41b0
|
|
| MD5 |
98499e9b188146ab6e8239a1ac54a809
|
|
| BLAKE2b-256 |
79c66c7febf9678f718b1fb2c866d9d3fc2cb167947cee1b05eadc967be5e09e
|
File details
Details for the file opshero-0.1.0-py3-none-any.whl.
File metadata
- Download URL: opshero-0.1.0-py3-none-any.whl
- Upload date:
- Size: 39.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30a5e2ff33b3f7bcae068fc24e62c75e5091703c72ba27bc0524555d5f1802c9
|
|
| MD5 |
05958b43390a30330e746f7ff75d3cf1
|
|
| BLAKE2b-256 |
5971484e3347917908515be3652f80474a137e882912705018014f069888afeb
|