nx-workspace について
アプリやライブラリを含むワークスペースを扱う開発者やコーディングエージェント向けの、Nx管理スキルです。プロジェクトの確認、解決済み設定の取得、タスク実行、変更影響分析、運用指針を案内します。
主な機能
- 01プロジェクトの一覧表示と絞り込み
- 02解決済み設定の確認
- 03プロジェクトと影響対象タスクの実行
- 04依存関係グラフの表示
- 05設定とCIのガイド参照
活用シーン
- 01アプリとライブラリの把握
- 02利用可能なターゲットの確認
- 03変更対象プロジェクトのテスト実行
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tech-leads-club/ agent-skills --skill nx-workspaceインストール後、Claude Code で/nx-workspaceを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
reference/best-practices.mdci-cd.mdcommands.mdconfiguration.md詳細
Nx ワークスペース管理
クイックスタート
ワークスペースの確認:nx show projects と nx show project <name> --json
タスクの実行:nx <target> <project>(例:nx build my-app)
影響範囲の分析:nx show projects --affected または nx affected -t <target>
注意:nx がグローバルにインストールされていない場合は、コマンドの先頭に
npx/pnpx/yarnを付けてください。
基本コマンド
プロジェクトの一覧表示と確認
# List all projects
nx show projects
# Filter by type, pattern, or target
nx show projects --type app
nx show projects --projects "apps/*"
nx show projects --withTarget build
# Find affected projects
nx show projects --affected --base=main
プロジェクト情報の取得
重要:完全に解決された設定を取得するには、必ず nx show project <name> --json を使用してください。project.json を直接読んではいけません。部分的な設定しか含まれていません。
# Get full configuration
nx show project my-app --json
# Extract targets
nx show project my-app --json | jq '.targets | keys'
設定スキーマ:
- ワークスペース:
node_modules/nx/schemas/nx-schema.json - プロジェクト:
node_modules/nx/schemas/project-schema.json
タスクの実行
# Run specific project
nx build web --configuration=production
# Run affected
nx affected -t test --base=main
# View dependency graph
nx graph
ワークスペースのアーキテクチャ
workspace/
├── apps/ # Deployable applications
├── libs/ # Shared libraries
│ ├── shared/ # Shared across scopes
│ └── feature/ # Feature-specific
├── nx.json # Workspace configuration
└── tools/ # Custom executors/generators
ライブラリの種類
| 種類 | 用途 | 例 |
|---|---|---|
| feature | ビジネスロジック、スマートコンポーネント | feature-auth |
| ui | プレゼンテーションコンポーネント | ui-buttons |
| data-access | API 呼び出し、状態管理 | data-access-users |
| util | 純粋関数、ヘルパー | util-formatting |
詳細リソース
設定:reference/configuration.md を参照してください。内容は次のとおりです。
- nx.json のテンプレートとオプション
- project.json の構造
- モジュール境界のルール
- リモートキャッシュの設定
コマンド:reference/commands.md を参照してください。内容は次のとおりです。
- コマンドの完全なリファレンス
- 高度なフィルタリングオプション
- 一般的なワークフロー
CI/CD:reference/ci-cd.md を参照してください。内容は次のとおりです。
- GitHub Actions の設定
- GitLab CI の設定
- Jenkins、Azure Pipelines、CircleCI の例
- パイプラインでの影響範囲に基づくコマンド
ベストプラクティス:reference/best-practices.md を参照してください。内容は次のとおりです。
- やるべきこと、避けるべきこと
- 詳細なトラブルシューティングガイド
- パフォーマンスの最適化
- 移行ガイド
一般的なワークフロー
「このワークスペースには何がありますか?」
nx show projects --type app # List applications
nx show projects --type lib # List libraries
「プロジェクト X を実行するにはどうすればよいですか?」
nx show project X --json | jq '.targets | keys'
「何が変更されましたか?」
nx show projects --affected --base=main
簡単なトラブルシューティング
- ターゲットが表示されない:project.json ではなく、
nx show project <name> --jsonを使用してください - 影響範囲の分析が機能しない:Git の履歴が利用可能であることを確認してください(CI では
fetch-depth: 0を設定) - キャッシュの問題:
nx resetを実行してください
詳しいトラブルシューティングについては、reference/best-practices.md を参照してください。