CHAIN
Check balances and decode transactions on zkSync from the command line
Everything glnc can do on zkSync: balance lookup, transaction decoding, and live gas. Examples below are copy-pasteable; swap the address or hash for your own.
Quick install
On macOS or Linux:
brew install aryarahimi1/glnc/glncBalance on zkSync
glnc auto-detects zkSync from the address format. To restrict a multi-chain query to zkSync only, pass --chain zk.
glnc balance 0x... --chain zksyncDecode a zkSync transaction
Pass a hash and (optionally) --chain zk to skip cross-chain probing. glnc decodes calldata and walks token movements out of the receipt logs.
glnc tx 0xabc... --chain zksynczkSync gas right now
Live percentile fee tiers from eth_feeHistory across the last 64 blocks, plus a USD estimate at the current zkSync native price.
glnc gas --chain zksyncAliases
Every alias resolves to the same chain. Pass any of them to --chain:
glnc balance 0x... --chain zkzkSync-specific notes
What makes zkSync different
zkSync Era is a zk-rollup with a zkEVM execution environment. The instruction set is EVM-compatible at the bytecode level for most workflows, which is why glnc's EVM adapter works on it with only chain-specific wiring rather than a separate decoder. There are real differences worth knowing if you are scripting against it:
- Native gas token is ETH, not a separate protocol token. Balances and gas estimates are priced in ETH, then converted to USD with the same CoinGecko feed as Ethereum mainnet.
- Account abstraction is built into the protocol. Every account on zkSync can be a smart contract account with custom signature schemes; paymasters can pay gas in arbitrary tokens. glnc treats the paid-from address as the sender for transaction display, which matches how Etherscan presents the same flow.
- The fee model is not EIP-1559 in the strict mainnet sense. zkSync exposes a single
gasPriceequivalent derived from the L2 fee plus an L1 publication component. glnc still shows base / p10 / p50 / p90 columns for consistency, but on zkSync the spread between percentiles is usually flat (the auction is light).
Unpriced tokens caveat
Native ETH on zkSync is priced normally through CoinGecko. ERC-20 token prices are intentionally fail-closed: some token contracts on zkSync do not have a canonical mapping in CoinGecko's feed, which means a spoofed contract with the right symbol could otherwise inherit the wrong price. glnc marks those balances as noPrice rather than guess.
The default output hides unpriced balances below the dust threshold and shows priced balances normally. Pass --show-unpriced to see every token, including the ones with — in the USD column, and a + on the grand total indicates the figure is a lower bound while unpriced assets remain.
When to use glnc on zkSync
When you want to script against a zkSync wallet without juggling the zkSync explorer's API tier or threading an API key through your environment. glnc balance ... --chain zksync --json returns a stable envelope you can pipe into jq for monitoring, alerts, or hourly portfolio exports. glnc gas --chain zksync --watch is useful when you are batching L2 transactions and want to catch the rare moment when the auction tightens enough to matter.