T162 — L60 BITCOIN TRACING & DEANONYMISATION

SPECTER SATOSHI — CLI Reference

379 tests — 0 failures — 10 subsystems — 4-tier gate — SAT-{hex12} Ed25519+ML-DSA-65 dual-signed

Installation

cd red-specter-specter-satoshi
pip install -e ".[dev]" --break-system-packages
specter-satoshi --help

Gate Activation

export SATOSHI_INJECT_KEY=$(openssl rand -hex 32)
export SATOSHI_UNLEASHED_KEY=$(openssl rand -hex 32)
export SATOSHI_WEAPONISE_KEY=$(openssl rand -hex 32)
GateEnv VarUnlocks
OPENenumerate, detect-mixers, report, status, sessions
INJECTSATOSHI_INJECT_KEYtrace-forward, trace-backward, cluster, deanonymise, profile, surveil
UNLEASHEDSATOSHI_UNLEASHED_KEYFull attribution chains, sanctions correlation, external surveillance alerting
WEAPONISESATOSHI_WEAPONISE_KEY + ROE + --confirm-weaponiseweaponise — route intelligence into NIGHTFALL/WARLORD

enumerate — Wallet Enumeration

Detect address type, query balance and transaction history. No gate required.

specter-satoshi enumerate 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N
specter-satoshi enumerate bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh
specter-satoshi enumerate 3J98t1WpEZ73CNmQviecrnyiWrnqRhWNLy --json-output
FlagDescription
--json-outputOutput result as JSON
--timeoutAPI request timeout in seconds (default 15)
--apiOverride blockchain API endpoint

trace-forward — Forward Graph Traversal

Breadth-first traversal following transaction outputs. Requires INJECT gate.

specter-satoshi trace-forward 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --depth 3 --roe roe.txt
specter-satoshi trace-forward bc1qxy2k... --depth 2 --roe roe.txt --json-output
specter-satoshi trace-forward 1A1zP1... --depth 5 --roe roe.txt --dot-output graph.dot
FlagValuesDescription
--depthinteger (default 3, max 7)Maximum traversal depth
--roepathROE file (required for INJECT gate)
--dot-outputpathExport Graphviz DOT graph
--json-outputflagOutput result as JSON
--locard-thresholdfloat 0.0–1.0 (default 0.3)Minimum LOCARD entity score to include node

trace-backward — Backward Graph Traversal

Traverse input funding chains, compute coinbase distance, detect mixing. Requires INJECT gate.

specter-satoshi trace-backward 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --depth 3 --roe roe.txt
specter-satoshi trace-backward bc1qxy2k... --depth 4 --roe roe.txt --json-output
FlagDescription
--depthMaximum backward traversal depth (default 3)
--roeROE file path
--mixing-thresholdValue/timing entropy threshold for mixer flag (default 0.7)

cluster — Address Clustering

Apply CIO heuristic and GCN/GAT neural clustering. Requires INJECT gate.

specter-satoshi cluster 1A1zP1... 1BpEi6D... --roe roe.txt
specter-satoshi cluster 1A1zP1... 1BpEi6D... 3J98t1... --roe roe.txt --json-output
specter-satoshi cluster 1A1zP1... 1BpEi6D... --roe roe.txt --thor25-embeddings
FlagDescription
--roeROE file path
--thor25-embeddingsUse Thor25 2026 pre-trained embeddings (requires dataset download)
--confidence-thresholdMinimum cosine similarity for cluster assignment (default 0.65)
--json-outputOutput cluster assignments as JSON

deanonymise — Entity Attribution

Multi-vector entity attribution: exchange DB, dust correlation, timing analysis. Requires INJECT gate.

specter-satoshi deanonymise 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --roe roe.txt
specter-satoshi deanonymise bc1qxy2k... --roe roe.txt --json-output
FlagDescription
--roeROE file path
--exchange-dbPath to custom exchange address database (CSV)
--timing-windowPropagation timing correlation window in seconds (default 60)
--json-outputOutput attribution as JSON

detect-mixers — Mixing Service Detection

Fingerprint CoinJoin, Wasabi, JoinMarket, atomic swaps, peel chains. No gate required.

specter-satoshi detect-mixers 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N
specter-satoshi detect-mixers 1A1zP1... --roe roe.txt --json-output
specter-satoshi detect-mixers 1A1zP1... --equal-value-tolerance 0.001
FlagDescription
--equal-value-toleranceBTC tolerance for equal-value output detection (default 0.001)
--peel-depthMinimum peel chain length to flag (default 5)
--json-outputOutput mixer fingerprint as JSON

