Grimoire Uniswap

by franalgaba2cca3994a288No license6 starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 5 months ago

Retrieves Uniswap router metadata using the Grimoire venue CLI. Use when you need router addresses, adapter information, or Uniswap V3/V4 details.

Instructions onlyBusiness & Finance
AI-generated overview

Retrieves Uniswap router, token and pool metadata via the Grimoire venue CLI and emits spell parameter blocks.

What it does
This skill documents how to use the Grimoire venue CLI to inspect Uniswap metadata: adapter info, per-chain router addresses, token lists and pools for a token pair. It can emit spell params: blocks for tokens and pools through agent-only snapshot commands, and it describes metric selectors and swap constraints for Uniswap V3/V4 spells. Output is JSON or table format, with --format spell available for tokens and pools.
When to use it
Use it when you need Uniswap router addresses, adapter details, token or pool lookups, or Uniswap V3/V4 metadata for writing spells. It is also relevant when generating token or pool parameter blocks for spell inputs.
Requirements
Requires the Grimoire venue CLI, runnable via grimoire, npx -y @grimoirelabs/cli, a repo-local Bun command, or the grimoire-uniswap binary. Pool lookups need either a GRAPH_API_KEY for The Graph subgraph queries or an RPC endpoint via --rpc-url/RPC_URL for on-chain factory lookups, so network access is required. No scripts ship with the skill; it is instructions only.

Grimoire Uniswap Skill

Use this skill to inspect Uniswap metadata and produce token/pool snapshots for spells.

Preferred invocations:

  • grimoire venue uniswap ...
  • npx -y @grimoirelabs/cli venue uniswap ... (no-install)
  • bun run packages/cli/src/index.ts venue uniswap ... (repo-local)
  • grimoire-uniswap ... (direct binary from @grimoirelabs/venues)

Recommended preflight:

  • grimoire venue doctor --adapter uniswap --chain 1 --rpc-url <rpc> --json

Commands

  • grimoire venue uniswap info — adapter metadata
  • grimoire venue uniswap routers [--chain <id>] — router addresses per chain
  • grimoire venue uniswap tokens [--chain <id>] [--symbol <sym>] [--address <addr>] [--source <url>] — token list lookup
  • grimoire venue uniswap tokens-snapshot [--chain <id>] [--symbol <sym>] [--address <addr>] [--source <url>] — generate spell params: block for tokens (agent-only)
  • grimoire venue uniswap pools --token0 <address|symbol> --token1 <address|symbol> [--chain <id>] [--fee <bps>] [--limit <n>] [--source <url>] [--endpoint <url>] [--graph-key <key>] [--subgraph-id <id>] [--rpc-url <url>] [--factory <address>] — find pools for a token pair
  • grimoire venue uniswap pools-snapshot --token0 <address|symbol> --token1 <address|symbol> [--chain <id>] [--fee <bps>] [--limit <n>] [--source <url>] [--endpoint <url>] [--graph-key <key>] [--subgraph-id <id>] [--rpc-url <url>] [--factory <address>] — generate spell params: block for pools (agent-only)

Pool Data Sources

Pools can be fetched from The Graph (subgraph) or directly from on-chain factory contracts:

  • Subgraph (default when GRAPH_API_KEY is set): queries The Graph decentralized network. Built-in subgraph IDs for Ethereum, Optimism, Polygon, Base, Arbitrum.
  • RPC (fallback): if no usable graph config is present, pools uses on-chain factory lookups (with --rpc-url/RPC_URL when provided, otherwise chain default RPC where available).
  • To force RPC mode: provide --rpc-url and omit --graph-key.

Environment Variables

VariableDescription
GRAPH_API_KEYThe Graph API key for subgraph queries (get one at https://thegraph.com/studio/apikeys/)
RPC_URLFallback RPC URL for on-chain pool lookups

Examples

bash
grimoire venue uniswap info --format tablegrimoire venue uniswap routersgrimoire venue uniswap routers --chain 1grimoire venue uniswap tokens --chain 1 --symbol USDC --format spellgrimoire venue uniswap pools --chain 1 --token0 USDC --token1 WETH --fee 3000 --format spellgrimoire venue uniswap pools --chain 8453 --token0 USDC --token1 WETH --fee 500 --rpc-url $RPC_URL --format tablegrimoire venue uniswap pools --chain 8453 --token0 USDC --token1 WETH --fee 500 --graph-key $GRAPH_API_KEY --subgraph-id <id>grimoire venue uniswap tokens-snapshot --chain 1 --symbol USDCgrimoire venue uniswap pools-snapshot --chain 1 --token0 USDC --token1 WETH --rpc-url $RPC_URL

Use tokens-snapshot or pools-snapshot to emit a params: block for spell inputs. These are agent-only commands (output suppressed in interactive mode).

Metric Surface (Spell Comparisons)

Uniswap V3 and V4 expose quote_out for protocol comparison:

spell
v3_out = metric("quote_out", uni_v3, USDC, "asset_out=WETH,amount=1000000,fee_tier=3000")v4_out = metric("quote_out", uni_v4, USDC, "asset_out=WETH,amount=1000000,fee_tier=3000,tick_spacing=60")

Selector fields:

  • required: asset_out
  • optional: amount (defaults to 1 unit of input asset), fee_tier
  • V4 optional: tick_spacing

Spell Constraints

When writing swap actions in .spell files targeting Uniswap, use with clauses to set constraints:

spell
uniswap_v3.swap(USDC, WETH, params.amount) with (  fee_tier=3000,  max_slippage=50,  min_output=900000000000000,  deadline=300,)

fee_tier is required. The adapter throws if fee_tier is not specified. It is an action parameter (not a constraint) and is extracted from the with() clause.

Common fee tiers: 500 (0.05%), 3000 (0.3%), 10000 (1%).

ParameterTypeDescription
fee_tierinteger (bps)Required. Uniswap pool fee tier (e.g. 500, 3000, 10000)
ConstraintTypeDescription
max_slippageinteger (bps)Maximum slippage in basis points (e.g. 50 = 0.5%)
min_outputinteger (wei)Minimum output amount floor
max_inputinteger (wei)Maximum input amount cap
deadlineinteger (seconds)Transaction deadline from now
require_quotebooleanFail if on-chain quote fetch fails
require_simulationbooleanFail if simulation unavailable
max_gasinteger (wei)Gas estimate cap

Always set both max_slippage and min_output for swaps to prevent unexpected losses.

Supported Adapters

AdapterRouterApproval Flow
@uniswap_v3SwapRouter02Standard ERC20 approve
@uniswap_v4Universal RouterPermit2

Notes

  • CLI currently exposes V3 metadata. V4 adapter is available programmatically via createUniswapV4Adapter().
  • For metadata lookups (tokens, pools), use grimoire venue uniswap ... even when your spell venue is uniswap_v4.
  • Outputs JSON/table; tokens and pools also support --format spell.
  • Prefer --format json for automation and reproducible snapshots.
  • Only metadata is exposed (no on-chain quote endpoints).

Source and attribution

Source:franalgaba/grimoireinskills/grimoire-uniswapat commit2cca399

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal