skills/aptos/decibel/SKILL.md
Decibel on-chain perpetual futures trading platform on Aptos. Covers trading engine, orderbook, TypeScript SDK, REST APIs, WebSocket streams, market data, position management, TWAP orders, and vault operations. Triggers on Decibel, perpetual futures, Aptos trading, on-chain trading, perps, orderbook, TWAP, market data, trading API.
npx skillsauth add raintree-technology/claude-starter decibelInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Decibel is a fully on-chain perpetual futures trading platform built on Aptos blockchain.
Base URLs:
https://api.netna.aptoslabs.com/decibelwss://api.netna.aptoslabs.com/decibelCore Features:
npm install @decibel/sdk
import { DecibelClient } from "@decibel/sdk";
const client = new DecibelClient({
apiKey: process.env.DECIBEL_API_KEY,
network: "mainnet",
});
// Get available markets
const markets = await client.getMarkets();
// Get current prices
const prices = await client.getPrices();
// Get orderbook depth
const orderbook = await client.getOrderbook("BTC-PERP", { depth: 10 });
// Get recent trades
const trades = await client.getRecentTrades("BTC-PERP", { limit: 50 });
// Get OHLC/candlesticks
const candles = await client.getCandles("BTC-PERP", {
interval: "1h",
limit: 100,
});
// Place limit order
const order = await client.placeOrder({
market: "BTC-PERP",
side: "buy",
type: "limit",
price: 50000,
size: 0.1,
});
// Place market order
const marketOrder = await client.placeOrder({
market: "BTC-PERP",
side: "sell",
type: "market",
size: 0.1,
});
// Cancel order
await client.cancelOrder(orderId);
// Cancel all orders
await client.cancelAllOrders({ market: "BTC-PERP" });
// Get open positions
const positions = await client.getPositions();
// Get specific position
const position = await client.getPosition("BTC-PERP");
// Close position
await client.closePosition("BTC-PERP");
// Set take-profit/stop-loss
await client.setTPSL("BTC-PERP", {
takeProfit: 55000,
stopLoss: 48000,
});
// Place TWAP order (reduces slippage)
const twapOrder = await client.placeTWAPOrder({
market: "BTC-PERP",
side: "buy",
size: 1.0,
duration: 3600, // 1 hour in seconds
intervals: 12, // Execute every 5 minutes
});
// Get active TWAP orders
const activeTWAPs = await client.getActiveTWAPOrders();
// Cancel TWAP order
await client.cancelTWAPOrder(twapOrderId);
# Get markets
GET /market-data/markets
# Get prices
GET /market-data/prices
# Get orderbook
GET /market-data/orderbook?market=BTC-PERP&depth=10
# Get recent trades
GET /market-data/trades?market=BTC-PERP&limit=50
# Get candlesticks
GET /market-data/candles?market=BTC-PERP&interval=1h&limit=100
# Get account overview
GET /user/account
Headers: Authorization: Bearer {token}
# Get positions
GET /user/positions
# Get open orders
GET /user/orders
# Get order history
GET /user/orders/history
# Get trade history
GET /user/trades
# Get funding rate history
GET /user/funding-history
# Place order
POST /transactions/place-order
Body: { market, side, type, price?, size }
# Cancel order
POST /transactions/cancel-order
Body: { orderId }
# Deposit to subaccount
POST /transactions/deposit
Body: { amount, subaccountId? }
# Withdraw from subaccount
POST /transactions/withdraw
Body: { amount, subaccountId? }
const ws = new WebSocket("wss://api.netna.aptoslabs.com/decibel");
ws.onopen = () => {
// Subscribe to channels
ws.send(JSON.stringify({
type: "subscribe",
channels: ["trades:BTC-PERP", "orderbook:BTC-PERP"],
}));
};
ws.onmessage = (event) => {
const data = JSON.parse(event.data);
console.log(data);
};
| Channel | Description |
|---------|-------------|
| trades:{market} | Real-time trades |
| orderbook:{market} | Orderbook updates |
| ticker:{market} | Price ticker |
| account | Account updates (authenticated) |
| orders | Order updates (authenticated) |
| positions | Position updates (authenticated) |
| fills | Fill notifications (authenticated) |
ws.send(JSON.stringify({
type: "auth",
token: "your-api-token",
}));
ws.send(JSON.stringify({
type: "subscribe",
channels: ["account", "orders", "positions", "fills"],
}));
// Create subaccount
const subaccount = await client.createSubaccount({
name: "Trading Bot 1",
});
// List subaccounts
const subaccounts = await client.getSubaccounts();
// Deposit to subaccount
await client.deposit({
amount: 1000,
subaccountId: subaccount.id,
});
// Withdraw from subaccount
await client.withdraw({
amount: 500,
subaccountId: subaccount.id,
});
// Delegate trading authority
await client.createDelegation({
delegatee: "0x...",
permissions: ["trade", "cancel"],
expiry: Date.now() + 30 * 24 * 60 * 60 * 1000,
});
// Revoke delegation
await client.revokeDelegation(delegationId);
try {
const order = await client.placeOrder({...});
} catch (error) {
if (error.code === "INSUFFICIENT_MARGIN") {
console.log("Not enough margin for this order");
} else if (error.code === "INVALID_PRICE") {
console.log("Price outside allowed range");
} else if (error.code === "RATE_LIMITED") {
await sleep(1000);
// Retry
}
}
DO:
DON'T:
@decibel/sdk0xb8a5788314451ce4d2fbbad32e1bad88d4184b73943b7fe5166eab93cf1a5a95development
Whop platform expert for digital products, memberships, and community monetization. Covers memberships API, payments, courses, forums, webhooks, OAuth apps, and checkout integration. Build SaaS, course platforms, and gated communities. Triggers on Whop, memberships, digital products, course platform, community monetization, Whop API, license keys.
development
Token-Oriented Object Notation (TOON) format expert for 30-60% token savings on structured data. Auto-applies to arrays with 5+ items, tables, logs, API responses, database results. Supports tabular, inline, and expanded formats with comma/tab/pipe delimiters. Triggers on large JSON, data optimization, token reduction, structured data, arrays, tables, logs, metrics, TOON.
development
Plaid banking API expert for financial data integration. Covers Plaid Link, Auth (account/routing numbers), Transactions, Identity verification, Balance checking, and webhooks. Build fintech apps with bank connections, ACH transfers, and transaction history. Triggers on Plaid, banking API, Plaid Link, bank connection, ACH, financial data, transaction history.
development
Helius Solana RPC and API expert. High-performance infrastructure for Solana including RPC nodes, DAS API for NFTs/tokens, LaserStream real-time streaming, webhooks, Priority Fee API, Enhanced Transactions, and ZK Compression. Triggers on Helius, Solana RPC, DAS API, Digital Asset Standard, NFT metadata, Solana webhooks, priority fees, LaserStream, ZK compression.