# セキュリティセットアップガイド

このドキュメントは、開発環境でAPIキーを安全に管理するための手順を説明します。

---

## 🔐 初回セットアップ（必須）

### Step 1: 新しいAPIキーを発行

1. [Google AI Studio](https://aistudio.google.com/apikey) にアクセス
2. **重要**: 既存のキー `AIzaSy...` が表示されている場合は、**必ず無効化**してください
3. 新しいAPIキーを発行（「Create API Key」ボタン）
4. 発行されたキーをクリップボードにコピー

### Step 2: ローカル設定ファイルを作成

```bash
# プロジェクトルートで実行
cd c:\Users\maita\posimai-project\ponshu_room_lite

# テンプレートをコピー
cp lib/secrets.local.dart.example lib/secrets.local.dart
```

### Step 3: APIキーを設定

`lib/secrets.local.dart` をエディタで開き、以下のように編集:

```dart
class SecretsLocal {
  /// あなたのGemini APIキーをここに設定してください
  static const String geminiApiKey = 'AIzaSy...YOUR_NEW_KEY_HERE';

  /// ローカル開発時のAI Proxy URL（オプション）
  static const String aiProxyBaseUrl = 'http://100.76.7.3:8080';
}
```

**注意**: `lib/secrets.local.dart` は `.gitignore` に含まれているため、Gitにコミットされません。

---

## 🚀 アプリの起動

### 開発時（ローカル設定を使用）

```bash
flutter run
```

`lib/secrets.local.dart` が存在すれば、自動的にそこからAPIキーを読み込みます。

### リリースビルド時（環境変数を使用）

```bash
flutter build apk --dart-define=GEMINI_API_KEY=AIzaSy...YOUR_KEY
```

---

## ✅ セキュリティチェックリスト

- [ ] **Step 1**: 古いAPIキー（`AIzaSyARuYSPqMLXz51hYnWN4gkL9vA4lA-CMmQ`）を無効化
- [ ] **Step 2**: `lib/secrets.local.dart` を作成し、新しいAPIキーを設定
- [ ] **Step 3**: `lib/secrets.local.dart` がGitにコミットされていないことを確認
  ```bash
  git status | grep secrets.local.dart
  # 何も表示されなければOK
  ```
- [ ] **Step 4**: アプリが正常に起動することを確認
  ```bash
  flutter run
  ```

---

## 🔍 トラブルシューティング

### エラー: `Gemini API Key is missing`

**原因**: APIキーが設定されていません

**解決方法**:
1. `lib/secrets.local.dart` が存在するか確認
2. ファイル内の `geminiApiKey` が空文字列でないか確認
3. アプリを再起動

### エラー: `AI解析エラー(Direct): API key not valid`

**原因**: APIキーが無効です

**解決方法**:
1. [Google AI Studio](https://aistudio.google.com/apikey) で新しいキーを発行
2. `lib/secrets.local.dart` を更新
3. アプリを再起動

---

## 📚 参考資料

- [Gemini API ドキュメント](https://ai.google.dev/docs)
- [Flutter環境変数の使い方](https://docs.flutter.dev/deployment/flavors)
- [プロジェクトのアーキテクチャ設計書](docs/ARCHITECTURE_DECISION_RECORD.md)

---

**更新履歴**:
- 2026-01-21: 初版作成（Claude Code実装後のセキュリティ対策）
