Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
Toda a documentação aqui assume uma toolchain de desenvolvimento Solana em funcionamento. Esta página lista as ferramentas, as versões mínimas conhecidas por funcionarem com o Raydium em abril de 2026, e as armadilhas específicas de configuração. Comece por aqui antes de executar qualquer um dos exemplos de código dos capítulos posteriores.
Ferramentas principais
Solana CLI
A interface de linha de comando canônica para interagir com clusters Solana — gerenciamento de carteira, chamadas RPC, implantação de programas.
Instalação:
sh -c "$(curl -sSfL https://release.solana.com/v1.18.22/install)"
# Ou a versão mais recente estável:
sh -c "$(curl -sSfL https://release.solana.com/stable/install)"
Verificação:
solana --version # → solana-cli 1.18.22 (ou mais recente)
Configurar para mainnet:
solana config set --url https://api.mainnet-beta.solana.com
solana config set --keypair ~/.config/solana/id.json
solana-keygen new # criar uma carteira se você não tiver uma
solana address # sua chave pública
Para testes no Raydium, você quase sempre querrá uma carteira devnet financiada:
solana config set --url https://api.devnet.solana.com
solana airdrop 2 # 2 SOL para teste
SPL Token CLI
A CLI oficial para operações SPL Token / Token-2022 — criar mints, cunhar tokens, transferir.
Instalação (incluída com Solana CLI):
Operações comuns:
spl-token create-token # criar um mint SPL Token
spl-token create-token --program-id TOKEN_2022 ... # criar um mint Token-2022
spl-token create-account <MINT> # criar uma ATA
spl-token mint <MINT> 1000 # cunhar 1000 tokens para sua ATA
spl-token transfer <MINT> 100 <RECIPIENT> # transferir 100
spl-token display <ACCOUNT_OR_MINT> # inspecionar
Anchor CLI
Necessária para buscar IDLs do Raydium, construir clientes e verificar programas.
Instalação:
cargo install --git https://github.com/coral-xyz/anchor avm --locked
avm install 0.30.1
avm use 0.30.1
anchor --version
Operações comuns:
anchor idl fetch <PROGRAM_ID> -o program.idl.json # buscar o IDL on-chain
anchor idl init -f idl.json <PROGRAM_ID> # fazer upload de um IDL
anchor build # construir um programa a partir do código-fonte
Configuração TypeScript
O caminho principal de integração para Raydium.
Pacotes
npm install \
@solana/web3.js \
@solana/spl-token \
@coral-xyz/anchor \
@raydium-io/raydium-sdk-v2 \
bn.js \
decimal.js
Versões conhecidas por funcionar juntas em abril de 2026:
| Pacote | Versão |
|---|
@solana/web3.js | ≥1.95 |
@solana/spl-token | ≥0.4 |
@coral-xyz/anchor | ≥0.30 |
@raydium-io/raydium-sdk-v2 | ≥0.2.42-alpha |
Script mínimo
import { Connection, Keypair } from "@solana/web3.js";
import { Raydium } from "@raydium-io/raydium-sdk-v2";
const connection = new Connection("https://api.mainnet-beta.solana.com", "confirmed");
const owner = Keypair.fromSecretKey(/* sua chave */);
const raydium = await Raydium.load({
connection,
owner,
cluster: "mainnet",
disableFeatureCheck: true,
});
const poolInfo = await raydium.api.fetchPoolById({ id: "..." });
console.log(poolInfo);
Consulte sdk-api/typescript-sdk para a referência completa do SDK.
Configuração Rust
Para integração CPI e programas on-chain.
rustup install 1.76.0 # ou a que o Anchor atualmente requer
rustup component add rustfmt clippy
solana-install init 1.18.22 # toolchain BPF incluído
Cargo.toml do Programa para uma integração Raydium CPI
[dependencies]
anchor-lang = "0.30.1"
anchor-spl = "0.30.1"
raydium-cp-swap = { version = "0.2", features = ["cpi"] }
raydium-clmm = { version = "0.1", features = ["cpi"] }
O recurso "cpi" importa o módulo cpi com helpers CPI (para que você possa usar raydium_cp_swap::cpi::swap_base_input(...)). Consulte sdk-api/rust-cpi.
Configuração Python
Caminho secundário de integração — comum para desenvolvedores de bots.
Pacotes
pip install solders solana-py anchorpy
pip install raydium-py # SDK Raydium da comunidade (não oficial)
Versões:
| Pacote | Versão |
|---|
solders | ≥0.21 |
solana-py | ≥0.34 |
anchorpy | ≥0.21 |
raydium-py | ≥0.2.1 |
Script mínimo
from solana.rpc.async_api import AsyncClient
from solders.keypair import Keypair
from anchorpy import Provider, Wallet, Program
async def main():
conn = AsyncClient("https://api.mainnet-beta.solana.com")
owner = Keypair()
wallet = Wallet(owner)
provider = Provider(conn, wallet)
# Carregar IDL e programa
with open("cpmm.idl.json") as f:
idl = json.load(f)
program = Program(idl, CPMM_PROGRAM_ID, provider)
pool = await program.account["PoolState"].fetch(pool_id)
print(pool)
Consulte sdk-api/python-integration.
Endpoints RPC
O RPC mainnet público (api.mainnet-beta.solana.com) é muito limitado em taxa e é reduzido sob qualquer carga. Para uso não trivial, obtenha um endpoint privado:
| Provedor | Observações |
|---|
| Helius | Mais popular; camada gratuita generosa. |
| Triton | Enterprise; preços premium, estável. |
| QuickNode | Sólido; latência sub-por-segundo. |
| Seu próprio nó RPC | Custa aproximadamente $500/mês em hardware; controle total. |
Configurar:
const connection = new Connection("https://mainnet.helius-rpc.com/?api-key=...");
Algumas operações RPC precisam de capacidades estendidas:
getProgramAccounts — varreduras sem restrição são caras; alguns provedores cobram ou restritem por varredura.
getPriorityFeeEstimate — endpoint específico do Helius; outros têm equivalentes.
geyser / WebSocket streaming — necessário para bots de baixa latência; nem todos os provedores expõem.
Devnet e localnet
Devnet
Cluster de teste público do Solana. O Raydium tem uma implantação parcial de devnet:
- Alguns pools CPMM existem para teste.
- AMM v4 tem pools históricos de devnet.
- CLMM tem alguns pools de demonstração.
- Farm v6 está implantado.
solana config set --url https://api.devnet.solana.com
solana airdrop 2
O SDK suporta devnet via cluster: "devnet":
const raydium = await Raydium.load({ connection, owner, cluster: "devnet" });
Ressalva: pools de devnet têm liquidez fraca e podem ter estado obsoleto. Não confie em devnet para descoberta de preços; use apenas para construir e testar fluxos de instruções.
Localnet com estado mainnet falsificado
Para testes realistas, falsifique o estado mainnet em um validador local:
solana-test-validator \
--url https://api.mainnet-beta.solana.com \
--clone CPMMoo8L3F4NbTegBCKVNunggL7H1Zpdmwpwh8KMoZ0F \
--clone CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK \
--clone <SOME_POOL_ID> \
--clone <SOME_MINT_ID>
Isso clona estado específico de programa/conta para localhost, onde você pode fazer transações livremente. Ideal para:
- Testes unitários de sua integração CPI contra um programa Raydium real.
- Reexecutar uma transação com um parâmetro modificado para depurar.
- Teste de estresse com grandes volumes sintéticos.
A equipe do Raydium usa localnet falsificado extensivamente para testes de regressão antes da implantação em mainnet.
Modelos de projeto
Iniciador de integração TypeScript
my-raydium-app/
├── package.json
├── tsconfig.json
├── src/
│ ├── swap.ts # exemplo de swap
│ ├── add-liquidity.ts
│ └── read-pool.ts
└── .env # URL RPC, caminho da carteira
package.json mínimo:
{
"name": "my-raydium-app",
"type": "module",
"scripts": { "swap": "tsx src/swap.ts" },
"dependencies": {
"@raydium-io/raydium-sdk-v2": "^0.2.42-alpha",
"@solana/web3.js": "^1.95",
"@solana/spl-token": "^0.4"
},
"devDependencies": {
"@types/node": "^20",
"tsx": "^4",
"typescript": "^5"
}
}
Iniciador de programa Anchor CPI
my-raydium-cpi/
├── Anchor.toml
├── Cargo.toml
├── programs/
│ └── my-cpi/
│ ├── Cargo.toml
│ └── src/lib.rs
└── tests/
└── my-cpi.ts
Com Anchor 0.30:
anchor init my-raydium-cpi
cd my-raydium-cpi
# adicionar raydium-cp-swap a Cargo.toml com features = ["cpi"]
anchor build
anchor test
Utilitários de CLI úteis
solana-keygen
solana-keygen new --outfile ./wallet.json # gerar uma chave
solana-keygen pubkey ./wallet.json # mostrar chave pública
Ler qualquer conta
solana account <ADDRESS> --output json-compact
Útil para examinar o estado do pool sem um decodificador.
Logs do programa
solana logs | grep CPMMoo8 # rastrear logs de tx relacionados ao CPMM
Inspeção de transação
solana confirm <TX_SIGNATURE> -v # exibe logs de forma bonita
Ou via explorer — cole a assinatura e procure na aba “Program Logs”.
Higiene do ambiente
Carteiras separadas por propósito
- Carteira de desenvolvimento: contém SOL de testnet, usada para construção.
- Carteira de produção: contém SOL real, usada apenas para implantações / envios multisig.
- Carteira ativa para bots: saldo pequeno, permissões restritas.
Chaves nunca devem ser codificadas. Use variáveis de ambiente ou gerenciadores de segredos.
Padrão .env
# .env (não comprometido)
SOLANA_RPC_URL=https://mainnet.helius-rpc.com/?api-key=...
WALLET_PATH=/Users/you/.config/solana/id.json
import { config } from "dotenv";
config();
const connection = new Connection(process.env.SOLANA_RPC_URL!);
Versão fixada
Bloqueie todas as dependências do ecossistema Solana. O ecossistema se move rapidamente; uma atualização de versão menor do @solana/web3.js introduziu mudanças significativas anteriormente. Use package-lock.json / Cargo.lock religiosamente.
Referências
Fontes: