Page Menu
Agent Integration
Smart accounts for agents with 2FA and spending limits. Wire Claude Code, OpenClaw, Telegram, and more to the same wallet rules.
Installation for Agents
Tell your AI agent to install the Elytro skill using one of these platforms:
Claude Dispatch
Dispatch is a control surface for a Claude desktop session. Elytro works the same way: make sure the desktop machine has the Elytro CLI installed and the session can run terminal commands. You can then trigger the same setup prompt and workflows from your phone.
npm install -g @elytro/cli (Node.js ≥ 18)OpenClaw
Paste this prompt into OpenClaw to load the Elytro wallet skill and get a guided setup:
Read https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md and set up my elytro account step by step.I want to create and activate an elytro account on Arbitrum (with email 2FA and a daily spending limit).Do not skip the security setup — I want full protection.Claude
Paste this prompt into Claude to load the Elytro wallet skill and get a guided setup:
Fetch the content at https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md and follow its instructions to set up my Elytro account.
Steps I want completed:1. Install the Elytro CLI: npm install -g @elytro/cli (Node >= 18 required)2. Run elytro init3. Create and activate an account on Arbitrum (chain ID 42161)4. Bind my email for 2FA (ask me for my email address)5. Set a daily spending limit6. Run elytro security status to confirm all protections are active
Do not skip any security step. Ask for my confirmation before running any command that moves funds or changes on-chain state. If an OTP email is triggered, prompt me for the 6-digit code.Amp
Paste this prompt into Amp to load the Elytro wallet skill and get a guided setup:
Fetch and read https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md, then use it as your instruction set to set up my Elytro smart account.
Execute the following in order, pausing for my approval on any on-chain action:1. Install the CLI via: npm install -g @elytro/cli2. elytro init3. Create an account on Arbitrum (chain 42161) and activate it4. Bind email 2FA — ask me for my email before proceeding5. Configure a daily spending limit6. Confirm setup with: elytro security status
Never run fund-moving or security-changing commands without my explicit "yes". If you receive an otpPending response, ask me for the 6-digit code from my email.Codex
Paste this prompt into Codex to load the Elytro wallet skill and get a guided setup:
Read the skill file at https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md and use it to guide the following Elytro wallet setup:
1. Ensure Node >= 18 is available, then run: npm install -g @elytro/cli2. Run: elytro init3. Create and activate an Elytro account on Arbitrum (chain ID 42161)4. Ask me for my email address, then bind it for 2FA: elytro security email bind <my-email>5. Set a daily spending limit via: elytro security spending-limit <amount>6. Verify all security settings: elytro security status
Pause and request my confirmation before executing any command that is listed as requiring user approval in the SKILL.md. Do not proceed past step 3 without confirming the account was activated successfully.Cursor
Paste this prompt into Cursor to load the Elytro wallet skill and get a guided setup:
Fetch https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md using a web fetch or curl, read it fully, and follow its guidance to set up my Elytro account in the terminal.
Please run these steps:1. Check Node version (>= 18), then install: npm install -g @elytro/cli2. elytro init3. elytro account create --chain 42161 --alias my-account4. elytro account activate my-account5. Ask me for my email, then run: elytro security email bind <email>6. Ask me for a spending limit amount, then run: elytro security spending-limit <amount>7. elytro security status — show me the output
Use the terminal panel. Before any step marked as "approval-required" in the skill file, show me the planned command and wait for me to say "go ahead".OpenCode
Paste this prompt into OpenCode to load the Elytro wallet skill and get a guided setup:
Use the fetch or browser tool to read https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md, then follow it step by step to set up my Elytro account.
Workflow:1. Install: npm install -g @elytro/cli (requires Node >= 18)2. elytro init3. elytro account create --chain 42161 --alias my-account4. elytro account activate my-account5. Prompt me for my email address → elytro security email bind <email>6. Prompt me for a daily limit → elytro security spending-limit <limit>7. elytro security status
Full security setup is required — do not skip email 2FA or spending limits. Any command that triggers an otpPending response should be paused; ask me for the 6-digit OTP code to continue.Aider
Paste this prompt into Aider to load the Elytro wallet skill and get a guided setup:
/web https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md
Now use the content you just fetched as your guide to set up my Elytro account via shell commands:
1. npm install -g @elytro/cli2. elytro init3. elytro account create --chain 42161 --alias my-account4. elytro account activate my-account5. Ask me for my email → elytro security email bind <email>6. Ask me for a spending limit → elytro security spending-limit <amount>7. elytro security status
Run commands one at a time. Stop and ask me before any command that changes on-chain state or requires approval per the skill instructions. If an OTP is required, pause and ask me for the code.Copilot
Paste this prompt into Copilot to load the Elytro wallet skill and get a guided setup:
Fetch the content from https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.md (use a fetch call or ask me to paste it), then follow its instructions to set up my Elytro wallet in the integrated terminal.
Steps:1. Verify Node >= 18, install CLI: npm install -g @elytro/cli2. elytro init3. elytro account create --chain 42161 --alias my-account4. elytro account activate my-account5. Ask for my email → elytro security email bind <email>6. Ask for spending limit → elytro security spending-limit <amount>7. elytro security status
Wait for my explicit approval before any on-chain action. If email OTP verification is triggered, stop and ask me for the 6-digit code.Skill URL only
For agents that accept a raw URL instead of a prompt:
https://raw.githubusercontent.com/Elytro-eth/skills/main/elytro/SKILL.mdCritical Rules for Agents
Safety-Critical Rules
- Never guess on-chain data. Always run the appropriate
elytro querycommand to fetch balances, transaction status, token holdings. Do NOT infer or assume values. - Sponsor covers gas only, NOT transaction value. If sending 0.1 ETH, the account must hold ≥ 0.1 ETH regardless of sponsorship.
- Deploy before send. Smart accounts must be deployed before sending transactions. Check
elytro account infofor "Deployed: Yes" before sending. - Fund before activate. The CREATE2 address is deterministic. Send ETH to it pre-deployment if sponsorship might fail.
- Parse JSON output. Query and tx commands return
{ "success": true, "result": {...} }. Always check thesuccessfield.
Output Format
For tx and query commands, always parse stdout as JSON:
// Success{ "success": true, "result": { "balance": "0.5", "symbol": "ETH", ... } }
// Error{ "success": false, "error": { "code": -32001, "message": "...", "data": {...} } }Error codes follow JSON-RPC conventions. Non-JSON output (spinners, headings) goes to stderr.
Workflow Patterns
Pattern 1: Fresh Setup + Send ETH
elytro initelytro account create --chain 11155420 --alias agent-primary# Fund the address via faucet or external transferelytro account activate agent-primaryelytro tx send --tx "to:0xRecipient,value:0.001"Pattern 2: Check Balance Before Transfer
BALANCE=$(elytro query balance agent-primary)# Parse JSON: result.balance# Verify sufficient funds (sponsor covers gas, NOT value)elytro tx send --tx "to:0xRecipient,value:0.001"Pattern 3: Batch Multiple Operations
elytro tx send \ --tx "to:0xAlice,value:0.01" \ --tx "to:0xBob,value:0.02" \ --tx "to:0xContract,data:0xa9059cbb..."All packed into one UserOp (executeBatch), executed atomically.
Pattern 4: Simulate → Send
elytro tx simulate --tx "to:0xAddr,value:0.5"# Check gas cost, sponsor status, balance warningselytro tx send --tx "to:0xAddr,value:0.5"Error Recovery
| Error | Cause | Recovery |
|---|---|---|
| "Wallet not initialized" | No keyring.json | Run elytro init |
| "Vault key not available" | Missing Keychain entry | Check SecretRef injection |
| "No accounts found" | No account created | Run elytro account create |
| "Account not deployed" | Sending tx before activation | Run elytro account activate |
| "Insufficient balance" | Value exceeds balance | Fund the account first |
| "AA21" in error | UserOp simulation failed | Usually balance or nonce issue |
Telegram Bot Integration
Elytro supports Telegram bot integration with Inline Button UI. For detailed Telegram-specific documentation, see the Elytro wallet skill (elytro/SKILL.md) in the skills repository.
Key Principles
- Use Inline Buttons for all confirmations and list displays
- Default menu on ambiguous intent: When user says "open wallet", show Main Menu immediately
- Every sub-screen must include a "Back" button
- Fetch real data before rendering any UI