Metadata-Version: 2.4
Name: selvo
Version: 1.0.0
Summary: selvo CLI — Linux dependency risk scanner (API client)
Project-URL: Homepage, https://selvo.fly.dev
Project-URL: Documentation, https://selvo.fly.dev
Project-URL: Changelog, https://github.com/sethc5/selvo-cli/releases
Author-email: Seth C <seth@selvo.dev>
License-Expression: MIT
License-File: LICENSE
Keywords: cve,dependencies,linux,sbom,security,vulnerability
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Security
Classifier: Topic :: System :: Systems Administration
Requires-Python: >=3.10
Requires-Dist: httpx>=0.25
Requires-Dist: rich>=13.0
Requires-Dist: typer>=0.9
Description-Content-Type: text/markdown

# selvo

Linux dependency risk scanner — thin CLI client for the [selvo API](https://selvo.fly.dev).

Scans your Linux servers for vulnerable, outdated, and weaponized packages.
Ranks results by blast radius, exploit maturity, and EPSS probability.

## Install

```bash
pip install selvo
```

## Quick Start

```bash
# 1. Sign up (free tier: 5 scans/day)
selvo signup "my-org"

# 2. Save your API key
selvo auth

# 3. Run an analysis
selvo analyze --ecosystem debian --limit 20

# 4. Check SLA breaches
selvo sla

# 5. Export SARIF for CI
selvo report --format sarif --output report.sarif
```

## Commands

| Command | Description |
|---------|-------------|
| `selvo auth` | Save API key to ~/.config/selvo/credentials |
| `selvo signup <org>` | Create org, get API key |
| `selvo analyze` | Run full analysis (async, polls for results) |
| `selvo scan <file>` | Upload SBOM/package file for analysis |
| `selvo packages` | List packages from latest snapshot |
| `selvo cves` | List CVEs with CVSS/EPSS filters |
| `selvo sla` | Show SLA breach status |
| `selvo report` | Download SARIF or VEX report |
| `selvo fleet <hosts>` | Scan remote hosts over SSH |
| `selvo status` | API health check |
| `selvo version` | Show CLI version |

All commands support `--output json` for CI/scripting.

## Authentication

API key resolution order:
1. `--api-key` flag
2. `SELVO_API_KEY` environment variable
3. `~/.config/selvo/credentials` (written by `selvo auth`)

## CI Usage

```yaml
- name: Scan with selvo
  env:
    SELVO_API_KEY: ${{ secrets.SELVO_API_KEY }}
  run: |
    pip install selvo
    selvo analyze --ecosystem debian --output json > results.json
    selvo report --format sarif --output selvo.sarif
```

## License

MIT
