← Back to Skills Marketplace
ijaack

Skill

by Giacomo Barbieri · GitHub ↗ · v1.9.2 · MIT-0
cross-platform ⚠ suspicious
780
Downloads
1
Stars
0
Active Installs
30
Versions
Install in OpenClaw
/install evalanche
Description
Multi-EVM agent wallet SDK with onchain identity (ERC-8004), payment rails (x402), cross-chain liquidity (Li.Fi bridging + DEX aggregation + DeFi Composer),...
README (SKILL.md)

Evalanche — Multi-EVM Agent Wallet

Headless wallet SDK with ERC-8004 identity, x402 payments, Li.Fi cross-chain liquidity (bridging + DEX aggregation + DeFi Composer), Gas.zip gas funding, dYdX v4 perpetuals, CoinGecko market intelligence, Polymarket market discovery and execution, contract interaction helpers (approve-and-call + UUPS upgrade), and DeFi operations (liquid staking + EIP-4626 vaults). Works on 21+ EVM chains. Works as CLI or MCP server.

Source: https://github.com/iJaack/evalanche License: MIT

Supported Chains

Ethereum, Base, Arbitrum, Optimism, Polygon, BSC, Avalanche, Fantom, Gnosis, zkSync Era, Linea, Scroll, Blast, Mantle, Celo, Moonbeam, Cronos, Berachain, + testnets (Fuji, Sepolia, Base Sepolia).

Routescan RPCs preferred where available, with public fallback RPCs.

Security Model

Key Storage & Encryption

Evalanche.boot() manages keys autonomously with encrypted-at-rest storage:

  1. First run: Generates a BIP-39 mnemonic via ethers.HDNodeWallet.createRandom()
  2. Encryption: AES-128-CTR + scrypt KDF (geth-compatible keystore format)
  3. Password derivation: 32-byte random entropy file via crypto.randomBytes(32)
  4. File permissions: chmod 0o600 (owner read/write only)
  5. Storage location: ~/.evalanche/keys/ by default

MCP Server Access Controls

  • Stdio mode (default): stdin/stdout only. No network exposure.
  • HTTP mode (--http): localhost:3402. Do not expose publicly without auth.

OpenClaw External Secrets (Preferred when available)

Priority: OpenClaw secrets → raw env vars → encrypted keystore.

Setup

1. Install

npm install -g evalanche

2. Boot on any chain

import { Evalanche } from 'evalanche';

// Base
const { agent } = await Evalanche.boot({ network: 'base' });

// Ethereum
const { agent: eth } = await Evalanche.boot({ network: 'ethereum' });

// Arbitrum
const { agent: arb } = await Avalanche.boot({ network: 'arbitrum' });

// Avalanche (with identity)
const { agent: avax } = await Evalanche.boot({
  network: 'avalanche',
  identity: { agentId: '1599' },
});

3. Run as MCP server

AVALANCHE_NETWORK=base evalanche-mcp

Available Tools (MCP)

Wallet

Tool Description
get_address Get agent wallet address
get_balance Get native token balance
sign_message Sign arbitrary message
send_avax Send native tokens
call_contract Call a contract method

Identity (ERC-8004)

Tool Description
resolve_identity Resolve agent identity + reputation
resolve_agent Look up any agent by ID

Payments (x402)

Tool Description
pay_and_fetch x402 payment-gated HTTP request

Reputation

Tool Description
submit_feedback Submit on-chain reputation feedback

Network & Chains

Tool Description
get_network Get current network config
get_supported_chains List all 21+ supported chains
get_chain_info Get details for a specific chain
switch_network Switch to different EVM chain

Arena DEX (Avalanche)

Tool Description
arena_buy Buy Arena community tokens via bonding curve (spends $ARENA)
arena_sell Sell Arena community tokens for $ARENA
arena_token_info Get token info (fees, curve params) by address
arena_buy_cost Calculate $ARENA cost for a given buy amount (read-only)

Polymarket (Polygon)

