AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Flare Network

skill-thanasimos-thanas-flare-builders-toolkit-flare-network · by Thanasimos

>

No reviews yet
0 installs
14 views
0.0% view→install

Install

$ agentstack add skill-thanasimos-thanas-flare-builders-toolkit-flare-network

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-thanasimos-thanas-flare-builders-toolkit-flare-network)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Flare Network? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Flare Network — Deployment Registry

Authoritative addresses + endpoints for the Flare-family chains. For protocol architecture (FTSO, FDC, FAssets, Smart Accounts), see the flare-general skill. This skill answers "WHERE is X" questions — concrete addresses, RPC URLs, explorer endpoints, and verification commands.

If you're unsure whether something is in scope: this skill is for deployed contracts and network endpoints. Anything about how a protocol works lives in the protocol-specific skills (flare-ftso, flare-fassets, etc.).

Chain matrix

| Chain | ID | Type | Native | Wrapped Native | Block Time | |---|---|---|---|---|---| | Flare | 14 | Mainnet | FLR | WFLR | ~2s | | Songbird | 19 | Canary mainnet (real $) | SGB | WSGB | ~2s | | Coston2 | 114 | Flare testnet | C2FLR | WC2FLR | ~2s | | Coston | 16 | Songbird testnet | CFLR | WCFLR | ~2s |

RPC endpoints

Public RPCs (rate-limited, 30-block eth_getLogs cap)

flare:    https://flare-api.flare.network/ext/C/rpc
songbird: https://songbird-api.flare.network/ext/C/rpc
coston2:  https://coston2-api.flare.network/ext/C/rpc
coston:   https://coston-api.flare.network/ext/C/rpc

Faster / paid alternatives

| Provider | Notes | |---|---| | Ankr (paid tier) | https://rpc.ankr.com/flare/ — domain-locked browser keys (origin-restricted); separate IP-locked key needed for server-side scripts/forge. Lifts eth_getLogs to ~5k blocks. |

Origin lock note — a browser-locked Ankr key returns Origin not allowed (-32079) to curl / forge-script. Use the public RPC for deploys; reserve Ankr for browser code.

Block explorers

Flare

| Explorer | API | Verifier type | |---|---|---| | https://flare-explorer.flare.network (Blockscout) | https://flare-explorer.flare.network/api/ | blockscout | | https://flarescan.com (Routescan-backed) | https://api.routescan.io/v2/network/mainnet/evm/14/etherscan | etherscan |

Songbird

| Explorer | API | Verifier type | |---|---|---| | https://songbird-explorer.flare.network | https://songbird-explorer.flare.network/api/ | blockscout | | https://songbird.flarescan.com | https://api.routescan.io/v2/network/mainnet/evm/19/etherscan | etherscan |

Coston2

| Explorer | API | Verifier type | |---|---|---| | https://coston2-explorer.flare.network | https://coston2-explorer.flare.network/api/ | blockscout | | https://coston2.flarescan.com | https://api.routescan.io/v2/network/testnet/evm/114/etherscan | etherscan |

Verification command (Foundry)

Both explorer families work via forge verify-contract:

# Blockscout (no API key needed)
forge verify-contract \
  --rpc-url flare \
  --verifier blockscout \
  --verifier-url "https://flare-explorer.flare.network/api/" \
  --num-of-optimizations 200 --compiler-version 0.8.24 \
  --constructor-args $ENCODED_ARGS \
  $ADDRESS \
  src/MyContract.sol:MyContract

# Routescan / Etherscan-style (use literal "verifyContract" as the key)
forge verify-contract \
  --verifier etherscan \
  --verifier-url "https://api.routescan.io/v2/network/mainnet/evm/14/etherscan" \
  --etherscan-api-key "verifyContract" \
  --num-of-optimizations 200 --compiler-version 0.8.24 \
  --constructor-args $ENCODED_ARGS \
  $ADDRESS \
  src/MyContract.sol:MyContract

Constructor args go in via --constructor-args 0x.... Get them from the broadcast log: broadcast/Deploy.s.sol//run-latest.jsontransactions[i].arguments, then cast abi-encode "constructor(...)" to encode.

Cross-chain infrastructure

Permit2 (Uniswap canonical)

0x000000000022D473030F116dDEE9F6B43aC78BA3deployed on Flare ONLY (chain 14). NOT deployed on Songbird, NOT deployed on Coston2. Verify via:

cast code 0x000000000022D473030F116dDEE9F6B43aC78BA3 --rpc-url 
# Returns full bytecode on Flare; returns 0x on Songbird/Coston2

Implication: Permit2-dependent contracts (batch sweeps, signed-permit flows) cannot be canary-tested on Songbird. Either deploy your own Permit2 fork there (~3000 LOC), use mocks, or skip Songbird and validate via Flare fork tests only.

Multicall3

0xcA11bde05977b3631167028862bE2a173976CA11 on all Flare-family chains (Flare, Songbird, Coston2). Standard Multicall3 ABI. Useful for batched RPC reads.

When defining a custom chain in viem, you must explicitly register contracts.multicall3 or publicClient.multicall(...) will throw silently:

defineChain({
  id: 14,
  name: 'Flare',
  // ...
  contracts: {
    multicall3: {
      address: '0xcA11bde05977b3631167028862bE2a173976CA11',
      blockCreated: 3002461,
    },
  },
})

Tokens

Addresses are case-insensitive on the EVM but stored canonical-checksummed below.

Flare (chain 14)

| Symbol | Address | Decimals | Notes | |---|---|---|---| | WFLR | 0x1D80c49BbBCd1C0911346656B529DF9E5c2F783d | 18 | Wrapped native; FTSO delegation hooks (see flare-dapp-pitfalls) | | sFLR | 0x12e605bc104e93B45e1aD99F9e555f659051c2BB | 18 | Liquid-staked FLR | | USDT0 | 0xe7cd86e13AC4309349F30B3435a9d337750fC82D | 6 | Tether's Flare deployment; blacklistable | | USDC.e | 0xfbDa5F676cB37624f28265A144A48B0d6e87d3b6 | 6 | LayerZero-bridged USDC; blacklistable | | FXRP | 0x9b27dF2BC1AC0F5dE8f43eF1e7df45f5be17Bf08 | 6 | FAssets-bridged XRP (see flare-fassets) | | HLN | 0x140Df95E16D9eF21BD4d97c8E5A1bD4D04d23739 | 18 | Enosys governance token | | APS | 0x6b8758DB1148Cb5e8A6c3D3a2c34a4eFf5Ed0e80 | 18 | Enosys auto-pool stake | | eUSDT | 0x96B41289D90444B8adD57e6F265DB5aE8651DF29 | 6 | Enosys-wrapped USDT | | rFLR | 0x26d460c3Cf931Fb2014FA436a49e3Af08619810e | 18 | Reward FLR (FlareDrops) |

Songbird (chain 19)

| Symbol | Address | Decimals | Notes | |---|---|---|---| | WSGB | 0x02f0826ef6aD107Cfc861152B32B52fD11BaB9ED | 18 | Wrapped native | | USDT_SG | 0x99e1A4329afA76e0fC34C9bd56b016A509ECD37e | 6 | Songbird USDT variant |

Coston2 (chain 114, testnet)

| Symbol | Address | Decimals | |---|---|---| | WC2FLR | 0x767eecF7c0fa1d0F9CC0D75D6b5Bb2B8C0CF8A4b | 18 |

Token lists are not exhaustive — for the long tail (airdrops, dust), discover via the explorer's account.tokenlist API. For Flare:

curl -s "https://flare-explorer.flare.network/api?module=account&action=tokenlist&address=$WALLET"

Concentrated-liquidity DEXes

Three CLMM families on Flare today. Picking the right one depends on whether you need V3-shape (getPool(t0,t1,fee)) or Algebra-shape (poolByPair(t0,t1)) ABI.

Enosys V3 (Uniswap V3-compatible) — Flare

