SINKER

smart transaction infrastructure

TRANSACTION LIFECYCLE

HOW IT WORKS

01

ENQUEUE

Pass Sinker a signed transaction. It accepts raw base64 over a single HTTP endpoint and takes it from there.

02

ADAPTIVE TIP

The agent reads live tip percentiles off the Yellowstone stream and sizes the bundle to match what the current slot leader is most likely to accept. In Reflex mode, this resolves in milliseconds. In Cortex, the LLM reasons through every submission.

03

BUNDLE

No polling. The sidecar watches the chain and the moment the first shred of a leader slot lands, the bundle is already in flight.

04

CONFIRM

Bundle status is tracked from submission through finalization. Events stream back to your app in real time via SSE.

ONE HTTP ENDPOINT·
YOUR KEYS, NEVER OURS·
STREAM-CONFIRMED·
ZERO MIGRATION
CLI

MANAGE & INSPECT

sinker — bash — 120×32
~
SDK

INTEGRATE IN MINUTES

TYPE-SAFE TYPESCRIPTSSE STREAMINGMODEL-AGNOSTICMAINNET-OPTIMIZED
// routes/submit.ts
import { Sinker } from 'sinker-sdk'
const sinker = new Sinker({
model: {
provider: 'anthropic',
apiKey: process.env.ANTHROPIC_API_KEY,
},
})
// Enqueue a pre-signed transaction
const handle = await sinker.enqueue(rawTxBase64, 'high')
console.log(handle.txId)
// "5KsRpq2X..."
console.log(handle.enqueuedSlot)
// 329841034
ENQUEUE RESULT
txId:"5KsRpq2X..."
enqueuedSlot:329841034
agent notified via SSE
tip decision in progress
bundle submission pending

Instantiate with your model provider and enqueue a pre-signed transaction. The agent picks it up automatically via SSE.

THE AGENT · TWO MODES

ONE BRAIN,
TWO MODES

Both modes back the decision with the same LLM agent — they differ on how often it runs. Run the model on every transaction, or only when a submission actually needs it.

REFLEX — SYSTEM 1
The calm majority clears a fast deterministic path in ~374 ms — statistically the same as a no-AI submit — and the LLM is called only on the hard cases: rejections, ambiguity, retries.
CORTEX — SYSTEM 2
The LLM reasons on every transaction — ~4.2 s of deliberation with a full decision trace on every cycle. Maximum scrutiny, all the time.
THE TAX IS OPT-IN
Same engine, same land rate. You choose how much LLM think-time to pay for — seconds only when it matters, or always.
REFLEXSystem 1
374 ms
Fast path for the calm majority · LLM only on the hard cases
CORTEXSystem 2
4.2 s
The LLM reasons on every transaction routed
FAST PATH
LLM ENGAGED
SELF-HOST · OPEN INFRASTRUCTURE

YOUR KEYS.
YOUR MACHINE.

Sinker isn't a hosted black box. Run the sidecar and agent on your own infrastructure — and monitor every slot from the control room that ships with it.

SLOT & LEADER SENSING
Live Yellowstone slot stream — you see exactly what the agent sees.
DECISION TRACES
Every agent call logged with its full reasoning chain.
REFLEX / CORTEX TOGGLE
Switch modes from the dashboard without redeploying.
LIVE EVENT FEED
Real-time submission, confirmation, and retry events.
LAUNCH DASHBOARD →
DASHBOARD
CURRENT SLOT
429,121,909
EPOCH 993
TIP P75
100.0K
P50 3.2K · P99 2.0M
QUEUE DEPTH
····
PENDING TXS
SESSION SUCCESS
····
NO DATA YET
EPOCH 993 PROGRESS~31h 47m REMAINING
DECISION MODE
CORTEX · System 2
LLM reasons on every submission (~4.2 s)
REFLEX
CORTEX
RETRY MODE
AUTO
Agent retries automatically on failure
LIVE EVENT FEED
i
Cortex mode ON 00:41:29
The LLM reasons on every submission.
AUTONOMOUS RECOVERY

FAILURE
ISN’T FINAL

Sinker classifies every terminal failure into a structured taxonomy — and the agent acts on each one. It escalates tips, refreshes blockhashes, resubmits. No human in the loop, no hardcoded path.

fee_too_lowescalate tip
expired_blockhashfresh blockhash
slot_skipretry now
bundle_failedinspect error
compute_exceededhold · no retry
A REAL fee_too_low RECOVERY
attempt 123,829 Lfee_too_low
attempt 220,623 Lfee_too_low
attempt 3336,831 Lfee_too_low
attempt 41,000,000 Lfee_too_low
attempt 5993,474 Lfee_too_low
LANDED216,445 LFINALIZED
Five rejections, landed on the sixth — the agent climbing its own tip across live rejections. No human. No hardcoded values.
STREAM LAYER
EXPERIMENTAL

THREE WAYS
TO READ THE CHAIN

Sinker no longer requires a Yellowstone subscription. Choose how you receive slot events — or run both sources simultaneously and let the network decide.

YELLOWSTONE
Fastest path. Requires a managed gRPC subscription. Best when latency is the only priority.
WEBSOCKET
No subscription needed. Vigil resolves leader identity locally via ChaCha20 — zero hot-path RPC after bootstrap.
DUAL
Both run simultaneously. Yellowstone leads; vigil steps in silently when gRPC drops. No restart, no intervention.
01
YELLOWSTONE~50ms
gRPC · Subscription required
Yellowstone Dragon's Mouth gRPC stream. First-shred events arrive earliest. Best for operators already on a managed gRPC plan.
sinker start --slot-source yellowstone
02
WEBSOCKET~80ms
vigil · Any Solana RPC endpoint
Local ChaCha20 leader schedule, Jito detection, zero hot-path RPC after bootstrap. Any standard Solana endpoint works.
sinker start --slot-source websocket
03
DUALresilient
Both sources · Automatic failover
PRIMARY
STANDBY
dedup by slot →
Yellowstone is primary. Vigil runs silently in the background. When gRPC stalls, vigil takes over with no restart and no intervention.
sinker start --slot-source dual
YELLOWSTONE
VIGIL
DUAL MODE
REAL-TIME

LEADER SCHEDULE

EPOCH——
SLOTS REM.——
EPOCH END——
PROGRESS0.0%
EPOCH ——
0.0%
CURRENT SLOT
OUR LEADER
OTHER VALIDATOR
* LEADER SCHEDULE COMPUTED FROM CURRENT SLOT · 432,000 SLOTS PER EPOCH · ~400MS PER SLOT
BY THE NUMBERS

PRODUCTION READY

BUNDLES FINALIZED
ON MAINNET-BETA
SILENT DROPS CAUGHT
200 OK · NEVER LANDED
MS
PROCESSED → CONFIRMED
MEDIAN · FROM THE STREAM
×
ADAPTIVE TIP RANGE
1,000–216,445 LAMPORTS

MEASURED FROM 394 REAL MAINNET BUNDLES — EVERY ONE VERIFIABLE ON /EVIDENCE

RESEARCH

TECHNICAL PAPER

A detailed breakdown of the routing architecture, tip oracle design, bundle lifecycle, and AI agent integration strategy.

Read paper
Sinker: A Smart Transaction
Infrastructure on Solana
Architecture & Systems Paper — mainnet-beta deployment.
Abstract
I.  Introduction
SINKER WHITEPAPER
READ PAPER →