Agent Skills by ALSEL
OpenAIその他⭐ リポ 0品質スコア 70/100

Boundless

ZK対応アプリケーションの構築、分散型マーケットプレイスからのプルーフリクエスト、プルーバーノードの運用、またはスマートコントラクトへの検証可能計算の統合が必要な場合に使用します。Boundlessはゼロ知識証明を用いて実行とコンセンサスを分離し、開発者が計算をオフロードしガスリミットを回避しながら、オンチェーン上のセキュリティを維持することを可能にします。

description の原文を見る

Use when building ZK-powered applications, requesting proofs from the decentralized market, running a prover node, or integrating verifiable computation into smart contracts. Boundless decouples execution from consensus using zero-knowledge proofs, enabling developers to offload computation and bypass gas limits while maintaining onchain security.

SKILL.md 本文

Boundless スキル

製品概要

Boundlessは、すべてのブロックチェーンにゼロ知識プルーフをもたらす分散型プロトコルです。開発者はプルーフリクエストをパーミッションレスなマーケットに提出し、プルーフャーたちが競い合って報酬を得られます。このプロトコルは実行をコンセンサスから分離します。すべてのノードが取引を再実行する(スループットを制限する)代わりに、Boundlessは簡潔なZKプルーフを生成し、どのチェーンでも再実行なしで検証できます。

主要なファイルとコマンド:

  • SDK: プルーフリクエストの送信、プログラムのアップロード、プルーフの取得用Rustクレート boundless-market
  • CLI: プルーフのリクエスト、担保管理、プルーフャーの設定用コマンドラインツール boundless
  • スマートコントラクト: BoundlessMarket.sol(リクエスト送信)、RiscZeroVerifierRouter(プルーフ検証)
  • プルーフスタック: Bento(ローカルプルーフ)+ Broker(マーケット連携)がDocker Composeで実行
  • 主要ドキュメント: https://docs.boundless.network

使用場合

リクエスター(アプリ開発者):

  • ガスリミットを回避するため、計算をオフチェーンにオフロードする必要があるアプリケーションの構築
  • RISC Zero zkVM用にRustで書かれたカスタムプログラムのZKプルーフをリクエスト
  • 任意のEVMチェーン上のスマートコントラクトへ検証可能な計算を統合
  • Steel(ZKコプロセッサ)を使用してEVMの状態と実行をオフチェーンで検証

プルーフャー(ノードオペレーター):

  • プルーフリクエストを実行して報酬を得るためにプルーフノードを実行
  • GPU対応プルーフインフラストラクチャ(Bento + Broker)の設定
  • マーケット入札戦略と価格パラメータの調整
  • 担保預金の管理とプルーフパフォーマンスの監視

一般的なタスク:

  • プログラム、入力、オファーパラメータを含むプルーフリクエストを送信
  • 実行完了まで待機してプルーフ(ジャーナル + シール)を取得
  • スマートコントラクトでプルーフをオンチェーン検証
  • 複数GPUを備えたプルーフャーをデプロイして設定
  • 競争入札に向けてブローカー設定を最適化

クイックリファレンス

リクエスター ワークフロー

ステップコマンド/コード目的
1. クライアント構築Client::builder().with_rpc_url(...).with_private_key(...)ウォレットとRPCでSDKを初期化
2. リクエスト作成client.new_request().with_program(ELF).with_stdin(input)プルーフリクエストを構築
3. 送信client.submit(request).await?オンチェーンまたはオフチェーンで送信(自動フォールバック)
4. 待機client.wait_for_request_fulfillment(request_id, ...)プルーフ完成までポーリング
5. オンチェーン検証verifier.verify(seal, imageId, sha256(journal))スマートコントラクトでプルーフを検証

プルーフャー ワークフロー

ステップコマンド目的
1. リポジトリをクローンgit clone https://github.com/boundless-xyz/boundless && git checkout release-1.4最新プルーフャーコードを取得
2. 依存関係をインストールsudo ./scripts/setup.shDocker、NVIDIAサポートをインストール
3. Bentoをテストjust bento && RUST_LOG=info bento_cli -c 32ローカルでプルーフが機能することを確認
4. 設定boundless prover generate-configbroker.tomlの対話的セットアップウィザード
5. 担保をデポジットboundless prover deposit-collateral 50ZKCでマーケットアカウントに資金を供給
6. プルーフャーを起動just proverBento + Broker(フルスタック)を実行

オークションパラメータ(オファー設定)

パラメータタイプ目的
min_priceETHまたはUSD下限価格。プルーフャーはこれで即座にロック可能"0.40 USD"
max_priceETHまたはUSD上限価格。オークションはこれまで上昇"1.00 USD"
ramp_up_periodブロック価格が最小値から最大値に上昇するまでの期間100ブロック
lock_timeout主要プルーフャーがプルーフを送信する最大時間625
timeoutリクエストが期限切れになるまでの合計時間1500
lock_collateralZKCまたはUSDプルーフャーが失敗した場合にスラッシュ可能な担保"10 USD"

