Bunshinとは
Bunshinは、単一のAIモデルに全てをこなさせる汎用チャットボットとは違うアプローチを取るAIスペシャリストプラットフォームです。
コーディング、キャリア相談、マーケティングなど、それぞれのタスクを1つのモデルに任せるのではなく、
Bunshinはユーザーの意図を専門特化したエージェントにルーティングします。各エージェントは独自の
システムプロンプト、専用のRAGベクトルインデックス、専用ツールセットを持っています。
"One Mind. Many Specialists."
アーキテクチャ
BunshinはModular Monolith構成で設計されており、今後20以上のスペシャリストエージェントへの
水平スケーリングを見据えています。
```
[ Client: Next.js 16 (App Router + React 19) ]
│
│ HTTPS / REST / SSE Streaming
▼
[ Backend API: FastAPI (Python 3.12 + Pydantic v2 + Motor Async) ]
│ │ │ │
▼ ▼ ▼ ▼
[ MongoDB Atlas ] [ LLM Provider ] [ RAG Vector ] [ Upload
Engine System Storage ]
```
1. Manifest駆動のダイナミックエージェントランタイム
各エージェントはbackend/app/agents/<agent_id>/配下に独立して存在し、それぞれがmanifest.jsonを持ちます。
サーバー起動時にランタイムが自動的に全エージェントを検出するため、条件分岐のハードコーディングが不要です。
新しいスペシャリストを追加する場合は、manifest.json・prompts/*.md・executor.pyを含む
フォルダを作成するだけで、バックエンドとフロントエンドUIが自動的に対応します。
2. マルチプロバイダーLLM抽象化レイヤー
Bunshinは特定のAIプロバイダーに依存しない設計です。LLMProviderという単一の抽象インターフェースを
実装しており、Gemini・OpenAI・Claude・Groq・OpenRouter・DeepSeek・Mistral・ローカルOllamaに対応しています。
ユーザーが入力したAPIキーはAES-256(Fernet)で暗号化した上でMongoDBに保存され、フロントエンドは
プロバイダーに依存しない設計になっています。
3. RAG・ベクトル検索エンジン
- コードリポジトリの
.zipを解凍し、node_modulesや.gitなどを除外した上でファイルツリーを構築、行単位でベクトル化 -
.pdf(PyMuPDF)・.docx(python-docx)からテキストを抽出 - MD5特徴ハッシュ + FAISS/numpyコサイン類似度により、プロセス再起動後も決定論的な検索結果を保証
現在稼働中のスペシャリスト(V1)
| Specialist | Status | できること |
|---|---|---|
| Coding Agent | LIVE | アーキテクチャ分析、バグ/セキュリティ監査、パフォーマンス最適化、README生成 |
| Career Agent | LIVE | ATSスコアリング(0-100)、STAR形式での職務経歴書リライト、キーワードマッチ分析 |
| Research Specialist | 準備中 | 論文サーベイ、arXiv検索 |
| Marketing Specialist | 準備中 | SaaSランディングページ監査、コピーライティング |
技術スタック
フロントエンド: Next.js 16 (App Router) / TypeScript / React 19 / Tailwind CSS v4 / TanStack Query v5
バックエンド: FastAPI (Python 3.12) / MongoDB Atlas (Motor Async) / Pydantic v2 / FAISS
今後の展望
現在はCoding AgentとCareer Agentの2つがLIVEですが、Research・Marketing・Productivity・
System Designなど、今後さらに専門エージェントを追加していく予定です。
GitHub: https://github.com/singhrajat1111/bunshin-ai![対応していない形式のファイルです。]()