-
Sanityのインストールが終わらず、途中で止まる原因と解決方法【npm / yarn / pnpm対応】
Listen & Subscribe
目次
はじめに
Sanity(Headless CMS)を導入しようとして、以下のような状態で止まってしまうことがあります。
npm create sanity@latest Need to install the following packages: create-sanity@5.2.11 Ok to proceed? (y) y ⠙何分待っても進まず、Ctrl + C も効かない…。
本記事では、この問題の原因と解決方法を実体験ベースで解説します。
結論
この問題は以下のいずれかが原因です。
- npm create と create-sanity の相性問題
- Yarn 4(PnP)と create-sanity の互換性問題
- Sanity CLI の依存解決エラー
- Node / npm のバージョン差異
最短で解決する方法はこれです👇
pnpm dlx sanity@latest init発生した環境
今回の検証環境はこちらです。
- Node.js: v20.10.0 → v24.14.1
- npm: 10.2.3 → 11.11.0
- OS: macOS
- パッケージマネージャ: npm / yarn / pnpm
症状①:npm createでフリーズする
npm create sanity@latest Need to install the following packages: create-sanity@5.2.11 Ok to proceed? (y) y (####⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂⠂) ⠏ idealTree:jsdom: sill placeDep ROOT lru-cache@5.1.1 OK for: @babel/helper-compilation-targets@7.28.6 want: ^5.1.1スポンサーリンク
原因
これはエラーではなく、npmの依存解決(idealTree)でハングしている状態です。
特に以下の条件で発生しやすいです。
- Nodeが古い(20.10など)
- npm createコマンドを使用
- ネットワークやregistryの問題
症状②:yarn createでエラーになる
yarn create sanity@latest Error: Failed to resolve `@sanity/cli` packageスポンサーリンク
原因
Yarn 4 のデフォルトである PnP(Plug’n’Play)方式が原因です。
- node_modules を作らない
- create-sanity が通常の解決を前提としている
👉 そのため
@sanity/cliが見つからずクラッシュします症状③:Ctrl + C が効かない
^C^C^Cスポンサーリンク
原因
- ターミナルがハングしている
- stdin が壊れている
👉 この場合はターミナルを閉じてOKです
解決方法(優先順)
✅ 方法①:pnpmを使う(最も安定)
npm install -g pnpm pnpm dlx sanity@latest init👉 最も成功率が高い方法です
✅ 方法②:yarn dlxを使う
yarn dlx sanity@latest init※ Yarn 4 の場合は
createではなくdlxを使うのがポイントNodeバージョンの重要性
Sanityは Node 20以上が必須です。
特に注意:
- v20.10.0 → 不安定
- v20.19.0以上 → 安定
- v22 / v24 → 推奨
Voltaを使っている場合:
volta install nodeReactは動くのにSanityだけ止まる理由
今回の切り分けで重要だったのがこれです。
npx create-react-app test-app👉 正常に動いた
つまり
- npmは壊れていない
- ネットワークもOK
👉 Sanity CLI特有の問題
なぜSanityだけハマるのか
Sanity CLIは内部で
- 動的import
- ESM
- 依存解決
- 対話型CLI
を組み合わせています。
そのため
- npm
- yarn(PnP)
- Nodeバージョン
の影響を受けやすいです。
まとめ
今回のポイントを整理します。
- ログインは不要(この段階では関係ない)
- npm create はハングしやすい
- Yarn create はPnPでエラーになる
- pnpm dlx が最も安定
👉 結論
pnpm dlx sanity@latest initこれでほぼ解決します。
おわりに
Sanityは非常に強力なHeadless CMSですが、CLI周りでハマるケースもあります。
特に今回のような
- 「止まるだけでエラーが出ない」
- 「Ctrl + C が効かない」
パターンは調査に時間がかかりがちです。
同じ症状で困っている方の参考になれば幸いです。