Skip to content

TypeScriptの Nxプラグイン

完全なTypeScript Nx PluginModel Context Protocol (MCP)サーバー統合で生成します。このジェネレーターは、AIアシスタントによる自動コード生成とプロジェクトスキャフォールディングのためにシームレスに使用できるカスタムジェネレーターを構築するための基盤を作成します。

TypeScript Nxプラグインは2つの方法で生成できます:

  1. インストール Nx Console VSCode Plugin まだインストールしていない場合
  2. VSCodeでNxコンソールを開く
  3. クリック Generate (UI) "Common Nx Commands"セクションで
  4. 検索 @aws/nx-plugin - ts#nx-plugin
  5. 必須パラメータを入力
    • クリック Generate
    パラメータ デフォルト 説明
    name 必須 string - TypeScript project name
    directory string packages Parent directory where the library is placed.
    subDirectory string - The sub directory the lib is placed in. By default this is the library name.

    ジェネレーターは以下のプロジェクト構造を作成します:

    • Directoryyour-plugin/
      • Directorysrc/
        • index.ts プラグインの空のエントリーポイント
        • Directorymcp-server/
          • index.ts MCPサーバーエントリーポイント
          • server.ts メインMCPサーバー設定
          • Directorytools/
            • create-workspace-command.ts ワークスペース作成ガイド用ツール
            • general-guidance.ts Nxとプラグインの一般ガイダンス用ツール
            • list-generators.ts 利用可能なジェネレーター一覧表示ツール
            • generator-guide.ts 詳細なジェネレーター情報提供ツール
          • utils.ts MCPサーバー用ユーティリティ関数
      • generators.json Nxジェネレーター設定(初期状態は空)
      • package.json MCPサーバーバイナリを含むプラグインパッケージ設定
      • tsconfig.json TypeScript設定(Nx互換性のためCommonJS)
      • project.json ビルドとパッケージターゲットを含むNxプロジェクト設定

    プラグインプロジェクトを作成後、ts#nx-generatorジェネレーターを使用して新しいジェネレーターを追加できます:

    1. インストール Nx Console VSCode Plugin まだインストールしていない場合
    2. VSCodeでNxコンソールを開く
    3. クリック Generate (UI) "Common Nx Commands"セクションで
    4. 検索 @aws/nx-plugin - ts#nx-generator
    5. 必須パラメータを入力
      • pluginProject: your-plugin
    6. クリック Generate

    これによりプラグインに新しいジェネレーターが追加されます。

    MCPサーバーのgenerator-guideツールで使用されるため、ジェネレーターの詳細なREADME.mdを作成するようにしてください。

    生成されたプラグインには重要なターゲットが含まれます:

    TypeScriptコードをコンパイルしプラグインを使用可能な状態にします:

    Terminal window
    pnpm nx build your-plugin

    NPM公開用の配布可能パッケージを作成します:

    Terminal window
    pnpm nx package your-plugin

    パッケージターゲットには以下が含まれます:

    • コンパイル済みJavaScriptファイル
    • TypeScript宣言ファイル
    • ジェネレーターとエグゼキューター設定ファイル
    • ドキュメントとライセンスファイル

    プラグインはts#mcp-serverジェネレーターを使用してMCPサーバーを設定します。

    プラグインにはAIアシスタント向けの完全なMCPサーバーが含まれます:

    • general-guidance: Nxとプラグイン操作のベストプラクティスを取得
    • create-workspace-command: プラグイン使用可能な新規ワークスペース作成方法を学習
    • list-generators: プラグイン内の利用可能なジェネレーター一覧を表示
    • generator-guide: スキーマや使用方法を含む特定ジェネレーターの詳細情報を取得

    MCPをサポートするほとんどのAIアシスタントは類似した設定アプローチを採用しています。MCPサーバーの詳細を記載した設定ファイルを作成または更新する必要があります:

    {
    "mcpServers": {
    "your-mcp-server": {
    "command": "npx",
    "args": ["tsx", "/path/to/your-mcp-server/index.ts"]
    }
    }
    }

    MCPサーバーを開発中に--watchフラグを設定すると、AIアシスタントが常に最新のツール/リソースを認識するようになります:

    {
    "mcpServers": {
    "your-mcp-server": {
    "command": "npx",
    "args": ["tsx", "--watch", "/path/to/your-mcp-server/index.ts"]
    }
    }
    }

    特定のAIアシスタントでMCPを設定するには、各アシスタントのドキュメントを参照してください:

    server.tsを修正してプラグイン領域固有の追加ツールやリソースを導入することで、MCPサーバーを拡張できます。

    MCPサーバー作成の詳細についてはts#mcp-serverガイドを参照してください。

    1. パッケージ情報更新: プラグインのpackage.jsonに適切な名前、バージョン、説明、リポジトリ情報を記述

    2. パッケージビルド:

      Terminal window
      pnpm nx package your-plugin
    3. ローカルテスト: 他のワークスペースにインストールしてテスト可能:

      Terminal window
      npm install /path/to/your/workspace/dist/your-plugin/package

    準備が整ったら:

    Terminal window
    cd dist/your-plugin/package
    npm publish

    公開後、他のユーザーは以下でプラグインをインストールして使用できます:

    Terminal window
    pnpm add -w your-plugin-name

    ジェネレーターの使用:

    1. インストール Nx Console VSCode Plugin まだインストールしていない場合
    2. VSCodeでNxコンソールを開く
    3. クリック Generate (UI) "Common Nx Commands"セクションで
    4. 検索 your-plugin-name - your-generator-name
    5. 必須パラメータを入力
      • クリック Generate

      公開プラグインを使ったAIアシスタント設定

      Section titled “公開プラグインを使ったAIアシスタント設定”

      公開プラグインのMCPサーバーは以下のように設定できます:

      {
      "mcpServers": {
      "aws-nx-mcp": {
      "command": "npx",
      "args": ["-y", "-p", "your-plugin-name", "your-plugin-name-mcp-server"]
      }
      }
      }