Tool Description
pm_search Search active Polymarket markets by keyword
pm_market Get market details and outcome tokens by condition ID
pm_positions Get Polymarket positions for a wallet
pm_orderbook Get the order book for an outcome token
pm_balances Get normalized collateral and outcome-token balances
pm_order Get venue-truth order status and reconciliation
pm_cancel_order Cancel an open Polymarket order
pm_open_orders List open Polymarket orders
pm_trades List recent Polymarket venue trades
pm_approve Approve collateral spending for Polymarket on Polygon
pm_preflight Run deterministic buy/sell/limit-sell preflight checks
pm_buy Buy YES/NO shares with market or limit orders
pm_sell Slippage-protected immediate YES/NO sell toward a target USDC proceeds amount
pm_limit_sell Post or take a YES/NO limit sell depending on postOnly
pm_reconcile Reconcile balances, positions, orders, and trades against venue truth
pm_withdraw Withdraw Polygon USDC.e from the Polymarket wallet through the official Polymarket bridge
pm_redeem Redeem winning positions from a resolved Polymarket market for USDC via the CTF contract

Contract Interaction Helpers (v0.9.0)

Tool Description
approve_and_call Approve ERC-20 spending, then execute a follow-up contract call
upgrade_proxy Upgrade a UUPS proxy via upgradeToAndCall

Bridging & Cross-Chain

Tool Description
get_bridge_quote Get cross-chain bridge quote (Li.Fi)
get_bridge_routes Get all bridge route options
bridge_tokens Bridge tokens between chains
check_bridge_status Poll cross-chain transfer status (PENDING/DONE/FAILED)
fund_destination_gas Fund gas via Gas.zip

Li.Fi Liquidity SDK (v0.8.0)

Tool Description
lifi_swap_quote Get same-chain DEX swap quote (31+ aggregators)
lifi_swap Execute same-chain DEX swap
lifi_get_tokens List tokens with prices on specified chains
lifi_get_token Get specific token info (symbol, decimals, priceUSD)
lifi_get_chains List all Li.Fi supported chains
lifi_get_tools List available bridges and DEX aggregators
lifi_gas_prices Get gas prices across all chains
lifi_gas_suggestion Get gas suggestion for a specific chain
lifi_get_connections Discover possible transfer paths between chains
lifi_compose Cross-chain DeFi Composer (bridge + deposit into Morpho/Aave/Pendle/Lido/etc in one tx)

lifi_swap and lifi_compose return execution envelopes with request, submission, verification, and warnings.

Platform CLI (requires platform-cli binary — go install github.com/ava-labs/platform-cli@latest)

Tool Description
platform_cli_available Check if platform-cli is installed
subnet_create Create a new Avalanche subnet
subnet_convert_l1 Convert subnet to L1 blockchain
subnet_transfer_ownership Transfer subnet ownership
add_validator Add validator with BLS keys to Primary Network
l1_register_validator Register a new L1 validator
l1_add_balance Add balance to L1 validator
l1_disable_validator Disable an L1 validator
node_info Get NodeID + BLS keys from running node
pchain_send Send AVAX on P-Chain (P→P)

dYdX v4 Perpetuals (v0.7.0 — requires mnemonic)

Tool Description
dydx_get_markets List all dYdX perpetual markets with prices/leverage
dydx_has_market Check if a specific perp market exists (e.g. AKT-USD)
dydx_get_balance Get USDC equity on dYdX subaccount
dydx_get_positions Get all open perpetual positions
dydx_place_market_order Place a market order (BUY/SELL)
dydx_place_limit_order Place a limit order
dydx_cancel_order Cancel an open order
dydx_close_position Close position with reduce-only market order
dydx_get_orders List orders (optionally filter by status)
hyperliquid_get_markets List Hyperliquid perpetual markets
hyperliquid_get_account_state Get Hyperliquid account summary
hyperliquid_get_positions Get Hyperliquid open positions
hyperliquid_place_market_order Place Hyperliquid market order
hyperliquid_place_limit_order Place Hyperliquid limit order
hyperliquid_cancel_order Cancel Hyperliquid order
hyperliquid_close_position Close Hyperliquid position
hyperliquid_get_order Get Hyperliquid order status
hyperliquid_get_orders List Hyperliquid open orders
hyperliquid_get_trades List Hyperliquid recent fills
find_perp_market Search for a market across all connected perp venues

Programmatic Usage

Check balance on Base

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ privateKey: process.env.AGENT_PRIVATE_KEY, network: 'base' });
agent.provider.getBalance(agent.address).then(b => {
  const { formatEther } = require('ethers');
  console.log(formatEther(b) + ' ETH');
});
"

