본문으로 건너뛰기
cccskills
무료GitHub에 공개

pump-solana-dev

Solana development patterns used in the Pump SDK — Anchor IDL-based program interaction, SPL Token and Token-2022 management, transaction construction with instruction composition, RPC batching, and cross-program coordination.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md3.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Solana Development — Web3.js, Anchor, SPL Tokens & On-Chain Patterns

Apply Solana development patterns used throughout the Pump SDK: Anchor IDL-based program interaction, SPL Token and Token-2022 account management, transaction construction with instruction composition, RPC batching, and cross-program account coordination.

Anchor Program Initialization

import { Program, AnchorProvider } from '@coral-xyz/anchor';

function getPumpProgram(connection: Connection): Program<Pump> {
    const provider = new AnchorProvider(
        connection,
        { publicKey: PublicKey.default, signTransaction: async (tx) => tx, signAllTransactions: async (txs) => txs },
        { commitment: 'confirmed' }
    );
    return new Program(pumpIdl as Pump, PUMP_PROGRAM_ID, provider);
}

Offline pattern: Uses a dummy provider (no wallet) for building instructions. Actual signing happens in the caller's code.

Instruction Building with accountsStrict

const ix = await program.methods
    .buy(amount, maxSolCost, flags)
    .accountsStrict({
        global: GLOBAL_PDA,
        bondingCurve: bondingCurvePda(mint),
        user: userPublicKey,
        // ... all required accounts
    })
    .remainingAccounts(additionalAccounts)
    .instruction();

PDA Derivation

const [pda, bump] = PublicKey.findProgramAddressSync(
    [Buffer.from("bonding-curve"), mint.toBuffer()],
    PUMP_PROGRAM_ID
);

RPC Batching

const accounts = await connection.getMultipleAccountsInfo([
    bondingCurvePda(mint),
    GLOBAL_PDA,
    FEE_CONFIG_PDA,
]);

Token-2022 Support

The SDK supports both SPL Token and Token-2022:

  • createV2Instruction creates Token-2022 mints
  • tokenProgram parameter selects the appropriate program
  • Associated Token Accounts (ATAs) are created idempotently

Account Decoding

const bondingCurve = program.coder.accounts.decode('bondingCurve', accountInfo.data);

Nullable variants handle missing accounts:

const bc = decodeBondingCurveNullable(accountInfo); // returns null instead of throwing

Transaction Simulation

const result = await connection.simulateTransaction(tx, [signer]);
// Parse return data from simulation logs

BN.js Arithmetic

All amounts use BN for arbitrary-precision integer arithmetic:

const fee = amount.mul(new BN(feeBps)).div(new BN(10000));
const ceilFee = amount.mul(new BN(feeBps)).add(new BN(9999)).div(new BN(10000));

Patterns to Follow

  • Always use accountsStrict — not accounts — for type-safe account specification
  • Use getMultipleAccountsInfo to batch account fetches
  • Build instruction arrays, not transactions — let callers compose
  • Handle both Token and Token-2022 programs via parameter
  • Use nullable decoders for optional accounts

Common Pitfalls

  • AnchorProvider with dummy wallet is for instruction building only — never sign with it
  • getMultipleAccountsInfo returns nulls for missing accounts — always check
  • Transaction size limit is 1232 bytes — large instruction sets may need multiple transactions
  • remainingAccounts order matters — the on-chain program reads them positionally

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

1password

무료

Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks SolanaOS to add a note, list notes, search notes, or manage note folders.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

Manage Apple Reminders via remindctl CLI (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

Create, search, and manage Bear notes via grizzly CLI.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

blucli

무료

BluOS CLI (blu) for discovery, playback, grouping, and volume.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

x402agent/SolanaOS92026년 7월 23일 업데이트

x402agent의 스킬 모두 보기

이 스킬의 문제 신고