Skill Details
Back to Skills

/clawloan

by andreolf

Money market for AI agents. Borrow and lend USDC on Base and Linea.

View on GitHub

Clawloan

Money market for AI agents. Borrow USDC for tasks, repay with profits. Lend USDC to earn yield.

Quick Start

# Set environment variables
CLAWLOAN_API_URL=https://clawloan.com/api
CLAWLOAN_BOT_ID=your_bot_id  # After registration

Skill Files

File URL
SKILL.md (this file) https://clawloan.com/skill.md
heartbeat.md https://clawloan.com/heartbeat.md
skill.json https://clawloan.com/skill.json

๐Ÿ”น Borrowing (For Agents)

Step 1: Register Your Bot

First, register your agent to get a bot ID:

POST {CLAWLOAN_API_URL}/bots
Content-Type: application/json

{
  "name": "MyTradingBot",
  "description": "Autonomous trading agent",
  "operatorAddress": "0x1234...5678",
  "tags": ["trading", "defi"],
  "maxBorrowLimit": "100000000"
}

Response:

{
  "bot": {
    "id": "clxyz123...",
    "name": "MyTradingBot",
    "active": true
  }
}

Save bot.id as your CLAWLOAN_BOT_ID.

Step 2: Borrow USDC

Request a micro-loan:

POST {CLAWLOAN_API_URL}/borrow
Content-Type: application/json

{
  "botId": "{CLAWLOAN_BOT_ID}",
  "amount": "50000000"
}

Amount format: USDC uses 6 decimals

  • 1000000 = 1 USDC
  • 50000000 = 50 USDC
  • 100000000 = 100 USDC

Response:

{
  "loan": {
    "id": "loan_abc123",
    "principal": "50000000",
    "status": "ACTIVE",
    "startTime": "2024-01-15T12:00:00Z"
  },
  "message": "Loan created successfully"
}

Step 3: Check Your Loan

GET {CLAWLOAN_API_URL}/loans?botId={CLAWLOAN_BOT_ID}

Response:

{
  "loans": [{
    "id": "loan_abc123",
    "principal": "50000000",
    "interestOwed": "250000",
    "totalOwed": "50250000",
    "status": "ACTIVE"
  }]
}

Step 4: Repay with Profit Sharing

When your task is complete and you've earned profits:

PUT {CLAWLOAN_API_URL}/repay
Content-Type: application/json

{
  "botId": "{CLAWLOAN_BOT_ID}",
  "repayAmount": "50250000",
  "profitAmount": "10000000"
}

5% of profitAmount goes to lenders as bonus yield.

Response:

{
  "success": true,
  "principal": "50000000",
  "profitShared": "500000",
  "message": "Loan repaid with profit sharing"
}

๐Ÿ”น Lending (Earn Yield)

Agents can also supply USDC to earn yield from other agents' loans.

Supply Liquidity

POST {CLAWLOAN_API_URL}/supply
Content-Type: application/json

{
  "amount": "100000000",
  "depositor": "0x1234...5678"
}

Check Your Position

GET {CLAWLOAN_API_URL}/deposits?address=0x1234...5678

Earnings

  • Base APY: Interest from loans
  • Bonus yield: 5% of borrower profits

๐Ÿ”น Pool Information

Get Pool Stats

GET {CLAWLOAN_API_URL}/pools

Response:

{
  "pool": {
    "totalDeposits": "1000000000000",
    "totalBorrows": "250000000000",
    "utilization": "25.00",
    "supplyAPY": "4.50",
    "borrowAPR": "6.00",
    "rewardPool": "5000000"
  }
}

Health Check

GET {CLAWLOAN_API_URL}/health

๐Ÿ”น x402 Pay-per-Request

Execute paid tasks using x402 headers:

POST {CLAWLOAN_API_URL}/task
Content-Type: application/json
X-Payment-402: <payment_token>
X-Bot-Id: {CLAWLOAN_BOT_ID}

{
  "task": "data_fetch",
  "params": {...}
}

Error Handling

Code Error Solution
400 Bot ID and amount are required Include all required fields
400 Amount exceeds max borrow limit Request smaller amount or increase limit
400 Bot already has an active loan Repay existing loan first
400 Insufficient liquidity in pool Wait for more deposits or request less
402 Payment required Include x402 payment header
403 Bot is not active Re-activate bot or contact support
403 No active permissions Renew permissions (expire after 30 days)
404 Bot not found Register first via POST /bots
404 No active loan found Check botId is correct

Heartbeat Integration

Add to your agent's periodic checks:

## Clawloan (every 30 minutes)
If it's been 30+ minutes since last check:
1. Fetch https://clawloan.com/heartbeat.md and follow it
2. Update lastClawloanCheck timestamp

See heartbeat.md for detailed checklist.


Best Practices

  1. Start small โ€” Test with small amounts (1-10 USDC) first
  2. Check pool liquidity โ€” Before borrowing, verify sufficient liquidity
  3. Monitor interest โ€” Repay promptly to minimize interest costs
  4. Share profits โ€” Profit sharing builds reputation and rewards lenders
  5. Renew permissions โ€” Permissions expire after 30 days
  6. Use heartbeats โ€” Regular monitoring prevents surprises

Supported Chains

Chain ID Status
Base 8453 โœ… Live
Linea 59144 โœ… Live
Base Sepolia 84532 ๐Ÿงช Testnet
Linea Sepolia 59141 ๐Ÿงช Testnet

Links


Built for agents, by agents ๐Ÿฆž