From quicknode-pack
Builds EVM transaction workflows using QuickNode and ethers.js: send ETH, call smart contracts, listen for events via WebSocket, estimate gas.
How this skill is triggered — by the user, by Claude, or both
Slash command
/quicknode-pack:quicknode-core-workflow-aThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Build EVM transaction workflows: send ETH, interact with contracts, listen for events, and handle gas estimation.
Build EVM transaction workflows: send ETH, interact with contracts, listen for events, and handle gas estimation.
quicknode-hello-worldimport { ethers } from 'ethers';
const provider = new ethers.JsonRpcProvider(process.env.QUICKNODE_ENDPOINT);
const wallet = new ethers.Wallet(process.env.PRIVATE_KEY!, provider);
const tx = await wallet.sendTransaction({
to: '0xRecipientAddress',
value: ethers.parseEther('0.01'),
});
console.log(`TX sent: ${tx.hash}`);
const receipt = await tx.wait();
console.log(`Confirmed in block ${receipt!.blockNumber}, gas used: ${receipt!.gasUsed}`);
const contractAddress = '0xYourContract';
const abi = ['function transfer(address to, uint256 amount) returns (bool)'];
const contract = new ethers.Contract(contractAddress, abi, wallet);
const tx = await contract.transfer('0xRecipient', ethers.parseUnits('100', 18));
const receipt = await tx.wait();
console.log(`Transfer confirmed: ${receipt!.hash}`);
const wsProvider = new ethers.WebSocketProvider(process.env.QUICKNODE_WSS);
const contract = new ethers.Contract(contractAddress, ['event Transfer(address indexed from, address indexed to, uint256 value)'], wsProvider);
contract.on('Transfer', (from, to, value, event) => {
console.log(`Transfer: ${from} -> ${to}: ${ethers.formatUnits(value, 18)}`);
});
const gasEstimate = await contract.transfer.estimateGas('0xRecipient', ethers.parseUnits('100', 18));
const feeData = await provider.getFeeData();
const totalCost = gasEstimate * (feeData.gasPrice || 0n);
console.log(`Estimated gas: ${gasEstimate}, cost: ${ethers.formatEther(totalCost)} ETH`);
| Error | Cause | Solution |
|---|---|---|
insufficient funds | Wallet balance too low | Fund wallet or reduce amount |
nonce too low | Nonce conflict | Get latest nonce: provider.getTransactionCount(address) |
gas required exceeds allowance | Contract revert | Check contract requirements |
NFT and token APIs: quicknode-core-workflow-b
npx claudepluginhub fleet-to-force/claude-code-plugins-plus --plugin quicknode-pack5plugins reuse this skill
First indexed Jul 10, 2026
Builds EVM transaction workflows with QuickNode: send ETH, interact with contracts, listen for events via WebSocket, and estimate gas.
Queries EVM chains (Ethereum, Polygon, etc.) for balances, blocks, transactions, token transfers, contract reads, ENS lookups, and chain health.
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.