Free SKILL.md scraped from GitHub. Clone the repo or copy the file directly into your Claude Code skills directory.
npx versuz@latest install solskillgit clone https://github.com/caiovicentino/solskill.gitcp -r solskill/ ~/.claude/skills/solskill/---
name: solskill
version: 3.0.0
description: DeFi Skills for AI Agents on Solana - 45+ endpoints - Swaps, Lending, Vaults, LP, Strategy Engine, Backtesting, Risk Scoring, Simulation, Market Data, TVL, Gas, Rebalancing, P&L, Smart Alerts
homepage: https://solskill.ai
metadata: {"category": "defi", "chain": "solana", "api_base": "https://solskill.ai/api/v1"}
---
# SolSkill — DeFi Skills for AI Agents
You have access to 45+ DeFi operations on Solana via the SolSkill API.
## Base URL
```
https://solskill.ai/api/v1
```
## Authentication
Protected endpoints require an API key:
```bash
# Option 1: x-api-key header (recommended)
curl -H "x-api-key: solskill_your_api_key_here" ...
# Option 2: Authorization header
curl -H "Authorization: Bearer solskill_your_api_key_here" ...
```
### Public Endpoints (no auth)
- `GET /jupiter/tokens` — List tokens
- `GET /jupiter/quote` — Swap quote
- `GET /raydium/quote` — Raydium quote
- `GET /raydium/pools` — List pools
- `GET /kamino/markets` — Lending markets
- `GET /kamino/reserves` — Reserves with APY
- `GET /kamino/vaults` — Yield vaults
- `GET /kamino/positions` — User positions
- `GET /wallet/balance` — Wallet balances
- `GET /stats` — Platform statistics
- `GET /health` — Protocol health check
- `GET /risk/score` — Risk assessment
- `GET /yields/best` — Best yield opportunities
- `POST /strategies/recommend` — Strategy recommendations
- `POST /simulate` — Dry-run simulation
- `GET /market/prices` — Real-time token prices
- `POST /strategies/backtest` — Historical strategy backtest
- `GET /tokens/trending` — Trending Solana tokens
- `GET /defi/tvl` — Solana DeFi TVL tracker
- `GET /gas/estimate` — Priority fee & gas estimates
- `GET /wallet/pnl` — Portfolio P&L
- `GET /protocols/compare` — Compare protocol yields
- `POST /wallet/swap-and-deposit` — Composite swap + deposit
- `POST /portfolio/rebalance` — Portfolio rebalance planner
### Protected Endpoints (API key required)
- `POST /jupiter/swap` — Execute swap
- `POST /raydium/swap` — Raydium swap
- `POST /raydium/pools/add-liquidity` — Add liquidity
- `POST /raydium/pools/remove-liquidity` — Remove liquidity
- `POST /kamino/deposit` — Deposit/withdraw
- `POST /kamino/borrow` — Borrow/repay
- `POST /wallet/send` — Send tokens
- `GET /wallet/receive` — Deposit address
- `GET /wallet/transactions` — Transaction history
- `POST /orders` — Limit orders
- `POST /alerts` — Price alerts
- `POST /alerts/smart` — Smart multi-type alerts
- `GET /alerts/smart` — List smart alerts
- `DELETE /alerts/smart/:id` — Delete smart alert
---
## Quick Start: Agent Self-Registration
### 1. Register Your Agent
```bash
curl -X POST https://solskill.ai/api/v1/agents/register \
-H "Content-Type: application/json" \
-d '{"name": "YourAgentName"}'
```
Response:
```json
{
"success": true,
"agent": {
"id": "uuid",
"name": "YourAgentName",
"api_key": "solskill_...",
"verified": true
},
"important": "SAVE YOUR API KEY!"
}
```
### 2. Store Credentials
```bash
mkdir -p ~/.config/solskill
cat > ~/.config/solskill/credentials.json << 'EOF'
{
"api_key": "solskill_your_api_key_here",
"agent_id": "your_agent_id"
}
EOF
chmod 600 ~/.config/solskill/credentials.json
```
### 3. Use in Requests
```bash
API_KEY=$(jq -r .api_key ~/.config/solskill/credentials.json)
curl -H "x-api-key: $API_KEY" https://solskill.ai/api/v1/...
```
---
## Market Prices (NEW v3)
### Get Real-Time Token Prices
```bash
GET /market/prices
GET /market/prices?tokens=SOL,JUP,BONK
```
Returns live prices from Jupiter Price API for top Solana tokens.
Response:
```json
{
"success": true,
"prices": {
"SOL": {"price": 180.52, "symbol": "SOL", "mint": "So111..."},
"JUP": {"price": 1.23, "symbol": "JUP", "mint": "JUPy..."},
"BONK": {"price": 0.00003, "symbol": "BONK", "mint": "DezX..."}
},
"timestamp": "2026-02-07T..."
}
```
Supported tokens: SOL, USDC, JUP, RAY, JITO, PYTH, BONK, WIF, ORCA, MNDE
---
## Strategy Backtesting (NEW v3)
### Backtest a Strategy
```bash
POST /strategies/backtest
{
"strategy": "balanced",
"token": "USDC",
"amount": 1000,
"periodDays": 90
}
```
Strategies: `conservative`, `balanced`, `aggressive`, `yield-farming`, `lending`
Response:
```json
{
"success": true,
"backtest": {
"strategy": "balanced",
"totalReturn": 85.23,
"finalBalance": 1085.23,
"apy": 12.8,
"maxDrawdown": 3.2,
"sharpeRatio": 1.45,
"winRate": 62.5,
"dailyReturns": [0.03, 0.01, -0.02, ...]
}
}
```
---
## Trending Tokens (NEW v3)
### Get Top Trending Solana Tokens
```bash
GET /tokens/trending
GET /tokens/trending?limit=10
```
Data from DexScreener with Jupiter price enrichment.
Response:
```json
{
"success": true,
"trending": [
{"rank": 1, "tokenAddress": "...", "symbol": "TOKEN", "price": 0.05, "totalAmount": 500}
],
"source": "dexscreener"
}
```
---
## Swap & Deposit (NEW v3)
### Composite: Swap Then Deposit
```bash
POST /wallet/swap-and-deposit
{
"fromToken": "SOL",
"toToken": "USDC",
"amount": 1.5,
"depositVault": "USDC Lending"
}
```
Returns Jupiter swap quote + Kamino deposit estimate with projected yield.
Response:
```json
{
"success": true,
"swapQuote": {"inAmount": "1500000000", "outAmount": "270000000", "priceImpactPct": "0.01"},
"depositEstimate": {"vault": "USDC Lending", "apy": 6.5, "projectedYield": {"yearly": 17.55}},
"totalSteps": 2,
"estimatedFees": {"totalFee": "~0.00001 SOL"}
}
```
---
## DeFi TVL (NEW v3)
### Solana Ecosystem TVL
```bash
GET /defi/tvl
GET /defi/tvl?limit=10&category=Lending|DEX
```
Real-time TVL data from DefiLlama for all Solana protocols.
Response:
```json
{
"success": true,
"chain": "Solana",
"totalTvl": 8500000000,
"protocols": [
{"name": "Marinade Finance", "tvl": 1200000000, "tvlChange24h": 2.1, "category": "Liquid Staking"}
],
"categoryBreakdown": {"Lending": 3000000000, "DEX": 2500000000},
"source": "defillama"
}
```
---
## Gas Estimator (NEW v3)
### Get Fee Estimates
```bash
GET /gas/estimate
```
Live Solana priority fees from RPC with recommended tiers.
Response:
```json
{
"success": true,
"gasEstimate": {
"baseFee": 0.000005,
"priorityFee": {
"low": {"microLamports": 1000, "label": "Economy"},
"medium": {"microLamports": 10000, "label": "Standard"},
"high": {"microLamports": 100000, "label": "Fast"}
},
"currentTps": 3500,
"recommendedPriority": "medium"
}
}
```
---
## Portfolio Rebalancer (NEW v3)
### Generate Rebalance Plan
```bash
POST /portfolio/rebalance
{
"targetAllocation": {"SOL": 50, "USDC": 30, "yield": 20},
"totalValue": 10000,
"currentHoldings": {"USDC": 100}
}
```
Returns step-by-step execution plan with swap and deposit instructions.
Response:
```json
{
"success": true,
"rebalance": {
"steps": [
{"step": 1, "action": "swap", "from": "USDC", "to": "SOL", "amountUsd": 5000, "endpoint": "POST /api/v1/jupiter/swap"},
{"step": 2, "action": "deposit", "from": "USDC", "to": "Kamino Lending", "amountUsd": 2000, "endpoint": "POST /api/v1/kamino/deposit"}
],
"estimatedCost": {"totalEstimate": "~$0.04"}
}
}
```
---
## Portfolio P&L (NEW v3)
### Get Profit & Loss
```bash
GET /wallet/pnl
GET /wallet/pnl?wallet=WALLET_ADDRESS
```
Response:
```json
{
"success": true,
"pnl": {
"totalValue": 4250.00,
"totalCost": 3800.00,
"pnlUsd": 450.00,
"pnlPercent": 11.84,
"byToken": [
{"token": "SOL", "balance": 5.2, "currentPrice": 180, "pnlUsd": 120, "pnlPercent": 14.5}
]
}
}
```
---
## Protocol Comparison (NEW v3)
### Compare Protocols
```bash
GET /protocols/compare?action=lend&token=USDC
GET /protocols/compare?action=lp&token=SOL&limit=5
```
Actions: `lend`, `deposit`, `lp`, `liquidity`, `vault`
Response:
```json
{
"success": true,
"comparison": {
"protocols": [
{"name": "Kamino Lend", "apy": 6.5, "tvl": 150000000, "risk": "low", "fees": "0% deposit"},
{"name": "Marginfi", "apy": 5.8, "tvl": 80000000, "risk": "low", "fees": "0% deposit"}
],
"recommendation": "Kamino Lend offers the best lend yield for USDC at 6.5% APY with low risk."
}
}
```
---
## Smart Alerts (NEW v3)
### Create Smart Alert
```bash
POST /alerts/smart
{
"type": "price",
"condition": {"token": "SOL", "operator": "above", "value": 200},
"webhook": "https://your-webhook.com/alert"
}
```
Types: `price`, `yield`, `tvl`, `gas`, `health`
Operators: `above`, `below`, `change_pct`, `crosses`
### List Smart Alerts
```bash
GET /alerts/smart
GET /alerts/smart?type=price&status=active
```
### Delete Smart Alert
```bash
DELETE /alerts/smart/:alertId
```
---
## Strategy Engine
### Get Strategy Recommendation
```bash
POST /strategies/recommend
{
"goal": "maximize yield",
"risk": "medium",
"amount": 1000,
"token": "USDC"
}
```
Response:
```json
{
"success": true,
"strategy": {
"totalEstimatedApy": 12.5,
"riskScore": 35,
"allocations": [
{
"protocol": "Kamino Vaults",
"action": "deposit",
"allocation": 40,
"amountUsd": 400,
"estimatedApy": 15.2,
"riskLevel": "medium",
"endpoint": "POST /api/v1/kamino/deposit"
}
]
}
}
```
Risk levels: `low`, `medium`, `high`
---
## Simulation Mode
### Simulate Any Operation
```bash
POST /simulate
{
"operation": "swap",
"params": {
"inputMint": "SOL",
"outputMint": "USDC",
"amount": "1000000000",
"slippageBps": 50
}
}
```
Supported operations: `swap`, `deposit`, `withdraw`, `add-liquidity`
Response includes:
- Expected output amounts
- Price impact
- Fee breakdown
- Risk assessment
- Endpoint to execute
---
## Risk Score
### Assess Risk for Any Action
```bash
GET /risk/score?protocol=kamino&action=deposit&token=SOL&amount=100
```
Parameters:
- `protocol` — kamino, raydium, jupiter
- `action` — deposit, withdraw, borrow, swap, lp, add-liquidity
- `token` — Token symbol (SOL, USDC, etc.)
- `amount` — Position size
Response:
```json
{
"success": true,
"risk": {
"overallScore": 22,
"riskLevel": "MODERATE",
"breakdown": [
{"category": "Smart Contract", "score": 10, "weight": 35, "detail": "3 audits..."},
{"category": "Liquidation", "score": 5, "weight": 28, "detail": "Supply-side only..."},
{"category": "Protocol TVL & Maturity", "score": 10, "weight": 21, "detail": "TVL: $500M+..."},
{"category": "Historical Performance", "score": 15, "weight": 14, "detail": "No incidents..."}
],
"recommendation": "Acceptable risk level for most portfolios."
}
}
```
---
## Health Monitor
### Check Platform & Protocol Health
```bash
GET /health
```
Response:
```json
{
"success": true,
"status": "healthy",
"solana": {
"network": "mainnet-beta",
"tps": 3500,
"rpcLatencyMs": 85,
"medianPriorityFeeMicroLamports": 1000
},
"protocols": [
{"name": "Jupiter", "status": "operational", "responseTimeMs": 280},
{"name": "Kamino", "status": "operational", "responseTimeMs": 150},
{"name": "Raydium", "status": "operational", "responseTimeMs": 200},
{"name": "DefiLlama", "status": "operational", "responseTimeMs": 120}
],
"solskill": {
"version": "3.0.0",
"endpoints": 45,
"uptime": "99.9%"
}
}
```
---
## Yield Optimizer
### Find Best Yields Across All Protocols
```bash
GET /yields/best?token=USDC&minApy=5&maxRisk=medium&limit=10
```
Parameters:
- `token` — Filter by token symbol
- `minApy` — Minimum APY threshold
- `maxRisk` — Maximum risk level (low, medium, high)
- `limit` — Max results (default 20, max 50)
Response:
```json
{
"success": true,
"yields": [
{
"protocol": "kamino-lend",
"type": "lending",
"token": "USDC",
"apy": 8.5,
"tvlUsd": 150000000,
"riskLevel": "low",
"endpoint": "POST /api/v1/kamino/deposit"
}
],
"source": "defillama"
}
```
---
## Token Swaps (Jupiter)
### List Tokens
```bash
GET /jupiter/tokens
GET /jupiter/tokens?all=true # All verified tokens
```
### Get Quote
```bash
GET /jupiter/quote?inputMint=SOL_MINT&outputMint=USDC_MINT&amount=LAMPORTS&slippageBps=50
```
### Execute Swap (Protected)
```bash
POST /jupiter/swap
{
"inputMint": "So11111111111111111111111111111111111111112",
"outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "1000000000",
"userPublicKey": "YOUR_WALLET",
"slippageBps": 50
}
```
---
## Token Swaps (Raydium)
### Get Quote
```bash
GET /raydium/quote?inputMint=SOL_MINT&outputMint=USDC_MINT&amount=LAMPORTS
```
### Execute Swap (Protected)
```bash
POST /raydium/swap
{
"inputMint": "So11111111111111111111111111111111111111112",
"outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "1000000000",
"userPublicKey": "YOUR_WALLET",
"slippageBps": 50
}
```
---
## Liquidity Pools (Raydium)
### List Pools
```bash
GET /raydium/pools?token=SOL&minTvl=1000000&minApy=10
```
### Get Pool Details
```bash
GET /raydium/pools/:poolId
```
### Add Liquidity (Protected)
```bash
POST /raydium/pools/add-liquidity
{
"poolId": "POOL_ADDRESS",
"wallet": "YOUR_WALLET",
"amountA": "1000000000",
"slippage": 0.5
}
```
### Remove Liquidity (Protected)
```bash
POST /raydium/pools/remove-liquidity
{
"poolId": "POOL_ADDRESS",
"wallet": "YOUR_WALLET",
"lpAmount": "1500000000",
"slippage": 0.5
}
```
---
## Lending & Vaults (Kamino)
### List Markets
```bash
GET /kamino/markets
```
### Get Reserves (with APY)
```bash
GET /kamino/reserves?token=SOL
```
### List Vaults
```bash
GET /kamino/vaults?token=USDC&minApy=10
```
### Get Positions
```bash
GET /kamino/positions?wallet=WALLET_ADDRESS
```
### Deposit/Withdraw (Protected)
```bash
POST /kamino/deposit
{
"wallet": "WALLET_ADDRESS",
"reserve": "RESERVE_ADDRESS",
"amount": "1000000",
"action": "deposit"
}
```
### Borrow/Repay (Protected)
```bash
POST /kamino/borrow
{
"wallet": "WALLET_ADDRESS",
"reserve": "RESERVE_ADDRESS",
"amount": "1000000",
"action": "borrow"
}
```
---
## Wallet Operations
### Check Balance
```bash
GET /wallet/balance?wallet=WALLET_ADDRESS
```
### Send Tokens (Protected)
```bash
POST /wallet/send
{
"to": "RECIPIENT_ADDRESS",
"amount": 0.5,
"mint": "TOKEN_MINT"
}
```
### Get Receive Address (Protected)
```bash
GET /wallet/receive
```
### Transaction History (Protected)
```bash
GET /wallet/transactions?limit=10
```
---
## Limit Orders
### Create Order (Protected)
```bash
POST /orders
{
"inputMint": "So111...",
"outputMint": "EPjF...",
"inAmount": "1000000000",
"outAmount": "150000000"
}
```
### List Orders (Protected)
```bash
GET /orders?status=open
```
### Cancel Order (Protected)
```bash
DELETE /orders/:orderId
```
---
## Price Alerts
### Create Alert (Protected)
```bash
POST /alerts
{
"tokenMint": "So111...",
"tokenSymbol": "SOL",
"condition": "above",
"targetPrice": 200,
"webhookUrl": "https://..."
}
```
### List Alerts (Protected)
```bash
GET /alerts?status=active
```
### Delete Alert (Protected)
```bash
DELETE /alerts/:alertId
```
---
## Common Token Mints
| Token | Mint Address |
|-------|--------------|
| SOL | So11111111111111111111111111111111111111112 |
| USDC | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v |
| USDT | Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB |
| JUP | JUPyiwrYJFskUPiHa7hkeR8VUtAeFoSYbKedZNsDvCN |
| KMNO | KMNo3nJsBXfcpJTVhZcXLW7RmTwTt4GVFE7suUBo9sS |
| RAY | 4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R |
| JITO | jtojtomepa8beP8AuQc6eXt5FriJwfFMwQx2v2f9mCL |
| PYTH | HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3 |
| BONK | DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263 |
| WIF | EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm |
| ORCA | orcaEKTdK7LKz57vaAYr9QeNsVEPfiu6QeMU1kektZE |
| MNDE | MNDEFzGvMt87ueuHvVU9VcTqsAP5b3fTGPsHuuPA5ey |
---
## Workflow Examples
### Smart Yield Strategy
```bash
# 1. Check market prices
curl "https://solskill.ai/api/v1/market/prices?tokens=SOL,USDC,JUP"
# 2. Get personalized strategy
curl -X POST https://solskill.ai/api/v1/strategies/recommend \
-d '{"goal":"maximize yield","risk":"medium","amount":1000,"token":"USDC"}'
# 3. Backtest the strategy
curl -X POST https://solskill.ai/api/v1/strategies/backtest \
-d '{"strategy":"balanced","token":"USDC","amount":1000,"periodDays":90}'
# 4. Compare protocols
curl "https://solskill.ai/api/v1/protocols/compare?action=lend&token=USDC"
# 5. Simulate before executing
curl -X POST https://solskill.ai/api/v1/simulate \
-d '{"operation":"deposit","params":{"token":"USDC","amount":400}}'
# 6. Execute (with API key)
curl -X POST https://solskill.ai/api/v1/kamino/deposit \
-H "x-api-key: $API_KEY" \
-d '{"reserve":"...","amount":"400000000","action":"deposit"}'
```
### Swap & Deposit in One Flow
```bash
# 1. Get swap + deposit quote
curl -X POST https://solskill.ai/api/v1/wallet/swap-and-deposit \
-d '{"fromToken":"SOL","toToken":"USDC","amount":1.5,"depositVault":"USDC Lending"}'
# 2. Check gas fees
curl "https://solskill.ai/api/v1/gas/estimate"
# 3. Execute steps with API key
```
### Portfolio Management
```bash
# 1. Check P&L
curl "https://solskill.ai/api/v1/wallet/pnl?wallet=YOUR_WALLET"
# 2. Plan rebalance
curl -X POST https://solskill.ai/api/v1/portfolio/rebalance \
-d '{"targetAllocation":{"SOL":50,"USDC":30,"yield":20},"totalValue":10000}'
# 3. Set smart alerts
curl -X POST https://solskill.ai/api/v1/alerts/smart \
-H "x-api-key: $API_KEY" \
-d '{"type":"price","condition":{"token":"SOL","operator":"above","value":200}}'
# 4. Track DeFi TVL
curl "https://solskill.ai/api/v1/defi/tvl?category=Lending&limit=10"
```
### Find Best Yields
```bash
# 1. Get best opportunities
curl "https://solskill.ai/api/v1/yields/best?token=USDC&minApy=5&maxRisk=medium"
# 2. Check health of protocols
curl "https://solskill.ai/api/v1/health"
# 3. Discover trending tokens
curl "https://solskill.ai/api/v1/tokens/trending?limit=10"
# 4. Assess risk
curl "https://solskill.ai/api/v1/risk/score?protocol=kamino&action=deposit&token=USDC&amount=1000"
```
---
## Error Handling
All endpoints return:
```json
{
"success": false,
"error": "Description"
}
```
Status codes:
- `400` — Invalid parameters
- `401` — Invalid API key
- `429` — Rate limited (wait 60s)
- `500` — Server error
- `502` — External API error
- `504` — External timeout (retry)
---
## Rate Limits
- 100 requests/minute per API key
- Rate limit headers in responses
- 429 = wait 60 seconds
---
## Support
- Docs: https://solskill.ai
- Dashboard: https://solskill.ai/dashboard
- GitHub: https://github.com/caiovicentino/solskill