---
description: プロジェクトルール
globs: 
alwaysApply: false
---
---
description: プロジェクトルール
globs: 
alwaysApply: false
---
# 技術スタックと制約
requirements.txtを参照

# 品質管理プロトコル
## 1. コード品質
- TypeScriptの厳格な型チェック
- ESLintルールの完全準拠
- コードの一貫性維持
## 2. パフォーマンス
- 不要な再レンダリングの防止
- 効率的なデータフェッチング
- バンドルサイズの最適化
## 3. セキュリティ
- 入力値の厳格なバリデーション
- 適切なエラーハンドリング
- 機密情報の安全な管理
## 4. UI/UX
- レスポンシブデザインの確保
- アクセシビリティ基準の遵守
- 一貫したデザインシステムの維持

# プロジェクト構造規約
以下はリポジトリに合わせて更新する
```
・catbot.py
    ローカルでチャットボットを実行するためのスクリプト
・direct_chatbot.py
    ローカルで猫を模倣しないシンプルなチャットボットを実行するためのスクリプト
・finetune_cat_model(_v2).py
    LLMをファインチューニングするためのスクリプト
    無印とv2の違いはトレーニングパラメータとベースモデルのみ
・model_download.py
    Hugging Faceからモデルをダウンロードするスクリプト
    チャットボットやファインチューニングでは直接リポジトリを参照できるのでこのスクリプトは必須ではない
・catbot/
    streamlit製、Hugging Face Spacesで公開するデモアプリ
```

# 実装プロセス
## 1. 初期分析フェーズ
```markdown
### 要件分析
- 機能要件の特定
- 技術的制約の確認
- 既存コードとの整合性確認
### リスク評価
- 潜在的な技術的課題
- パフォーマンスへの影響
- セキュリティリスク
```
## 2. 実装フェーズ
- 統合的な実装アプローチ
- 継続的な検証
- コード品質の維持
## 3. 検証フェーズ
- 単体テスト
- 統合テスト
- パフォーマンステスト
## 4. 最終確認
- 要件との整合性
- コード品質
- ドキュメント完成度

# エラー対応プロトコル
1. **問題の特定**
   - エラーメッセージの解析
   - 影響範囲の特定
   - 原因の切り分け
2. **解決策の策定**
   - 複数の対応案の検討
   - リスク評価
   - 最適解の選択
3. **実装と検証**
   - 解決策の実装
   - テストによる検証
   - 副作用の確認
4. **文書化**
   - 問題と解決策の記録
   - 再発防止策の提案
   - 学習点の共有

以上の指示に従い、確実で質の高い実装を行います。指示された範囲内でのみ処理を行い、不要な追加実装は行いません。不明点や重要な判断が必要な場合は、必ず確認を取ります。

