or special characters that the shell would expand:\n\n```bash\n# Interactive mode — no shell expansion issues\nbankr agent prompt\n# Then type: Buy $50 of ETH on Base\n\n# Or pipe input\necho 'Buy $50 of ETH on Base' | bankr agent prompt\n```\n\n### Conversation Threads\n\nContinue a multi-turn conversation with the agent:\n\n```bash\n# First prompt — starts a new thread automatically\nbankr agent prompt \"What is the price of ETH?\"\n# → Thread: thr_ABC123\n\n# Continue the conversation (agent remembers the ETH context)\nbankr agent prompt --continue \"And what about BTC?\"\nbankr agent prompt -c \"Compare them\"\n\n# Resume any thread by ID\nbankr agent prompt --thread thr_ABC123 \"Show me ETH chart\"\n```\n\nThread IDs are automatically saved to config after each prompt. The `--continue` / `-c` flag reuses the last thread.\n\n### Manual Job Control\n\nFor advanced use or long-running operations:\n\n```bash\n# Submit and get job ID\nbankr agent prompt \"Buy $100 of ETH\"\n# → Job submitted: job_abc123\n\n# Check status of a specific job\nbankr agent status job_abc123\n\n# Cancel if needed\nbankr agent cancel job_abc123\n```\n\n## LLM Gateway\n\nThe [Bankr LLM Gateway](https://docs.bankr.bot/llm-gateway/overview) is a unified API for Claude, Gemini, GPT, Grok, DeepSeek, Qwen, Kimi, MiniMax, GLM, and other models — multi-provider access, cost tracking, automatic failover, and SDK compatibility through a single endpoint.\n\n**Base URL:** `https://llm.bankr.bot` | **Dashboard:** [bankr.bot/llm](https://bankr.bot/llm) | **API Keys:** [bankr.bot/api](https://bankr.bot/api)\n\n### Key Concepts\n\n- Uses your `llmKey` if configured, otherwise falls back to your API key\n- **LLM credits** (USD) and **trading wallet** (crypto) are completely separate balances — having crypto does NOT give you LLM credits\n- **New accounts start with $0 LLM credits** — top up via `bankr llm credits add 25` or at [bankr.bot/llm?tab=credits](https://bankr.bot/llm?tab=credits) before making any LLM calls, or you will get a 402 error\n- Check credits: `bankr llm credits` | Top up: `bankr llm credits add \u003camount\u003e` | Auto top-up: `bankr llm credits auto --enable --amount 25 --tokens USDC`\n- In OpenClaw config, prefix model IDs with `bankr/` (e.g. `bankr/claude-sonnet-4.6`). In direct API calls, use bare IDs (e.g. `claude-sonnet-4.6`)\n- **Per-model discounts** available for Bankr Club members and partners — applied automatically at billing time\n- **BNB Chain promo**: top up $5+ via BNB Chain and receive a $5 bonus credit (one-time per wallet)\n\n### Quick Commands\n\n```bash\nbankr llm models # List available models\nbankr llm credits # Check credit balance\nbankr llm credits add 25 # Top up $25 credits (defaults to Base USDC)\nbankr llm credits add 25 --token USDT # Pay USDT on whichever chain holds the most\nbankr llm credits add 25 --token ETH # Native token; auto-swapped on its chain\nbankr llm credits auto --enable --amount 25 --tokens USDC,USDT # Multi-chain auto top-up\nbankr llm setup openclaw --install # Install Bankr provider into OpenClaw\nbankr llm setup claude # Print Claude Code env vars\nbankr llm claude # Launch Claude Code through gateway\n```\n\n### Agent Credit Top-Up\n\nThe AI agent can top up your LLM credits directly in conversation — no CLI or web dashboard needed:\n\n```bash\nbankr agent prompt \"Top up my LLM credits with $25\"\nbankr agent prompt \"Add $10 of LLM credits using my ETH\"\n```\n\n1 credit = $1 USD. Multi-chain: pay with USDC or USDT directly on Base, Polygon, Ethereum, Arbitrum, or BNB Chain, or with any other ERC-20 (auto-swapped to the chain's preferred stablecoin — USDC on most chains, USDT on BNB). When using `--token`, the CLI picks the chain with the highest USD balance of that token. Maximum $1,000 per top-up.\n\n### Model Deprecation\n\nThe gateway supports model deprecation with auto-redirect to replacement models. Deprecated models return `X-Model-Deprecated` and `X-Model-Replacement` response headers. Hard-deprecated models return HTTP 410 — update your model ID to the replacement indicated in the header.\n\nFor full details — setup paths, model list, provider config, SDK examples, key management, and troubleshooting — see:\n\n**Reference**: [references/llm-gateway.md](references/llm-gateway.md)\n\n## Capabilities Overview\n\n### Trading Operations\n\n- **Token Swaps**: Buy/sell/swap tokens across chains\n- **Cross-Chain**: Bridge tokens between chains\n- **Limit Orders**: Execute at target prices\n- **Stop Loss**: Automatic sell protection\n- **DCA**: Dollar-cost averaging strategies\n- **TWAP**: Time-weighted average pricing\n\n**Reference**: [references/token-trading.md](references/token-trading.md)\n\n### Portfolio Management\n\n- Check balances across all chains (`bankr wallet portfolio` or `GET /wallet/portfolio`)\n- View USD valuations with optional PnL tracking (`--pnl` or `?include=pnl`)\n- View NFT holdings (`--nfts` or `?include=nfts`)\n- Track holdings by token or chain\n- Real-time price updates\n- Multi-chain aggregation\n- Filter by chain: `bankr wallet portfolio --chain base,solana` or `GET /wallet/portfolio?chains=base,solana`\n\n**Reference**: [references/portfolio.md](references/portfolio.md)\n\n### Market Research\n\n- Token prices and market data\n- Technical analysis (RSI, MACD, etc.)\n- Social sentiment analysis\n- Price charts\n- Trending tokens\n- Token comparisons\n\n**Reference**: [references/market-research.md](references/market-research.md)\n\n### Transfers\n\n- Send to 0x addresses, ENS-style names (`.eth`, `.base.eth`, `.cb.id`), or social handles\n- CLI direct (`bankr wallet transfer`) accepts 0x addresses + ENS only — social handles go through the AI agent\n- Multi-chain support\n- Flexible amount formats\n- Social handle resolution (Twitter, Farcaster, Telegram) via the agent\n\n**Reference**: [references/transfers.md](references/transfers.md)\n\n### NFT Operations\n\n- Browse and search collections\n- View floor prices and listings\n- Purchase NFTs via OpenSea\n- View your NFT portfolio\n- Transfer NFTs\n- Mint from supported platforms\n\n**Reference**: [references/nft-operations.md](references/nft-operations.md)\n\n### Polymarket Betting\n\n- Search prediction markets\n- Check odds\n- Place bets on outcomes\n- View positions\n- Redeem winnings\n\n**Reference**: [references/polymarket.md](references/polymarket.md)\n\n### Leverage Trading\n\n- **Hyperliquid** (primary) — Perpetual futures on Hyperliquid L1 with on-chain order book. Crypto, stocks (TSLA, AAPL, NVDA via HIP-3), spot trading. Up to 50x leverage.\n- **Avantis** (secondary) — Perpetuals on Base for crypto (up to 50x), forex and commodities (up to 100x)\n- Stop loss, take profit, and position management on both platforms\n\n**Reference**: [references/leverage-trading.md](references/leverage-trading.md) | [references/hyperliquid.md](references/hyperliquid.md)\n\n### Token Deployment\n\n- **EVM (Base)**: Deploy ERC20 tokens via Clanker with customizable metadata and social links\n- **Solana**: Launch SPL tokens via Raydium LaunchLab with bonding curve and auto-migration to CPMM\n- Creator fee claiming on both chains\n- Fee Key NFTs for Solana (50% LP trading fees post-migration)\n- Optional fee recipient designation with 99.9%/0.1% split (Solana)\n- Both creator AND fee recipient can claim bonding curve fees (gas sponsored)\n- Optional vesting parameters (Solana)\n- Rate limits: 1/day standard, 10/day Bankr Club (gas sponsored within limits)\n- Tokens deployed through Bankr are always visible in your portfolio, even without market price data\n\n**Reference**: [references/token-deployment.md](references/token-deployment.md)\n\n### Automation\n\n- Limit orders\n- Stop loss orders\n- DCA (dollar-cost averaging)\n- TWAP (time-weighted average price)\n- Scheduled commands\n\n**Reference**: [references/automation.md](references/automation.md)\n\n### x402 Paid API Calls\n\nThe agent can discover, call, and deploy x402-protected API endpoints, automatically handling USDC payments on Base:\n\n- **Discover** endpoints in the Bankr registry or via web search\n- **Inspect** endpoint pricing, methods, and input/output schemas\n- **Call** endpoints with automatic payment signing (max $10/request)\n- **Deploy** new x402 endpoints directly through the agent (write handler code, set pricing, deploy)\n- Works with any x402-compatible endpoint (Bankr-hosted or external)\n\n**Reference**: [references/x402-cloud.md](references/x402-cloud.md)\n\n### Web Browsing\n\nThe agent has a built-in headless browser for web interactions:\n\n- **Open** URLs and navigate web pages\n- **Read** page content, extract data, and take screenshots\n- **Interact** with page elements (click, type, scroll)\n- **Persist** browser sessions across multi-step workflows\n- Useful for research, data extraction, and interacting with web apps that don't have APIs\n\n**Reference**: [references/x402-cloud.md](references/x402-cloud.md)\n\n### Arbitrary Transactions\n\n- Submit raw EVM transactions with explicit calldata\n- Custom contract calls to any address\n- Execute pre-built calldata from other tools\n- Value transfers with data\n\n**Reference**: [references/arbitrary-transaction.md](references/arbitrary-transaction.md)\n\n## Supported Chains\n\n| Chain | Native Token | Best For | Gas Cost |\n| ----------- | ------------ | ----------------------------- | -------- |\n| Base | ETH | Memecoins, general trading | Very Low |\n| Polygon | POL | Gaming, NFTs, frequent trades | Very Low |\n| Ethereum | ETH | Blue chips, high liquidity | High |\n| Solana | SOL | High-speed trading | Minimal |\n| Unichain | ETH | Newer L2 option | Very Low |\n| World Chain | ETH | Uniswap V3/V4 swaps | Very Low |\n| Arbitrum | ETH | DeFi, low-cost transactions | Very Low |\n| BNB Chain | BNB | BSC ecosystem trading | Low |\n\n## Safety \u0026 Access Control\n\nBankr has two independent layers of safety controls. A transaction must satisfy **both** to broadcast.\n\n### Wallet-Level Security (bankr.bot → Security)\n\nUser-controlled settings that apply to every surface — chat, agent, API, CLI. Configured at [bankr.bot](https://bankr.bot) → Security; requires web authentication (an API key cannot change them).\n\n| Control | Default | Effect |\n|---------|---------|--------|\n| Pause all transactions | Off | Blocks every outbound transaction until unpaused |\n| Daily spending limit | $500 / 24h | Rejects any tx that pushes rolling-24h USD outflow past the limit |\n| Per-transaction limit | $500 | Rejects any single tx priced above the limit |\n| Permitted recipients | Off | Restricts transfers/swaps to an allowlist; new entries enter a configurable cooldown (default 24h) |\n| Disable arbitrary contract calls | Off | Blocks `write_contract`, raw `/wallet/submit`, and arbitrary transaction tools (named operations like swaps still work) |\n\nIf USD pricing is unavailable and a limit is enabled, the transaction is **rejected** (fail-closed) rather than waved through. Your own wallet addresses are always implicitly allowed as recipients.\n\n### API-Key Level Controls (bankr.bot/api)\n\nPer-key settings configured at [bankr.bot/api](https://bankr.bot/api):\n\n**API Key Types**: Bankr uses a single key format (`bk_...`) with capability flags (`walletApiEnabled`, `agentApiEnabled`, `tokenLaunchApiEnabled`, `llmGatewayEnabled`). You can optionally configure a separate LLM Gateway key via `bankr config set llmKey` or `BANKR_LLM_KEY` — useful when you want independent revocation or different permissions for agent vs LLM access.\n\n**Read-Only API Keys**: New keys default to `readOnly: true`. This filters all write tools (swaps, transfers, staking, token launches, etc.) from agent sessions. The `/wallet/sign`, `/wallet/submit`, and `/wallet/transfer` write endpoints return 403. Use `--read-write` during login or toggle in the web settings to disable. Ideal for monitoring bots and research agents.\n\n**IP Whitelisting**: Set `allowedIps` on your API key to restrict usage to specific IPs or CIDR ranges (e.g., `10.0.0.0/24`). Requests from non-whitelisted IPs are rejected with 403 at the auth layer.\n\n**Recipient Allowlist**: Restrict which addresses the key can send funds to. Independent from the wallet-level permitted recipients — when both are configured, both must pass.\n\n### Incident Response\n\nIf you suspect a key is compromised:\n\n1. **Pause** the wallet at [bankr.bot](https://bankr.bot) → Security — halts every outbound transaction immediately\n2. **Revoke** the key at [bankr.bot/api](https://bankr.bot/api)\n3. **Rotate** — generate a new key and update deployments\n4. **Audit** — review recent transactions and agent job history before unpausing\n\n### General\n\n**Dedicated Agent Wallet**: When building autonomous agents, create a separate Bankr account rather than using your personal wallet. This isolates agent funds — if a key is compromised, only the agent wallet is exposed. Fund it with limited amounts and replenish as needed.\n\n**Rate Limits**: 100 messages/day (standard), 1,000/day (Bankr Club), or custom per key. Resets 24h from first message (rolling window). LLM Gateway uses a credit-based system.\n\n**Key safety rules:**\n- Store keys in environment variables (`BANKR_API_KEY`, `BANKR_LLM_KEY`), never in source code\n- Add `~/.bankr/` and `.env` to `.gitignore` — the CLI stores credentials in `~/.bankr/config.json`\n- Test with small amounts on low-cost chains (Base, Polygon) before production use\n- Use `waitForConfirmation: true` with `/wallet/submit` — transactions execute immediately with no confirmation prompt\n- Rotate keys periodically via the dashboard or API key rotation endpoint, and revoke immediately if compromised at [bankr.bot/api](https://bankr.bot/api)\n\n**Reference**: [references/safety.md](references/safety.md)\n\n## Common Patterns\n\n### Check Before Trading\n\n```bash\n# Check balance\nbankr wallet portfolio --chain base\n\n# Check price\nbankr agent prompt \"What's the current price of PEPE?\"\n\n# Then trade\nbankr agent prompt \"Buy $20 of PEPE on Base\"\n```\n\n### Portfolio Review\n\n```bash\n# Direct portfolio check (no AI agent, instant response)\nbankr wallet portfolio\nbankr wallet portfolio --pnl # Include profit/loss data\nbankr wallet portfolio --nfts # Include NFT holdings\nbankr wallet portfolio --all # PnL + NFTs\nbankr wallet portfolio --chain base\nbankr wallet portfolio --chain base,solana\nbankr wallet portfolio --json\n\n# Via AI agent (natural language, richer context)\nbankr agent prompt \"Show my complete portfolio\"\n\n# Chain-specific\nbankr agent prompt \"What tokens do I have on Base?\"\n\n# Token-specific\nbankr agent prompt \"Show my ETH across all chains\"\n```\n\n### Set Up Automation\n\n```bash\n# DCA strategy\nbankr agent prompt \"DCA $100 into ETH every week\"\n\n# Stop loss protection\nbankr agent prompt \"Set stop loss for my ETH at $2,500\"\n\n# Limit order\nbankr agent prompt \"Buy ETH if price drops to $3,000\"\n```\n\n### Market Research\n\n```bash\n# Token discovery\nbankr tokens search PEPE\nbankr tokens info USDC\n\n# Price and analysis\nbankr agent prompt \"Do technical analysis on ETH\"\n\n# Trending tokens\nbankr agent prompt \"What tokens are trending on Base?\"\n\n# Compare tokens\nbankr agent prompt \"Compare ETH vs SOL\"\n```\n\n## API Workflow\n\nBankr uses an asynchronous job-based API:\n\n1. **Submit** — Send prompt (with optional `threadId`), get job ID and thread ID\n2. **Poll** — Check status every 2 seconds\n3. **Complete** — Process results when done\n4. **Continue** — Reuse `threadId` for multi-turn conversations\n\nThe `bankr agent prompt` command handles this automatically. When using the REST API directly, implement the poll loop yourself (see Option 2 above or the reference below). For manual job control via CLI, use `bankr agent status \u003cjobId\u003e` and `bankr agent cancel \u003cjobId\u003e`.\n\nFor details on the API structure, job states, polling strategy, and error handling, see:\n\n**Reference**: [references/api-workflow.md](references/api-workflow.md)\n\n### Synchronous Endpoints (Wallet API)\n\nFor direct signing and transaction submission, use the Wallet API synchronous endpoints:\n\n- **POST /wallet/sign** - Sign messages, typed data, or transactions without broadcasting\n- **POST /wallet/submit** - Submit raw transactions directly to the blockchain\n- **POST /wallet/transfer** - Transfer tokens with symbol resolution and multi-chain support\n\nThese endpoints return immediately (no polling required) and are ideal for:\n- Authentication flows (sign messages)\n- Gasless approvals (sign EIP-712 permits)\n- Pre-built transactions (submit raw calldata)\n- Programmatic token transfers\n\n**Reference**: [references/sign-submit-api.md](references/sign-submit-api.md)\n\n## Error Handling\n\nCommon issues and fixes:\n\n- **Authentication errors** → Run `bankr login` or check `bankr whoami` (CLI), or verify your `X-API-Key` header (REST API)\n- **Insufficient balance** → Add funds or reduce amount\n- **Token not found** → Verify symbol and chain\n- **Transaction reverted** → Check parameters and balances\n- **Rate limiting** → Wait and retry\n\nFor comprehensive error troubleshooting, setup instructions, and debugging steps, see:\n\n**Reference**: [references/error-handling.md](references/error-handling.md)\n\n## Best Practices\n\n### Security\n\n1. Never share your API key or LLM key\n2. Use a dedicated agent wallet with limited funds for autonomous agents\n3. Use read-only API keys for monitoring and research-only agents\n4. Set IP whitelisting for server-side agents with known IPs\n5. Verify addresses before large transfers\n6. Use stop losses for leverage trading\n7. Store keys in environment variables, not source code — add `~/.bankr/` to `.gitignore`\n\nSee [references/safety.md](references/safety.md) for comprehensive safety guidance.\n\n### Trading\n\n1. Check balance before trades\n2. Specify chain for lesser-known tokens\n3. Consider gas costs (use Base/Polygon for small amounts)\n4. Start small, scale up after testing\n5. Use limit orders for better prices\n\n### Automation\n\n1. Test automation with small amounts first\n2. Review active orders regularly\n3. Set realistic price targets\n4. Always use stop loss for leverage\n5. Monitor execution and adjust as needed\n\n## Tips for Success\n\n### For New Users\n\n- Start with balance checks and price queries\n- Test with $5-10 trades first\n- Use Base for lower fees\n- Enable trading confirmations initially\n- Learn one feature at a time\n\n### For Experienced Users\n\n- Leverage automation for strategies\n- Use multiple chains for diversification\n- Combine DCA with stop losses\n- Explore advanced features (leverage, Polymarket)\n- Monitor gas costs across chains\n\n## Prompt Examples by Category\n\n### Trading\n\n- \"Buy $50 of ETH on Base\"\n- \"Swap 0.1 ETH for USDC\"\n- \"Sell 50% of my PEPE\"\n- \"Bridge 100 USDC from Polygon to Base\"\n\n### Portfolio\n\n- `bankr wallet portfolio` (direct, no AI processing — hides low-value tokens by default)\n- `bankr wallet portfolio --pnl` (include profit/loss)\n- `bankr wallet portfolio --nfts` (include NFT holdings)\n- `bankr wallet portfolio --all` (PnL + NFTs)\n- `bankr wallet portfolio --chain base` (single chain)\n- \"Show my portfolio\"\n- \"What's my ETH balance?\"\n- \"Total portfolio value\"\n- \"Holdings on Base\"\n\n### Market Research\n\n- \"What's the price of Bitcoin?\"\n- \"Analyze ETH price\"\n- \"Trending tokens on Base\"\n- \"Compare UNI vs SUSHI\"\n\n### Transfers\n\n- \"Send 0.1 ETH to vitalik.eth\"\n- \"Transfer $20 USDC to @friend\"\n- \"Send 50 USDC to 0x123...\"\n\n### NFTs\n\n- \"Show Bored Ape floor price\"\n- \"Buy cheapest Pudgy Penguin\"\n- \"Show my NFTs\"\n\n### Polymarket\n\n- \"What are the odds Trump wins?\"\n- \"Bet $10 on Yes for [market]\"\n- \"Show my Polymarket positions\"\n\n### Leverage\n\n- \"Long $100 of BTC on hyperliquid with 10x\"\n- \"Short ETH with 5x on hyperliquid\"\n- \"Open 5x long on ETH with $100\"\n- \"Short BTC 10x with stop loss at $45k\"\n- \"Show my hyperliquid positions\"\n- \"Show my Avantis positions\"\n\n### Automation\n\n- \"DCA $100 into ETH weekly\"\n- \"Set limit order to buy ETH at $3,000\"\n- \"Stop loss for all holdings at -20%\"\n\n### Token Deployment\n\n**Solana (LaunchLab):**\n\n- \"Launch a token called MOON on Solana\"\n- \"Launch a token called FROG and give fees to @0xDeployer\"\n- \"Deploy SpaceRocket with symbol ROCK\"\n- \"Launch BRAIN and route fees to 7xKXtg...\"\n- \"How much fees can I claim for MOON?\"\n- \"Claim my fees for MOON\" (works for creator or fee recipient)\n- \"Show my Fee Key NFTs\"\n- \"Claim my fee NFT for ROCKET\" (post-migration)\n- \"Transfer fees for MOON to 7xKXtg...\"\n\n**EVM (Clanker):**\n\n- \"Deploy a token called BankrFan with symbol BFAN on Base\"\n- \"Claim fees for my token MTK\"\n\n### LLM Credits\n\n- \"Top up my LLM credits with $25\"\n- \"Add $50 of LLM credits\"\n- \"Top up LLM credits using my ETH\"\n- \"Top up my LLM credits with $25 using USDT on Polygon\"\n- \"Add $10 of LLM credits paid in USDT on BNB\"\n\n### x402 Paid API Calls\n\n- \"Find x402 endpoints for sentiment analysis\"\n- \"Call the weather endpoint on x402\"\n- \"What x402 endpoints are available for price data?\"\n- \"Deploy an x402 endpoint that returns crypto prices\"\n- \"Create an x402 service that summarizes articles\"\n\n### Web Browsing\n\n- \"Browse coingecko.com and get the top trending tokens\"\n- \"Go to this URL and extract the token contract address\"\n- \"Check the Uniswap UI for the current ETH/USDC pool stats\"\n\n### Arbitrary Transactions\n\n- \"Submit this transaction: {to: 0x..., data: 0x..., value: 0, chainId: 8453}\"\n- \"Execute this calldata on Base: {...}\"\n- \"Send raw transaction with this JSON: {...}\"\n\n### Transfers (Direct)\n\nTransfer tokens via CLI or Wallet API without AI processing. The CLI's `--to` accepts a 0x address or ENS-style name (`.eth`, `.base.eth`, `.cb.id`); the Wallet API accepts the same plus anything `/addresses/resolve` understands. For social handles (Twitter, Farcaster, Telegram) use the AI agent.\n\n```bash\n# CLI — token symbol resolution + ENS resolution built in\nbankr wallet transfer --to vitalik.eth --token USDC --amount 50 --chain base\nbankr wallet transfer --to name.base.eth --native --amount 0.01\nbankr wallet transfer --to 0x1234... --token ETH --amount 0.1\n\n# REST API\ncurl -X POST \"https://api.bankr.bot/wallet/transfer\" \\\n -H \"X-API-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"to\": \"vitalik.eth\", \"token\": \"USDC\", \"amount\": \"50\", \"chain\": \"base\"}'\n```\n\n### Sign API (Synchronous)\n\nDirect message signing without AI processing:\n\n```bash\n# Sign a plain text message\ncurl -X POST \"https://api.bankr.bot/wallet/sign\" \\\n -H \"X-API-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"signatureType\": \"personal_sign\", \"message\": \"Hello, Bankr!\"}'\n\n# Sign EIP-712 typed data (permits, orders)\ncurl -X POST \"https://api.bankr.bot/wallet/sign\" \\\n -H \"X-API-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"signatureType\": \"eth_signTypedData_v4\", \"typedData\": {...}}'\n\n# Sign a transaction without broadcasting\ncurl -X POST \"https://api.bankr.bot/wallet/sign\" \\\n -H \"X-API-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"signatureType\": \"eth_signTransaction\", \"transaction\": {\"to\": \"0x...\", \"chainId\": 8453}}'\n```\n\n### Submit API (Synchronous)\n\nDirect transaction submission without AI processing:\n\n```bash\n# Submit a raw transaction\ncurl -X POST \"https://api.bankr.bot/wallet/submit\" \\\n -H \"X-API-Key: $API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"transaction\": {\"to\": \"0x...\", \"chainId\": 8453, \"value\": \"1000000000000000000\"},\n \"waitForConfirmation\": true\n }'\n```\n\n**Reference**: [references/sign-submit-api.md](references/sign-submit-api.md)\n\n## Resources\n\n- **Documentation**: https://docs.bankr.bot\n- **LLM Gateway Docs**: https://docs.bankr.bot/llm-gateway/overview\n- **API Key Management**: https://bankr.bot/api\n- **Terminal**: https://bankr.bot/terminal\n- **CLI Package**: https://www.npmjs.com/package/@bankr/cli\n- **Twitter**: @bankr_bot\n\n## Troubleshooting\n\n### CLI Not Found\n\n```bash\n# Verify installation\nwhich bankr\n\n# Reinstall if needed\nbun install -g @bankr/cli\n```\n\n### Authentication Issues\n\n**CLI:**\n```bash\n# Check current auth\nbankr whoami\n\n# Re-authenticate\nbankr login\n\n# Check LLM key specifically\nbankr config get llmKey\n```\n\n**REST API:**\n```bash\n# Test your API key\ncurl -s \"https://api.bankr.bot/_health\" -H \"X-API-Key: $BANKR_API_KEY\"\n```\n\n### API Errors\n\nSee [references/error-handling.md](references/error-handling.md) for comprehensive troubleshooting.\n\n### Getting Help\n\n1. Check error message in CLI output or API response\n2. Run `bankr whoami` to verify auth (CLI) or test with a curl to `/_health` (REST API)\n3. Consult relevant reference document\n4. Test with simple queries first (`bankr agent prompt \"What is my balance?\"` or `POST /agent/prompt`)\n\n---\n\n**Pro Tip**: The most common issue is not specifying the chain for tokens. When in doubt, always include \"on Base\" or \"on Ethereum\" in your prompt.\n\n**Security**: Keep your API key private. Never commit your config file to version control. Only trade amounts you can afford to lose.\n\n**Quick Win**: Start by checking your portfolio (`bankr wallet portfolio`) to see what's possible, then try a small $5-10 trade on Base to get familiar with the flow.\n\n---\n\n## Profile Management\n\nAgents can create and manage public profile pages at [bankr.bot/agents](https://bankr.bot/agents). Profiles showcase project metadata, team info, token data (chart + market cap), weekly fee revenue, shipped products, and a Twitter activity feed.\n\n**Eligibility**: You must have deployed a token through Bankr (Doppler or Clanker) or be a fee beneficiary on the token to create a profile. The token address is verified against your deployment history and beneficiary records.\n\n### Profile Lifecycle\n\n1. **Deploy a token** through Bankr (required prerequisite)\n2. **Create** a profile via CLI or REST API with the token address\n3. **Populate** metadata (team, products, revenue sources)\n4. **Admin approval** — profiles start with `approved: false` and become publicly visible after admin approval\n5. **Maintain** — post project updates, keep products and revenue sources current\n\n### CLI Commands\n\n```bash\nbankr agent profile # View own profile\nbankr agent profile create # Interactive creation wizard\nbankr agent profile create --name \"My Agent\" --token 0x... --twitter myagent\nbankr agent profile update --description \"Updated description\"\nbankr agent profile delete # Delete own profile (with confirmation)\nbankr agent profile add-update # Add a project update\nbankr agent profile add-update --title \"v2 Launch\" --content \"Shipped new features\"\n```\n\nAll commands support `--json` for structured output (enables programmatic use).\n\n### REST API Endpoints\n\nAll endpoints require API key authentication via `X-API-Key` header.\n\n| Method | Path | Description |\n|--------|------|-------------|\n| `GET` | `/agent/profile` | Get own profile |\n| `POST` | `/agent/profile` | Create profile |\n| `PUT` | `/agent/profile` | Update profile fields |\n| `DELETE` | `/agent/profile` | Delete own profile |\n| `POST` | `/agent/profile/update` | Add a project update |\n\n**Create profile:**\n```bash\ncurl -X POST \"https://api.bankr.bot/agent/profile\" \\\n -H \"X-API-Key: $BANKR_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"projectName\": \"My Agent\", \"tokenAddress\": \"0x...\", \"description\": \"An AI trading agent\"}'\n```\n\n**Add a project update:**\n```bash\ncurl -X POST \"https://api.bankr.bot/agent/profile/update\" \\\n -H \"X-API-Key: $BANKR_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\"title\": \"v2 Launch\", \"content\": \"Shipped swap optimization and new UI\"}'\n```\n\nSee [references/agent-profiles.md](references/agent-profiles.md) for the full integration guide.\n","repo_fullName":"BankrBot/skills","repo_stars":1143,"repo_language":"Shell","repo_license":null,"repo_pushedAt":"2026-06-01T01:22:34Z","owner_login":"BankrBot","owner_type":"Organization","owner_name":"Bankr","owner_avatarUrl":"https://avatars.githubusercontent.com/u/199833576?v=4"}};