Viem is a TypeScript interface for Ethereum that provides low-level stateless primitives for interacting with the blockchain. It focuses on developer experience, stability, bundle size, and performance.
| Clients | PublicClient, WalletClient, TestClient - entry points | | Transports | Connection layer (http, webSocket, custom) | | Actions | Operations like getBlockNumber, sendTransaction | | Chains | Chain configurations (mainnet, sepolia, arbitrum, etc.) |
This skill provides a reference for common operations. For comprehensive documentation, fetch the full viem docs using context7 MCP:
This skill should be used when the user asks about "viem", "viem client", "viem actions", "TypeScript Ethereum", "createPublicClient", "createWalletClient", "parseEther", "formatEther", "readContract", "writeContract", or mentions using viem for blockchain interactions. Source: sablier-labs/agent-skills.