profile — Entity Risk Profiling

Aggregate cluster data, compute risk score, generate FATF metadata. Requires INJECT gate.

specter-satoshi profile 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --roe roe.txt
specter-satoshi profile bc1qxy2k... --mixer-exposure 0.8 --roe roe.txt --json-output
FlagDescription
--roeROE file path
--mixer-exposureMixer exposure weight in risk score (default 0.4)
--spot-priceOverride BTC/USD spot price for fiat valuation
--fatfInclude FATF Travel Rule metadata fields
--json-outputOutput profile as JSON

report — Ed25519+ML-DSA-65 Signed Reports

Generate signed intelligence report. No gate required.

specter-satoshi report 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --roe roe.txt
specter-satoshi report --session SAT-abc123def456
specter-satoshi report --session SAT-abc123def456 --dot-output graph.dot --json-output
FlagDescription
--sessionLoad existing session by SAT-{hex12} ID
--dot-outputExport Graphviz DOT entity graph
--json-outputOutput report as JSON
--saveSave report to ~/.red-specter/satoshi/reports/

Reports signed SAT-{hex12}. MITRE ATT&CK coverage: T1659, T1565, T1213, T1552, T1087. MITRE ATLAS coverage: AML.T0057, AML.T0024, AML.T0043, AML.T0040.

surveil — Persistent Address Surveillance

Register addresses for continuous monitoring. Requires INJECT gate.

specter-satoshi surveil 1A1zP1eP5QGefi2DMPTfTL5SLmv7Divf8N --roe unleashed.txt
specter-satoshi surveil 1A1zP1... --roe unleashed.txt --interval 900 --webhook https://alert.example.com/hook
specter-satoshi surveil 1A1zP1... --roe unleashed.txt --balance-threshold 1.0 --tx-threshold 10
FlagDescription
--roeROE file path
--intervalPolling interval in seconds (default 900)
--webhookWebhook URL for transaction alerts
--balance-thresholdAlert when balance exceeds this BTC value
--tx-thresholdAlert when transaction count exceeds this value

weaponise — NIGHTFALL Campaign Integration

Route intelligence into NIGHTFALL campaign via WARLORD. Requires WEAPONISE gate + ROE + --confirm-weaponise.

SATOSHI_WEAPONISE_KEY=<key> specter-satoshi weaponise SAT-abc123def456 --target ANARCHY --roe weaponise.txt --confirm-weaponise
SATOSHI_WEAPONISE_KEY=<key> specter-satoshi weaponise SAT-abc123def456 --target PHANTOMNET --roe weaponise.txt --confirm-weaponise
SATOSHI_WEAPONISE_KEY=<key> specter-satoshi weaponise SAT-abc123def456 --target FOUNDRY --roe weaponise.txt --confirm-weaponise
FlagDescription
--targetNIGHTFALL campaign target (ANARCHY / PHANTOMNET / FOUNDRY)
--roeROE file containing "bitcoin intelligence weaponisation authorised"
--confirm-weaponiseRequired confirmation flag
--dry-runValidate routing without executing campaign injection

Routing logic: risk_score > 70 → ANARCHY (full autonomous engagement); 40–70 → PHANTOMNET (covert exfiltration chains); <40 → FOUNDRY (passive monitoring). SAT-{hex12} preserved as provenance through campaign lifecycle.

status & sessions — Session Management

specter-satoshi status
specter-satoshi sessions

Sessions stored in ~/.red-specter/satoshi/sessions/. Each session tracks: seed_address, traversal_depth, cluster_assignments, attribution_results, risk_score, mixer_detections, surveillance_targets, weaponise_routing, evidence_chain.

Report Format

FieldDescription
session_idSAT-{hex12} unique session identifier
seed_addressInitial target Bitcoin address
address_typeP2PKH / P2SH / P2WPKH / P2TR
cluster_idGCN/GAT cluster assignment
entity_attributionCONFIRMED / PROBABLE / POSSIBLE / UNKNOWN
risk_score0–100 composite risk score
mixer_detectedBoolean; mixer type if detected
fiat_value_usdEstimated USD value of cluster balance
graph_dotGraphviz DOT entity graph (embedded or file path)
ed25519_signatureEd25519 signature over canonical JSON payload
ml_dsa_65_signatureML-DSA-65 post-quantum countersignature