onflow/flow-cli/query-blockchain

Claude Code and agent skill by onflow/flow-cli

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when you need to read any data from the Flow blockchain — account state, blocks, events, transaction results, collections, or custom contract state via Cadence scripts.

Install

npx vskill@latest install onflow/flow-cli/query-blockchain

SKILL.md

Querying the Flow Blockchain with flow-cli

Overview

Use this skill any time you need on-chain data. Choose the right command from the decision table, then run it.

When the entity commands don't expose what you need, use `flow scripts execute` — Cadence scripts can query any on-chain state and are the primary tool for anything not covered by the commands below. See Cadence Scripts.

Network

Default: mainnet. Infer from conversation context:

ContextFlag
Default / production--network mainnet
Testnet discussion--network testnet
Local development / emulator--network emulator

Access node endpoints (built-in):

  • Mainnet: access.mainnet.nodes.onflow.org:9000
  • Testnet: access.devnet.nodes.onflow.org:9000
  • Emulator: 127.0.0.1:3569

Override with --host <endpoint> to point at a custom access node.

Decision Table

What you needCommand
Account balance, keys, deployed contractsflow accounts get
Account staking infoflow accounts staking-info
Block infoflow blocks get
Events emitted in a block rangeflow events get
Regular transaction status / resultflow transactions get
System transaction for a blockflow transactions get-system
Scheduled transaction detailsflow schedule get / flow schedule list
Collection contentsflow collections get
Network status (online/offline)flow status
Protocol state snapshotflow snapshot save
Anything not covered aboveflow scripts execute

Commands

Accounts
bash
flow accounts get <address|name> [--include contracts] [--network mainnet]
  • --include contracts adds deployed contract source code to the output
  • Flow addresses must include the 0x prefix (e.g. 0xf8d6e0586b0a20c7)
  • <name> resolves via flow.json — only use names when a flow.json is present
bash
flow accounts get 0xe467b9dd11fa00df --network mainnet
flow accounts get 0xe467b9dd11fa00df --include contracts --network mainnet
flow accounts staking-info 0xe467b9dd11fa00df --network mainnet
Blocks
bash
flow blocks get <block_id|latest|block_height> [--include transactions] [--events <event_name>] [--network mainnet]
bash
flow blocks get latest --network mainnet
flow blocks get 12884163 --include transactions --network mainnet
flow blocks get latest --events A.1654653399040a61.FlowToken.TokensDeposited --network mainnet
Events
bash
flow events get <event_name> [<event_name2> ...] [--last 10] [--start N --end M] [--network mainnet]
  • Default: last 10 blocks. Use --last N to widen.
  • --start/--end for explicit block height range.
  • Multiple event types are fetched in parallel.
  • Event name format: A.<address>.<ContractName>.<EventName>
bash
flow events get A.1654653399040a61.FlowToken.TokensDeposited --last 20 --network mainnet
flow events get A.1654653399040a61.FlowToken.TokensDeposited --start 11559500 --end 11559600 --network mainnet
flow events get A.1654653399040a61.FlowToken.TokensDeposited A.1654653399040a61.FlowToken.TokensWithdrawn --network mainnet
Transactions
bash
# Regular transaction
flow transactions get <tx_id> [--include signatures,code,payload,fee-events] [--exclude events] [--network mainnet]
# System transaction (by block, not tx hash)
flow transactions get-system <block_id|latest|block_height> [tx_id] [--network mainnet]
# Scheduled transactions
flow schedule get <numeric-id> [--network mainnet]
flow schedule list <address|account-name> [--network mainnet]
Collections
bash
flow collections get <collection_id> [--network mainnet]
Network Status
bash
flow status --network mainnet

Output Format

All commands support --output json for machine-readable output.

bash
flow accounts get 0xe467b9dd11fa00df --output json --network mainnet
flow events get A.1654653399040a61.FlowToken.TokensDeposited --output json --network mainnet

Use --filter <property> to extract specific fields from results.


Cadence Scripts

