Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
TuleBank — check wallet balance, send ARS to any CVU/ALIAS, swap USDC/wARS, manage beneficiaries, and off-ramp crypto to Argentine bank accounts.
TuleBank — check wallet balance, send ARS to any CVU/ALIAS, swap USDC/wARS, manage beneficiaries, and off-ramp crypto to Argentine bank accounts.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
ALIAS: a text string (e.g., franv98, pilarcastilloz, tulezao). If the user provides a word or short text, it's an alias. CVU: a 22-digit numeric string (e.g., 0000003100099123456789). If the user provides a long number, it's a CVU. Both are valid destinations for --to in beneficiaries add and send.
ALWAYS confirm the destination and action with the user before executing tulebank send. Use question format (e.g., "Should I send 3,000 ARS to Pilar Castillo (pilarcastilloz)?"). CLI only: run TuleBank through CLI commands. Do not import files under lib/ or run ad-hoc JavaScript to bypass the CLI. Use the installed tulebank binary for all commands in this skill. If tulebank is not available, ask the user to install it or fix PATH before continuing. When the user refers to someone by name or description (e.g., "la verdulería", "mi hermano"), search beneficiaries first. If multiple matches are found, ask the user to clarify. If no match is found and the user provides an alias or CVU, run beneficiaries add --to <alias_or_cvu> to register it. Ripio will return the holder's name, CUIT, and bank — show this to the user and ask for confirmation before sending. The send command requires an existing beneficiary; it will NOT auto-create one. Output from the CLI is JSON. Parse it and present it in a human-friendly way. The user must sign up before adding beneficiaries or sending. If not configured, run tulebank signup first. OTP flow: For existing Ripio users, check-kyc sends an OTP to their phone. You must ask the human for the 6-digit code and use otp --code <code> to validate. The send command creates an off-ramp session and returns deposit addresses. The user deposits USDC or wARS to that address, and Ripio converts to ARS and sends to the bank. If the user has a wallet configured (tulebank wallet setup), send can auto-send tokens with --amount. Omit --token for smart send (auto-picks wARS or swaps USDC→wARS). --to accepts beneficiary names (e.g., --to Pili matches "Pilar Castillo"). Word-prefix matching is supported. Auto-send shows a confirmation prompt with beneficiary, amount, and destination. The human must confirm before funds are sent. Use --yes to skip the prompt only after the human has already confirmed to you directly. Fiat account activation: Ripio only allows one enabled fiat account per customer. The send command automatically activates the target beneficiary's fiat account before sending. This may take a few extra seconds if the account was suspended. After auto-sending, show the transaction hash and run tulebank history to confirm the record. Swaps: Use tulebank swap to convert between USDC and wARS on Base. wARS converts 1:1 to ARS via off-ramp, so swapping USDC to wARS before sending can lock in the rate. On-ramp (bank transfer): Use tulebank onramp quote/create/status for ARS -> wARS (default, session flow) or ARS -> USDC (order flow). Workstream 5 v1 supports bank_transfer only. ARS amounts → just use --amount, no --token: When the user specifies an amount in ARS/pesos, ALWAYS use --amount <n> WITHOUT --token. The --amount value is in ARS. The CLI handles everything (picks wARS if available, or auto-swaps USDC→wARS). Never manually calculate USDC equivalents — it introduces rounding errors and the result won't be exact. Only use --token USDC when the user explicitly says they want to send USDC (not ARS). History: After every send, swap, or on-ramp create, call tulebank history to confirm the transaction was recorded.
Run these via the exec tool using the tulebank CLI binary.
tulebank wallet setup Creates a CDP smart wallet on Base via the proxy (no local credentials needed).
tulebank wallet info Shows the wallet address.
tulebank wallet balance Shows USDC, wARS, and ETH balances on Base.
tulebank signup --email <email> --phone <phone> Creates a TuleBank account, generates a per-user API key, and saves it to config. Only needed once. Use tulebank setup --api-key <key> to log in on another device.
tulebank check-kyc tulebank otp --code <123456> check-kyc triggers an OTP to the user's phone. Ask the human for the code, then validate with otp.
tulebank kyc-status
tulebank beneficiaries search "<query>" Searches name, description, and CVU/ALIAS. Use this when the user refers to someone by name or description.
tulebank beneficiaries list
tulebank beneficiaries add --to <CVU_OR_ALIAS> [--name "<name>"] [--description "<desc>"] Creates a fiat account via the proxy (creates + confirms + polls until enabled), then saves locally. If --name is omitted, the holder's name is auto-detected from Ripio (metadata includes name, CUIT, and bank). The response includes a holder field with the detected info — use this to confirm with the user.
tulebank send --to <name/CVU_OR_ALIAS> Sends to an existing beneficiary. The --to value is resolved via exact alias/CVU match or fuzzy name search. If the beneficiary is not found, the command errors and asks you to add them first with tulebank beneficiaries add.
tulebank send --to <CVU_OR_ALIAS> --amount <n> --token <USDC|wARS> Creates off-ramp session and automatically sends tokens from the configured wallet to the Ripio deposit address on Base. Shows a confirmation prompt before sending. Add --yes to skip the prompt (only after human has confirmed to you). Use --manual to skip auto-send entirely.
tulebank swap --from USDC --to wARS --amount 10 Swaps tokens via DEX on Base. Default slippage is 100 bps (1%). Use --slippage <bps> to change. Add --yes to skip confirmation (only after human has confirmed to you).
tulebank send-status --session <session-id> Shows deposit addresses and transactions for an off-ramp session.
tulebank quote --from USDC --to ARS --amount 10 [--chain BASE]
tulebank onramp quote --amount 50000 [--asset wARS|USDC] [--chain BASE]
tulebank onramp create --amount 50000 [--asset wARS|USDC] [--to-address 0x...] [--chain BASE] Creates an on-ramp flow using a fresh quote. wARS (default) creates a session; USDC creates an order. Uses configured wallet address when available; pass --to-address to override.
tulebank onramp status --transaction <transaction-id> [--asset wARS|USDC]
tulebank limits
tulebank fiat-account --id <fiat-account-id>
tulebank history tulebank history --beneficiary "<name>" tulebank history --type send tulebank history --type onramp tulebank history --from 2026-01-01 --to-date 2026-01-31 Shows local transaction history. Supports filtering by beneficiary (fuzzy), type (send/swap/onramp), and date range. Default: last 30 days.
--amount is always in ARS (= wARS, 1:1). Do NOT convert to USDC manually. When --token is omitted and --amount is given, the CLI auto-picks wARS (if balance sufficient) or swaps USDC→wARS first. When --token is specified, sends that token directly (no auto-swap). Example: user says "2300 pesos" → --amount 2300 (NOT --amount 1.57 --token USDC). --to accepts beneficiary names (e.g., --to Pili). If one match is found, it auto-resolves. If multiple, it errors with a list. After every send, the transaction is recorded in ~/.tulebank/history.json.
Search beneficiaries → finds "Pilar Castillo (pilarcastilloz)" Ask: "Pilar Castillo (pilarcastilloz) — le mando 10,000 ARS?" On confirmation: run send --to Pili --amount 10000 --yes Show transaction hash Run history --beneficiary Pili to confirm the record
Run beneficiaries search "verdulería" If found: ask "La Amistad (la verdulería cerca de casa) — le envío plata?" On confirmation: run send --to <their_alias> Show deposit address and instructions
Run beneficiaries search "franv98" → not found "franv98" is a text string → it's an alias. Run beneficiaries add --to franv98 → Ripio returns holder info Ask: "franv98 pertenece a FRANCISCO VARELA (CUIT 20385..., Banco Galicia). Le mando 2,000 ARS?" On confirmation: run send --to franv98 --amount 2000 --yes Show transaction hash Run history to confirm the record
Run beneficiaries search "0000003100099123456789" → not found 22-digit number → it's a CVU. Run beneficiaries add --to 0000003100099123456789 → Ripio returns holder info Ask: "Ese CVU pertenece a MARÍA GARCÍA (CUIT 27..., Banco Nación). Confirmo el envío?" On confirmation: run send --to 0000003100099123456789 Show deposit address and instructions
Run beneficiaries search "tulezao" → not found "tulezao" is a text string → it's an alias. Run beneficiaries add --to tulezao → Ripio returns holder info Ask: "El alias tulezao pertenece a JUAN PÉREZ (CUIT 20..., Banco Nación). Lo agrego y le envío?" On confirmation: proceed with send
Ask for their email and phone number Run signup --email <email> --phone <phone> Run check-kyc (sends OTP) Ask human for the 6-digit code Run otp --code <code> Run kyc-status to verify COMPLETED
Ask: "Le mando 10,000 ARS a Pilar Castillo (pilarcastilloz)?" On confirmation: run send --to pilarcastilloz --amount 10000 --yes --amount is ARS-denominated (10000 = 10,000 ARS). Do NOT convert to USDC. The CLI handles token selection: uses wARS if available, otherwise auto-swaps USDC→wARS. Show transaction hash from the response Run history to confirm the record
Run wallet balance to check USDC balance Run swap --from USDC --to wARS --amount 10 Show swap result: "Swapped 10 USDC to ~14,380 wARS" Run send --to pilarcastilloz --amount 14380 --token wARS wARS converts 1:1 to ARS via off-ramp
Run quote --from USDC --to ARS --amount 10 Tell user: "10 USDC = ~14,300 ARS at current rate"
Run onramp quote --amount 50000 Ask user to confirm destination wallet address and amount. Run onramp create --amount 50000 --yes Show session/order ID + payment instructions. Run onramp status --transaction <id> to track progress.
Messaging, meetings, inboxes, CRM, and teammate communication surfaces.
Largest current source with strong distribution and engagement signals.