grimoire-pendle

Fetches Pendle Hosted SDK metadata using the Grimoire venue CLI. Use when you need supported chains, aggregators, markets, assets, or market token details.

By franalgaba · 1,019 installs

npx skills add franalgaba/grimoire --skill grimoire-pendle

Source repository · Upstream listing

Grimoire Pendle Skill Use this skill to inspect Pendle metadata and preflight Pendle routing configuration before running spells. Preferred invocations: grimoire venue pendle ... npx y @grimoirelabs/cli venue pendle ... (no install) bun run packages/cli/src/index.ts venue pendle ... (repo local) grimoire pendle ... (direct binary from @grimoirelabs/venues ) Recommended preflight: grimoire venue doctor adapter pendle chain 1 rpc url <rpc json Commands grimoire venue pendle info [ base url <url ] [ format <auto json table ] grimoire venue pendle chains [ base url <url ] [ format <auto json table ] grimoire venue pendle supported aggregators chain <id [ base url <url ] [ format <auto json table ] grimoire venue pendle markets [ chain <id ] [ active <true false ] [ base url <url ] [ format <auto json table ] grimoire venue pendle assets [ chain <id ] [ type <PT YT LP SY ] [ base url <url ] [ format <auto json table ] grimoire venue pendle market tokens chain <id market <address [ base url <url ] [ format <auto json table ] Examples Authoring Workflow Pendle requires a market first approach. Do NOT write a Pendle spell without first querying available markets. 1. Query markets for the target chain and underlying: 2. Pick a market — note its address and expiry. Each market has specific PT/YT/SY tokens. 3. Query market tokens to get the exact token addresses: 4. Write the spell using token addresses from step 3: Common mistakes pendle.deposit(USDC, ...) — Pendle has no deposit action. Use add liquidity , mint py , mint sy , or swap . Using token symbols without addresses — PT/YT/SY tokens are auto resolved via the Pendle API, but standard tokens like USDC need raw amounts in the token's smallest unit. Missing enable aggregator — Some routes require an aggregator. If no route is found, retry with enable aggregator=true in the with() clause. Supported actions Action Description Input Output swap Swap between any Pendle tokens Single token Single token add liquidity Add single sided liquidity Underlying/SY LP token remove liquidity Remove single sided liquidity LP token Underlying/SY mint py Mint PT + YT from underlying Underlying/SY PT + YT redeem py Redeem PT + YT to underlying PT + YT Underlying/SY mint sy Wrap underlying into SY Underlying SY redeem sy Unwrap SY to underlying SY Underlying Metric Surface (Spell Comparisons) Pendle exposes quote out for route output comparisons: Selector fields: required: asset out optional: amount (defaults to 1 unit of input asset), slippage bps , enable aggregator Spell Constraints When writing Pendle actions in .spell files, use with clauses: Constraint Type Description max slippage integer (bps) Maximum slippage, validated as integer in [0, 10000] , converted to decimal for API min output integer (wei) Minimum output amount floor require quote boolean Fail if Pendle API quote fails max gas integer (wei) Gas estimate cap Pendle swap only supports mode: exact in . exact out is not supported. When the Pendle API returns multiple routes, the adapter selects the first (best) route and emits a warning via onWarning . This is logged in non JSON CLI runs. PT/YT/SY Token Resolution Pendle PT, YT, and SY tokens (e.g. PT FXSAVE , YT EETH , SY WSTETH ) are automatically resolved via the Pendle API at build time. You can use these symbols directly in spells without providing explicit addresses: The adapter converts underscore delimited names (e.g. PT FXSAVE ) to the Pendle API format and picks the best match. If multiple expiries exist, the first (nearest) is selected. To target a specific expiry or disambiguate, use the full 0x address instead: Use grimoire venue pendle assets chain <id type PT to discover available tokens and addresses. Notes Default API base URL is https://api v2.pendle.finance/core . Override base URL with base url or PENDLE API BASE URL . Use format json for automation and nested payloads. Pendle swap currently supports mode: exact in only. Aggregators are disabled by default in adapter actions unless explicitly enabled. For Pendle token outputs ( assetOut , outputs ), use bare address literals ( 0x... ) and not quoted strings ( \"0x...\" ). Quoted address like token values trigger validator code QUOTED ADDRESS LITERAL . max slippage is validated as integer bps in [0, 10000] and converted to decimal ( bps / 10000 ) before API requests.