Security-first terminal wallet for EVM chains — explain what you sign.
veil decodes calldata into human-readable function calls, scans token approvals, simulates transactions locally, and scores contract risk —
before you sign anything.
Note:
veil-cliis not yet published to npm. Install from source:
git clone https://github.com/summusforge-lab/veil-cli.git
cd veil-cli
pnpm install
pnpm buildThen run commands via:
node dist/cli.js <command>Or during development (no build needed):
pnpm dev -- <command>Requires Foundry for veil simulate.
Decode raw calldata or a transaction hash into a human-readable function call.
# by tx hash
veil decode 0xabc123... --chain mainnet
# by raw calldata + contract address
veil decode 0xa9059cbb... --address 0xdAC17F... --chain mainnetABI sources (in order): Etherscan → Sourcify → 4byte.directory
List all active ERC-20 and ERC-721 approvals for a wallet. Flags unlimited approvals.
veil approvals 0xYourWallet --chain mainnetFork the chain locally with Anvil and show balance changes before submitting.
veil simulate tx.json --chain mainnet
veil simulate 0xabc123... --chain arbitrumtx.json format:
{
"from": "0xYourAddress",
"to": "0xContractAddress",
"value": "0xde0b6b3a7640000",
"data": "0xa9059cbb..."
}Analyze a contract for security risks using on-chain heuristics and GoPlus Security API.
veil risk 0xContractAddress --chain mainnetChecks: honeypot, blacklist, pausable transfers, upgradeable proxy, high sell tax, unverified source.
Interactive TUI combining risk analysis in one screen.
veil explain 0xContractAddress --chain baseveil config set etherscan-key YOUR_KEY
veil config get etherscan-keymainnet · arbitrum · optimism · base · polygon
- viem — EVM client & ABI decoding
- Commander.js — CLI framework
- Ink — React-based TUI
- GoPlus Security — honeypot & risk data
- Foundry/Anvil — local fork simulation
MIT