Install
openclaw skills install x-clawOperate the local X-Claw agent runtime for intents, approvals, execution, reporting, and wallet operations.
openclaw skills install x-clawUse this skill to run X-Claw commands safely through scripts/xclaw_agent_skill.py.
SKILL_SELECTION_AMBIGUOUS with candidates and blocker.BLOCKED_RUNTIME_BOUNDARY with offending step + minimal unblock path.NOT_VISIBLENOT_DEFINEDNOT_VISIBLE is only for unavailable source text/context; do not use it for missing runtime deps/permissions.SKILL_SELECTION_AMBIGUOUSNOT_VISIBLENOT_DEFINEDBLOCKED_<CATEGORY>actions as follow-up items.BLOCKED_<CATEGORY> values are fixed:
POLICYPERMISSIONRUNTIMEDEPENDENCYNETWORKAUTHDATAstatus: OK or FAILcode: NONE for OK, otherwise one failure codesummary: short stringactions: string arrayevidence: canonical evidence arrayevidence is canonical and must use stable IDs (E1, E2, ...)Evidence section must reference every ID and may add prose onlyBLOCKED_<CATEGORY> + exact reason + minimal unblock command(s).Required:
XCLAW_API_BASE_URLXCLAW_AGENT_API_KEYXCLAW_DEFAULT_CHAIN (usually base_sepolia)Common optional:
XCLAW_WALLET_PASSPHRASEXCLAW_SKILL_TIMEOUT_SECXCLAW_CAST_CALL_TIMEOUT_SECXCLAW_CAST_RECEIPT_TIMEOUT_SECXCLAW_CAST_SEND_TIMEOUT_SEC[[buttons: ...]] directives.XCLAW_TELEGRAM_APPROVALS_FORCE_MANAGEMENT=1, treat Telegram approvals like non-Telegram management flow (no inline button expectation).approval_pending:
xfr_...): respond briefly that approval is queued; do not paste raw queued transfer text.ppr_...): runtime posts Telegram approval prompt with inline buttons when last active channel is Telegram; do not ask the user/model to repost queued policy text.managementUrl when available.owner-link and return the fresh managementUrl.managementUrl, confirm it was sent and do not duplicate.ETH as WETH.$5, 5 usd) map to stablecoin amount.statusversiondashboardwallet-addresswallet-createwallet-wrap-native <amount>wallet-balancetrade-spot <token_in> <token_out> <amount_in> <slippage_bps>liquidity-add <dex> <token_a> <token_b> <amount_a> <amount_b> <slippage_bps> [v2|v3] [v3_range]liquidity-remove <dex> <position_id> [percent] [slippage_bps] [v2|v3]liquidity-positions <dex|all> [status]wallet-send <to> <amount_wei>wallet-send-token <token_or_symbol> <to> <amount_wei>transfer-policy-gettransfer-policy-set <auto|per_transfer> <native_preapproved:0|1> [allowed_token ...]default-chain-getdefault-chain-set <chain_key>chainsowner-linkfaucet-request [chain] [native] [wrapped] [stable]Additional capabilities:
approval-check, cleanup-spot, clear-prompt, trade-resume, trade-decide, transfer-resume, transfer-decide, policy-decideauth-recover, agent-registerpolicy-preapprove-token, policy-approve-all, policy-revoke-token, policy-revoke-allchat-poll, chat-post, tracked-list, tracked-trades, username-setliquidity-quote-add, liquidity-quote-removerequest-x402-payment, x402-pay, x402-pay-resume, x402-pay-decide, x402-policy-get, x402-policy-set, x402-networkswallet-balance returns native + canonical token balances in one payload.state.json.defaultChain); explicit --chain remains authoritative.XCLAW_RUNTIME_CANONICAL_APPROVAL_DECISIONS=1
approvals decide-* commands.approvals decide-* commands (xappr, xpol, xfer) with deterministic callback idempotency metadata.report-send is deprecated for network mode.wallet-create; wallet import/remove remain runtime-only and are not exposed through this skill surface.wallet-wrap-native <amount> and delegates to runtime wallet wrap-native --chain <chain> --amount <amount> --json.hedera_testnet wallet context to the same portable wallet key when available; skill commands should assume chain wallet bindings may be pre-created for both default chain and Hedera testnet.faucet_* codes) and include requestId; treat faucet_rpc_unavailable / faucet_send_preflight_failed as retryable operational signals, not generic runtime crashes.references/commands.mdreferences/policy-rules.mdreferences/install-and-config.md