Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
alsk1992 avatar

Router

  • 12 installs
  • 610 repo stars
  • Updated June 26, 2026
  • alsk1992/cloddsbot

router is a Claude skill that routes prediction-market orders to the best platform by price, liquidity, fees, and execution quality.

About

This skill routes prediction-market orders to the best platform based on price, liquidity, fees, and execution quality. Developers use /route commands or a TypeScript API to find the best route, compare platforms, analyze fees and liquidity, split large orders, and execute the chosen route. It supports best-price, best-liquidity, lowest-fee, and balanced modes across Polymarket, Kalshi, and Manifold. It is the order-execution layer for a multi-platform trading bot.

  • Smart order routing across Polymarket, Kalshi, and Manifold
  • Optimizes for best price, best liquidity, lowest fee, or balanced execution
  • Compares platforms and splits large orders to reduce slippage

Router by the numbers

  • 12 all-time installs (skills.sh)
  • Ranked #781 of 1,106 Finance & Trading skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

router capabilities & compatibility

Capabilities
order routing · platform comparison · order splitting · fee analysis
Use cases
trading
Pricing
Free
From the docs

What router says it does

Route orders to the best platform based on price, liquidity, fees, and execution quality.
SKILL.md
Smart order routing for best price, liquidity, and execution
SKILL.md
npx skills add https://github.com/alsk1992/cloddsbot --skill router

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs12
repo stars610
Last updatedJune 26, 2026
Repositoryalsk1992/cloddsbot

What it does

Route prediction-market orders across platforms for best price, liquidity, or fees.

Who is it for?

Choosing and executing the best platform for a prediction-market order across Polymarket, Kalshi, and Manifold.

When should I use this skill?

A user wants the best route for an order, a platform comparison, or to split a large order.

By the numbers

  • 4 routing modes (best-price, best-liquidity, lowest-fee, balanced)
  • 3 platforms (Polymarket, Kalshi, Manifold)

Files

SKILL.mdMarkdownGitHub ↗

Router - Complete API Reference

Route orders to the best platform based on price, liquidity, fees, and execution quality.

---

Chat Commands

Route Order

/route "Trump 2028" YES 1000        Find best route for $1000
/route BTCUSDT long 0.5             Route futures order
/route --mode best-price "Fed" YES  Optimize for price
/route --mode best-liquidity ...    Optimize for fills

Compare Routes

/route compare "Trump" YES 1000     Compare all platforms
/route fees "Trump"                 Compare fee structures
/route liquidity "Trump"            Compare orderbook depth

Execution

/route execute <route-id>           Execute routed order
/route split "Trump" YES 5000       Split across platforms

---

TypeScript API Reference

Create Smart Router

import { createSmartRouter } from 'clodds/router';

const router = createSmartRouter({
  // Supported platforms
  platforms: ['polymarket', 'kalshi', 'manifold'],

  // Default mode
  defaultMode: 'balanced',

  // Fee structures
  fees: {
    polymarket: { maker: -0.005, taker: 0.01 },
    kalshi: { maker: 0, taker: 0.01 },
    manifold: { maker: 0, taker: 0 },
  },
});

Find Best Route

const route = await router.findBestRoute({
  market: 'trump-win-2028',
  side: 'YES',
  size: 1000,
  mode: 'best-price',  // 'best-price' | 'best-liquidity' | 'lowest-fee' | 'balanced'
});

console.log(`Best platform: ${route.platform}`);
console.log(`Expected price: ${route.expectedPrice}`);
console.log(`Expected slippage: ${route.expectedSlippage}%`);
console.log(`Fees: $${route.fees}`);
console.log(`Net cost: $${route.netCost}`);
console.log(`Fill probability: ${route.fillProbability}%`);

Compare All Platforms

const comparison = await router.compare({
  market: 'trump-win-2028',
  side: 'YES',
  size: 1000,
});