flow scripts execute is the most powerful read tool. Use it when:

  • You need data from a contract that has no dedicated CLI command
  • You need to call a view function or read a field from a contract
  • You need to combine data from multiple contracts in one query
  • You need a historical snapshot at a specific block height
bash
flow scripts execute <script.cdc> [args...] [--args-json '[{"type":"...","value":"..."}]'] [--block-height N] [--block-id <id>] [--network mainnet]
  • Simple types (Address, UInt64, String, Bool) can be passed as positional args
  • Use --args-json for complex types (UFix64, optionals, structs, arrays)
  • --block-height / --block-id execute against historical state
  • Write a temporary .cdc file, execute it, then clean up
Writing and Running Scripts

Write script to a temp file, execute, clean up:

bash
# Write
cat > /tmp/query.cdc << 'EOF'
import FungibleToken from 0xf233dcee88fe0abe
import FlowToken from 0x1654653399040a61
access(all) fun main(address: Address): UFix64 {
let account = getAccount(address)
let vaultRef = account.capabilities
.borrow<&{FungibleToken.Balance}>(/public/flowTokenBalance)
?? panic("Could not borrow FungibleToken Balance capability for account \(address) at path /public/flowTokenBalance. Make sure the account has a FlowToken Vault set up properly.")
return vaultRef.balance
}
EOF
# Execute
flow scripts execute /tmp/query.cdc 0xe467b9dd11fa00df --network mainnet
# Clean up
rm /tmp/query.cdc
Passing Arguments
bash
# Simple types as positional args
flow scripts execute /tmp/query.cdc 0xe467b9dd11fa00df --network mainnet
# Complex types with --args-json (JSON-Cadence encoding)
flow scripts execute /tmp/query.cdc --args-json '[{"type":"UFix64","value":"100.0"},{"type":"Address","value":"0xe467b9dd11fa00df"}]' --network mainnet
# Historical state
flow scripts execute /tmp/query.cdc 0xe467b9dd11fa00df --block-height 12884163 --network mainnet

Contract Addresses

ContractMainnetTestnetEmulator
FungibleToken0xf233dcee88fe0abe0x9a0766d93b6608b70xee82856bf20e2aa6
FungibleTokenMetadataViews0xf233dcee88fe0abe0x9a0766d93b6608b70xf8d6e0586b0a20c7
FungibleTokenSwitchboard0xf233dcee88fe0abe0x9a0766d93b6608b70xf8d6e0586b0a20c7
Burner0xf233dcee88fe0abe0x9a0766d93b6608b70xf8d6e0586b0a20c7
FlowToken0x1654653399040a610x7e60df042a9c08680x0ae53cb6e3f42a79
NonFungibleToken0x1d7e57aa558174480x631e88ae7f1d7c200xf8d6e0586b0a20c7
MetadataViews0x1d7e57aa558174480x631e88ae7f1d7c200xf8d6e0586b0a20c7
ViewResolver0x1d7e57aa558174480x631e88ae7f1d7c200xf8d6e0586b0a20c7
FlowFees0xf919ee77447b74970x912d5440f7e3769e0xe5a8b7f23e8b548f
FlowServiceAccount0xe467b9dd11fa00df0x8c5303eaa26202d60xf8d6e0586b0a20c7
FlowStorageFees0xe467b9dd11fa00df0x8c5303eaa26202d60xf8d6e0586b0a20c7
NodeVersionBeacon0xe467b9dd11fa00df0x8c5303eaa26202d60xf8d6e0586b0a20c7
RandomBeaconHistory0xe467b9dd11fa00df0x8c5303eaa26202d60xf8d6e0586b0a20c7
FlowIDTableStaking0x8624b52f9ddcd04a0x9eca2b38b18b5dfe0xf8d6e0586b0a20c7
FlowEpoch0x8624b52f9ddcd04a0x9eca2b38b18b5dfe0xf8d6e0586b0a20c7
FlowClusterQC0x8624b52f9ddcd04a0x9eca2b38b18b5dfe0xf8d6e0586b0a20c7
FlowDKG0x8624b52f9ddcd04a0x9eca2b38b18b5dfe0xf8d6e0586b0a20c7
FlowStakingCollection0x8d0e87b65159ae630x95e019a17d0e23d70xf8d6e0586b0a20c7
LockedTokens0x8d0e87b65159ae630x95e019a17d0e23d70xf8d6e0586b0a20c7
StakingProxy0x62430cf28c26d0950x7aad92e5a0715d210xf8d6e0586b0a20c7
EVM0xe467b9dd11fa00df0x8c5303eaa26202d60xf8d6e0586b0a20c7
FlowEVMBridge ¹0x1e4aa0b87d10b1410xdfc20aee650fcbdf0xf8d6e0586b0a20c7
NFTStorefrontV20x1d7e57aa558174480x2d55b98eb200daef0xf8d6e0586b0a20c7
HybridCustody0xd8a7e05a7ac670c00x294e44e1ec6993c60xf8d6e0586b0a20c7
CapabilityFactory0xd8a7e05a7ac670c00x294e44e1ec6993c60xf8d6e0586b0a20c7
CapabilityFilter0xd8a7e05a7ac670c00x294e44e1ec6993c60xf8d6e0586b0a20c7
CapabilityDelegator0xd8a7e05a7ac670c00x294e44e1ec6993c60xf8d6e0586b0a20c7

