Slv Grpc Geyser

# SLV gRPC Geyser Skill

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "Slv Grpc Geyser" with this command: npx skills add POPPIN-FUMI/slv-grpc-geyser

SLV gRPC Geyser Skill

Ansible playbooks and Jinja2 templates for deploying and managing Solana gRPC Geyser streaming nodes.

Supported Configurations

ConfigDescription
Yellowstone gRPCStandard Geyser gRPC plugin (Triton/rpcpool)
Richat gRPCRichat Geyser plugin (lamports-dev)

Directory Structure

ansible/
  mainnet-rpc/   — Playbooks (gRPC Geyser uses mainnet-rpc playbooks)
  cmn/           — Shared common playbooks
jinja/
  mainnet-rpc/   — Jinja2 templates
  cmn/           — Shared templates

CLI Command ↔ Playbook Mapping

gRPC Geyser nodes are managed via slv r (RPC) commands with rpc_type set to Geyser gRPC or Index RPC + gRPC.

CLI CommandPlaybookDescription
slv r deploymainnet-rpc/init.ymlFull gRPC Geyser node initialization
slv r startmainnet-rpc/start_node.ymlStart node
slv r stopmainnet-rpc/stop_node.ymlStop node
slv r restartmainnet-rpc/restart_node.ymlRestart node
slv r build:solanamainnet-rpc/install_solana.ymlBuild Solana from source
slv r update:geysermainnet-rpc/update_geyser.ymlUpdate Geyser plugin
slv r update:scriptmainnet-rpc/update_startup_config.ymlUpdate start-validator.sh
slv r setup:firedancermainnet-rpc/setup_firedancer.ymlSetup Firedancer

Key Playbooks

PlaybookDescription
init.ymlFull gRPC Geyser node initialization
init_richat_geyser.ymlRichat Geyser initialization
geyser_build.ymlBuild Yellowstone gRPC from GitHub source
geyser_richat_build.ymlBuild Richat plugin from GitHub source
install_richat.ymlInstall Richat plugin
update_geyser.ymlUpdate Geyser plugin
restart_node.ymlRestart node
start_node.yml / stop_node.ymlStart/stop node
update_startup_config.ymlUpdate start-validator.sh from template
setup_firedancer.ymlSetup Firedancer
run_snapshot_finder.ymlFind and download best snapshot
run_restarter.ymlRun restarter script

Geyser Build Details

Yellowstone gRPC (geyser_build.yml)

Richat (geyser_richat_build.yml)

  • Clones from https://github.com/lamports-dev/richat
  • Builds with cargo build --release
  • Produces librichat_plugin_agave.so
  • Config template: jinja/mainnet-rpc/geyser-richat.json.j2
  • Service template: jinja/mainnet-rpc/richat.service.j2
  • Settings template: jinja/mainnet-rpc/richat-setting.yml.j2

Key Variables (extra_vars)

VariableDescriptionDefault
rpc_typeMust be Geyser gRPC or Index RPC + gRPC
validator_typeClient type (agave, jito, firedancer-agave, etc.)
solana_versionSolana/Agave version
yellowstone_grpc_versionYellowstone gRPC version tag
richat_versionRichat plugin version (e.g. richat-v8.1.0)
snapshot_urlSnapshot download URL
port_grpcgRPC listen port10000
limit_ledger_sizeLedger size limit100000000

Jinja Templates

TemplateDescription
start-validator.sh.j2Main start script (branches by rpc_type)
start-mainnet-rpc-grpc.sh.j2gRPC-specific start script
geyser.json.j2Yellowstone gRPC config
geyser-richat.json.j2Richat gRPC config
richat-setting.yml.j2Richat settings
richat.service.j2Richat systemd service
firedancer-config.toml.j2Firedancer config
firedancer.service.j2Firedancer systemd service
solv.service.j2Solv systemd service
generate_configs.sh.j2Config generation script

Geyser Plugin Sources

Both plugins are built from source (no binary downloads):

Usage

