sodax-wallet-sdk-core-evm
Installation
SKILL.md
EVM (wallet-sdk-core granular skill)
Granular skill for EvmWalletProvider — the low-level EVM wallet for backend / Node / non-React flows. One class covers all 12 SODAX EVM spoke chains via getEvmViemChain(). Source-of-truth reference lives in the parent broad skill's knowledge tree; this file is the focused workflow only.
Step 1 — Clarify with user before coding
- New code or v1 → v2 port? New → § Integration. Port v1 → § Migration (almost always a no-op here).
- Private-key or browser-extension config? EVM discriminates by field presence (no
type): PK ={ privateKey, chainId, rpcUrl? }(Node / CI / bots); browser-extension ={ walletClient, publicClient }(pre-built by wagmi / the consumer). Mutually exclusive — pick one. - Which chain? One
EvmWalletProvidercovers all 12 EVM spokes viachainId: EvmChainKey(ChainKeys.SONIC_MAINNET, …).
Integration workflow (new v2 code)
../integration/knowledge/ai-rules.md— DO / DON'T (read first).../integration/knowledge/architecture.md—BaseWalletProvider, dual-config discriminants, shallowdefaultsmerge, library-exports.../integration/knowledge/features/evm.md— full config union,EvmWalletDefaults, methods (getWalletAddress/sendTransaction/waitForTransactionReceipt), gotchas.- Setup recipe →
../integration/knowledge/recipes/setup-private-key.md(Node) or../integration/knowledge/recipes/setup-browser-extension.md; then../integration/knowledge/recipes/sign-and-broadcast.md,../integration/knowledge/recipes/defaults-and-overrides.md,../integration/knowledge/recipes/library-exports.md. - Lookups →
../integration/knowledge/reference/provider-classes.md,interfaces.md,chain-support.md.