.agents/skills/pump-sdk-core/SKILL.md
Build and extend the core Pump SDK — an offline-first TypeScript SDK that constructs Solana TransactionInstructions for token creation, buying, selling, migration, and creator fee collection across three on-chain programs (Pump, PumpAMM, PumpFees).
npx skillsauth add x402agent/solana-clawd pump-sdk-coreInstall 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.
Build, extend, and maintain the core Pump SDK — an offline-first TypeScript SDK that constructs Solana TransactionInstructions for token creation, buying, selling, migration, and creator fee collection across three on-chain programs (Pump, PumpAMM, PumpFees) plus the Mayhem program.
The SDK is published as @nirholas/pump-sdk (npm) and powers the Pump protocol — a Solana-based token launchpad with bonding curve pricing, automatic AMM migration after graduation, tiered fees, and creator fee sharing. The codebase uses Anchor for IDL-based instruction building and supports both Token (SPL) and Token-2022 token programs.
src/sdk.ts — PumpSdk class with all instruction builders and account decoderssrc/onlineSdk.ts — OnlinePumpSdk class extending offline SDK with live RPC fetchessrc/index.ts — barrel re-export module defining the public API surfacesrc/state.ts — TypeScript interfaces for all on-chain account statesrc/pda.ts — Program Derived Address derivation for all programssrc/idl/pump.ts, src/idl/pump_amm.ts, src/idl/pump_fees.ts — Anchor IDL definitionsPumpSdk): Builds instructions without a live connection. Uses Anchor Program instances initialized with a dummy keypair and connection. Exported as a singleton PUMP_SDK.OnlinePumpSdk): Wraps PumpSdk with a real Connection for fetching account state via getMultipleAccountsInfo. Provides "BothPrograms" methods that aggregate data across bonding curve (Pump) and AMM (PumpAMM) programs.PUMP_PROGRAM_ID, PUMP_AMM_PROGRAM_ID, PUMP_FEE_PROGRAM_ID, plus MAYHEM_PROGRAM_ID for mayhem-mode tokens.Every instruction method returns TransactionInstruction[] (not transactions), allowing callers to compose them into transactions freely. Methods follow a naming convention:
*Instruction — single instruction*Instructions — multiple instructions (e.g., ATA creation + buy)The SDK decodes raw AccountInfo<Buffer> into typed interfaces using the Anchor coder:
decodeGlobal, decodeBondingCurve, decodeFeeConfig, decodeSharingConfig, etc.decodeBondingCurveNullable) handle missing or undersized accounts gracefully.maxSolCost = solAmount + (solAmount × slippage × 10 / 1000)
minSolReceived = solAmount - (solAmount × slippage × 10 / 1000)
TransactionInstruction[] from instruction builders, never full Transaction objectsgetMultipleAccountsInfo to batch RPC calls (2–3 accounts per call)tokenProgram parameterextendAccountInstruction) for bonding curves that need more spacesrc/errors.ts for validation failuresOnlinePumpSdksdk.ts and onlineSdk.ts{ 0: true } as a flags argument — this is intentional, not a bugBONDING_CURVE_NEW_SIZE = 151 — accounts may need extension before certain operationsBondingCurve.complete === true means the token has graduated to AMM — bonding curve operations will failcreateInstruction (v1) is deprecated in favor of createV2Instruction (Token-2022)development
Formally verify programs by writing Lean 4 proofs. Trigger this skill whenever the user wants to formally verify code, generate Lean 4 proofs, prove properties about algorithms or smart contracts, verify invariants, convert program logic into formal specifications, or anything involving Lean 4 and formal verification. Also trigger when the user mentions "qedgen", "lean proof", "formal proof", "verify my code", "prove correctness", "formal verification", or wants mathematical guarantees about their implementation.
data-ai
Orchestrate multi-bot trading swarms on Pump.fun with persona-driven agents
tools
End-to-end Solana development playbook (Jan 2026). Prefer Solana Foundation framework-kit (@solana/client + @solana/react-hooks) for React/Next.js UI. Prefer @solana/kit for all new client/RPC/transaction code. When legacy dependencies require web3.js, isolate it behind @solana/web3-compat (or @solana/web3.js as a true legacy fallback). Covers wallet-standard-first connection (incl. ConnectorKit), Anchor/Pinocchio programs, Codama-based client generation, LiteSVM/Mollusk/Surfpool testing, and security checklists.
tools
Buy and sell tokens on Pump.fun bonding curves and AMM pools