Skip to content

cli: create stealth-cli as a thin command-line interface over stealth-core#13

Closed
satsfy wants to merge 5 commits intostealth-bitcoin:mainfrom
satsfy:create-cli
Closed

cli: create stealth-cli as a thin command-line interface over stealth-core#13
satsfy wants to merge 5 commits intostealth-bitcoin:mainfrom
satsfy:create-cli

Conversation

@satsfy
Copy link
Copy Markdown
Collaborator

@satsfy satsfy commented Mar 24, 2026

Depends on #11
Partially solves #10

Summary

Add stealth-cli as a command-line interface for Stealth wallet privacy analysis.

This PR:

  • adds stealth-cli to the Rust workspace
  • introduces a scan command for wallet analysis
  • supports mutually exclusive scan inputs via --descriptor, --descriptors, or --utxos
  • supports Bitcoin Core RPC configuration via flags or environment variables
  • calls into stealth-core for scan execution
  • supports both text and json output formats
  • returns meaningful exit codes for clean scans, findings, and CLI errors

Why

Stealth is explicitly local-node oriented, so it should have a first-class CLI on top of the shared Rust analysis engine.

This makes the scanner easier to run without the HTTP layer, improves operator and developer workflows, and provides a second consumer of stealth-core that helps keep the core genuinely reusable.

satsfy added 5 commits March 24, 2026 20:23
- Added TxGraph struct to manage and analyze wallet transactions and UTXOs.
- Implemented methods for fetching transaction details, input/output addresses, and detecting vulnerabilities.
- Introduced UtxoEntry struct to represent UTXO data.
- Created a new module for scanning wallets and UTXOs, including RPC connection handling.
- Added types for vulnerability detection and reporting, including Severity and VulnerabilityType enums.
- Implemented a structured report system for scan results, including findings and statistics.
@satsfy
Copy link
Copy Markdown
Collaborator Author

satsfy commented Mar 26, 2026

It is unecessary for this PR to exist at this point in time. Changes moved to #11

@satsfy satsfy closed this Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant