Skip to main content
本頁內容由 AI 自動翻譯,所有內容以英文版本為準。查看英文版 →
本文件中的所有內容都假設你已有可用的 Solana 開發工具鏈。本頁列出工具、截至 2026 年 9 月已知可與 Raydium 搭配使用的版本,以及特定的設置注意事項。在執行後續章節中的任何程式碼範例之前,請先從這裡開始。 有兩組版本需要注意,它們並不相同。 若要建構或分叉 Raydium 程式,你需要它們所固定的確切工具鏈 — Rust 1.91.0、Agave 3.1.10、Anchor 1.0.2(截至 2026-09-09 升級)。若要從 TypeScript 或 Python 整合已部署的程式,你只需要足夠新的用戶端程式庫來與其通訊,版本固定是建議性的。下面每個部分都會說明涵蓋的是哪種情況。

核心工具

Solana CLI

與 Solana 叢集互動的標準命令列介面 — 錢包管理、RPC 呼叫、程式部署。 安裝:
驗證:
安裝主機已移動。 release.solana.com 屬於 Solana Labs;用戶端現在由 Anza 維護,稱為 Agave,版本發佈來自 release.anza.xyz。自我更新二進位檔是 agave-installsolana-install 保留為舊版別名),所以 agave-install updateagave-install init <version> 是目前的用法。Solana 自己的文件也提供了一個一行安裝程式,可同時拉取 CLI、Rust 和 Anchor:
該安裝程式追蹤自己的當前版本概念,可能會給你一個與 Raydium 程式所固定的 Anchor 不同的版本 — 之後請檢查 anchor --version
為主網設定:
對於 Raydium 測試,你幾乎總是需要一個已資助的 devnet 錢包:

SPL Token CLI

SPL Token / Token-2022 操作的官方 CLI — 建立 mint、鑄造代幣、轉移。 安裝(包含在 Solana CLI 中):
常見操作:

Anchor CLI

用於取得 Raydium IDL、建構用戶端和驗證程式。 安裝:
Anchor 已移動儲存庫和主要版本。 標準儲存庫現在是 github.com/solana-foundation/anchor(之前是 coral-xyz/anchor),Anchor 1.0 是 Raydium 程式使用的第一個發佈線 — CPMM 和 LaunchLab 都在 2026-09-09 升級時固定 anchor-lang/anchor-spl =1.0.2,從 0.32.1 升級。avm 可以保存多個版本;avm use 1.0.2 是讓 anchor build 重現 Raydium 工件的方式。Anchor 1.1 和 1.2 存在且可以為你自己的程式建構,但針對與目標程式所固定的 anchor-lang 次版本不同的版本編譯的 CPI crate 將無法連結 — 見 sdk-api/rust-cpi
常見操作:

TypeScript 設置

Raydium 的主要整合路徑。

套件

截至 2026 年 9 月已知可一起使用的版本:
@coral-xyz/anchor 已凍結;套件現在是 @anchor-lang/core @coral-xyz/anchor 在 Anchor 移出 Coral 時停留在 0.32.1。Anchor 1.x 發佈為 @anchor-lang/core,Raydium 自己的程式儲存庫在 2026-09-09 升級時將其測試套件切換到了它。你實際使用的匯入保持不變 — import { Program, BN, AnchorProvider } from "@anchor-lang/core" — 所以遷移只是套件重新命名加上鎖定檔案更新。如果你正在從 0.3x 遷移,有兩個行為注意事項:.accounts({...}) 現在只接受 Anchor 無法自行解析的帳戶,所以傳遞完整集合的建構器應改為呼叫 .accountsPartial({...});而 @anchor-lang/core/dist/cjs/utils/tokenASSOCIATED_PROGRAM_ID 等幫助程式移動到的位置。

最小指令碼

sdk-api/typescript-sdk 以取得完整 SDK 參考。

Rust 設置

用於 CPI 整合和鏈上程式。

工具鏈

使用 cargo build-sbf 建構程式(舊的 cargo build-bpf 用法已移除)。

Raydium CPI 整合的程式 Cargo.toml

使用 =anchor-langanchor-spl 固定到目標程式所固定的版本。截至 2026-09,CPMM 固定 =1.0.2,CLMM 仍固定 =0.32.1,所以單一 crate 無法 CPI 到兩者 — 見 sdk-api/rust-cpi "cpi" 功能匯入 cpi 模組及 CPI 幫助程式(所以你可以 raydium_cp_swap::cpi::swap_base_input(...))。見 sdk-api/rust-cpi

Python 設置

次要整合路徑 — 對機器人開發者常見。

套件

版本:
兩個命名陷阱。RPC 用戶端匯入為 solana,但專案稱為 solana-pypip install solana-py 安裝不了任何有用的東西。而且 PyPI 上沒有 raydium-py 套件:社群 Raydium 幫助程式是你克隆的儲存庫,AL-THE-BOT-FATHER/raydium_py,不是已發佈的發行版。本頁的早期版本列出了一個 pip install raydium-py 行,但它從未有效。

最小指令碼

sdk-api/python-integration

RPC 端點

公開主網 RPC(api.mainnet-beta.solana.com)受到嚴格速率限制,在任何負載下都會節流。對於非平凡的使用,取得私有端點: 設定:
某些 RPC 操作需要擴展功能:
  • getProgramAccounts — 無限制掃描成本高;某些提供者會限制或按掃描收費。
  • getPriorityFeeEstimate — Helius 特定端點;其他提供者有等效項。
  • geyser / WebSocket 串流 — 低延遲機器人需要;並非所有提供者都公開。

Devnet 和 localnet

Devnet

Solana 的公開測試叢集。Raydium 有部分 devnet 部署:
  • 存在一些 CPMM 池用於測試。
  • AMM v4 有歷史 devnet 池。
  • CLMM 有幾個示例池。
  • Farm v6 已部署。
SDK 透過 cluster: "devnet" 支援 devnet:
注意:devnet 池流動性稀薄,可能有過時狀態。不要依賴 devnet 進行價格發現;僅將其用於建構和測試指令流。

使用分叉主網狀態的 Localnet

為了進行逼真的測試,將主網狀態分叉到本地驗證器:
這會將特定程式/帳戶狀態克隆到 localhost,你可以在那裡自由交易。理想用於:
  • 針對真實 Raydium 程式單元測試你的 CPI 整合。
  • 使用修改的參數重放交易以進行除錯。
  • 使用大型合成交易量進行壓力測試。
Raydium 團隊在主網部署前廣泛使用分叉 localnet 進行迴歸測試。

專案範本

TypeScript 整合啟動器

最小 package.json

Anchor CPI 程式啟動器

使用 Anchor 1.0:

有用的 CLI 工具

solana-keygen

讀取任何帳戶

在沒有解碼器的情況下查看池狀態很有用。

程式日誌

交易檢查

或透過 explorer — 貼上簽名並查看「Program Logs」標籤。

環境衛生

按用途分離錢包

  • 開發錢包:持有測試網 SOL,用於建構。
  • 生產錢包:持有真實 SOL,僅用於部署/多簽提交。
  • 機器人熱錢包:小餘額、狹窄權限。
金鑰不應硬編碼。使用環境變數或密鑰管理器。

.env 模式

版本固定

鎖定所有 Solana 生態系統依賴項。生態系統發展迅速;@solana/web3.js 的次版本升級以前曾引入破壞性變更。虔誠地使用 package-lock.json / Cargo.lock

指標

來源: