AgentSkillsCN

Contract Query

合同查询

SKILL.md

Contract Query Skill

Query NEAR smart contracts using near-cli-rs.

Usage

bash
/contract-query [contract] [method] [args]

Examples:

bash
# Total supply
/contract-query legion nft_total_supply

# Initiate supply
/contract-query initiate nft_total_supply

# Specific token
/contract-query legion nft_token '{"token_id":"1"}'

# Tokens for owner
/contract-query legion nft_tokens_for_owner '{"account_id":"user.near"}'

Implementation

When invoked:

  1. Parse arguments:

    • contract: "legion" | "initiate" | full contract ID (default: "legion")
    • method: Contract method name (required)
    • args: JSON string (default: "{}")
  2. Map shortcuts to contract IDs:

    • "legion" → "nearlegion.nfts.tg"
    • "initiate" → "initiate.nearlegion.near"
  3. Build near-cli-rs command:

    bash
    near contract call-function as-read-only \
      {contract_id} {method} \
      json-args '{args}' \
      network-config mainnet \
      now
    
  4. Execute and format output:

    • Run the bash command using the Bash tool
    • Display result with contract, method, and timing
    • Format JSON output for readability

Example Output

code
✓ Contract Query: nearlegion.nfts.tg

Method: nft_total_supply
Network: mainnet

Result:
"1234"

Time: 234ms

Common Queries Reference

QueryCommand
Legion total supply/contract-query legion nft_total_supply
Initiate total supply/contract-query initiate nft_total_supply
Check ownership/contract-query legion nft_tokens_for_owner '{"account_id":"user.near"}'
Token metadata/contract-query legion nft_token '{"token_id":"1"}'

Installation Check

If near command not found, provide install instructions:

bash
# macOS/Linux
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/near/near-cli-rs/releases/latest/download/near-cli-rs-installer.sh | sh

# Or via cargo
cargo install near-cli-rs