-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
cliCommand-line interfaceCommand-line interfaceenhancementNew feature or requestNew feature or request
Description
Description
Implement the full command-line interface for Quantum-Safe Guardian with rich terminal output, configuration file support, baseline management, and multiple output modes. The CLI is the primary user interface for running scans locally and in CI/CD pipelines.
Tasks
- Implement CLI commands:
scan: Run one or more scanners against target paths/URLsreport: Generate reports from saved scan resultsinit: Create a default.quantum-safe.ymlconfiguration fileversion: Show version and build informationbaseline: Manage baseline files (create, update, diff)
- Add rich terminal output:
- Color-coded severity indicators (red=critical, yellow=warning, blue=info)
- Formatted finding details with file path, line number, and code context
- Summary table at end of scan
- Use
richlibrary for terminal formatting
- Implement configuration file support:
- YAML format (
.quantum-safe.ymlor.quantum-safe.toml) - Scanner selection and configuration
- File include/exclude patterns
- Severity thresholds
- Output format selection
- Custom algorithm severity overrides
- YAML format (
- Implement baseline file functionality:
- Suppress known findings by hash
--update-baselineflag to add current findings- Show new findings vs. baseline in output
- Support baseline expiration dates
- Add output modes:
--quiet: Only output summary line (for CI)--verbose: Include debug information and scan details--format: Select output format (table, json, sarif, csv)--output: Write results to file
- Implement progress bar for large scans (using
rich.progress) - Write CLI tests using
click.testing.CliRunnerortyper.testing.CliRunner
References
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
cliCommand-line interfaceCommand-line interfaceenhancementNew feature or requestNew feature or request