¹ The EVM bridge account hosts many contracts beyond FlowEVMBridge itself (FlowEVMBridgeConfig, FlowEVMBridgeUtils, FlowEVMBridgeNFTEscrow, FlowEVMBridgeTokenEscrow, CrossVMNFT, CrossVMToken, and more). Run flow accounts get 0x1e4aa0b87d10b141 --network mainnet for the current deployed contract list, or check the flow-evm-bridge repo for available scripts.


Cadence Script Recipes & Data Structures

See cadence-scripts.md for 20+ ready-to-use Cadence scripts organized by category:

  • Token queries — FLOW balance, total supply, generic FT balance, FT metadata
  • Account & storage — storage capacity, available balance, account creation fee, fee parameters
  • Epoch — counter, phase, metadata, timing config
  • Staking — node info, staked node IDs, total staked, by role, requirements, rewards, delegator info, staking collections
  • Protocol — node version beacon, random beacon source
  • NFT — collection IDs, NFT metadata (Display)
  • Key data structures — NodeInfo, DelegatorInfo, EpochMetadata, EpochPhase, Node Roles

Common Event Types

EventDescription
A.f233dcee88fe0abe.FungibleToken.DepositedAny fungible token deposited
A.f233dcee88fe0abe.FungibleToken.WithdrawnAny fungible token withdrawn
A.f233dcee88fe0abe.FungibleToken.BurnedAny fungible token burned
A.1d7e57aa55817448.NonFungibleToken.DepositedAny NFT deposited to a collection
A.1d7e57aa55817448.NonFungibleToken.WithdrawnAny NFT withdrawn from a collection
A.8624b52f9ddcd04a.FlowEpoch.NewEpochNew epoch started
A.8624b52f9ddcd04a.FlowEpoch.EpochSetupEpoch setup phase began
A.8624b52f9ddcd04a.FlowEpoch.EpochCommitEpoch commit phase began
A.8624b52f9ddcd04a.FlowIDTableStaking.NewNodeCreatedNew staking node registered
A.8624b52f9ddcd04a.FlowIDTableStaking.TokensCommittedTokens committed to stake
A.8624b52f9ddcd04a.FlowIDTableStaking.RewardsPaidStaking rewards distributed
A.8624b52f9ddcd04a.FlowIDTableStaking.NewDelegatorCreatedNew delegator registered
A.f919ee77447b7497.FlowFees.FeesDeductedTransaction fees paid
A.f919ee77447b7497.FlowFees.TokensDepositedFees deposited to fee vault

Available Script Libraries

For more complex queries, clone these repos to /tmp and use their scripts directly:

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 82 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
211
Repository forks
84
7-day trend score
27

Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 23 May 2026, 5 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/onflow/flow-cli/query-blockchain/badge)](https://verified-skill.com/skills/onflow/flow-cli/query-blockchain)

Something wrong with this skill or its page? Tell us.