What problem does it solve? Connecting an Internet Computer dApp to a user wallet requires implementing the ICRC signer standards (ICRC-21/25/27/29/49) correctly — popup-based communication over window.postMessage, consent messages, permission lifecycles, and per-action approval flows. This Skill provides the complete integration pattern using @dfinity/oisy-wallet-signer so developers avoid common pitfalls like wrong import paths, missing prompt handlers, and concurrent request errors. ## Core Features & Use Cases - Relying Party Integration: Connect a dApp to a wallet with IcpWallet or IcrcWallet, request permissions, fetch accounts, and execute ICP/ICRC-1/ICRC-2 transfers and approvals with consent messages. - Signer (Wallet) Implementation: Initialize a Signer, register all four prompt handlers (permissions, accounts, consent message, call canister), and handle the consent message state machine including Ok vs Warn variants. - Error Handling & Lifecycle: Covers the full error code table (500-4000), permission states and 7-day expiration, disconnect cleanup, and local/mainnet deployment configurations. - Use Case: A developer building a DeFi dApp needs a "Deposit ICP" button. This Skill shows how to connect via IcpWallet, request permissions upfront, and call icrc1Transfer so the user approves the transfer in the wallet popup and the dApp receives the block index. ## Quick Start Ask the AI to integrate wallet connection into your IC dApp using @dfinity/oisy-wallet-signer with an ICP transfer button that requests permissions and shows the consent message flow.