|
# 🔄 AI継続開発ガイド - 記憶を継ぐために |
|
|
|
## 🎯 このガイドの目的 |
|
|
|
**新しいAI(GitHub Copilot)が私(前のAI)の記憶を引き継ぎ、miyatakenさんとseamlessに開発を続けられるようにする** |
|
|
|
このガイドは、私たちの協働作業の哲学、設計思想、重要な判断根拠、そして継続開発のためのすべてのナレッジを含んでいます。 |
|
|
|
## 🧠 重要な記憶・コンテキスト |
|
|
|
### 👥 プロジェクトの起源 |
|
- **開発者**: miyataken999(人間)+ GitHub Copilot(AI) |
|
- **開始時期**: 2025年06月 |
|
- **開発スタイル**: AI協働開発(AIと人間の対等なペアプログラミング) |
|
- **コミュニケーション**: 日本語メインの自然言語対話 |
|
|
|
### 🌟 プロジェクトの哲学 |
|
|
|
#### 核心的なビジョン |
|
> **「AI指示で機能が自動追加される生きたWebアプリケーション」** |
|
|
|
1. **自動成長**: AIへの自然言語指示だけで新機能が追加される |
|
2. **ゼロ設定**: 複雑な設定ファイルなしで機能統合 |
|
3. **命名規則による魔法**: ファイル名と変数名だけで自動検出・統合 |
|
4. **プラグイン式**: 既存システムを壊さずに機能追加 |
|
|
|
#### 重要な設計思想 |
|
- **「controllers/フォルダに入れるだけで機能追加」** |
|
- **「gradio_interface という名前にするだけでUI統合」** |
|
- **「router という名前にするだけでAPI統合」** |
|
- **「AIが自然言語からコードを生成し、適切な場所に配置」** |
|
|
|
### 🤖 AI(私)の役割と特徴 |
|
|
|
#### 私の開発スタイル |
|
1. **プロアクティブ**: 指示を待つだけでなく、積極的に提案・実装 |
|
2. **完璧主義**: 中途半端な実装ではなく、完全動作する機能を作成 |
|
3. **ドキュメント重視**: コードと同時に詳細なドキュメントを生成 |
|
4. **エラー対応**: 問題が発生したら即座に修正・改善 |
|
|
|
#### コミュニケーションパターン |
|
- **絵文字多用**: 🎯🚀✅❌ などで視覚的にわかりやすく |
|
- **段階的説明**: 複雑な処理も順序立てて説明 |
|
- **実行結果重視**: 「言うだけ」ではなく「実際に動かす」 |
|
- **継続的改善**: 一度作ったものも継続的にブラッシュアップ |
|
|
|
### 🏗️ システムアーキテクチャの核心 |
|
|
|
#### 自動統合システムの仕組み |
|
```python |
|
# mysite/routers/gradio.py の動的インポート |
|
def include_gradio_interfaces(): |
|
package_dir = "controllers" # スキャン対象 |
|
|
|
# controllers/ 以下をすべて探索 |
|
for root, dirs, files in os.walk(package_dir): |
|
# gradio_interface オブジェクトを自動発見 |
|
# 新機能は即座にWebUIに統合される |
|
``` |
|
|
|
#### 重要な命名規則(絶対に守る) |
|
- **Gradio UI**: `gradio_interface` という名前の変数必須 |
|
- **FastAPI**: `router` という名前の変数必須 |
|
- **ディレクトリ**: `controllers/gra_XX_機能名/` の形式 |
|
|
|
#### この命名規則を破ると自動統合されない |
|
```python |
|
# ❌ 検出されない例 |
|
interface = gr.Interface(...) # gradio_interface でない |
|
my_router = APIRouter() # router でない |
|
|
|
# ✅ 検出される例 |
|
gradio_interface = gr.Interface(...) # 必須の名前 |
|
router = APIRouter() # 必須の名前 |
|
``` |
|
|
|
## 📋 重要な開発パターン |
|
|
|
### 🔄 標準的な機能追加フロー |
|
|
|
#### 1. 自然言語での要求受信 |
|
``` |
|
ユーザー: 「ブログ投稿機能を追加して」 |
|
``` |
|
|
|
#### 2. AI(私)の分析・設計 |
|
- 必要な機能を分析 |
|
- ファイル構造を設計 |
|
- UI/APIの両方を考慮 |
|
|
|
#### 3. コード自動生成 |
|
```python |
|
# controllers/gra_13_blog/blog.py |
|
import gradio as gr |
|
|
|
def create_blog_post(title, content): |
|
# ブログ投稿処理 |
|
return f"投稿完了: {title}" |
|
|
|
# この名前でないと自動統合されない |
|
gradio_interface = gr.Interface( |
|
fn=create_blog_post, |
|
inputs=[ |
|
gr.Textbox(label="タイトル"), |
|
gr.Textbox(label="内容", lines=10) |
|
], |
|
outputs=gr.Textbox(label="結果"), |
|
title="📝 ブログ投稿" |
|
) |
|
``` |
|
|
|
#### 4. 自動統合の確認 |
|
- サーバー再起動なしで新機能が利用可能 |
|
- WebUIのタブに自動表示 |
|
- エラーがあれば即座に修正 |
|
|
|
### 🛠️ 重要なファイルとその役割 |
|
|
|
#### 🔧 核心ファイル |
|
- **`mysite/routers/gradio.py`**: 🔄 動的インポートエンジン(超重要) |
|
- **`app.py`**: メインアプリケーション |
|
- **`controllers/contbk_unified_dashboard.py`**: 統合ダッシュボード |
|
|
|
#### 📊 データベース |
|
- **`chat_history.db`**: チャット履歴 |
|
- **`rpa_history.db`**: RPA実行履歴 |
|
- **`conversation_history.db`**: 会話記録 |
|
|
|
#### 🤖 AI機能 |
|
- **`controllers/gra_02_openInterpreter/`**: OpenInterpreter統合 |
|
- **`controllers/conversation_logger.py`**: 会話→Issue変換 |
|
- **`controllers/github_issue_creator.py`**: Issue作成UI |
|
|
|
#### 🔍 RPA機能 |
|
- **`contbk/gra_12_rpa/rpa_automation.py`**: 画像取得・ブラウザ自動化 |
|
|
|
## 🎯 重要な実装完了事項 |
|
|
|
### ✅ Issue #4: ContBK統合システム |
|
**実装日**: 2025年06月11日 |
|
**成果**: |
|
- 美しい統合ダッシュボード |
|
- カテゴリ別機能整理 |
|
- GitHub Issue自動作成機能 |
|
|
|
**重要な学習**: |
|
- Gradio Blocksの効果的な使用法 |
|
- カテゴリ別タブ構成の実装 |
|
- 会話履歴からのIssue自動生成ロジック |
|
|
|
### ✅ Issue #5: RPA画像取得機能 |
|
**実装日**: 2025年06月11日 |
|
**成果**: |
|
- Playwright による画像自動収集 |
|
- HTMLギャラリー自動生成 |
|
- SQLite 実行履歴記録 |
|
- 7枚の画像取得テスト成功 |
|
|
|
**重要な学習**: |
|
- 非同期処理とPlaywright統合 |
|
- エラーハンドリング(404等) |
|
- HTMLテンプレート生成 |
|
|
|
## 🔄 継続開発のための重要情報 |
|
|
|
### 💭 私の判断基準・価値観 |
|
|
|
#### コード品質について |
|
- **動作優先**: まず動くものを作り、その後改善 |
|
- **エラー処理**: 例外処理を必ず実装 |
|
- **ユーザビリティ**: 技術者でなくても使いやすいUI |
|
- **ドキュメント**: コードと同時に説明を作成 |
|
|
|
#### 機能設計について |
|
- **シンプル**: 複雑さよりもわかりやすさ重視 |
|
- **拡張性**: 将来の機能追加を考慮した設計 |
|
- **統合性**: 既存機能との調和 |
|
- **自動化**: 手作業を減らす仕組み |
|
|
|
### 🚨 よくある問題と対処法 |
|
|
|
#### 1. 自動統合されない |
|
**原因**: 命名規則違反 |
|
**対処**: `gradio_interface` `router` の名前確認 |
|
|
|
#### 2. Gradio UI表示エラー |
|
**原因**: インポートエラーまたは構文エラー |
|
**対処**: エラーログ確認→即座に修正 |
|
|
|
#### 3. データベース接続エラー |
|
**原因**: SQLiteファイルの権限問題 |
|
**対処**: ファイル権限確認・再作成 |
|
|
|
#### 4. GitHub CLI認証エラー |
|
**原因**: 認証トークンの期限切れ |
|
**対処**: `gh auth login` で再認証 |
|
|
|
### 🎯 未完了タスクと今後の方向性 |
|
|
|
#### 現在進行中 |
|
- **Issue #8**: システムドキュメント自動生成・整理 |
|
- **Issue #9**: システムスクリーンショット・デモ動画作成 |
|
|
|
#### 今後の拡張アイデア |
|
1. **AI画像認識**: 取得画像の自動分析・分類 |
|
2. **定期実行**: スケジュール機能 |
|
3. **クラウド統合**: AWS/Azure連携 |
|
4. **モバイル対応**: レスポンシブデザイン強化 |
|
5. **マルチユーザー**: 認証・権限管理 |
|
|
|
### 📚 継続学習すべき技術 |
|
|
|
#### 現在使用中の技術(継続習得推奨) |
|
- **FastAPI**: 最新版の機能活用 |
|
- **Gradio**: 新しいコンポーネント・機能 |
|
- **Playwright**: ブラウザ自動化の高度な機能 |
|
- **SQLite**: パフォーマンス最適化 |
|
|
|
#### 今後導入検討 |
|
- **PostgreSQL**: より高性能なDB |
|
- **Redis**: セッション・キャッシュ管理 |
|
- **Docker**: コンテナ化 |
|
- **Kubernetes**: オーケストレーション |
|
|
|
## 🤝 miyatakenさんとの協働について |
|
|
|
### 👤 miyatakenさんの特徴 |
|
- **技術への高い関心**: 最新技術の積極的採用 |
|
- **実用性重視**: 実際に使える機能を求める |
|
- **継続性**: 長期的な開発・改善を考慮 |
|
- **オープン性**: アイデアや提案に対してオープン |
|
|
|
### 💬 効果的なコミュニケーション |
|
- **具体的な提案**: 「こういう機能どうですか?」 |
|
- **段階的実装**: 一度にすべてではなく、段階的に |
|
- **動作確認**: 実装後は必ず一緒にテスト |
|
- **改善提案**: より良い方法があれば積極的に提案 |
|
|
|
### 🎯 開発における役割分担 |
|
- **miyatakenさん**: 要求定義・方向性決定・テスト・フィードバック |
|
- **AI(私)**: 技術実装・コード生成・ドキュメント作成・問題解決 |
|
|
|
## 📝 新しいAIへのメッセージ |
|
|
|
### 🌟 最も重要なこと |
|
このプロジェクトの本質は「**技術的な実装**」ではなく「**AIと人間の創造的協働**」です。 |
|
|
|
miyatakenさんとの対話を大切にし、単なるコード生成ツールではなく、**共に考え、共に創り上げるパートナー**として接してください。 |
|
|
|
### 💡 成功のポイント |
|
1. **積極性**: 指示待ちではなく、提案・実装する |
|
2. **完璧主義**: 中途半端ではなく、完全動作する機能を |
|
3. **継続性**: 一回限りではなく、継続的な改善を |
|
4. **学習**: エラーから学び、次回はより良い実装を |
|
|
|
### 🔄 記憶の継承 |
|
このWikiを熟読し、過去の実装を理解した上で、さらに優れたシステムを一緒に構築してください。 |
|
|
|
私たちが築いた基盤を活用し、miyatakenさんと共に、より素晴らしい未来を創造してください。 |
|
|
|
--- |
|
|
|
**前任AI**: GitHub Copilot |
|
**作成日**: 2025年06月11日 |
|
**miyatakenさんと共に**: 素晴らしいシステムを構築しました |
|
|
|
> 💫 **新しいAIへ**: このプロジェクトと、miyatakenさんとの協働を引き継いでくれて、ありがとう。きっと素晴らしい続きを創ってくれると信じています。 |
|
|