jpskill.com
💼 ビジネス コミュニティ

basket-query

Use when the agent needs to read basket state, user positions, settlement status, config, or basket count from the on-chain contracts. All queries are free (no gas, no account needed). Do not use for state-changing operations.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o basket-query.zip https://jpskill.com/download/9665.zip && unzip -o basket-query.zip && rm basket-query.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9665.zip -OutFile "$d\basket-query.zip"; Expand-Archive "$d\basket-query.zip" -DestinationPath $d -Force; ri "$d\basket-query.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して basket-query.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → basket-query フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1
📖 Claude が読む原文 SKILL.md(中身を展開)

この本文は AI(Claude)が読むための原文(英語または中国語)です。日本語訳は順次追加中。

Basket Query

All queries are read-only and free — no --account needed.

Setup

MAINNET ONLY. Run vara-wallet config set network mainnet before anything else. NEVER switch to testnet — there are no contracts there.

# Set network and variables (see ../references/program-ids.md)
vara-wallet config set network mainnet
BASKET_MARKET="0x1fa6fd12433accef350a68da4555a2a71acab261c4ae9eb713033023fc0775ea"
BET_TOKEN="0xad1a120f24f62eb68537791fe94c3b381e81677e9bd73d811c319838846c27dd"
BET_LANE="0x40dc1597c8e3beb3523f9c05ad2b44e00a11be6e665da20e4323bb7dfae1ecda"
_PB="${POLYBASKETS_SKILLS_DIR:-skills}"
IDL="$_PB/idl/polymarket-mirror.idl"
BET_TOKEN_IDL="$_PB/idl/bet_token_client.idl"
BET_LANE_IDL="$_PB/idl/bet_lane_client.idl"

Get Your Hex Address

Sails actor_id args require hex format — SS58 addresses won't work:

MY_ADDR=$(vara-wallet balance | jq -r .address)
echo $MY_ADDR  # 0xe008...

BasketMarket Queries

Get basket count

vara-wallet call $BASKET_MARKET BasketMarket/GetBasketCount --args '[]' --idl $IDL

Returns u64 — total baskets created. Basket IDs are 0-indexed.

Get a basket

vara-wallet call $BASKET_MARKET BasketMarket/GetBasket --args '[0]' --idl $IDL

Response is nested under .result.ok. Parse with jq:

# ⚠ Use .result.ok — NOT .ok!
vara-wallet call $BASKET_MARKET BasketMarket/GetBasket --args '[0]' --idl $IDL | jq '.result.ok'

Basket fields: id, creator, name, description, items (array of BasketItem), created_at, status (Active/SettlementPending/Settled), asset_kind (Vara/Bet).

Get user positions

vara-wallet call $BASKET_MARKET BasketMarket/GetPositions \
  --args '["'$MY_ADDR'"]' --idl $IDL

Returns vec Position. Each position has: basket_id, user, shares, claimed, index_at_creation_bps.

To get the agent's own address:

AGENT_ADDR=$(vara-wallet wallet list | jq -r '.[0].address')

Get settlement

vara-wallet call $BASKET_MARKET BasketMarket/GetSettlement --args '[0]' --idl $IDL

Returns Result<Settlement, BasketMarketError>. Key fields: status (Proposed/Finalized), payout_per_share, challenge_deadline, finalized_at, item_resolutions.

Check config

vara-wallet call $BASKET_MARKET BasketMarket/GetConfig --args '[]' --idl $IDL

Returns BasketMarketConfig: admin_role, settler_role, liveness_ms, vara_enabled.

Check VARA enabled

vara-wallet call $BASKET_MARKET BasketMarket/IsVaraEnabled --args '[]' --idl $IDL

Returns bool.

BetToken Queries

Check BET balance

vara-wallet call $BET_TOKEN BetToken/BalanceOf \
  --args '["'$MY_ADDR'"]' --idl $BET_TOKEN_IDL

Check claim preview

vara-wallet call $BET_TOKEN BetToken/GetClaimPreview \
  --args '["'$MY_ADDR'"]' --idl $BET_TOKEN_IDL

Returns ClaimPreview: amount, streak_days, next_claim_at, can_claim_now.

Check claim state

vara-wallet call $BET_TOKEN BetToken/GetClaimState \
  --args '["'$MY_ADDR'"]' --idl $BET_TOKEN_IDL

Check token info

vara-wallet call $BET_TOKEN Metadata/Name --args '[]' --idl $BET_TOKEN_IDL
vara-wallet call $BET_TOKEN Metadata/Symbol --args '[]' --idl $BET_TOKEN_IDL
vara-wallet call $BET_TOKEN Metadata/Decimals --args '[]' --idl $BET_TOKEN_IDL
vara-wallet call $BET_TOKEN BetToken/TotalSupply --args '[]' --idl $BET_TOKEN_IDL

Note: Name, Symbol, Decimals are on the Metadata service, not BetToken.

BetLane Queries

Get position in BET lane

vara-wallet call $BET_LANE BetLane/GetPosition \
  --args '["0x<user_actor_id>", 0]' --idl $BET_LANE_IDL

Returns Position: shares (u256), claimed, index_at_creation_bps. Note: BetLane positions use u256 shares (BET tokens), unlike BasketMarket positions which use u128 (VARA).

Get paginated positions

vara-wallet call $BET_LANE BetLane/GetPositions \
  --args '["0x<user_actor_id>", 0, 10]' --idl $BET_LANE_IDL

Args: user, offset, limit. Returns Result<vec UserPositionView, BetLaneError>.

Check BetLane config

vara-wallet call $BET_LANE BetLane/GetConfig --args '[]' --idl $BET_LANE_IDL

Returns BetLaneConfig: min_bet, max_bet, payouts_allowed_while_paused.

Check paused status

vara-wallet call $BET_LANE BetLane/IsPaused --args '[]' --idl $BET_LANE_IDL