PickSkill
← Back

sequence-ecosystem-wallet

Create and operate a Sequence Ecosystem Wallet (v3) from OpenClaw. Use when Taylan asks to create a wallet request/link, ingest an explicit+implicit session ciphertext, check Polygon balances via Sequence Indexer, or execute Trails intent swaps (exact-input) like USDC->USDT or USDC->POL from the CLI.

SKILL.md
Rendered from GitHub raw
View raw ↗

Sequence Ecosystem Wallet (Polygon) — Operator Workflow

This repo contains:

  • Connector UI (Cloudflare Worker) that creates an explicit session and returns ciphertext.
  • CLI to create wallet requests/links, ingest session material into Keychain, check balances, and execute Trails swaps.

Assumptions / scope

  • Chain: Polygon (137) only.
  • Nodes URL must remain base: https://nodes.sequence.app/{network} (access key stays separate).
  • For swaps: Trails intents with exact-input semantics.

Environment variables

Required (most commands):

  • SEQUENCE_PROJECT_ACCESS_KEY (Sequence project access key)

For connector link generation:

  • SEQUENCE_ECOSYSTEM_CONNECTOR_URL
  • SEQ_ECO_DEFAULT_WEBHOOK=true (recommended; uses ngrok callback by default)

For balances via Indexer:

  • SEQUENCE_INDEXER_ACCESS_KEY

For Trails swaps:

  • TRAILS_API_KEY (defaults to SEQUENCE_PROJECT_ACCESS_KEY)
  • SEQUENCE_ECOSYSTEM_WALLET_URL (e.g. https://acme-wallet.ecosystem-demo.xyz)
  • SEQUENCE_DAPP_ORIGIN (must match the connector origin; e.g. https://moltbot-ecosystem-wallet.taylanpince.workers.dev)

From repo root:

cd /Users/taylan/.openclaw/workspace/openclaw-ecosystem-wallet-skill
SEQUENCE_ECOSYSTEM_CONNECTOR_URL='https://moltbot-ecosystem-wallet.taylanpince.workers.dev' \
  node cli/sequence-eco/seq-eco.mjs create-request --name demo-eco --chain polygon

This prints a rid + a url.

When generating the link, include limits so we don’t mint per-target sessions:

  • usdcLimit=50
  • usdtLimit=50
  • polLimit=100

Example (append to the url printed above):

&usdcLimit=50&usdtLimit=50&polLimit=100

2) Ingest the ciphertext back into the CLI (stores in macOS Keychain)

After Taylan connects in the wallet UI, he sends back a ciphertext blob.

node cli/sequence-eco/seq-eco.mjs ingest-session \
  --name demo-eco \
  --rid <rid_from_create_request> \
  --ciphertext "<ciphertext>"

3) Check balances (Polygon)

Requires SEQUENCE_INDEXER_ACCESS_KEY.

SEQUENCE_INDEXER_ACCESS_KEY='...' \
  node cli/sequence-eco/seq-eco.mjs balances --name demo-eco --chain polygon

4) Swap via Trails (USDC -> USDT or USDC -> POL)

The Trails CLI uses the explicit+implicit session stored in Keychain.

cd cli/trails
node trails.mjs swap --name demo-eco --from USDC --to USDT --amount 1 --broadcast

Output includes:

  • depositTxHash
  • a PolygonScan link
  • intentId
  • receipt status from waitIntentReceipt

Notes

  • If a Trails execution errors with internal relayer connectivity issues, the deposit tx can still be mined; re-check receipt status by re-running the command (or add a dedicated status command later).
  • For user-visible transaction responses: always include the block explorer link.