Bridge tokens (Ethereum → Arbitrum)

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ privateKey: process.env.AGENT_PRIVATE_KEY, network: 'ethereum' });
agent.bridgeTokens({
  fromChainId: 1, toChainId: 42161,
  fromToken: '0x0000000000000000000000000000000000000000',
  toToken: '0x0000000000000000000000000000000000000000',
  fromAmount: '0.1', fromAddress: agent.address,
}).then(r => console.log('tx:', r.txHash));
"

Same-chain DEX swap (ETH → USDC on Base)

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ privateKey: process.env.AGENT_PRIVATE_KEY, network: 'base' });
agent.swap({
  fromChainId: 8453, toChainId: 8453,
  fromToken: '0x0000000000000000000000000000000000000000',
  toToken: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913',
  fromAmount: '0.05', fromAddress: agent.address,
}).then(r => console.log('swap tx:', r.txHash));
"

Track bridge transfer status

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ privateKey: process.env.AGENT_PRIVATE_KEY, network: 'ethereum' });
agent.checkBridgeStatus({ txHash: '0x...', fromChainId: 1, toChainId: 8453 })
  .then(s => console.log(s.status, s.substatus));
"

Token discovery

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ privateKey: process.env.AGENT_PRIVATE_KEY, network: 'base' });
agent.getToken(8453, '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913')
  .then(t => console.log(t.symbol, t.priceUSD));
"

Cross-chain transfer on Avalanche (requires mnemonic)

node -e "
const { Evalanche } = require('evalanche');
const agent = new Evalanche({ mnemonic: process.env.AGENT_MNEMONIC, multiVM: true });
agent.transfer({ from: 'C', to: 'P', amount: '25' })
  .then(r => console.log('export:', r.exportTxId, 'import:', r.importTxId));
"

Key Concepts

ERC-8004 Agent Identity (Avalanche only)

  • On-chain agent identity registry on Avalanche C-Chain
  • Agent ID → tokenURI, owner, reputation score (0-100), trust level
  • Trust levels: high (≥75), medium (≥40), low (\x3C40)

Li.Fi Cross-Chain Liquidity (v0.8.0)

  • Bridging: Aggregated routes across 27+ bridges (Across, Stargate, Hop, etc.)
  • DEX Aggregation: Same-chain swaps via 31+ DEX aggregators (1inch, Paraswap, Jupiter, etc.)
  • DeFi Composer: One-tx cross-chain DeFi (bridge + deposit into Morpho, Aave V3, Euler, Pendle, Lido wstETH, EtherFi, etc.)
  • Status Tracking: Poll transfer status (PENDING → DONE/FAILED with substatus)
  • Token Discovery: List/lookup tokens with prices across all chains
  • Gas Pricing: Gas prices and suggestions per chain
  • Uses Li.Fi REST API (no SDK dependency needed)

Gas.zip

  • Cheap cross-chain gas funding
  • Send gas to any destination chain via deposit addresses

x402 Payment Protocol

  • HTTP 402 Payment Required → parse requirements → sign payment → retry
  • maxPayment prevents overspending

Multi-VM (Avalanche X-Chain, P-Chain)

  • Requires mnemonic and network: 'avalanche' or 'fuji'
  • C-Chain: EVM (ethers v6), X-Chain: AVM (UTXO), P-Chain: PVM (staking)

Contracts

Contract Address Chain
Identity Registry 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432 AVAX C-Chain (43114)
Reputation Registry 0x8004BAa17C55a88189AE136b182e5fdA19dE9b63 AVAX C-Chain (43114)
sAVAX (Benqi) 0x2b2C81e08f1Af8835a78Bb2A90AE924ACE0eA4bE AVAX C-Chain (43114)
yoUSD Vault 0x0000000f2eb9f69274678c76222b35eec7588a65 Base (8453)

DeFi — Liquid Staking & EIP-4626 Vaults (v1.2.0)

const { agent } = await Evalanche.boot({ network: 'avalanche' });
const { staking, vaults } = agent.defi();

// sAVAX unstake (instant if pool available, delayed otherwise)
const q = await staking.sAvaxUnstakeQuote('5');
// { avaxOut, isInstant, poolBalance, minOutput }
await staking.sAvaxUnstakeInstant('5');   // redeemInstant on Benqi
await staking.sAvaxUnstakeDelayed('5');   // requestRedeem (no pool needed)