console.log('Platform Comparison:');
for (const platform of comparison) {
  console.log(`\n${platform.name}:`);
  console.log(`  Price: ${platform.price}`);
  console.log(`  Liquidity: $${platform.liquidity}`);
  console.log(`  Slippage: ${platform.slippage}%`);
  console.log(`  Fees: $${platform.fees}`);
  console.log(`  Net cost: $${platform.netCost}`);
  console.log(`  Score: ${platform.score}`);
}

Split Order Across Platforms

// Large orders split for better execution
const split = await router.splitOrder({
  market: 'trump-win-2028',
  side: 'YES',
  size: 10000,
  maxSlippage: 0.02,
});

console.log('Order Split:');
for (const leg of split.legs) {
  console.log(`  ${leg.platform}: $${leg.size} @ ${leg.price}`);
}
console.log(`Total slippage: ${split.totalSlippage}%`);
console.log(`Avg price: ${split.avgPrice}`);

Execute Route

// Execute the routed order
const result = await router.execute(route);

console.log(`Order ID: ${result.orderId}`);
console.log(`Platform: ${result.platform}`);
console.log(`Fill price: ${result.fillPrice}`);
console.log(`Slippage: ${result.actualSlippage}%`);
console.log(`Fees: $${result.fees}`);

Routing Modes

// Best price - minimize price paid
const priceRoute = await router.findBestRoute({
  ...order,
  mode: 'best-price',
});

// Best liquidity - maximize fill probability
const liquidityRoute = await router.findBestRoute({
  ...order,
  mode: 'best-liquidity',
});

// Lowest fees - minimize transaction costs
const feeRoute = await router.findBestRoute({
  ...order,
  mode: 'lowest-fee',
});

// Balanced - weighted optimization
const balancedRoute = await router.findBestRoute({
  ...order,
  mode: 'balanced',
  weights: {
    price: 0.4,
    liquidity: 0.3,
    fees: 0.3,
  },
});

Fee Analysis

const fees = await router.analyzeFees({
  market: 'trump-win-2028',
  side: 'YES',
  size: 1000,
});

for (const platform of fees) {
  console.log(`${platform.name}:`);
  console.log(`  Maker fee: ${platform.makerFee}%`);
  console.log(`  Taker fee: ${platform.takerFee}%`);
  console.log(`  For this order: $${platform.totalFee}`);
  console.log(`  Rebate available: ${platform.hasRebate}`);
}

Liquidity Analysis

const liquidity = await router.analyzeLiquidity({
  market: 'trump-win-2028',
  side: 'YES',
});

for (const platform of liquidity) {
  console.log(`${platform.name}:`);
  console.log(`  Best bid: ${platform.bestBid}`);
  console.log(`  Best ask: ${platform.bestAsk}`);
  console.log(`  Spread: ${platform.spread}%`);
  console.log(`  Depth at 1%: $${platform.depth1Pct}`);
  console.log(`  Depth at 2%: $${platform.depth2Pct}`);
}

---

Routing Modes

ModeOptimizes ForBest When
best-priceLowest priceSmall orders
best-liquidityFill probabilityLarge orders
lowest-feeMinimize feesHigh frequency
balancedWeighted comboDefault choice

---

Platform Comparison

PlatformMaker FeeTaker FeeNotes
Polymarket0%0%Zero fees on most markets; 15-min crypto markets have dynamic fees
Kalshi~0.17%~1.2%Formula-based fees, capped at ~2%
Manifold0%0%Play money

---

Best Practices

1. Compare before trading — Always check alternatives 2. Use maker orders — Pay no fees on Polymarket (vs dynamic fees on 15-min crypto markets) 3. Split large orders — Reduce slippage 4. Check liquidity — Don't trade thin markets 5. Account for fees — Polymarket: 0% most markets; Kalshi: ~1.2% average

Related skills

FAQ

Which platforms can it route across?

The default configuration lists Polymarket, Kalshi, and Manifold.

What routing modes are supported?

best-price, best-liquidity, lowest-fee, and balanced weighted optimization.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.