プロジェクト初期化。CLAUDE.mdや.claude/がない場合にテンプレートを適用し、PJ固有設定を促す。境界: 既存PJのドキュメント更新・同期は project-sync。
Scanned 9/8/2026
Install to Claude Code
npx -y skills add ukwhatn/.claude --skill project-init --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Project Init?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/ukwhatn-project-init)More formats (shields.io, HTML) on the badges page.
---
name: project-init
description: プロジェクト初期化。CLAUDE.mdや.claude/がない場合にテンプレートを適用し、PJ固有設定を促す。境界: 既存PJのドキュメント更新・同期は project-sync。
---
# プロジェクト初期化
## トリガー条件
以下のいずれかの場合に使用:
- プロジェクトルートにCLAUDE.mdが存在しない
- .claude/ディレクトリが存在しない
- ユーザーがプロジェクト初期化を要求した
## 実行手順
### 1. テンプレートの確認
```bash
ls ~/.claude/templates/project/
```
### 2. CLAUDE.mdの作成
PJルートに以下の内容でCLAUDE.mdを作成(`~/.claude/templates/project/CLAUDE.md` と同期):
```markdown
# <プロジェクト名>
## 変数
MEMORY_DIR=.local/
BASE_BRANCH=develop
## 品質チェック
```bash
npm run lint # または適切なコマンド
npm run format
npm run typecheck
npm test
```
## 検証方針
AIエージェントには検証機構の供給が最も効果が高い。PJで以下を整備:
- **テストコード**: 主要ロジックのユニット/統合テスト
- **E2Eテスト**: PJに応じてPlaywright/Cypress等
- **スクリーンショット**: UI変更時は `docs/screenshots/` に変更前後を保存
- **期待出力**: 主要コマンド/APIの fixture を `tests/fixtures/` 等に配置
- **Stop Hook**: 必要に応じて `.claude/settings.json` の `Stop` でテスト自動実行
## レビュー方針
レビューの感度をリスクに比例させ、防御的コードの単調増加を防ぐ(類型の真実源: ~/.claude/context/code-review-checklist.md §16):
- **critical不変条件**: [感度を最大にする領域を列挙。例: 二重決済・冪等性・金額計算・状態遷移]。この領域は仮定的な指摘も歓迎する
- **検証境界**: [どの層で入力を検証し、どこから先は型・上流保証を信頼するか。例: APIハンドラのZodスキーマで検証し、service層以深では再検証しない]。レビューでの再交渉対象にしない
- **エラーハンドリング方式**: [PJ標準。例: DomainResult型で返しthrowしない]。方式変更は設計判断として扱いレビューでは提案しない
- **却下類型**: [レビュー指摘を却下した類型の蓄積先。同型の却下が繰り返されたらここに追記する]
## PJ固有ルール
- [PJ固有のルール]
<!--
注意: PJ独自のサブエージェント呼び出し慣習(quality-checker / pr-reviewer 等を明示的に呼ぶ等)は記述しない。
委譲(サブエージェントへの spawn)の要否と構成は user-level 設定(~/.claude/context/tool-claude-code.md「委譲判断」)に従う。
-->
```
### 3. コンテキスト除外設定(必要な場合のみ)
`.claudeignore`という公式機能は存在しない(@context/claude-customization-guide.md §6 参照)。除外が必要な場合は公式機構を使う:
- **秘匿ファイル・読ませたくないパス**: `.claude/settings.json` の `permissions.deny` に `Read()` ルールを追加(例: `"Read(secrets/**)"`、`"Read(*.pem)"`)
- **モノレポで他チームのCLAUDE.mdを除外**: `claudeMdExcludes` 設定
lockファイル・ビルド成果物は通常Claudeが自発的に読まないため、実際に無駄読みが観測された場合のみ設定する。
### 4. gitignore設定
`.local/`がgitに追跡されないよう設定:
```bash
# global gitignoreに.local/があるか確認
if git config --global core.excludesfile &>/dev/null; then
GLOBAL_GITIGNORE=$(git config --global core.excludesfile)
if grep -q "^\.local/$" "$GLOBAL_GITIGNORE" 2>/dev/null; then
echo "global gitignoreで.local/は除外済み"
else
if git rev-parse --git-dir &>/dev/null; then
echo ".local/" >> "$(git rev-parse --git-dir)/info/exclude"
echo ".git/info/excludeに.local/を追加"
else
echo "gitリポジトリ外のため、gitignore設定をスキップ"
fi
fi
fi
```
### 5. ユーザーへの確認
ユーザーに選択肢を提示して以下を確認(Claude Code: AskUserQuestion ツール):
1. メモリディレクトリの場所(モノレポの場合は調整が必要)
2. 品質チェックコマンド
3. ベースブランチ
4. PJ固有のルール
5. 読ませたくないパス(あれば permissions.deny の Read ルールに反映)
6. レビュー方針(critical不変条件・検証境界・エラーハンドリング方式。不明ならプレースホルダのまま残し、最初のレビューで埋める)
### 6. 設定の調整
ユーザーの回答に基づいてCLAUDE.mdと.claude/settings.jsonを調整。
## モノレポの場合
モノレポでは、メモリディレクトリの場所を明確に指定:
```markdown
## 変数
MEMORY_DIR=<monorepo-root>/.local/
```
## 複数gitリポジトリの親ディレクトリで作業する場合
親ディレクトリ自体がgitリポジトリでない場合、gitignore設定は不要(各子リポジトリで個別対応)。
## .claude/rules/の活用(オプション)
パス固有のルールがある場合、`.claude/rules/`を作成:
```bash
mkdir -p .claude/rules
```
```yaml
# .claude/rules/api-rules.md
---
paths:
- "src/api/**/*.ts"
---
# API開発ルール
- すべてのAPIエンドポイントに入力バリデーションを含めること
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!