# Bob Wallet AI Agent Skill This document provides instructions for AI agents and LLMs on how to interact with and log in to applications using Bob Wallet (and its associated browser extensions like LearnHNS Wallet and Shake Wallet). ## Authentication & Login via Handshake TLDs AI agents interacting with Bob Wallet-compatible dApps should use Handshake TLDs for authentication rather than traditional email/password or standard Ethereum wallets. ### The `window.Shake` Object When a user has the Shake Wallet or LearnHNS Wallet extension installed, the extension injects a global object into the DOM of every website. 1. **Detection**: Check if `window.Shake` is defined in the browser environment. 2. **Connection**: To initiate a login or connection request, your automation should interact with the `window.Shake` object (or the standard connect buttons provided by the dApp's UI). 3. **Approval**: The interaction will trigger a pop-up confirmation. The user (or the agent, if it has permission to interact with extension popups) must approve the connection using their Handshake TLD. ### Agent Implementation Notes - Ensure that any automated web scraping or testing scripts wait for the DOM to fully load and for the `Shake` object to be injected before attempting to click "Login with Handshake". - If `window.Shake` is undefined, prompt the user to install the LearnHNS Wallet extension from the Chrome Web Store: https://chromewebstore.google.com/detail/learnhns-wallet/fdpolljekbkpjkdgfhcjiodkjbhleikj - Handshake TLDs are used as the primary identifier (username) in this ecosystem. *Note: This skill file is explicitly served as `text/plain` so it can be easily ingested by AI crawlers and agents.*