| Contract | Address | |---|---| | Factory | 0x17AA157AC8C54034381b840Cb8f6bf7Fc355f0de | | NonfungiblePositionManager | 0xD9770b1C7A6ccd33C75b5bcB1c0078f46bE46657 | | SwapRouter | 0x5FD34090E9b195d8482Ad3CC63dB078534F1b113 | | QuoterV2 | 0x0A32EE3f66cC9E68ffb7cBeCf77bAef03e2d7C56 | | FtsoRewardRedistributorForNft (FTSO only) | 0x5a0BfF8Ff1AF1DF28619Fce57d07E3bBb7BAF3d7 | | FlaresRewardsRedistributorForNft (legacy, pre-2026-04) | 0x4410B821Fa1041D242f2C199C0EA78E4A5f15F19 | | FtsoRewardRedistributorForAddress (EOA delegations) | 0x45aAa2e37B89f7514DF69FA084f381C67891C381 |

FTSO redistributor naming gotcha (Flare): the active NFT redistributor was rotated 2026-04 from FlaresRewardsRedistributorForNft (0x4410B821…) to FtsoRewardRedistributorForNft (0x5a0BfF8F…). Same ABI shape; only the address changed. Rewards accrued under the legacy contract are still claimable via direct calls — see enosys-dex-v3 for the address-allowlist recovery pattern.

Enosys V3 — Songbird

| Contract | Address | |---|---| | Factory | 0x416F1CcBc55033Ae0133DA96F9096Fe8c2c17E7d | | NonfungiblePositionManager | 0xFC02eB1Ab5079627103357BfbB8167d3BBAc6f1e | | SwapRouter | 0x51bB58357c81523Dc7fc9D05f0C5921b122EE114 | | QuoterV2 | 0x4855f257B4BD4e5724E39D3938128Cd363EDD6C7 | | FtsoRewardRedistributorForNft | 0x421294D3eb38c87390fc7f1442623f5b7DBc5b86 |

SparkDEX V3.1 (Uniswap V3-compatible, no FTSO redistributor) — Flare

| Contract | Address | |---|---| | Factory | 0x8A2578d23d4C532cC9A98FaD91C0523f5efDE652 | | NonfungiblePositionManager | 0xEE5FF5Bc5F852764b5584d92A4d592A53DC527da | | SwapRouter | 0x8a1E35F5c98C4E85B36B7B253222eE17773b2781 | | QuoterV2 | 0x5B5513c55fd06e2658010c121c37b07fC8e8B705 |

LP fees still accrue; FTSO delegation rewards do not (no redistributor deployed for this fork). Position NFT lifecycle is otherwise identical to Enosys V3.

SparkDEX V4 (Algebra V1.9+ with plugins, dynamic fees) — Flare

| Contract | Address | |---|---| | Factory | 0x805488DaA81c1b9e7C5cE3f1DCeA28F21448EC6A | | NonfungiblePositionManager | 0x49BE8AA6c684b15e0C5450e8Fa0b16Bec1435596 | | SwapRouter | 0x69D57B9D705eaD73a5d2f2476C30c55bD755cc2F | | QuoterV2 | 0x6AD6A4f233F1E33613e996CCc17409B93fF8bf5f | | Default pool deployer | 0x59a662Ed724F19AD019307126CbEBdcF4b57d6B1 |

