mcpField
F
flutter-engineering

flutter-engineering

github.com/heyeddi-com開発096 回インストール1 日前に更新
リポジトリ

flutter-engineering について

flutter-engineeringは、HeyEddiアプリ開発向けのエンジニアリングスキルです。Flutter、FastAPI、Firebaseのプロジェクトを監査して不足する構成を補い、レイヤー監査、テスト、ビルド、計画・変更チェックに沿って開発を進めます。

主な機能

  1. 01Flutter、FastAPI、Firebaseの判定
  2. 02プロジェクト構成の監査と補完
  3. 03ローカル開発サーバーの手順
  4. 04フロントエンド・バックエンドのテストとビルド確認
  5. 05計画・変更レビューのゲート

活用シーン

  1. 01モバイルまたはWeb向けFlutterの構築
  2. 02FastAPI REST APIバックエンドの設定
  3. 03FirestoreまたはAuth向けFirebaseの設定
  4. 04所定のチェックによる機能変更の検証

インストール

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

$npx skills add https://github.com/heyeddi-com/heyeddi-skills --skill flutter-engineering

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

manifest.json
context/
ANTI_PATTERNS.md
EXAMPLES.md
PROSE_ANTI_SLOP.md
VOCABULARY.md
reference/
design-handoff.md
dev-server.md
fastapi-client.md
firebase-client.md
subagents.md
scaffold/
stack-flutter-fastapi.json
stack-flutter-full.json
stack-flutter.json
scaffold/flutter/
analysis_options.yaml
pubspec.yaml
scaffold/flutter/lib/
app.dart
main.dart
scaffold/flutter/lib/config/
env.dart
scaffold/flutter/lib/router/
app_router.dart
scaffold/flutter/lib/screens/
home_screen.dart
settings_screen.dart
scaffold/flutter/lib/services/
api_client.dart
scaffold/flutter/lib/theme/
app_theme.dart
scaffold/flutter/lib/widgets/
app_shell.dart
scaffold/flutter/test/
widget_test.dart
scripts/
_heyeddi_paths.py
_project_detect.py
_skill_cli.py
audit_scaffold.py
dev_server_info.py

詳細

Flutter エンジニアリング

HeyEddi アプリ向けの基本的な Flutter エンジニアリングです。該当するスタックを検出して適切なツールを追加します。Vue プロジェクトでは代わりに @project-engineering を使用してください。

サブエージェント(デフォルト)

スキャフォールド/監査/テストスクリプトは Task shell に委任し、リポジトリの調査は explore に委任します。メインチャットで監査 JSON からスタックを選択します。reference/subagents.md を参照してください。

スタック

スタック対象追加されるツール
Flutterモバイル/Web フロントエンドpubspec.yaml、Riverpod、go_router、Material 3、ウィジェットテスト
FastAPIREST API バックエンドbackend/、pytest、openapi.json、8090 での uvicorn
FirebaseFirestore/Authfirebase.json、ルール、エミュレーター

.heyeddi/stack.json で意図を宣言します。

{
  "frontend": "flutter",
  "backends": ["fastapi"],
  "web_port": 8085,
  "api_port": 8090
}

または "backends": ["firebase"] もしくは ["fastapi", "firebase"] を指定します。

ワークフロー

  1. 設定のゲート(常時有効、必須): Git/CI/コミットに関する前提を置く前に、@heyeddi-setup の verify_setup --check を実行します。不完全な場合は、合格するまでセットアップを実行します。
  2. audit_scaffold:レイヤーごとの JSON(flutter / fastapi / firebase)。
  3. scaffold_stack --stack auto:不足分を補います(flutter、fastapi、firebase、または full)。
  4. 必要に応じて ensure_flutter と ensure_python を(@project-engineering 経由で)実行します。
  5. dev_server_info:Flutter Web は :8085、API は :8090、Firebase エミュレーターは :4000 です。
  6. 計画のゲート(常時有効): 機能コードを書く前に、@engineering-excellence の check_engineering_plan --check を実行します。
  7. 機能を実装します(@design-handoff-flutter、@flutter-patterns、@dart-type-bridger)。
  8. run_tests と run_backend_tests、および verify_build を実行します。
  9. 変更のゲート(常時有効): audit_engineering --check を実行します(エラーがある場合は失敗、警告は参考情報)。

ローカル開発サーバー

スタックコマンドURL
Flutter Webflutter run -d web-server --web-port=8085 --web-hostname=127.0.0.1http://127.0.0.1:8085
Flutter モバイルflutter runデバイス/エミュレーター
FastAPIcd backend && poetry run uvicorn app.main:app --reload --port 8090http://127.0.0.1:8090/docs
Firebasefirebase emulators:starthttp://localhost:4000

Flutter Web の監査時に @visual-auditor が使用する URL として、FLUTTER_WEB_URL(または DEV_SERVER_URL)を設定します。

参考資料

  • reference/dev-server.md:Flutter Web + モバイル
  • reference/fastapi-client.md:Dio + OpenAPI 型
  • reference/firebase-client.md:firebase_core + Firestore
  • reference/heyeddi-handoff.md:@design-handoff-flutter への連携

関連スキル

  • @dart-type-bridger:OpenAPI/Firestore → Dart モデル
  • @flutter-patterns:リポジトリ、Riverpod プロバイダー、認証
  • @design-handoff-flutter:スクリーンショット → Material ウィジェット
  • @project-engineering:FastAPI/Firebase 共通スキャフォールド(scaffold_stack から呼び出されます)

タスク完了時:次のスキルを提案する

このスキルに対するユーザーの依頼を完了したとき(各ツール呼び出しやサブエージェントのフェーズの後ではありません)に、次に実行する内容を提案します。

  1. 次を実行します。

    python .agents/skills/heyeddi/scripts/suggest_next_skill.py --current-skill flutter-engineering --project-root .
    

    特定のルートを作業した場合は、--route /path を追加します。

  2. スクリプトの ### Next step ブロックを最終返信に含めます。ユーザーは Prompt の行をチャットにコピーして実行します(例:@heyeddi-design craft /settings)。

直前に完了したサブコマンドが分かっている場合は、--mode shape(または craft、audit など)を渡します。

@heyeddi → reference/next-skill-handoff.md を参照してください。

コメント