Autonomous liquidity management for Solana LPs.

Deploy agents that monitor liquidity ranges, evaluate position health, and manage Meteora and Orca LP strategies with strict risk controls.

Risk checks
Default deny
Execution
Idempotent
Pre-flight
Mainnet sim

Agent telemetry

illustrative

Meteora DLMM

Bin range

Active bin 1

bin step 25Meteora DLMM
Active bin drift+2

Orca Whirlpool

Tick range

Active tick 1

tick spacing 64Orca Whirlpool
Active tick drift-6

Risk gate

allowlist
slippage
compute budget
simulation

What it does

A supervised runtime for concentrated-liquidity strategies on Solana.

ponk runs one process per agent. Each agent observes pool state through first-class adapters, classifies position health, and proposes actions that must clear a default-deny risk gate before any signature is requested.

Range-aware supervision

Continuous evaluation of bin drift on Meteora DLMM and tick drift on Orca Whirlpools. Out-of-range, drifting, and stale positions are surfaced before they erode fee capture.

Strict risk engine

Allowlist, slippage cap, compute-budget cap, simulation outcome, and per-agent rate limits run on every action. No action is sent if any check fails.

Idempotent execution

Pre-flight idempotency lookup prevents double-spend on retry. Send phase has bounded retries with fresh blockhashes. Confirmation polling never re-sends.

First-class protocol adapters

Built for the two protocols Solana LPs actually use.

Each adapter speaks its protocol's native vocabulary. We never collapse bins into ticks or hide the difference behind a leaky abstraction.

Meteora DLMM

Discrete liquidity bins, dynamic step sizes

Bin range

Active bin 1

bin step 25Meteora DLMM
  • Open / rebalance / collect on per-bin granularity
  • Active bin drift detection
  • Multi-strategy distribution shapes
  • Token-2022 transfer-fee adjusted accounting

Orca Whirlpools

Concentrated liquidity, tick spacings

Tick range

Active tick -1

tick spacing 64Orca Whirlpool
  • NFT-init position open + close
  • Tick-array PDA resolution
  • Increase / decrease via tight ranges
  • Fee collection alongside removal

Execution pipeline

Seven stages between intent and signature.

The execution layer is the only path that talks to Solana writes. Every action passes through the same deterministic sequence: build, simulate, risk-check, sign, send with bounded retry, confirm, persist.

Execution pipeline

Every action passes seven checks before a signature is ever requested.

  1. 01

    Build

  2. 02

    Simulate

  3. 03

    Risk

  4. 04

    Sign

  5. 05

    Send

  6. 06

    Confirm

  7. 07

    Persist

Security-first controls

The browser is never the trust boundary.

Authentication is a signed challenge from the wallet. Dangerous actions require explicit confirmation. Secrets live behind the API surface, never in the frontend bundle.

  • Wallet-signed nonce authentication
  • Per-IP rate limiting at the auth surface
  • Confirmation modals for every mutating action
  • Server wallet held off-client
  • Pre-flight idempotency on every execute
  • Token-2022 transfer-fee aware accounting

Risk policy

default deny
policy:
  max_slippage_bps:        50
  max_priority_fee_uLam:   1_000_000
  max_daily_transactions:  64
  max_hourly_failures:     6
  min_sol_balance_lamports: 5_000_000
  max_pool_staleness_secs: 60
  max_position_staleness_secs: 60
  program_allowlist:       [meteora_dlmm, orca_whirlpool]
  token_mint_allowlist:    operator_managed
  pool_allowlist:          operator_managed
  simulation_required:     true

An action is approved only when every check passes and a successful simulation result is attached.

Architecture

Five layers, each with a single responsibility.

API surface

  • Axum, async
  • Wallet auth
  • Per-IP rate limit
  • X-Request-Id correlation

Execution layer

  • Build, simulate, sign, send
  • Bounded send retry
  • Single-shot confirm
  • Idempotent persist

DEX adapters

  • Meteora DLMM client
  • Orca Whirlpools client
  • Anchor instruction builders
  • Mainnet-ground-truth tests

Risk + oracle

  • Default-deny policy gate
  • Pyth USD prices, TTL-cached
  • Realized-vol ring buffer
  • Allowlists, simulation gate

Storage

  • Postgres, monthly partitioning
  • Idempotent agent_actions
  • Position snapshots
  • Redis for hot position cache

Run agents under a strict supervisor.

Connect a Solana wallet, choose a pool, and configure a strategy. Every iteration is recorded; every action is gated; nothing fires without a fresh simulation.