mcpField
C
create-project

create-project

github.com/verygoodopensource開発17555 回インストール今日更新
リポジトリ

create-project について

create-projectは、Very Good CLIのテンプレートからDartまたはFlutterプロジェクトを作成する開発者向けスキルです。要望からテンプレートを判断し、不足情報を確認したうえでVery Good CLI MCPサーバー経由で作成し、依存関係をインストールします。

主な機能

  1. 01要望に基づくプロジェクトテンプレートの推定
  2. 02不足しているプロジェクト情報の確認
  3. 03Very Good CLI MCPサーバー経由のプロジェクト作成
  4. 04作成後の依存関係インストール
  5. 05Dartパッケージ名と組織名要件への対応

活用シーン

  1. 01テンプレートからDartパッケージやFlutterアプリを作成
  2. 02レイヤードアーキテクチャのデータ層・リポジトリ層パッケージを作成
  3. 03プロジェクト作成後に依存関係をインストール

MCP 対応

このスキルはVery Good CLI MCPサーバーを使ってプロジェクト作成と依存関係のインストールを行います。サーバーを利用できない場合は、対応するvery_goodコマンドを実行できます。

インストール

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

$npx skills add https://github.com/verygoodopensource/vgv-ai-flutter-plugin --skill create-project

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

同梱ファイルagents/openai.yaml

詳細

プロジェクトを作成する

Very Good CLI テンプレートを使用して、新しい Dart または Flutter プロジェクトをスキャフォールドします。

異なるハーネスでの代替手段。 このスキルは Very Good CLI MCP サーバーを操作し、ユーザーに構造化された質問をします。このプラグインの Bash フックがなく、MCP サーバーにも接続されていないホストでは、同等の very_good create … コマンドと very_good packages get コマンドを直接実行してください。AskUserQuestion がないホストでは、ホストが提供する同等のユーザー質問ツールを呼び出してください。そのようなツールがなければ、同じ質問を番号付きのプレーンテキストで尋ねてください。


基本的な基準

  • プロジェクトのスキャフォールドと依存関係のインストールには、Very Good CLI MCP サーバーを使用します
  • コンテキストからテンプレートを推測します — ユーザーが作りたいものに基づいて適切なテンプレートを判断し、サブコマンド名を選ぶよう求めないでください
  • 推測できない情報にのみ AskUserQuestion を使用します — プロジェクト名と組織名が不足していることがよくあります
  • 作成後に依存関係をインストールします

ワークフロー

ステップ 1:ユーザーが作りたいものを把握する

ユーザーの説明からサブコマンドを推測します — 使用可能なサブコマンドとその説明は、Very Good CLI MCP サーバーで定義されています。

意図が曖昧な場合は、どのサブコマンドを使いたいかではなく、何を作ろうとしているのかについて大まかな質問をして、AskUserQuestion で明確にします。

ステップ 2:不足しているパラメーターを確認する

推測できない情報について、1 回の呼び出しで AskUserQuestion を使用します。省略可能なパラメーター(説明、出力ディレクトリ、アプリケーション ID)は、ユーザーから指定がない限りデフォルトのままにします。

ステップ 3:作成してセットアップする
  1. Very Good CLI MCP サーバーを使用してプロジェクトを作成します
  2. Very Good CLI MCP サーバーを使用して依存関係をインストールします — packages_get に directory: '<path-to-created-project>' を渡し、ワークスペースのルートではなく新しいプロジェクトに対して実行されるようにします

重要なドメイン知識

  • レイヤードアーキテクチャパターンのデータレイヤーとリポジトリレイヤーのパッケージには、flutter_package ではなく dart_package を使用します — これらは Flutter SDK に依存してはいけません
  • ユーザーがハイフン付きのプロジェクト名を指定した場合は、アンダースコアに変換します — Dart のパッケージ名で使用できるのは小文字、数字、アンダースコアのみです
  • アプリ、プラグイン、ゲームを生成するテンプレートには組織名が必要です — 省略するとプレースホルダー値が設定されるため、省略しないでください
  • 作成後に packages_get が失敗した場合は、directory が新しいプロジェクトを指していること、および Dart SDK が PATH 上にあることを確認します

アンチパターン

アンチパターン問題正しい方法
ユーザーにテンプレート名を選ばせるユーザーは CLI のサブコマンドではなく、作りたいものを考えているためコンテキストからテンプレートを推測する
省略可能なパラメーターを過剰に尋ねるワークフローが遅くなる推測できない情報のみ尋ねる
データレイヤーに flutter_package を使う不要な Flutter SDK 依存関係が追加されるデータレイヤーとリポジトリレイヤーのパッケージには dart_package を使用する
アプリ/プラグインの組織名を省略するプレースホルダー値がデフォルトで設定されるテンプレートで必要な場合は尋ねる

コメント