dex-skills v0.1.0

Quick Start

Initialize the SDK, launch a token, query token info, and list recent launches.

Initialize

Configure wallets for the chains you need. Each chain requires its own wallet config.

init.ts
import { createSkills, getSkill } from "dex-skills";

const skills = createSkills({
  wallets: {
    solana: {
      privateKey: "base58_private_key",
      rpcUrl: "https://api.mainnet-beta.solana.com",
    },
  },
});

Launch a Token

Launch a token on any supported platform. The initialBuyAmount is denominated in the chain's native currency (SOL, ETH, BNB, or TRX).

launch-solana.ts
const result = await getSkill(skills, "pumpfun").launch({
  name: "My Token",
  symbol: "MTK",
  description: "A token on Pump.fun",
  initialBuyAmount: "0.1", // SOL
  links: { twitter: "https://x.com/mytoken" },
});

console.log(result.tokenAddress);
console.log(result.txHash);
launch-base.ts
const result = await getSkill(skills, "clanker").launch({
  name: "My Token",
  symbol: "MTK",
  description: "A token on Clanker",
  initialBuyAmount: "0.01", // ETH
  links: { twitter: "https://x.com/mytoken" },
});

console.log(result.tokenAddress);
console.log(result.txHash);
launch-bnb.ts
const result = await getSkill(skills, "fourmeme").launch({
  name: "My Token",
  symbol: "MTK",
  description: "A token on Four.meme",
  initialBuyAmount: "0.05", // BNB
  links: { twitter: "https://x.com/mytoken" },
});

console.log(result.tokenAddress);
console.log(result.txHash);
launch-tron.ts
const result = await getSkill(skills, "sunpump").launch({
  name: "My Token",
  symbol: "MTK",
  description: "A token on SunPump",
  initialBuyAmount: "100", // TRX
  links: { twitter: "https://x.com/mytoken" },
});

console.log(result.tokenAddress);
console.log(result.txHash);

Query Token Info

Read operations do not require a private key. Pass the token mint/contract address as a string.

query.ts
const info = await getSkill(skills, "pumpfun").getTokenInfo("TokenMintAddress...");

console.log(info.name);          // Token Name
console.log(info.price);         // Price in native currency
console.log(info.marketCap);     // Market cap in USD
console.log(info.bondingCurveProgress); // 0-100

List Tokens

List recently launched tokens on any platform. Also a read-only operation.

list.ts
const tokens = await getSkill(skills, "pumpfun").listTokens({
  limit: 10,
  sortBy: "createdAt",
  sortOrder: "desc",
});

for (const token of tokens) {
  console.log(token.name, token.symbol, token.tokenAddress);
}
Private keys
Private keys are never stored by the SDK. They are passed in the wallet config and used only for transaction signing.