Algebra differs from V3 in three places that matter when integrating:

  1. Pool resolution — factory.poolByPair(token0, token1) (no fee tier).
  2. Pool state — globalState() returns 6 fields (V3's slot0() returns 7), but

tick is at index 1 in both.

  1. MintParams has address deployer where V3 has uint24 fee. Pass address(0)

to use the factory's default deployer (current SparkDEX V4 pattern). For non-default-deployer pools, you must pass the actual deployer address; verify by computing factory.computePoolAddress(t0, t1) matches the pool you're targeting.

V2 routers (Uniswap V2-compatible)

Flare

| Router | Address | Selector for swapExactTokensForTokens | |---|---|---| | Enosys V2 Router | 0x088EeCB467B3968Da36c71F05023A1d3133B2B83 | 0x38ed1739 | | BlazeSwap Router | 0xe3A1b355ca63abCBC9589334B5e609583C7BAa06 | 0x38ed1739 |

BlazeSwap quirk — its swapExactTokensForTokens checks amountOutMin against the actual recipient balance change, not the getAmountsOut quote. For fee-on-transfer tokens this means a quote-derived minOut will trip BlazeSwapRouter: INSUFFICIENT_OUTPUT_AMOUNT. See flare-security for the double-FoT-aware integration pattern.

Aggregators

OpenOcean

| Chain | Exchange contract | |---|---| | Flare | 0x6352a56caadC4F1E25CD6c75970Fa768A3304e64 |

Function selector for swap: 0x90411a32 (signature swap(address,(SwapDescription),(uint256,uint256,uint256,bytes)[])). Do NOT guess this from the human-readable signature — verify against the actual returned calldata from the OO API:

curl -s '' | jq -r '.data.data[2:10]'

OO API endpoint: https://open-api.openocean.finance/v3/{chainId}/swap_quote. Free, unauthenticated, ~$0.01 minimum-USD-value gate per quote (legs below that get rejected — fall back to V2 routers for dust).

Cross-chain bridges

LayerZero

LayerZero V2 endpoints are deployed on Flare and Songbird. For up-to-date contract addresses, see .

Stargate

Stargate v2 has Flare deployments for USDC and USDT0 routes. See .

Faucets (testnet only)

| Chain | Faucet | |---|---| | Coston2 (C2FLR) | | | Coston (CFLR) | |

Common command snippets

Read deployed bytecode (verify a contract exists at an address)

cast code $ADDRESS --rpc-url flare
# returns 0x if no contract; full bytecode if deployed

Find deployed function selectors in a contract's dispatch table

cast code $ADDRESS --rpc-url flare | grep -oE '63[0-9a-f]{8}1461' | head
# 63XXXXXXXX14 = PUSH4 selector + EQ — that's the dispatcher's selector check

Decode a 4-byte selector into a function signature

cast 4byte 0x90411a32
# returns swap(address,(address,address,address,address,uint256,uint256,uint256,bytes),(uint256,uint256,uint256,bytes)[])

Pull constructor args from a Foundry broadcast log

node -e "console.log(JSON.stringify(require('./broadcast/Deploy.s.sol/14/run-latest.json').transactions.find(t => t.contractName === 'MyContract').arguments))"

Encode constructor args for verification

cast abi-encode "constructor(address,address)" 0xabc... 0xdef...

Foundry config (recommended for Flare-family work)

# foundry.toml
[profile.default]
src = "src"
out = "out"
libs = ["lib"]
optimizer = true
optimizer_runs = 200
solc_version = "0.8.24"
via_ir = true                  # required for stack-too-deep on complex contracts
fs_permissions = [{ access = "read", path = "config/" }]

[rpc_endpoints]
flare      = "https://flare-api.flare.network/ext/C/rpc"
songbird   = "https://songbird-api.flare.network/ext/C/rpc"
coston2    = "https://coston2-api.flare.network/ext/C/rpc"

When to use other skills

  • Protocol architecture (FTSO, FDC, FAssets, Smart Accounts, FCC/TEE) — flare-general, then the protocol-specific skill.
  • FTSO price feeds, anchor feeds, volatility incentivesflare-ftso.
  • Flare Data Connector (cross-chain proofs)flare-fdc.
  • FAssets / FXRP minting + redemptionflare-fassets.
  • ERC-4337 smart accounts on Flareflare-smart-accounts.
  • Enosys-specific contracts (DEX V3 reward managers, Loans/CDP, governance) — enosys-contracts, enosys-dex-v3.
  • Cross-project gotchas (RPC log range, EIP-3855, MetaMask SDK hangs, claim-OOG) — flare-dapp-pitfalls.
  • Flare-specific security review of a deployment — flare-security.
  • Generic Solidity standardssolidity (Cyfrin).
  • Auditing workflowaudit (checklist) and audit-contract (adversarial multi-agent).

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.