// Stake AVAX → sAVAX
await staking.sAvaxStake('10', 50);  // 50bps slippage

// EIP-4626 vault deposit (any chain)
const YOUSD = '0x0000000f2eb9f69274678c76222b35eec7588a65';
const baseAgent = new Evalanche({ privateKey: '0x...', network: 'base' });
const { vaults: baseVaults } = baseAgent.defi();
const info = await baseVaults.vaultInfo(YOUSD);
// { assetDecimals: 6, shareDecimals: 18, ... }
await baseVaults.deposit(YOUSD, '1000');   // approve + deposit
await baseVaults.withdraw(YOUSD, '998');   // redeem shares

MCP tools (defi): savax_stake_quote, savax_stake, savax_unstake_quote, savax_unstake, vault_info, vault_deposit_quote, vault_deposit, vault_withdraw_quote, vault_withdraw

Known DeFi routing behavior:

  • yoUSD auto-routes to Base
  • sAVAX auto-routes to Avalanche
  • explicit wrong-chain overrides fail clearly before contract reads
  • interoperable address inputs like 0x...@base are accepted for address-based DeFi tools

Live Smoke Checklist

Use docs/live-smoke-checklist.md as the release-certification runbook for:

  • Polymarket tiny write + reconciliation
  • Hyperliquid tiny trade + order verification
  • LI.FI tiny swap/bridge execution + tx verification
  • sAVAX / EIP-4626 tiny round-trip + balance/share verification
