taiko

SKILL.md

Taiko Development

Build, deploy, and verify smart contracts on Taiko — a Type-1 ZK-EVM based rollup on Ethereum. Taiko targets 2-second block times powered by based preconfirmations.

Network Selection: If the user has not specified "hoodi" or "mainnet", always ask which network to use before proceeding.

Networks

See Networks Reference for chain IDs, RPCs, contract addresses, explorers, and API endpoints.

Quick Decision Guide

Task Command/Resource
Deploy contract FOUNDRY_PROFILE=layer2 forge create ...
Verify (Taikoscan) forge verify-contract --verifier-url $TAIKOSCAN_API_URL ...
Verify (Blockscout) forge verify-contract --verifier blockscout ...
Verify (Etherscan V2) forge verify-contract --verifier-url "https://api.etherscan.io/v2/api?chainid=$CHAIN_ID" ...
Fork testing FOUNDRY_PROFILE=layer2 forge test --fork-url $TAIKO_RPC
Contract addresses MainnetL1Addrs.sol / MainnetL2Addrs.sol / HoodiL1Addrs.sol / HoodiL2Addrs.sol in assets/foundry-template/src/

Protocol Knowledge

Foundry Setup

Use assets/foundry-template/ as a starting point.

Critical: Always use FOUNDRY_PROFILE=layer2 for Taiko L2:

FOUNDRY_PROFILE=layer2 forge build
FOUNDRY_PROFILE=layer2 forge test --fork-url $TAIKO_RPC

foundry.toml (both networks)

[profile.default]
solc_version = "0.8.30"
evm_version = "prague"

[profile.layer2]
evm_version = "shanghai"

See Networks Reference for RPC and Etherscan config.

Deploy

FOUNDRY_PROFILE=layer2 forge create src/MyContract.sol:MyContract \
  --rpc-url $TAIKO_RPC --private-key $PRIVATE_KEY

# With constructor args
FOUNDRY_PROFILE=layer2 forge create src/Token.sol:Token \
  --rpc-url $TAIKO_RPC --private-key $PRIVATE_KEY \
  --constructor-args "TokenName" "TKN" 1000000000000000000000000

# Via script
FOUNDRY_PROFILE=layer2 forge script script/Deploy.s.sol:DeployScript \
  --rpc-url $TAIKO_RPC --private-key $PRIVATE_KEY --broadcast

Verify

Taikoscan

# Mainnet
forge verify-contract <ADDRESS> src/MyContract.sol:MyContract \
  --watch --verifier-url https://api.taikoscan.io/api \
  --etherscan-api-key $TAIKOSCAN_API_KEY

# Hoodi
forge verify-contract <ADDRESS> src/MyContract.sol:MyContract \
  --watch --verifier-url https://api-hoodi.taikoscan.io/api \
  --etherscan-api-key $TAIKOSCAN_API_KEY

Blockscout

# Mainnet
forge verify-contract <ADDRESS> src/MyContract.sol:MyContract \
  --chain-id 167000 --verifier blockscout \
  --verifier-url "https://blockscoutapi.mainnet.taiko.xyz/api?"

# Hoodi
forge verify-contract <ADDRESS> src/MyContract.sol:MyContract \
  --chain-id 167013 --verifier blockscout \
  --verifier-url https://blockscout.hoodi.taiko.xyz/api

Cast CLI

cast balance <ADDRESS> --rpc-url $TAIKO_RPC
cast chain-id --rpc-url $TAIKO_RPC
cast block-number --rpc-url $TAIKO_RPC
cast gas-price --rpc-url $TAIKO_RPC
cast send <TO> "functionName(args)" --rpc-url $TAIKO_RPC --private-key $PRIVATE_KEY

Getting ETH

Mainnet: Bridge from Ethereum via https://bridge.taiko.xyz (24h cooldown for L2→L1)

Hoodi: Get test ETH from L1 faucets (see Networks Reference), then bridge via https://bridge.hoodi.taiko.xyz

x402 Payments

Taiko runs live x402 facilitators for HTTP-native USDC payments on Mainnet and Hoodi. For building payment-protected APIs or AI agent clients, use the dedicated taiko-x402 skill — it covers seller middleware, buyer client setup, and full facilitator configuration.

Troubleshooting

Issue Solution
"Invalid EVM version" Use FOUNDRY_PROFILE=layer2
"Contract not verified" Check API endpoint URL and key
"Insufficient funds" Bridge ETH from L1
"Transaction reverted" Use cast run <TX_HASH> to debug

Examples

See examples/ for Python (signal verification, block hash) and Solidity (bridge receiver, cross-chain counter).

CLI Quick Reference

Use taiko --json for structured output parseable by agents:

taiko network status --json                              # verify network reachability before any operation
taiko network info --json                                # chain ID, contract addresses, gas price
taiko contract verify <ADDR> <id> --network hoodi        # preferred verify method (wraps forge with Taiko config)
taiko bridge status <TX_HASH> --json                     # check bridge relay status

All commands return: { schema_version, command, status, network, data, errors, warnings, metrics }

Related Skills

Resources

Weekly Installs
8
GitHub Stars
1
First Seen
Feb 26, 2026
Installed on
gemini-cli8
antigravity8
github-copilot8
amp8
codex8
kimi-cli8