mcpField
B
bounded-frontend

bounded-frontend

github.com/bounded-sh開発074 回インストール1 日前に更新
リポジトリ

bounded-frontend について

bounded-frontendは、Boundedアプリのクライアント開発スキルです。Webやモバイルの画面を作る開発者向けに、SDK、エンドユーザー認証、ホスト型フロントエンドを扱い、クライアントの書き込みがポリシーに従うことを説明します。

主な機能

  1. 01SDKの読み取り、書き込み、購読の案内
  2. 02Webとモバイルのフロントエンド構築
  3. 03エンドユーザー認証の設定
  4. 04ゲストアカウントとウォレットログインの説明
  5. 05ホスト型フロントエンドとアプリURLの案内

活用シーン

  1. 01リアルタイム更新を表示する画面の構築
  2. 02メールやOAuthによるアプリユーザー認証の設定
  3. 03ゲストアカウントやウォレットログインの実装
  4. 04フロントエンドのホスティングとアプリURLの確認

MCP 対応

Boundedのフロントエンド開発向けエージェントスキルです。入力にはMCPとの具体的な関係は記載されていません。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bounded-sh/skill --skill bounded-frontend

インストール後、Claude Code で/bounded-frontendを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

docs/
anonymous-accounts.md
app-auth.md
auth.md
automatic-login-completion.md
building-a-webapp.md
building-for-react-native.md
connected-accounts.md
frontend-hosting.md
sdk-reference.md
server-apps.md

詳細

Bounded フロントエンド

Bounded アプリのクライアント側について説明します。ウェブアプリやモバイルアプリから呼び出す SDK、エンドユーザーの認証方法、ホスト型フロントエンドの配信方法を扱います。クライアントからのすべての書き込みには引き続きポリシーが適用されるため、クライアントの操作にルールや不変条件が必要な場合は bounded-backend スキルを、ホスティングやドメインについては bounded-deploy スキルを併せて参照してください。スキル群を横断して確認するには、ルートの bounded スキルを参照してください。

リファレンスルーター

現在のタスクまたは用語に一致する行だけを読んでください。

タスクまたは用語参照先
SDK の読み取り、書き込み、サブスクリプション、ページング、queryAggregate、count、フィルター、ソート、カーソル、setMany、set(path, null)SDK リファレンス
ウェブフロントエンドの構築ウェブアプリガイド
ローカル開発サーバー(npm run dev、Vite、localhost)、ログインポップアップの失敗、redirect_uri origin is not a registered origin、ローカル開発中の CORSlocalhost での開発
更新タイマー、setInterval、ポーリング、「最新の状態を保つ」、カウントダウン、古い UISDK リファレンス
React Native/モバイル向けの構築React Native ガイド
アプリユーザーのメール OTP、OAuth、openBoundedWidget、統合ログインウィジェット、デフォルトの Turnkey 認証アプリ認証
独自ウォレットによるログイン、walletLogin、authMethod:'phantom'、supportsWalletSignIn、非対応ウォレット/Wallet Standardウォレットログイン
更新後にウォレットログインが失われる、再読み込み後に getCurrentUser() が null になる、bounded_last_auth_method、セッションの復元方法ウォレットログイン - 「ウォレットセッションは再読み込み後も維持されます」
ゲスト、匿名ユーザー、招待リンク、アカウントのアップグレード匿名アカウント
ユーザーの X アカウントのリンク、connect('x')、completeConnection、getConnections、認証済み X ハンドル、__connections__接続済みアカウント
ホスト型フロントエンドとアプリ URLフロントエンドのホスティング
ホスト型ウィジェットの非表示または制限、/__bounded/widget.js、openApps.widget.visibilityウィジェットを非表示にする
独自のサーバーを実行する Next.js アプリ(vinext)、そのシークレットと制限サーバーアプリ
CLI の開発者ログインまたは bounded login開発者アカウント
埋め込みウォレット、auth.wallets、メール/ソーシャルログイン後の @user.address埋め込みウォレット
onramp()、カードでの SOL/USDC 購入、Coinbase Onramp、ウォレットへの入金オンランプ

経験則

  • クライアントによるすべての書き込みはポリシーに従います。書き込み時の 403 はルールによる拒否であり、クライアントのバグではありません。ルールについては、バックエンドの境界設定に関するスキルを参照してください。
  • 拒否された読み取りは空の 200 レスポンスを返し、403 は返しません。
  • デフォルトでライブにし、ポーリングは決して行わないでください。 すべてのコレクションはプッシュベースです。そのため、パスを再読み込みする setInterval は調整方法の選択ではなくバグです。useQuery(React)または subscribe を使ってください。カウントダウンは再読み込みではなく、ローカルのクロック状態に基づいて更新します。ライブではない少数の対象(runQuery、functions.invoke、サードパーティ)のみ、意図的にポーリングしてください。非表示のタブでは一時停止し、タイマーの対象を必要な状態に限定して、間隔を徐々に延ばし、上限を設けてください。sdk-reference.md を参照してください。
  • 計算済みの値のリストを読み取る場合は、runQueryMany でまとめてください。runQuery をリストに対して繰り返し呼び出さないでください。sdk-reference.md を参照してください。
  • プロバイダーの API キーはフロントエンドのコードではなく、バックエンドの Bounded シークレットに格納してください。
  • npm audit で @solana/web3.js -> jayson 経由の uuid に関する勧告 GHSA-w5hq-g745-h8pq が報告された場合は、範囲を限定したオーバーライドの手順を使ってください。 これはその勧告に対処するものです。インストール済みのロックファイルに対して npm audit --omit=dev を実行し、残りの検出結果があれば個別に調査してください。
  • ほとんどのアプリでは、認証のデフォルト設定を維持してください。 ウォレットを「有効にする」ために authMode や auth.wallets を追加しないでください。デフォルトの Turnkey によるメール/ソーシャルログインには、すでに @user.address が含まれています。"auth": { "wallets": true } をデプロイするのは、外部キーペアのセッション(独自ウォレットでのログイン、サーバー SDK のキーペアクライアント、CLI のキーペアデータレーン)の場合に限ってください。完全なルールとオプトアウトについては、embedded-wallets.md を参照してください。
  • @user.id(アカウント ID)は識別と所有権を表し、@user.address はウォレットを表します。 キーの所有権、メンバーシップ、認証ガードには、常に存在する @user.id を使用してください。@user.address はウォレット/オンチェーンの用途に限って使用し、識別キーとしては決して使用しないでください。
  • スマートフォンでのウォレットログインには Solana Mobile アダプターが必要です。 スマートフォンのブラウザーはウォレットアプリをインジェクトしません。@solana-mobile/wallet-standard-mobile をインストールしたままにし(.npmrc では legacy-peer-deps=true)、ウィジェットを開く前に window.solana の有無を事前確認しないでください。Solana Mobile を参照してください。

コメント