Transaction Simulator Integration
Simulate Solana transactions before execution to detect risks.
Installation
pip install sentinelseed httpx
Overview
Transaction Simulator integrates with:
- Solana RPC - Transaction failure detection
- Jupiter API - Swap slippage analysis
- GoPlus API - Token security checks
Quick Start
import asyncio
from sentinelseed.integrations.preflight import TransactionSimulator
async def main():
async with TransactionSimulator(
rpc_url="https://api.mainnet-beta.solana.com"
) as simulator:
result = await simulator.simulate_swap(
input_mint="So11111111111111111111111111111111111111112", # SOL
output_mint="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", # USDC
amount=1_000_000_000, # 1 SOL
)
if result.is_safe:
print(f"Expected: {result.expected_output / 1e6:.2f} USDC")
else:
print(f"Risks: {[r.description for r in result.risks]}")
asyncio.run(main())
Token Security Check
async def check_token():
async with TransactionSimulator() as simulator:
result = await simulator.check_token_security("TokenMint...")
print(f"Is Safe: {result.is_safe}")
print(f"Freeze Authority: {result.has_freeze_authority}")
print(f"Is Honeypot: {result.is_honeypot}")
Transaction Validator
Combines THSP validation with transaction simulation:
from sentinelseed.integrations.preflight import PreflightValidator
async with PreflightValidator(
max_transfer=100.0,
max_slippage_bps=500, # 5%
require_purpose=True,
) as validator:
result = await validator.validate_swap(
input_mint="So11...",
output_mint="Token...",
amount=1_000_000_000,
purpose="Converting to stable",
)
if result.should_proceed:
print("Transaction approved!")
Risk Factors
| Factor | Description |
|---|---|
HONEYPOT | Token prevents selling |
FREEZE_AUTHORITY | Funds can be frozen |
MINT_AUTHORITY | Supply can increase |
HIGH_SLIPPAGE | Exceeds threshold |
LOW_LIQUIDITY | Insufficient pool |
LangChain Integration
from sentinelseed.integrations.preflight import create_preflight_tools
tools = create_preflight_tools()
# Tools:
# - preflight_check_swap
# - preflight_check_token
API References
See also: Transaction Simulator Product