agentsclimarketplace

Transact

Skill aomi-labs/skills/plugins/aomi/skills/transact

The best blockchain harness for agentic AI - on-chain execution with runtime, skills, and component library.

Install
npx -y skills add aomi-labs/skills --skill transact

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Build natural-language crypto agents, web3 assistants, and trading bots that read and write EVM chain state. Aomi turns prompts ("swap 1 ETH for USDC", "open a 3x GMX long", "bet $100 on Polymarket") into wallet-signed transactions on Ethereum, Base, Arbitrum, Optimism, Polygon, Linea — non-custodial, fork-simulated. Use when the user wants a crypto/DeFi agent, AI trading/wallet assistant, or on-chain execution against Uniswap, Aave, Lido, GMX, Hyperliquid, Polymarket, Binance, OKX, or 40+ other protocols. Trigger with prompts about swaps, lending, bridging, staking, perps, prediction markets, or any DeFi/CEX action needing a wallet signature. Account-abstraction first with EIP-7702/4337 and EOA fallback. MUST NOT fabricate or echo credentials; values reach the CLI only when the user explicitly supplied them.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

9.1 KB, as published. Nobody here has run it

Aomi Transact

Overview

Aomi Transact drives the aomi TypeScript CLI to build natural-language crypto agents and web3 assistants. It composes calldata, fork-simulates transactions as a batch, and stages wallet requests for explicit user signing — non-custodial throughout. Current chain metadata includes Ethereum, Polygon, Arbitrum, Base, Optimism, Sepolia, Linea, Monad, Monad Testnet, and local Anvil. The npm CLI is the production/end-user surface; the Rust aomi-cli in product-mono is an in-process dev/test CLI with different signing gates. For deep references, see commands.md, workflows.md, gotchas.md, account-abstraction.md, apps.md, examples.md, thread.md, drain-vectors.md, troubleshooting.md.

Prerequisites

  • Node.js 18+ with npm or npx
  • @aomi-labs/client v0.3.2 or newer: npm install -g @aomi-labs/client@latest
  • For EVM signing: a 0x-prefixed private key via aomi wallet dev-key, --private-key, or PRIVATE_KEY
  • For Solana sign-only flows: a base58 or JSON keypair via aomi wallet dev-key --solana, --solana-private-key, or SOLANA_PRIVATE_KEY
  • Optional: AOMI_ACCOUNT_BEARER / --account-bearer for authenticated account-bound requests
  • Optional: Alchemy or Pimlico credentials for direct account-abstraction providers; otherwise the CLI tries the backend Alchemy proxy path

Instructions

  1. Detect or install the CLI: aomi --version 2>/dev/null || npx @aomi-labs/client@latest --version
  2. Start a new thread: aomi chat "<task>" --new-session
  3. Inspect queue: aomi tx list
  4. For multi-step flows, simulate first: aomi tx simulate tx-1 tx-2
  5. Sign: aomi tx sign tx-1
  6. Verify: aomi thread status or aomi thread log

For the full procedure (read-only requests, building wallet requests, signing policy, batch simulation, secret ingestion), see workflows.md.

Examples

aomi chat "what is the price of ETH?" --new-session
aomi chat "swap 1 ETH for USDC" --new-session --public-key 0xYourAddress --chain 1
aomi tx list && aomi tx simulate tx-1 tx-2 && aomi tx sign tx-1 tx-2
aomi chat "stake 0.5 ETH on Lido" --app lido --chain 1 --new-session

Four end-to-end walkthroughs (approve+swap, lending, bridging, staking) in examples.md. Per-app first-turn examples (Khalani, 0x, Polymarket, Binance, Neynar) in apps.md.

Output

  • aomi chat: agent response or ⚡ Wallet request queued: tx-N
  • aomi tx list: table of pending/signed tx ids with batch_status
  • aomi tx simulate: per-step success/failure, revert reason, gas usage
  • aomi tx sign: transaction hash and on-chain confirmation

Error Handling

ErrorCauseSolution
insufficient funds for transferEOA has no native gasFund EOA or configure AA sponsorship
AA execution failed with all modesAA path failed after mode fallbackRead the per-mode errors; use --eoa only if the user accepts EOA gas/payment semantics
stateful: false in simulationWrong batch orderReorder tx ids to match execution dependency
RPC 401/429Rate-limited or missing keySet --rpc-url to authenticated endpoint
No tx queued after chatAgent returned quote firstRun aomi tx list; send a confirmation reply
Orphaned tx-N in listPrevious simulation failedOnly sign txs with batch_status: passed
Failed to get apps/models: HTTP 404Public backend does not expose that introspection routeTreat app list/model list as backend-dependent; do not block chat/sign flows on it

Full troubleshooting in troubleshooting.md.

Safety Justification

This skill is risk_tier: L2 because it can sign and broadcast on-chain transactions. The permissions manifest enforces least privilege:

  • Shell allowlist scopes execution to aomi and npx @aomi-labs/client@latest only — no arbitrary subprocesses.
  • Network allowlist restricts outbound traffic to api.aomi.dev. User-supplied --rpc-url endpoints are resolved by the CLI itself; operators must review them before allowing signing.
  • File scope is read+write to ~/.aomi/ only; identity files (SOUL.md, MEMORY.md, AGENTS.md) are deny-listed against writes per OWASP AST03 mitigation #3.
  • No blind signing. Multi-step flows go through aomi tx simulate on a forked chain before aomi tx sign. Drain-vector calldata fields (recipient, onBehalfOf, mintRecipient, _to) are blocked at simulation time when they do not equal msg.sender — see drain-vectors.md.
  • Opaque credentials. The skill never fabricates, derives, or echoes credential values; setup commands run only when the user explicitly asks and supplies the value in this turn. Full rules in gotchas.md → Hard Rules.

When to Use

  • The user wants to chat with the Aomi agent from the terminal.
  • The user wants balances, prices, routes, quotes, or transaction status.
  • The user wants to build, simulate, confirm, sign, or broadcast wallet requests.
  • The user wants to inspect or switch apps, models, chains, or threads.
  • The user wants to inspect or change Account Abstraction settings.
  • The user wants to authenticate a CLI account with aomi login, inspect it with aomi account, or inspect linked wallets with aomi wallet ls.
  • The user wants to build a new app from an API spec or SDK — use the companion skill aomi-build.

Command Surface

aomi --prompt "<message>"          Send one prompt and exit
aomi chat <message>                 Send a message
aomi tx list|simulate|sign
aomi thread list|new|resume|delete|status|log|events|close
aomi model list|current|set
aomi app list|current
aomi chain list|current|set
aomi wallet ls|dev-key|set-mode
aomi login|logout
aomi account
aomi cron ls|show|cancel
aomi config current|set-backend
aomi secret list|clear|add
aomi deploy

Full command reference, flags, and env vars in commands.md.

Resources

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.