Skip to main content

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.me",
  "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

License

MIT License - see LICENSE file for details

Support

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.9.tar.gz (79.4 kB view details)

Uploaded Source

Built Distribution

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

opshero-0.1.9-py3-none-any.whl (97.3 kB view details)

Uploaded Python 3

File details

Details for the file opshero-0.1.9.tar.gz.

File metadata

  • Download URL: opshero-0.1.9.tar.gz
  • Upload date:
  • Size: 79.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for opshero-0.1.9.tar.gz
Algorithm Hash digest
SHA256 28f4399485b1a81f9a3a3a9d0b4fbfd8e8033b0f719fcda0a941e3c66b1d72e8
MD5 275fe74766cad9f5ce94eee3a7f9aeec
BLAKE2b-256 86f3f4a11f26d90687d172e7ea007146f14aa01e6d2c0c6527f5a5e28a24baff

See more details on using hashes here.

File details

Details for the file opshero-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: opshero-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 97.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for opshero-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 6418f24a268638188bb9fc354224bb5bbfce1580865e795c44bfab46d5288c5f
MD5 46e43291bb8121d5e936cc200685a4f3
BLAKE2b-256 0607e6a6275fe8fa2d5e16aa45cc597d943fd6b5c45969a106f58e4593c9624e

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