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.8.tar.gz (78.7 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.8-py3-none-any.whl (96.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: opshero-0.1.8.tar.gz
  • Upload date:
  • Size: 78.7 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.8.tar.gz
Algorithm Hash digest
SHA256 74f000409da6633083b19e2e1e7210399849633bdadc2f357c839c3a3f4aa60a
MD5 656f1a8b54a0e2063223baa6d96dfefd
BLAKE2b-256 76cc8c219ece97599b9034f6d5c4a24df6ddc9bed04e38e7f8df96fa680fc1c5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: opshero-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 96.6 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 874cf6e3622b1838c968f01624ee4f4c1c28c523a69d4bffc01e1cdfb41c6b1a
MD5 36f43d7013248fc6c54b88343428f137
BLAKE2b-256 7bebdcdd8ed843a9fefd2e480aee9c0e652a76fb66e6361a6570e4db7432c1ca

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