ストレージプロバイダー

プロバイダーセットアップユースケース
Pinata (IPFS)export PINATA_JWT="..."デフォルト。テスト用フリーティアで十分
S3export S3_BUCKET="..." AWS_ACCESS_KEY_ID="..."プライベート/機密入力。署名済みURLは12時間で期限切れ
GCSexport GCS_BUCKET="..." GOOGLE_APPLICATION_CREDENTIALS="..."Google Cloud統合
なしプログラムを事前アップロード。URLを渡す手動制御。自動アップロードなし

プルーフタイプ

タイプメソッド使用時期
アグリゲーテッド(デフォルト)client.new_request()ほとんどのリクエスト。マークル包含によるチープなオンチェーン検証
Groth16.with_groth16_proof()スタンドアロンプルーフ。効率的なSNARK
Blake3 Groth16.with_blake3_groth16_proof()BitVMまたはSHA2なし環境。32バイトジャーナルが必須

ブローカー設定(broker.toml)

設定タイプ目的
[market] min_mcycle_priceETH/USD100万サイクルあたりの最小入札価格
[market] max_collateralZKC/USD注文あたりロック可能な最大担保
[market] peak_prove_khz数値推定プルーフ速度。同時作業数を制限
[market] max_mcycle_limit数値このサイクル数を超える注文はスキップ
[batcher] batch_max_timeバッチを公開するまでの最大期間
[batcher] min_batch_size数値公開前の最小プルーフ数

意思決定ガイド

オンチェーンとオフチェーン送信の選択

条件使用理由
検閲耐性が必要submit_onchain()リクエストはブロックチェーンに不変に記録
ガスコスト削減を希望submit_offchain()オーダーストリームサーバー。事前デポジット必須
判断不能submit()(デフォルト)オフチェーン優先。失敗時にオンチェーンにフォールバック

アグリゲーテッドとGroth16プルーフの選択

条件使用理由
標準的なアプリケーションアグリゲーテッド(デフォルト)チープな検証。他のプルーフとバッチ化
スタンドアロンプルーフが必要Groth16直接SNARK。バッチ依存なし
BitVMまたはSHA2なし環境Blake3 Groth16SHA2利用不可。32バイトジャーナル必須

オークションパラメータの調整時期

状況調整項目方向
リクエストがロックされないmax_price増加(より魅力的に)
支払額が多すぎるmin_price増加(下限を削減)
プルーフャーが期限を逃すlock_timeout増加(プルーフの時間を増加)
リクエストが期限切れで未実行timeout増加(期間を延長)
担保がスラッシュされているlock_collateral増加(セカンダリプルーフャーを奨励)

ブローカー価格の調整時期

状況調整項目方向
入札に勝てないmin_mcycle_price低下(入札価格を低減)
利益にならない注文が多いmin_mcycle_price上昇(入札価格を上昇)
担保が不足max_collateral低下(注文あたりロック額を削減)
Bentoがオーバーロードmax_concurrent_proofs低下(並列処理を制限)

ワークフロー

リクエスター: プルーフの送信と検証

  1. 環境をセットアップ: RPC_URLPRIVATE_KEY、ストレージ認証情報(PINATA_JWTS3_BUCKETなど)をエクスポート
  2. クライアントを構築: Client::builder()をRPC、秘密鍵、アップローダー設定で初期化
  3. リクエストを作成: client.new_request()を呼び出し、プログラム(ELFバイナリ)、入力(stdin)、オプションのオファーパラメータを添付
  4. 送信: client.submit(request)を呼び出してオンチェーンまたはオフチェーンで送信。request_idexpires_atを取得
  5. 実行完了まで待機: client.wait_for_request_fulfillment(request_id, Duration::from_secs(5), expires_at)を使用してポーリング
  6. プルーフを抽出: 実行完了からジャーナル(公開出力)とシール(暗号プルーフ)を抽出
  7. オンチェーン検証: sealjournalを使用してスマートコントラクト関数を呼び出す。コントラクトはverifier.verify(seal, imageId, sha256(journal))を呼び出す
  8. 結果を確認: トランザクション確認を検証。プルーフが有効な場合、コントラクト状態を更新

