shopify-setup について
shopify-setup は、Shopify CLI の認証と Admin API アクセスを設定する開発者向けスキルです。カスタムアプリの作成からトークンの保管、接続確認までを案内します。
主な機能
- 01Shopify CLI の確認とストア認証
- 02カスタムアプリと API スコープの設定
- 03Admin API トークンの安全な保管
- 04API アクセスの検証とストア設定の保存
活用シーン
- 01ストアの商品管理に向けた API アクセスの準備
- 02他のプロジェクトで使うストア設定の保存
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jezweb/ claude-skills --skill shopify-setupインストール後、Claude Code で/shopify-setupを入力して読み込まれたか確認します。
同梱ファイルreferences/api-scopes.md
詳細
Shopify のセットアップ
ストアで Shopify CLI 認証と Admin API アクセスが機能するように設定します。商品とコンテンツを管理できる、検証済みの API 接続を確立します。
ワークフロー
ステップ 1:前提条件を確認する
Shopify CLI がインストールされていることを確認します。
shopify version
インストールされていない場合:
npm install -g @shopify/cli
ステップ 2:ストアで認証する
shopify auth login --store mystore.myshopify.com
OAuth のためにブラウザーが開きます。ユーザーは、適切な権限を持つストアオーナーまたはスタッフメンバーである必要があります。
ログイン後、次のコマンドで確認します。
shopify store info
ステップ 3:API アクセス用のカスタムアプリを作成する
カスタムアプリを使うと、(有効期限が切れる CLI セッショントークンとは異なり)安定した Admin API アクセストークンを利用できます。
アプリがすでに存在するか確認する:カスタムアプリを設定済みかユーザーに尋ねます。設定済みの場合は、ステップ 4 に進みます。
カスタムアプリが存在しない場合は、ブラウザーでの作成方法をユーザーに案内します。
https://{store}.myshopify.com/admin/settings/apps/developmentに移動します。- Create an app をクリックします。
- アプリ名を入力します(例:「Claude Code Integration」)。
- Configure Admin API scopes をクリックします。
- 次のスコープを有効にします(詳細は
references/api-scopes.mdを参照)。read_products、write_productsread_content、write_contentread_product_listingsread_inventory、write_inventoryread_files、write_files
- Save をクリックしてから Install app をクリックします。
- Admin API access token をコピーします(表示されるのは一度だけです)。
ユーザーが管理画面の操作に支援を希望する場合は、ブラウザー自動化(Chrome MCP または playwright-cli)を使用します。
ステップ 4:アクセストークンを保存する
トークンを安全に保存します。git にコミットしないでください。
プロジェクトで使用する場合 — .dev.vars を作成します。
SHOPIFY_STORE=mystore.myshopify.com
SHOPIFY_ACCESS_TOKEN=shpat_xxxxxxxxxxxxxxxxxxxxx
.dev.vars が .gitignore に含まれていることを確認します。
複数のプロジェクトで使用する場合 — 任意のシークレットマネージャー(環境変数、1Password CLI など)に保存します。
ステップ 5:API アクセスを確認する
シンプルな GraphQL クエリで接続をテストします。
curl -s https://{store}.myshopify.com/admin/api/2025-01/graphql.json \
-H "Content-Type: application/json" \
-H "X-Shopify-Access-Token: {token}" \
-d '{"query": "{ shop { name primaryDomain { url } } }"}' | jq .
期待されるレスポンスには、ショップ名とドメインが含まれます。401 が返された場合は、トークンが無効か期限切れです。アプリを作り直してください。
ステップ 6:ストア設定を保存する
他のスキルから参照できるように、プロジェクトのルートに shopify.config.json を作成します。
{
"store": "mystore.myshopify.com",
"apiVersion": "2025-01",
"tokenSource": ".dev.vars"
}
重要なパターン
API バージョン
常に明示的な API バージョン(例:2025-01)を指定します。本番環境で unstable を使用すると、警告なしに動作しなくなります。Shopify は API バージョンを四半期ごとに廃止します。
トークンの種類
| トークン | 形式 | 用途 |
|---|---|---|
| Admin API アクセストークン | shpat_* | カスタムアプリ — 安定しており、長期間有効 |
| CLI セッショントークン | 短期間有効 | Shopify CLI コマンドのみ |
| Storefront API トークン | shpca_* | 公開ストアフロントのクエリ |
このスキルでは、商品とコンテンツの管理に適した Admin API アクセストークン を設定します。
レート制限
Shopify はリーキーバケット方式のレートリミッターを使用します。
- REST:バースト時は毎秒 40 リクエスト、継続時は毎秒 2 リクエスト
- GraphQL:毎秒 1,000 コストポイント、クエリあたり最大 2,000 ポイント
一括操作には、ループ処理ではなく bulkOperationRunQuery ミューテーションを使用します。
参照ファイル
references/api-scopes.md— 商品とコンテンツの管理に必要な Admin API スコープ