# Deploy a new gRPC Geyser node
ansible-playbook -i inventory mainnet-rpc/init.yml \
  -e '{"rpc_type":"Geyser gRPC","solana_version":"3.1.8","yellowstone_grpc_version":"v6.0.0","snapshot_url":"https://..."}'

# Build/update Richat plugin
ansible-playbook -i inventory mainnet-rpc/geyser_richat_build.yml \
  -e '{"richat_version":"richat-v8.1.0"}'

No versions.yml required — all variables can be passed via extra_vars.

Interactive Deployment Flow

See AGENT.md for the full step-by-step flow and examples/inventory.yml for output format.

Required Variables

VariablePromptValidation
server_ip"Target server IP?"Valid IPv4
region"Server region?"String
rpc_type"Geyser gRPC or Index RPC + gRPC?"Geyser gRPC, Index RPC + gRPC
validator_type"Underlying client?"agave, jito, jito-bam, firedancer-agave
solana_version"Solana version? (default: 3.1.8)"Semver
identity_account"Node identity pubkey?"Base58 pubkey
snapshot_url"Snapshot URL? (auto for ERPC)"URL (cannot be empty for init)

Plugin Selection (choose ONE)

PluginVersion VariableSourceOutput
Yellowstone gRPCyellowstone_grpc_versiongithub.com/rpcpool/yellowstone-grpclibyellowstone_grpc_geyser.so
Richatrichat_versiongithub.com/lamports-dev/richatlibrichat_plugin_agave.so

Both are built from source (no pre-built binaries). Build time: ~15-30 min. Only collect the version variable for the selected plugin.

Conditionally Required Variables

VariableWhen Required
jito_versionjito/jito-bam types
firedancer_versionfiredancer types
shred_receiver_addressjito/jito-bam (auto by region)
block_engine_urljito/jito-bam (auto by region)

Optional Variables

VariableDefaultWhen Required
ssh_usersolvAlways
port_grpc10000Always
port_rpc8899 (ERPC: 7211)Always
limit_ledger_size100000000Always
dynamic_port_range8000-8025Always
allowed_ssh_ipsStrongly recommended (UFW)
allowed_ipsOptional (UFW)

Optional: Reference RPC

VariableDescriptionDefault
reference_rpc_urlReference RPC endpoint for slot sync comparison (e.g., ERPC)

ERPC API keys are free at https://erpc.global — enables full slot sync monitoring during deployment and updates.

Pre-flight: Fresh Server Setup

ansible-playbook -i inventory.yml cmn/add_solv.yml \
  -e '{"ansible_user":"ubuntu"}' --become

Deployment Command

All paths relative to skill's ansible/ directory:

cd /path/to/slv-grpc-geyser/ansible/
ansible-playbook -i inventory.yml mainnet-rpc/init.yml \
  -e '{"rpc_type":"Geyser gRPC","solana_version":"<version>","richat_version":"<version>"}'

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

Slv Rpc

Ansible playbooks and templates to deploy, manage, and update Solana RPC nodes on mainnet, testnet, and devnet with support for RPC, indexing, and gRPC.

Registry SourceRecently Updated
2904Profile unavailable
Web3

Slv Validator

Deploys and manages Solana validators on mainnet and testnet using Ansible playbooks and Jinja2 templates for multiple validator types including jito, agave,...

Registry SourceRecently Updated
2894Profile unavailable
Web3

Whistle RPC

Production Solana RPC for AI agents. Unlimited JSON-RPC, WebSocket. 1 SOL/month via on-chain payment. No rate limits, no tiers.

Registry SourceRecently Updated
4670Profile unavailable
Web3

vultisig-sdk

Use this skill when an agent needs to create crypto wallets, send transactions, swap tokens, check balances, or perform any on-chain operation across 36+ blockchains using threshold signatures (TSS). Vultisig SDK provides self-custodial MPC vaults — no seed phrases, no single point of failure. Fast Vaults (2-of-2 with VultiServer) enable fully autonomous agent operations without human approval.

Registry SourceRecently Updated
1.3K2Profile unavailable