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.0.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.0-py3-none-any.whl (39.9 kB view details)

Uploaded Python 3

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

Hashes for opshero-0.1.0.tar.gz
Algorithm Hash digest
SHA256 61fef6aa1a5137ada850d43f34aae49989121a8e0eaacd57c2564e2022ef41b0
MD5 98499e9b188146ab6e8239a1ac54a809
BLAKE2b-256 79c66c7febf9678f718b1fb2c866d9d3fc2cb167947cee1b05eadc967be5e09e

See more details on using hashes here.

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

Hashes for opshero-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 30a5e2ff33b3f7bcae068fc24e62c75e5091703c72ba27bc0524555d5f1802c9
MD5 05958b43390a30330e746f7ff75d3cf1
BLAKE2b-256 5971484e3347917908515be3652f80474a137e882912705018014f069888afeb

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