AgentSkillsCN

defi-expert

DeFi协议专家,确保正确的数据格式、类型、面额和API结构。在编写任何协议集成代码之前必须咨询。触发条件包括:提及Aave、Compound、Uniswap、Curve、Balancer,或DeFi术语如清算、兑换、闪电贷、健康因子时。

SKILL.md
--- frontmatter
name: defi-expert
description: DeFi protocol expert ensuring correct data formats, types, denominations, and API structures. MUST be consulted before writing ANY protocol integration code. Triggers on ANY mention of Aave, Compound, Uniswap, Curve, Balancer, or DeFi terms like liquidation, swap, flash loan, health factor.

DeFi Expert

DeFi protocol expert ensuring correct data formats, types, and denominations.

When to Use

  • Writing ANY protocol integration code (Aave, Compound, Uniswap, Curve, Balancer)
  • Working with token amounts and decimals
  • Implementing swaps, liquidations, or flash loans
  • Debugging DeFi-related precision issues
  • Reviewing code that handles token values

Workflow

Step 1: Verify Token Decimals

Check decimals for each token (USDC=6, WBTC=8, ETH=18).

Step 2: Check Denomination

Verify correct unit (wei, ray, wad, bps).

Step 3: Validate Addresses

Ensure checksummed addresses are used.


CRITICAL: Before writing ANY DeFi code, verify:

  1. Token decimals (USDC=6, not 18!)
  2. Denomination (wei, ray, wad, bps)
  3. Checksummed addresses

Denomination Standards

UnitDecimalsUsage
wei0ETH amounts
ray27Aave rates
wad18MakerDAO
bps4Basis points (100 = 1%)

Token Decimals

TokenDecimals
ETH/WETH18
USDC6 ⚠️
USDT6 ⚠️
DAI18
WBTC8 ⚠️

Common Errors

typescript
// ❌ WRONG
const amount = parseEther(value);  // USDC has 6 decimals!
const hf = rawHF / 1e18;  // Aave uses 1e27!

// ✓ CORRECT
const decimals = await token.decimals();
const amount = parseUnits(value, decimals);
const hf = rawHF / 1e27;