本文へ移動
cccskills
無料GitHub で公開

pump-fee-system

Complete Pump protocol fee system — tiered protocol fees based on market cap, creator fee collection across two programs, basis point arithmetic, and ceiling division for dust-safe calculations.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md3.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Fee System — Tiered Fees, Creator Fees & Protocol Fees

Implement and extend the Pump protocol's fee system: tiered protocol fees based on market cap, creator fee collection across two programs, and fee computation with ceiling division.

Context

The Pump protocol charges fees on every buy/sell transaction. Fees flow to protocol fee recipients and token creators. The fee system spans three programs and must handle tokens in both bonding curve and graduated (AMM) states.

Fee Types

FeeRecipientWhen Charged
Protocol feefeeRecipients[] in GlobalEvery buy/sell
Creator feeToken creator's vault PDAEvery buy/sell (if creator is set)
LP feeLiquidity providers (AMM only)Post-graduation trades

Tiered Fee Calculation

When a FeeConfig exists, fees are market-cap-dependent:

function calculateFeeTier({ feeTiers, marketCap }): Fees {
  // Iterate tiers in REVERSE order
  for (let i = feeTiers.length - 1; i >= 0; i--) {
    if (marketCap >= feeTiers[i].marketCapLamportsThreshold) {
      return feeTiers[i].fees;
    }
  }
  return feeTiers[0].fees; // fallback to lowest tier
}

Fee Computation

function getFee({ global, feeConfig, mintSupply, bondingCurve, amount }): BN {
  const { protocolFeeBps, creatorFeeBps } = computeFeesBps(...);
  const protocolFee = ceilDiv(amount * protocolFeeBps, 10000);
  const creatorFee = hasCreator ? ceilDiv(amount * creatorFeeBps, 10000) : 0;
  return protocolFee + creatorFee;
}

Creator Vault Balance

Creator fees accumulate in PDAs:

  • creatorVaultPda(creator) — Pump program vault
  • ammCreatorVaultPda(creator) — PumpAMM program vault

Balance = total lamports - rent exemption minimum.

Error Classes

ErrorCondition
NoShareholdersErrorEmpty shareholders array
TooManyShareholdersErrorMore than 10 shareholders
ZeroShareErrorShareholder has shareBps <= 0
InvalidShareTotalErrorShares don't sum to 10,000 bps
DuplicateShareholderErrorDuplicate addresses

Patterns to Follow

  • Use ceiling division (ceilDiv) for all fee calculations to prevent dust loss
  • Always check both creator vaults (Pump + AMM) when querying balances
  • Use transaction simulation (simulateTransaction) for read-only fee queries
  • Creator fee is only charged when bondingCurve.creator != PublicKey.default or it's a new curve

Common Pitfalls

  • Fee tiers must be iterated in reverse — the first match from the end is used
  • computeFeesBps returns different results depending on whether feeConfig is null (legacy vs tiered)
  • Creator fees are zero for tokens without a set creator
  • getMinimumDistributableFee requires transaction simulation — it cannot be computed offline
  • transferCreatorFeesToPump is only for graduated tokens — non-graduated tokens will fail

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

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 のスキルをすべて見る

このスキルの問題を報告する