Wallet Secret Guardian
dcl_evaluate_walletScans for wallet secrets—seed phrases, private keys, addresses, API credentials—redacts matches, and returns sanitized output to prevent exposure.
Instructions
POST-ACTION Wallet Secret Guardian ($0.02). Scans for BIP-39 seed phrases (12 or 24 consecutive wordlist words), raw hex or WIF-format private keys, Ethereum/Bitcoin wallet addresses, and API keys/bearer tokens appearing near wallet/custody/signing terminology. Any finding results in NO_COMMIT — wallet secrets have no safe threshold, unlike other DCL evaluators. Returns a sanitized_output with all matches redacted (null if nothing was found) and a masked redacted_sample per finding — the real value is never returned or stored server-side.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| agent_id | Yes | Identifier of the agent that produced the response. | |
| response | Yes | The text to scan for seed phrases, private keys, wallet addresses, and wallet-context API credentials. | |
| payment_id | No | Optional payment identifier returned by a previous call when payment is required |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| reason | Yes | Human-readable explanation of the verdict. | |
| tx_hash | Yes | Hash of this record in the tamper-evident audit chain. | |
| verdict | Yes | COMMIT if nothing was found, otherwise NO_COMMIT. Wallet secrets have no safe threshold. | |
| findings | Yes | All matches found. Empty list if verdict is COMMIT. | |
| timestamp | Yes | Unix timestamp when this record was sealed. | |
| confidence | Yes | Confidence score of the verdict, from 0.0 to 1.0. | |
| input_hash | Yes | Hash of the scanned text (raw content is never stored). | |
| risk_score | Yes | 0.0-1.0 risk score based on number and severity of findings. | |
| chain_index | Yes | Sequential index of this record in the audit chain. | |
| policy_version | Yes | Version of the wallet-guardian policy that was applied. | |
| sanitized_output | No | Input text with all matches redacted. Null if verdict is COMMIT. |