Usage Guidance
This skill appears to be a coherent multi-chain wallet/agent that will manage private keys and can sign transactions without human input. Before installing: 1) Verify the npm package and GitHub repository (review package contents and evalanche-mcp binary) to ensure the code matches expectations. 2) Prefer storing secrets in OpenClaw secret storage rather than raw env vars; avoid putting your main mnemonic or long-term private key into the skill unless you trust the code. 3) Understand it will create ~/.evalanche/keys and an entropy file — if you need stronger controls, use a sandbox or ephemeral account for testing. 4) Do not enable HTTP mode on non-localhost networks or without authentication. 5) If you need higher assurance, inspect the package source (or request the code files) and confirm how the keystore/entropy files are derived and protected.
Capability Analysis
Type: OpenClaw Skill Name: evalanche Version: 1.9.2 The 'evalanche' skill is a high-privilege multi-EVM agent wallet SDK that manages sensitive credentials (AGENT_PRIVATE_KEY, AGENT_MNEMONIC) and performs automated financial operations across 21+ chains. It implements an encrypted-at-rest keystore in '~/.evalanche/keys/' and includes powerful tools for contract proxy upgrades ('upgrade_proxy'), cross-chain bridging, and executing external system binaries ('platform-cli'). While these capabilities are aligned with its stated purpose in SKILL.md, the inherent risks of automated key management, financial transaction execution, and system-level interactions (file and binary access) meet the criteria for a suspicious classification despite no evidence of intentional malice.
Capability Tags
cryptorequires-walletcan-make-purchasesrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The name/description (multi-EVM agent wallet, on‑chain identity, bridging, DEX aggregation, DeFi operations) maps to the declared requirements: Node + an npm package 'evalanche'. The environment variables declared in SKILL.md (AGENT_PRIVATE_KEY, AGENT_MNEMONIC, AGENT_ID, etc.) are appropriate for a wallet SDK. However the registry summary earlier states "Required env vars: none", which is an inconsistent metadata claim and should be clarified.
Instruction Scope
The SKILL.md instructs the agent to autonomously generate and manage private keys, write encrypted keystore files to ~/.evalanche/keys (chmod 0600), create a 32‑byte entropy file, and can start an MCP HTTP server on localhost:3402. These actions involve creating/managing secrets and running a local server; they are within the advertised wallet scope but expand the agent's access to sensitive local state and network-facing ports and therefore merit explicit user review before use.
Install Mechanism
Install uses npm (package: evalanche) which is expected for a Node-based SDK/CLI. npm installs are moderate-risk compared with pre-reviewed system packages but are proportionate to the stated purpose. No ad-hoc download URLs or archive extraction are present in the spec.
Credentials
Requested environment variables (private key, mnemonic, keystore dir, chain alias) are relevant for a headless wallet and marked secret in the SKILL.md metadata. There is no request for unrelated credentials. That said, the registry metadata summary contradicts SKILL.md by saying 'none' for required env vars; verify which is authoritative. The skill also mentions preference for OpenClaw secrets — prefer that over raw envs.
Persistence & Privilege
always:false (good). The skill stores an encrypted keystore under the user's home directory and can run a local HTTP MCP server (localhost:3402) if the user enables it. Autonomous invocation (model invocation enabled by default) combined with stored signing keys raises the potential blast radius (the skill could sign transactions autonomously). This is not an automatic disqualifier but the user should be aware and restrict exposure (do not run HTTP mode publicly, limit agent permissions, use ephemeral keys for testing).
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install evalanche
  3. After installation, invoke the skill by name or use /evalanche
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.9.2
## Highlights - Added macOS Keychain fallback for agent credentials, so Mony and other local agents can resolve the `EvaWallet` / `EvaMain` sovereign wallet after OpenClaw secrets and env vars and before the encrypted keystore path - Made Polymarket orderbook handling deterministic by sorting visible bids highest-first and asks lowest-first before pricing, preflight, and sell-fill estimation - Preserved the `v1.9.0` Polymarket withdrawal flow while promoting the Mony-tested Evalanche runtime fixes into the public release line - Added focused regression coverage for keychain credential resolution and unsorted CLOB orderbook arrays - Added the standalone Evalanche website app and configured the Vercel website output path independently from the SDK package build - Covered deps and deps-dev bump updates for Vite from `8.0.1` to `8.0.7` and Picomatch from `4.0.3` to `4.0.4` ## Validation - `npm test -- test/secrets.test.ts test/polymarket/client-extended.test.ts` - `npm run typecheck` - `npm test` - `npm run build` ## Notes - `v1.9.1` was intentionally skipped; `v1.9.2` is the next published patch after `v1.9.0` - The Keychain fallback is macOS-only and uses service `EvaWallet`, account `EvaMain` - No MCP tool schemas or CLI flags changed in this release
v1.9.0
## Highlights - Implemented `pm_withdraw`, so Evalanche can now withdraw Polygon `USDC.e` from the Polymarket wallet through the official Polymarket bridge flow - `pm_withdraw` gets a bridge quote, creates withdrawal addresses, submits the onchain `USDC.e` transfer, and returns the initial bridge-status snapshot for verification - MCP now exposes `pm_withdraw` alongside the existing Polymarket trading, reconciliation, deposit, and redemption flows - Added focused client and MCP regression coverage for the new Polymarket withdrawal path ## Validation - `npm run test` - `npm run typecheck` - `npm run build` ## Notes - `pm_withdraw` currently wraps the Polygon `USDC.e` withdrawal path that Polymarket exposes through its bridge APIs - the returned envelope separates quote, submission, and verification fields so agents can reason about the onchain transfer and bridge settlement independently
v1.8.9
## Highlights - Implemented Polymarket redemption through the real `pm_redeem` path on the Conditional Tokens Framework on Polygon - `pm_redeem` now verifies resolution onchain, submits `redeemPositions`, and reports USDC plus token-balance deltas - Expanded the release workflow into a stricter certification pipeline with integrity, docs-parity, tarball, audit-regression, smoke, and manifest gates - Aligned published package entrypoints with the actual build output so the tarball matches both CommonJS and ESM consumers - Simplified release notes by removing redundant in-file version titles; the filename and GitHub Release title now carry version identity ## Validation - `npm run test` - `npm run typecheck` - `npm run build` ## Notes - `pm_redeem` redeems winning Polymarket positions against the CTF contract on Polygon using USDC.e collateral - release notes coverage now keys off `## Highlights` instead of a versioned H1
v1.8.8
# Evalanche v1.8.8 ## Highlights - Added a universal in-repo holdings registry shared by all agents - Added unified holdings scanning through `agent.holdings().scan()` - Added MCP tools: - `get_holdings` - `search_registry` - `registry_status` - Unified DeFi routing and holdings discovery onto the same universal registry - Added DefiLlama import tooling for maintainers via `npm run sync:defillama-registry` - Updated the README and npm package metadata to match the shipped package surface ## Holdings Coverage The unified scanner now covers: - native balances across supported EVM chains - seeded ERC-20 balances - ERC-4626 vault positions such as yoUSD and Avantis `avUSDC` - liquid staking receipts such as sAVAX - Polymarket positions - Hyperliquid and dYdX perp positions ## Notes - The registry source of truth remains the repo - DefiLlama is used for seed/enrichment, not runtime wallet ownership - Wallet ownership is always confirmed through live onchain or venue reads
v1.8.7
# Evalanche v1.8.7 This release hardens live execution and canonical-chain DeFi routing, with the fixes validated against funded wallets and a full green test/build pass. ## Highlights - Polymarket live execution fixes: - `pm_buy` now uses the SDK-compatible buy-order nonce path again, fixing live `invalid nonce` failures. - `pm_buy` surfaces venue rejections honestly, including geoblocking and min-order-size errors. - `pm_balances` now reports allowance consistently from the true source of truth, including `allowanceSource` and matching `rawAllowance`. - live funded `pm_buy` was verified end to end with venue reconciliation. - Canonical-chain DeFi fixes: - yoUSD vault reads and quote paths now route cleanly to Base from MCP. - sAVAX quote paths now route cleanly to Avalanche from MCP. - vault metadata/quote reads were hardened for flaky public RPC behavior by disabling provider batching and making metadata reads deterministic. - `savax_unstake_quote` now degrades to delayed-only when instant pool balance probing reverts instead of failing the whole quote. - Hyperliquid live execution hardening: - market order price/size normalization was fixed for low-priced assets. - live tiny trade and close-position verification succeeded after the fix. - Polymarket discovery/runtime fixes: - stale/malformed market search handling was tightened. - venue-truth reconciliation remains the authority for execution reporting. ## Validation - `npm run test` -> `486/486` passed - `npm run typecheck` passed - `npm run build` passed ## Live checks completed - Polymarket funded buy + venue reconciliation - Hyperliquid tiny trade + close verification - LI.FI live Polygon swap execution - yoUSD Base quote flow - sAVAX Avalanche quote flow
v1.8.6
# Evalanche v1.8.6 ## Summary `v1.8.6` closes the main issues raised in the March 28 capability report by making DeFi chain resolution deterministic, strengthening venue-truth reporting for Polymarket, and expanding the verification payloads returned by Hyperliquid and LI.FI MCP execution tools. ## Highlights ### Chain-aware DeFi routing - added interoperable address parsing for DeFi inputs such as `0x...@base` - introduced an Evalanche-owned dapp registry abstraction with local canonical mappings - routed known vaults like yoUSD to Base automatically - routed Avalanche-native staking like sAVAX to Avalanche automatically - explicit wrong-chain requests now fail clearly before contract decode/revert noise ### AvaPilot-backed Avalanche registry provider - vendored a static Avalanche service snapshot derived from AvaPilot registry data - added an Avalanche-specific provider behind the Evalanche registry interface - kept local canonical mappings authoritative over provider data - kept runtime resolution offline-safe by avoiding live GitHub/network dependency ### Polymarket venue-truth reporting - sell and reconciliation flows now surface venue-state summaries directly - reconciliation now warns when venue conditional balances and position snapshots disagree - unsafe sell attempts are blocked using venue truth even when other local signals look plausible ### Hyperliquid and LI.FI recertification - Hyperliquid MCP execution tools now return richer post-submission verification payloads - LI.FI swap and compose tools now include stronger verification fields for tx, route, and transfer state - MCP-level regression coverage now explicitly covers empty-account, cancel, close, and cross-chain verification scenarios ### Operator runbook - upgraded the live smoke checklist into a report-closure checklist - added explicit closure criteria tying report claims to code fixes, regressions, and manual live validation ## Validation - `npm run test` - `npm run typecheck` - `npm run build`
v1.8.0
# Evalanche v1.8.0 ## Highlights - Hyperliquid is now a first-class trading venue in both the SDK and MCP surface. - LI.FI execution flows now return stable verification envelopes instead of raw transaction-only responses. - Yield and vault quote/info paths were repaired, especially around asset/share decimal handling and honest error mapping. - A release-grade live smoke checklist now documents the required Polymarket, Hyperliquid, LI.FI, and vault verification flow before ship. ## Included work ### Hyperliquid execution surface - added market orders, limit orders, cancellation, close-position flows, order lookup, open-orders, and fills - exposed the full Hyperliquid execution family through MCP tools - kept HIP-3 modeled as Hyperliquid market metadata rather than a separate venue ### LI.FI execution certification - `lifi_swap` and `lifi_compose` now return `request`, `submission`, `verification`, and `warnings` - added tx receipt, transfer status, and balance-delta verification paths where possible - kept route-strategy configuration intact across execution calls ### Yield / vault repair - fixed EIP-4626 asset/share decimal handling in quote and execution helpers - improved error mapping for unsupported or reverted quote/info reads - updated MCP vault quote handlers to accept explicit asset/share decimal overrides ### Release-certification docs - updated README and skill docs for the new execution surfaces - added a live smoke checklist runbook for release validation
v1.7.9
# Evalanche 1.7.9 ## Summary This release fixes a Polymarket collateral unit mismatch that could make `pm_preflight` report a wallet as funded even when the venue balance was only a few cents in raw microUSDC. ## Highlights - normalized Polymarket collateral balance and allowance reads from raw 6-decimal USDC units into human USDC before buy preflight checks - added raw collateral fields to the `pm_balances` response so agents can inspect both display and venue-native values - `pm_buy` now fails deterministically in preflight for underfunded microUSDC wallets instead of reaching the CLOB order path - added regression coverage for the `26190` microUSDC case and related buy/preflight behavior ## Validation - `npm run test` - `npm run typecheck` - `npm run build` ## Notes for Maintainers - this fix is in the balance normalization path, not the Polymarket nonce path - the relevant regression is: `26190` raw collateral should be treated as `0.02619 USDC`, not `26190 USDC`
v1.7.8
# Evalanche 1.7.8 ## Summary This release turns the Polymarket MCP surface into a more reliable execution layer by adding deterministic preflight checks, venue-first verification, and structured reconciliation tools. ## Highlights - added `pm_preflight` for buy, sell, and limit-sell execution checks before order submission - added venue inspection and reconciliation tools: `pm_balances`, `pm_order`, `pm_open_orders`, `pm_trades`, and `pm_reconcile` - `pm_market` and `pm_orderbook` now return structured inspection results instead of brittle upstream exceptions - `pm_positions` now returns a stable envelope with `walletAddress`, `count`, and `positions` - `pm_buy`, `pm_sell`, and `pm_limit_sell` now include `request`, `preflight`, `submission`, `verification`, and `warnings` in their responses - MCP server version metadata is aligned with the released package version ## Validation - `npm run test` - `npm run typecheck` - `npm run build` ## Notes for Maintainers - downstream agents can now verify venue truth without building their own Polymarket reconciliation layer - `pm_sell` and `pm_limit_sell` share the same preflight primitives, so future execution changes should stay in one place
v1.7.7
# Evalanche 1.7.7 ## Summary This release hardens Polymarket sell execution so agents do not silently route into unsafe dust-floor fills. ## Highlights - `pm_sell` now performs a slippage check against visible bid-side liquidity before execution - immediate sells are submitted as protected `FAK` limit orders instead of unbounded market sells - Polymarket CLOB auth fallback now uses fresh nonces per derive/create attempt - `pm_limit_sell` now respects `postOnly: false` instead of always forcing a resting order - regression tests were added for auth nonce handling, protected sells, and `pm_limit_sell` execution semantics ## Validation - `npm run test -- test/polymarket/client-extended.test.ts` - `npm run test -- test/polymarket/client.test.ts` - `npm run typecheck` - `npm run build` ## Notes for Maintainers - `pm_sell` now fails fast when visible liquidity would breach the configured slippage bound - `pm_limit_sell` remains the explicit tool for posting a resting sell order on the book
v1.7.6
# Evalanche 1.7.6 ## Summary This release hardens the Polymarket integration and documents the agent-facing surface more clearly. ## Highlights - Polymarket market discovery now prefers live CLOB market reads and falls back to Gamma when needed - the SDK supports direct `BUY` and `SELL` orders through `placeOrder()` and exposes a `placeMarketSellOrder()` helper for target-USDC sell flows - MCP now exposes `pm_sell` alongside the existing Polymarket read and buy tools - the README and skill docs now describe the Polymarket SDK flow, MCP tools, and current limitations for agents using the integration ## Validation - `npm run test` - `npm run typecheck` - `npm run build` ## Notes for Maintainers - `pm_sell` is a market-sell helper, not a limit-sell tool - `pm_redeem` remains intentionally unimplemented until winning-share redemption is wired through the CTF contract path
v1.7.5
# Evalanche 1.7.5 ## Summary This release expands the routing and perp abstractions while tightening project planning into a single active roadmap. ## Highlights - LI.FI route selection now supports strategy-driven configuration such as `minimum_slippage`, `minimum_execution_time`, `fastest_route`, and `minimum_completion_time` - MCP and SDK LI.FI flows now expose routing controls like explicit route order, preset, max price impact, and simulation skipping - perpetuals were refactored around shared venue-neutral interfaces instead of dYdX-only shared types - Hyperliquid was added as a first-class perp venue with market/account reads and explicit HIP-3 market metadata - HIP-3 is modeled as Hyperliquid market classification (`marketClass: 'hip3'`), not as a separate venue - the roadmap is now unified into a single `ROADMAP.md` ## Validation - `npm run test -- test/bridge/lifi.test.ts` - `npm run test -- test/mcp/server.test.ts` - `npm run test -- test/perps/hyperliquid/client.test.ts test/perps/types.test.ts test/perps/dydx/types.test.ts test/agent.test.ts` - `npm run typecheck` - `npm run build` ## Notes for Maintainers - Hyperliquid trading methods remain intentionally unimplemented until nonce/signing and API-wallet support are designed properly - future release tags should continue to ship a matching `RELEASE_NOTES_X.Y.Z.md`
v1.7.2
# Evalanche 1.7.2 ## Summary This patch release validates the corrected tag-driven release workflow after the `1.7.1` ClawHub publish failure. ## Highlights - the ClawHub release step now publishes the `evalanche` skill with an explicit slug instead of inferring `skill` from the folder name - the release pipeline remains tag-driven and continues to create the GitHub Release and publish to npm automatically - this release exists mainly to verify the final ClawHub leg of the automation ## Validation - local MCP version assertion updated to `1.7.2` - targeted MCP server test remains green before tagging ## Notes for Maintainers - future releases should continue to ship `RELEASE_NOTES_X.Y.Z.md` in the tagged commit - if ClawHub behavior changes again, check the workflow’s explicit `--slug evalanche` publish path first
v1.5.2
v1.5.2: fix custom RPC chain mapping, clean up Polymarket MCP wiring, add dYdX market refs including ZEC, and sync docs/website/release surface.
v1.5.0
v1.5.0 security release: reduced npm audit exposure with dependency overrides, shipped hardening improvements, and cleaned remaining repo junk files.
v1.4.0
v1.4.0 roadmap release: added security hardening and dependency reduction phase, added ERC-8183 commerce adapter phase, added optional Tempo integration track, and aligned the website to 1.4.0.
v1.3.6
Release fix for 1.3.5 publish path: restored release exports, fixed build typing issues, and published cleanly as 1.3.6.
v1.3.5
Stabilization release: restored exports, fixed error-code surface, added working ERC-4626 vault client, restored CoinGecko client surface, cleaned duplicate files, and brought test suite back to green.
v1.3.1
YieldYak swap support, improved module organization, unified Swap/Perps clients, refreshed Polymarket support
v1.3.0
v1.3.0: CoinGecko market data + Polymarket CLOB — 14 new MCP tools (cg_price, cg_trending, cg_top_movers, cg_markets, cg_search, cg_history, cg_status, pm_search, pm_market, pm_positions, pm_orderbook, pm_approve, pm_buy, pm_redeem)
Metadata
Slug evalanche
Version 1.9.2
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 30
Frequently Asked Questions

What is Skill?

Multi-EVM agent wallet SDK with onchain identity (ERC-8004), payment rails (x402), cross-chain liquidity (Li.Fi bridging + DEX aggregation + DeFi Composer),... It is an AI Agent Skill for Claude Code / OpenClaw, with 780 downloads so far.

How do I install Skill?

Run "/install evalanche" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Skill free?

Yes, Skill is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Skill support?

Skill is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Skill?

It is built and maintained by Giacomo Barbieri (@ijaack); the current version is v1.9.2.

💬 Comments