新規 App 基盤構築スキル。 FastAPI + PostgreSQL + Redis + Alembic + React の完全な App 骨組みを自動生成。 ユーザーの要件に基づいてカスタマイズ可能。
Install
npx skillscat add liushuang393/serverlessaiagents/app-builder Install via the SkillsCat registry.
SKILL.md
App 基盤構築スキル
このスキルは新規 App の初期骨架を自動生成します。
構築フロー(標準手順)
フェーズ 1: 基盤做成(Foundation)
要件確認
- アプリ名(snake_case)
- 表示タイトル
- 説明文
- DB 名
- Redis 必要可否
- 履歴 DB 必要可否
テンプレート適用
# agentflow CLI でテンプレート生成 python -m agentflow.cli new-app \ --template fullstack-app \ --name my_app \ --title "My Application" \ --output apps/my_appポート自動設定(重要)
# ポート衝突を自動回避 python -m agentflow.tools.port_manager my_app apps/my_app # 結果: .env ファイルが自動生成される # DB_MAIN_PORT=5432 (or 次の空きポート) # DB_HISTORY_PORT=5434 # REDIS_PORT=6379 # API_PORT=8000 (or 8001, 8002...) # FRONTEND_PORT=3000ディレクトリ構造確認
apps/my_app/ ├── .env # ポート・認証情報(Git 除外) ├── .env.example # 設定テンプレート ├── docker-compose.yml # コンテナ構成 ├── Dockerfile # API コンテナ ├── alembic.ini # DB マイグレーション ├── api.py # FastAPI エントリ ├── config/ # 設定 │ ├── __init__.py │ └── settings.yaml ├── db/init/ # 初期 SQL ├── migrations/ # Alembic ├── repositories/ # データアクセス層 ├── routers/ # API ルーター ├── schemas/ # Pydantic スキーマ ├── services/ # ビジネスロジック └── tests/ # テスト
フェーズ 2: 式様読取・設計(Design)
要件分析
- ユーザーストーリー抽出
- エンティティ特定
- API エンドポイント設計
DB スキーマ設計
repositories/models.pyにモデル追加db/init/01_schema.sqlを更新
API 設計
routers/に機能別ルーター追加schemas/にリクエスト/レスポンススキーマ追加
フェーズ 3: 実装・テスト(Implementation)
DB マイグレーション
cd apps/my_app docker-compose up -d postgres-main redis alembic revision --autogenerate -m "add_entities" alembic upgrade headサービス層実装
services/にビジネスロジック追加
テスト作成・実行
pytest tests/ -vループ: テスト失敗 → 修正 → 再テスト
ベストプラクティス
DB マイグレーション (Alembic)
# 新規マイグレーション作成
alembic revision --autogenerate -m "説明"
# マイグレーション適用
alembic upgrade head
# ロールバック
alembic downgrade -1
# 履歴確認
alembic historyDocker 操作
# コンテナ起動
docker-compose up -d
# DB のみ起動
docker-compose up -d postgres-main redis
# ログ確認
docker-compose logs -f api
# 停止・削除
docker-compose down -v設定管理(環境統一)
.env ファイル構成:
├── APP_ENV # development / staging / production
├── HOST # localhost / IP / ドメイン
├── DB_MAIN_PORT # PostgreSQL メイン
├── DB_HISTORY_PORT # PostgreSQL 履歴
├── REDIS_PORT # Redis
├── API_PORT # FastAPI
├── FRONTEND_PORT # React/Next.js
└── VITE_API_URL # フロントエンドから API への URL- 機密情報は
.envで管理(Git 除外) - アプリ設定は
config/settings.yaml - 環境変数でオーバーライド可能
- ポート衝突時:
python -m agentflow.tools.port_managerで自動解決
ホスト設定(開発/本番統一)
| 環境 | HOST 設定 | 備考 |
|---|---|---|
| 開発(ローカル) | localhost |
127.0.0.1 も可 |
| Docker 内から | host.docker.internal |
ホスト側サービスへ |
| 本番 | 実際の IP/ドメイン | 外部公開 |
チェックリスト
-
.envファイルが作成されている(ポート設定済み) - docker-compose.yml が正しく設定されている
- alembic.ini の DB URL が正しい
- models.py にエンティティが定義されている
- 初回マイグレーションが作成されている
- ヘルスチェックエンドポイントが動作する
- テストが実行可能
- 他の App とポートが衝突していない