project-scaffolding について
Project Scaffolding Skillは、開発者が新規プロジェクトを作成したり、BaseProjectから始めたりする際の手順を示します。ディレクトリ構成と設定に加え、Python、JavaScript/TypeScript、Go、Rustの例や自動・手動の方法を扱います。
主な機能
- 01BaseProjectテンプレートの複製と調整
- 02ディレクトリ命名と構成の計画
- 03複数言語のセットアップ手順
- 04シークレットファイルとGit除外の設定
- 05セットアップ後の確認項目
活用シーン
- 01新規プロジェクトの開始
- 02技術スタックに合わせた構成の作成
- 03設定とGitリポジトリの初期化
- 04シークレット管理と設定の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ autumnsgrove/ lattice --skill project-scaffoldingインストール後、Claude Code で/project-scaffoldingを入力して読み込まれたか確認します。
詳細
プロジェクトのスキャフォールディングスキル
有効化するタイミング
次の場合にこのスキルを有効にします:
- プロジェクトをゼロから新規作成するとき
- プロジェクトのディレクトリ構造を設定するとき
- 設定ファイルを初期化するとき
- BaseProject テンプレートから開始するとき
- テクノロジー固有のプロジェクトを設定するとき
クイックセットアップ方法
| 方法 | 最適な用途 | 所要時間 |
|---|---|---|
| 自動化スクリプト | 標準的なプロジェクト | 2-3 分 |
| 手動セットアップ | カスタム構成 | 10-15 分 |
ディレクトリの命名規則
Directories: CamelCase (VideoProcessor, AudioTools)
Date-based: kebab-case with YYYY-MM-DD (logs-2025-01-15)
NO spaces or underscores in directory names
手動セットアップのワークフロー
ステップ 1:テンプレートをコピー
cp -r /path/to/BaseProject ~/Projects/YourProjectName/
cd ~/Projects/YourProjectName/
ステップ 2:Git の履歴をクリーンアップ
rm -rf .git
ステップ 3:AGENT.md をカスタマイズ
プロジェクト固有のセクションに記入します:
## Project Purpose
A REST API for managing inventory with real-time updates.
## Tech Stack
- Language: Python 3.11+
- Framework: FastAPI
- Key Libraries: SQLAlchemy, Pydantic
- Package Manager: UV
## Architecture Notes
- Microservices with event-driven updates
- Redis for caching
- PostgreSQL for persistence
ステップ 4:Git を初期化
git init
git add .
git commit -m "chore: initialize repository from BaseProject"
テクノロジー固有のセットアップ
UV を使用した Python
uv init
cp AgentUsage/templates/pyproject.toml.example pyproject.toml
uv add fastapi uvicorn sqlalchemy
uv add --dev pytest black ruff mypy
mkdir -p src/YourProject/{core,utils,config}
mkdir -p tests/{unit,integration}
touch src/YourProject/__init__.py
JavaScript/TypeScript
pnpm init
pnpm add express dotenv
pnpm add -D typescript @types/node jest eslint prettier
mkdir -p src/{routes,controllers,middleware,utils}
touch src/index.ts
Go
go mod init github.com/user/project
mkdir -p cmd/api internal/{handlers,models,database} pkg
touch cmd/api/main.go
Rust
cargo init
mkdir -p src/{routes,models,db}
cargo build
標準的なプロジェクト構造
Python
project/
├── src/
│ └── projectname/
│ ├── __init__.py
│ ├── main.py
│ ├── core/
│ ├── utils/
│ └── config/
├── tests/
│ ├── conftest.py
│ ├── unit/
│ └── integration/
├── pyproject.toml
├── uv.lock
├── AGENT.md
└── .gitignore
JavaScript
project/
├── src/
│ ├── index.ts
│ ├── routes/
│ ├── controllers/
│ └── utils/
├── tests/
├── package.json
├── tsconfig.json
├── AGENT.md
└── .gitignore
シークレットのセットアップ
# Create template
cp AgentUsage/templates/secrets_template.json secrets_template.json
# Create actual secrets (gitignored)
cp secrets_template.json secrets.json
# Verify in .gitignore
grep "secrets.json" .gitignore
タスクの追跡
適切なラベルを付けて、タスクをGitHub Issuesで追跡します。以下の初期 Issue を作成します:
- プロジェクトの依存関係をセットアップする
- シークレット管理を設定する
- 初期プロジェクト構造を作成する
- コアビジネスロジックを実装する
- ユニットテストを追加する
- CI/CD パイプラインをセットアップする
確認チェックリスト
# Git initialized and clean
git status
# AGENT.md customized (no [Fill in:] markers)
grep "\[Fill in:" AGENT.md
# secrets.json in .gitignore
grep "secrets.json" .gitignore
# Dependencies installed
uv sync # or pnpm install
# Project runs
uv run python src/projectname/main.py
セットアップ後のタスク
- プロジェクト固有のタスクについてGitHub Issues を作成
- 初期コードのエントリーポイントを作成
- IDEの設定と拡張機能を構成
- AgentUsage/ の関連ガイドを確認
よくある問題
スクリプトでアクセスが拒否される
chmod +x setup_new_project.sh
Git のコミットが失敗する
git config user.name "Your Name"
git config user.email "[email protected]"
依存関係がインストールされない
# Python: Clear cache
uv cache clean
# JavaScript: Fresh install
rm -rf node_modules pnpm-lock.yaml
pnpm install
関連リソース
詳細なディレクトリパターン、以下の項目については、AgentUsage/project_setup.md と AgentUsage/project_structure.md を参照してください:
- 詳細なディレクトリパターン
- CI/CD のセットアップ
- pre-commit フックのインストール
- テクノロジー固有のガイド
コメント
Markdown 対応