プルーフャー: プルーフノードをデプロイして実行

  1. リポジトリをクローンしてチェックアウト: git clone https://github.com/boundless-xyz/boundless && git checkout release-1.4
  2. 依存関係をインストール: sudo ./scripts/setup.shを実行してDocker、Docker Compose、NVIDIAサポートをインストール
  3. 環境をセット: PROVER_PRIVATE_KEY(マーケット用ウォレット)とPROVER_RPC_URL(有料RPC端点)をエクスポート
  4. Bentoをローカルでテスト: just bentoRUST_LOG=info bento_cli -c 32を実行してプルーフが機能することを確認
  5. 設定を生成: boundless prover generate-configを実行してbroker.tomlcompose.ymlの対話的セットアップを実行
  6. 担保をデポジット: boundless prover deposit-collateral <amount>を実行してZKCでマーケットアカウントに資金を供給
  7. フルスタックを起動: just proverを実行してBento + Brokerを起動。just prover logsでログを確認
  8. 監視とチューニング: ロック率、プルーフ速度、スラッシュについてログを監視。必要に応じてbroker.toml設定を調整
  9. 安全にアップグレード: 新しいバージョンへのアップグレード前にjust broker cleanを実行して状態破損を回避

よくある落とし穴

  • インライン入力が大きすぎる: 大きい入力をリクエストにインライン送信するとガスが増加。入力が1 KBを超える場合、ストレージプロバイダー(Pinata、S3、GCS)を使用
  • ジャーナルが10 KBを超過: オンチェーンジャーナルは10 KB未満である必要があります。ClaimDigestMatch述語を使用し、より大きい場合はジャーナルをオフチェーンに保存
  • プログラム/入力ファイルが50 MBを超過: プルーフャーは過度に大きいファイルを拒否。プログラムサイズを最適化するか、入力を分割
  • 無料RPC端点が失敗: プルーフャー操作には有料RPC端点(Alchemy、QuickNode)が必須。フリーティアはレート制限され、スラッシングの原因に
  • 担保残高が不足: ブローカーは担保残高がlock_collateral未満の場合、注文をロックできません。実行前にZKCをさらにデポジット
  • オークションパラメータが厳しすぎる: lock_timeouttimeoutをプルーフ時間に対して短く設定しすぎるとスラッシング。時間計算機を使用して推定
  • プルーフャーがプリフライトに従わない: プログラムが実行に失敗する(ゲストパニック)場合、プルーフャーはスキップ。最初にbento_cliでローカルテスト
  • 複数ブローカーがBentoを共有: すべてのブローカー間のpeak_prove_khzが実際のクラスタ速度を超えないことを確認。max_concurrent_preflightsは実行エージェント数を超えてはいけません
  • ファンディングモードがNeverに設定: オンチェーン残高が不足している場合、リクエストが失敗することがあります。安全性のためAlways(デフォルト)またはMinMaxBalanceを使用
  • 価格オラクルがスタール: 価格オラクルが12時間以上更新されていない場合、ブローカーはログエラーを出力。price_oracle.refresh_interval_secsとオラクルヘルスを確認

検証チェックリスト

作業を送信する前に:

  • リクエスター: プログラムはbento_cliまたはRISC Zero zkVMでローカルにコンパイルして実行
  • リクエスター: 環境変数が設定済み(RPC_URLPRIVATE_KEY、ストレージ認証情報)
  • リクエスター: ウォレットに十分なETH(ガス + リクエストのmax_price)を保有
  • リクエスター: オークションパラメータが現実的(lock_timeouttimeoutは時間計算機を使用)
  • リクエスター: ジャーナルサイズ < 10 KB。プログラム/入力ファイル < 50 MB
  • リクエスター: スマートコントラクトのプルーフ検証ロジックが予想ジャーナル形式と一致
  • プルーフャー: DockerとNVIDIAサポートがインストール済み(docker psnvidia-smi両方が動作)
  • プルーフャー: Bentoテストプルーフが成功(bento_cli -c 32がエラーなく完了)
  • プルーフャー: broker.tomlが生成され確認済み(特にmin_mcycle_pricemax_collateralpeak_prove_khz
  • プルーフャー: ZKC担保がデポジット済み(boundless prover balance-collateralが0より大きい残高を表示)
  • プルーフャー: RPC端点が有料/信頼性あり(フリーティアではない)。curl <RPC_URL>でテスト
  • プルーフャー: ブローカーログが「listening for orders」を表示。エラーなし
  • プルーフャー: GPUが認識済み(nvidia-smicompose.ymlと一致するデバイスIDを表示)

リソース

包括的なナビゲーション: https://docs.boundless.network/llms.txt

重要なドキュメントページ:

  1. プルーフライフサイクル — リクエストから検証までのエンドツーエンドフロー
  2. プルーフをリクエスト — SDK API、ストレージプロバイダー、オファー設定
  3. プルーフャークイックスタート — ハードウェア要件、Bentoセットアップ、ブローカー設定

追加のドキュメントとナビゲーションについては、https://docs.boundless.network/llms.txt を参照してください。

ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
fabianferno
リポジトリ
fabianferno/check-fi
ライセンス
Apache-2.0
最終更新
2026/4/12

Source: https://github.com/fabianferno/check-fi / ライセンス: Apache-2.0

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: fabianferno · fabianferno/check-fi · ライセンス: Apache-2.0