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.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

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.1.tar.gz (32.6 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.1-py3-none-any.whl (39.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: opshero-0.1.1.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

Hashes for opshero-0.1.1.tar.gz
Algorithm Hash digest
SHA256 32e19cb0ee7ec826a55d64c3cd624a88cd15fcbe87b6609da3eb1fca27c2f232
MD5 ca275c8e134bc400b05d636be13e7b86
BLAKE2b-256 2898e7e1572a93fcd5896c898e871bf43753194ceb60e8bbfd1d7882b2bcfa0f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: opshero-0.1.1-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

Hashes for opshero-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3f9672f001de38f22228243862e7d0f12679eb4d9a2742e47cc626a1310db776
MD5 9877ae18f57faa304faa1b542aeb0625
BLAKE2b-256 bb960e9878b262a064967268f613c7268aeb877590a418c7b7000fb686010a16

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