Release Rebase
jito-foundation/geyser-grpc-plugin
A skill your agent uses when updating this repo to match a new jito-solana release line such as v4.0.
Pre-execution Solana transaction streaming via Jito ShredStream, Shyft RabbitStream, and Triton Deshred
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install agiprolabs/claude-trading-skills shredstream --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/shredstream .claude/skills/shredstream && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .claude/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstreamType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install agiprolabs/claude-trading-skills shredstream --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/shredstream .agents/skills/shredstream && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .agents/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install agiprolabs/claude-trading-skills shredstream --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/shredstream .cursor/skills/shredstream && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .cursor/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/agiprolabs/claude-trading-skills.git --path skills/shredstream--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install agiprolabs/claude-trading-skills shredstream --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/shredstream .gemini/skills/shredstream && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .gemini/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install agiprolabs/claude-trading-skills shredstreamInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/shredstream .github/skills/shredstream && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .github/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add agiprolabs/claude-trading-skills --skill shredstream -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install agiprolabs/claude-trading-skills shredstream --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agiprolabs/claude-trading-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/shredstream .opencode/skills/shredstream && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "shredstream" agent skill from https://github.com/agiprolabs/claude-trading-skills/tree/main/skills/shredstream into .opencode/skills/shredstream/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "shredstream", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
shredstreamPre-execution Solana transaction streaming via Jito ShredStream, Shyft RabbitStream, and Triton Deshred
Shredstream is an agent skill from agiprolabs/claude-trading-skills. Pre-execution Solana transaction streaming via Jito ShredStream, Shyft RabbitStream, and Triton Deshred
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/deployment.md`, `references/proto_reference.md` and `references/providers_compared.md`).
It sits in Backend & APIs. It works with Solana and gRPC. The repository describes itself as: 68 trading, DeFi, and quantitative finance Agent Skills. Works with Claude Code, Cursor, Codex, Gemini CLI, and 30+ other tools. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 981e1d7. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
gitcargodockerFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
mainnet.block-engine.jito.wtfgithub.comrabbitstream.ny.shyft.toAlso links to:
web.miniextensions.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GRPC_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Shredstream loads about 2.5k tokens when it runs, and up to ~6.9k if it reads all its reference files. Until then it costs about 29 tokens; SKILL.md has 578 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
sudo tcpdump 'udp and dst port 20000'Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from agiprolabs/claude-trading-skills at commit 981e1d7, republished under its MIT licence (© agiprolabs). 578 words, ~2,509 tokens.
.claude/skills/shredstream/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.ShredStream gives you transaction data before the validator executes the block — typically 100-500ms earlier than standard Yellowstone gRPC. You see transaction intent, not confirmed results.
This is the fastest path to Solana data for time-critical trading strategies.
Solana validators produce blocks by serializing transactions into shreds (~1,228 bytes each, sized for UDP MTU). Shreds propagate through Turbine (Solana's fanout protocol, 2-3 hops). ShredStream bypasses Turbine by receiving shreds directly from leader validators via Jito's Block Engine.
Leader Validator
│
├── Turbine (standard, 2-3 hops, 200-500ms)
│ └── Your RPC Node → Yellowstone gRPC (post-execution)
│
└── Jito Block Engine (direct)
└── ShredStream Proxy (your server)
├── UDP shreds → Your RPC/Validator (faster block building)
└── gRPC entries → Your Trading Bot (decoded transactions)| Available (Pre-Execution) | NOT Available (Needs Execution) |
|---|---|
| Transaction signatures | Success/failure status |
| Account keys (pubkeys) | Balance changes (pre/post) |
| Instructions (program, accounts, data) | Log messages |
| Address lookup table references | Inner instructions (CPI) |
| Slot number | Token balance changes |
| Compute units consumed |
Key tradeoff: Speed for completeness. You see what's about to happen but can't confirm it actually succeeded. Some transactions you see will ultimately fail.
| Provider | Product | Latency | Access | Cost |
|---|---|---|---|---|
| Jito | ShredStream Proxy | ~10-50ms from leader | Apply + auth keypair | Free (beta) |
| Shyft | RabbitStream | ~15-100ms faster than gRPC | Shyft gRPC plan | From $199/mo |
| Triton | Deshred (SubscribeDeshred) | ~6.3ms p50 from shred | Triton customer | ~$2,900+/mo |
See references/providers_compared.md for detailed comparison.
The most direct approach — run Jito's open-source proxy on your own server.
solana-keygen new -o shred_auth.json# Clone and build
git clone https://github.com/jito-labs/shredstream-proxy.git --recurse-submodules
cd shredstream-proxy
# Run with gRPC enabled (key flag: --grpc-service-port)
RUST_LOG=info cargo run --release --bin jito-shredstream-proxy -- shredstream \
--block-engine-url https://mainnet.block-engine.jito.wtf \
--auth-keypair /path/to/shred_auth.json \
--desired-regions ny,amsterdam \
--dest-ip-ports 127.0.0.1:8001 \
--grpc-service-port 7777Docker (host networking required for UDP):
docker run -d --name shredstream-proxy --rm \
--network host \
-e RUST_LOG=info \
-e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \
-e AUTH_KEYPAIR=/app/shred_auth.json \
-e DESIRED_REGIONS=ny,amsterdam \
-e DEST_IP_PORTS=127.0.0.1:8001 \
-e GRPC_SERVICE_PORT=7777 \
-v /path/to/shred_auth.json:/app/shred_auth.json \
jitolabs/jito-shredstream-proxy shredstream| Parameter | Description | Example |
|---|---|---|
BLOCK_ENGINE_URL | Jito block engine endpoint | https://mainnet.block-engine.jito.wtf |
AUTH_KEYPAIR | Path to whitelisted Solana keypair | shred_auth.json |
DESIRED_REGIONS | Max 2, comma-separated | ny,amsterdam |
DEST_IP_PORTS | Where to forward raw shreds (UDP) | 127.0.0.1:8001 |
GRPC_SERVICE_PORT | Enable gRPC entry streaming | 7777 |
SRC_BIND_PORT | Incoming shred UDP port | 20000 |
Available regions: amsterdam, dublin, frankfurt, london, ny, salt-lake-city, singapore, tokyo
# Check shreds are arriving via UDP
sudo tcpdump 'udp and dst port 20000'
# Should see many ~1200-byte packets continuouslyuse jito_protos::shredstream::{
shredstream_proxy_client::ShredstreamProxyClient,
SubscribeEntriesRequest,
};
let mut client = ShredstreamProxyClient::connect("http://127.0.0.1:7777").await?;
let mut stream = client
.subscribe_entries(SubscribeEntriesRequest {})
.await?
.into_inner();
while let Some(entry) = stream.message().await? {
let entries: Vec<solana_entry::entry::Entry> =
bincode::deserialize(&entry.entries)?;
for e in &entries {
for tx in &e.transactions {
let sig = tx.signatures[0];
let msg = tx.message();
// Parse instructions, accounts, etc.
}
}
println!("Slot {}: {} entries, {} transactions",
entry.slot,
entries.len(),
entries.iter().map(|e| e.transactions.len()).sum::<usize>()
);
}Drop-in replacement for Yellowstone gRPC — same SubscribeRequest format, just a different endpoint. Easiest way to get pre-execution data without running infrastructure.
export GRPC_ENDPOINT="https://rabbitstream.ny.shyft.to"
export GRPC_TOKEN="your-shyft-x-token"# Same code as yellowstone-grpc, just different endpoint
import grpc
endpoint = "rabbitstream.ny.shyft.to"
token = os.environ["GRPC_TOKEN"]
# ... standard Yellowstone connection code ...
# Subscribe to transactions — same filter format
request = SubscribeRequest(
transactions={
"pumpfun": SubscribeRequestFilterTransactions(
account_include=["6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P"],
vote=False,
failed=False,
)
},
commitment=CommitmentLevel.PROCESSED,
)Limitations: Only transaction filters work. No account, slot, or block subscriptions. The meta field is empty (no execution results).
Regional endpoints: rabbitstream.{ny,va,ams,fra}.shyft.to
Lowest latency (~6.3ms p50) via Triton's SubscribeDeshred RPC. Same Yellowstone client, different method.
// Requires yellowstone-grpc-client with Deshred support
let (mut tx, mut stream) = client.subscribe_deshred().await?;
tx.send(SubscribeDeshredRequest {
deshred_transactions: hashmap!{
"pumpfun".to_string() => SubscribeRequestFilterDeshredTransactions {
vote: Some(false),
account_include: vec!["6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P".into()],
..Default::default()
}
},
..Default::default()
}).await?;Access: Triton customers only, paid beta, requires their custom Agave validator fork.
Without execution metadata, parsing is simpler but requires program-specific knowledge.
# From a raw VersionedTransaction (post-deserialization)
account_keys = [str(k) for k in tx.message.account_keys]
for ix in tx.message.instructions:
program_id = account_keys[ix.program_id_index]
if program_id == "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P":
# This is a PumpFun instruction
discriminator = ix.data[:8]
# Decode instruction data per PumpFun IDLMost Solana programs use 8-byte discriminators (Anchor SHA256 hash of the instruction name). Match instruction.data[:8] against known values for each program.
# Common approach
PUMPFUN_CREATE = bytes.fromhex("181ec828051c0777")
PUMPFUN_BUY = bytes.fromhex("66063d1201daebea")
PUMPFUN_SELL = bytes.fromhex("33e685a4017f83ad")
disc = ix.data[:8]
if disc == PUMPFUN_BUY:
# Parse buy parameters from remaining bytes
...Warning: Discriminator values are program-specific and can change between program versions. Always verify against the current program IDL. See the pumpfun-mechanics skill for PumpFun-specific parsing.
Most production systems use both:
ShredStream (pre-execution) Yellowstone gRPC (post-execution)
│ │
▼ ▼
Intent Detection Confirmation + Reconciliation
"Wallet X is buying token Y" "Buy succeeded, wallet now holds Z"
│ │
▼ ▼
Pre-compute Response Execute / Update State
(route, sign, prepare bundle) (record PnL, update positions)This gives you the speed advantage of ShredStream for signal detection while using Yellowstone for reliable state management.
See references/deployment.md for full infrastructure guide.
references/providers_compared.md — Jito ShredStream vs Shyft RabbitStream vs Triton Deshredreferences/deployment.md — Infrastructure requirements, region selection, firewall configurationreferences/proto_reference.md — ShredStream protobuf definitions and Entry parsingscripts/parse_shredstream_entries.py — Decode and analyze ShredStream gRPC entriesscripts/rabbitstream_monitor.py — Connect to Shyft RabbitStream for pre-execution transaction monitoring© agiprolabs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in skills/shredstream of agiprolabs/claude-trading-skills.
Open the folder on GitHubat commit 981e1d7
Shredstream next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Shredstream this skillagiprolabs/claude-trading-skills | 410 | — | ~2.5k | Automated safety check: Notes | MIT | |
| Release Rebasejito-foundation/geyser-grpc-plugin | 145 | — | ~836 | Automated safety check: Pass | Custom licence | |
| Quicknode Skillinternet-court/internet-court-skill | 6.5k | — | ~11k | Automated safety check: Pass | MIT | |
| Quicknodesendaifun/skills | 130 | 1 repos | ~5.5k | Automated safety check: Notes | Apache-2.0 | |
| Use Yaakmountain-loop/yaak | 19k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Golang Proantoniopaya22/go-rest-template | 172 | 3 repos | ~1.2k | Automated safety check: Pass | MIT |
jito-foundation/geyser-grpc-plugin
A skill your agent uses when updating this repo to match a new jito-solana release line such as v4.0.
internet-court/internet-court-skill
Quicknode blockchain infrastructure for 80+ chains: Core RPC API, Streams, Webhooks, Blazar WSS, Solana gRPC, HyperCore gRPC, SQL Explorer, Metaplex DAS API, Blockbook, Ordinals & Runes API, Swap…
sendaifun/skills
Quicknode blockchain infrastructure for Solana — RPC endpoints, DAS API (Digital Asset Standard) for NFTs and compressed assets, Yellowstone gRPC streaming, Priority Fee API, Streams (real-time data…
mountain-loop/yaak
A skill your agent uses when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual…
antoniopaya22/go-rest-template
Implements concurrent Go patterns using goroutines and channels, designs and builds microservices with gRPC or REST, optimizes Go application performance with pprof, and enforces idiomatic Go with…
GetBindu/Bindu
Diagnose gRPC connection issues between the Bindu core and a language SDK.
agiprolabs/claude-trading-skills
Event-driven backtesting with bar-by-bar execution, complex order types, multiple analyzers, and custom indicators
agiprolabs/claude-trading-skills
Solana token market data via Birdeye — prices, OHLCV, trades, token metadata, security checks, and trader activity
agiprolabs/claude-trading-skills
Broad crypto market data from CoinGecko covering 13,000+ tokens.
agiprolabs/claude-trading-skills
Cointegration testing for pairs trading using Engle-Granger, Johansen, and rolling stability analysis
agiprolabs/claude-trading-skills
Wallet evaluation, monitoring, and copy-trade strategy design for Solana DEX trading
agiprolabs/claude-trading-skills
Cross-asset correlation analysis including rolling correlation, hierarchical clustering, tail dependence, and regime-dependent correlation
Categories
Pre-execution Solana transaction streaming via Jito ShredStream, Shyft RabbitStream, and Triton Deshred. Shredstream is an agent skill from agiprolabs/claude-trading-skills.
Shredstream fits situations like: backend & APIs work in your project.
Run `npx skills add agiprolabs/claude-trading-skills --skill shredstream -a claude-code`. Or copy the skill folder (skills/shredstream in agiprolabs/claude-trading-skills) into .claude/skills/shredstream in your project. Claude Code loads it when a task matches its description.
Run `npx skills add agiprolabs/claude-trading-skills --skill shredstream -a codex`. Or copy the skill folder (skills/shredstream in agiprolabs/claude-trading-skills) into .agents/skills/shredstream in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add agiprolabs/claude-trading-skills --skill shredstream -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/shredstream, .gemini/skills/shredstream, .github/skills/shredstream and .opencode/skills/shredstream in your project.
Going by SKILL.md and its folder, Shredstream needs Python for the scripts in its folder, the command-line tools its instructions call (git, cargo and docker) and credentials named GRPC_TOKEN. Our summary lists: Python 3; Docker; A credential in GRPC_TOKEN.
SKILL.md names 4 domains. In commands or code: mainnet.block-engine.jito.wtf, github.com and rabbitstream.ny.shyft.to; the agent is likely to contact these when it follows the instructions. As links in the text: web.miniextensions.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (runs commands with sudo), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Shredstream is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Shredstream: Release Rebase (jito-foundation/geyser-grpc-plugin, 145 stars), Quicknode Skill (internet-court/internet-court-skill, 6.5k stars), Quicknode (sendaifun/skills, 130 stars) and Use Yaak (mountain-loop/yaak, 19k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
agiprolabs (a GitHub user) maintains it in agiprolabs/claude-trading-skills, which has 410 GitHub stars. The repository holds 68 skills in this directory. The repository was last updated on September 3, 2026.
Source: agiprolabs/claude-trading-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.