言語：日本語 (Japanese)

# AISH ロードマップ

> **ビジョン**：AISH を侵入的なAIシェルから、ユーザーにコマンドラインの完全な制御を与えるインテリジェントなサイドカーアシスタントへ変革する。

---

## 🎯 戦略目標（2026 Q2）

### コア原則
1. **ユーザー制御最優先**：AIは提案のみ、主フローをブロックしない
2. **デフォルトで非同期**：すべてのAI分析はバックグラウンドで実行
3. **スマート介入**：インテリジェントなフィルタリングで誤検知を95%削減
4. **段階的な強化**：アーキテクチャ進化の中で後方互換性を維持

### 成功指標
- ✅ コマンド実行後 < 50 ms でプロンプトに戻る
- ✅ 主実行パスでブロッキングなAI呼び出しゼロ
- ✅ 誤検知率 < 5%
- ✅ ユーザー満足度 > 4.5/5

---

## 📅 リリースタイムライン

```
第1-2週   │ v0.1.0 → v0.2.0  │ 非同期AIサイドカーアーキテクチャ
第3-4週   │ v0.2.0 → v0.3.0  │ スマート分析とユーザー制御
第5-6週   │ v0.3.0 → v0.4.0  │ プランモードと拡張ツール
第7-8週   │ v0.4.0 → v0.5.0  │ マルチエージェントシステム
第9-10週  │ v0.5.0 → v0.6.0  │ Rich UI とタスク管理
第11-12週 │ v0.6.0 → v0.7.0  │ Agent SDK と MCP プロトコル
```

---

## 🚀 フェーズ1：アーキテクチャ刷新（第1-4週）

### v0.1.1（第1週）- クリティカル修正
**タイプ**：パッチリリース

**修正内容**
- 🐛 Skillツール呼び出しを実装（`skill.py` TODO）
- 🐛 ツール呼び出し履歴がメモリに追加されない不具合を修正（shell core）
- 🐛 `handle_error_detect()` の自動トリガーを無効化（暫定対応）

**影響**：直近のユーザーペインを軽減

---

### v0.2.0（第2週）- 非同期AIサイドカー 🔥
**タイプ**：マイナーリリース（Breaking Changes）

**新アーキテクチャ**
```
┌─────────────────────────────────────────────────────────┐
│                    メインシェルプロセス                │
│  ┌──────────────┐                                       │
│  │   ユーザー入力 │ → 実行 → 表示 → プロンプト         │
│  └──────────────┘      ↓                                │
│               イベント投入（非ブロック）               │
└─────────────────────────┼───────────────────────────────┘
                          ↓
┌─────────────────────────────────────────────────────────┐
│                 バックグラウンドAIサイドカー            │
│  ┌──────────────┐   ┌──────────────┐   ┌────────────┐ │
│  │  イベントキュー │ → │ スマートフィルタ │ → │ LLM Worker │ │
│  └──────────────┘   └──────────────┘   └────────────┘ │
│                          ↓                               │
│                   ┌──────────────┐                      │
│                   │ 通知センター │ → [AI:2] インジケータ │
│                   └──────────────┘                      │
└─────────────────────────────────────────────────────────┘
```

**新モジュール**
- `src/aish/sidecar/event_queue.py` - 非ブロッキングなコマンドイベントキュー
- `src/aish/sidecar/analyzer.py` - スマートフィルタリングロジック
- `src/aish/sidecar/worker.py` - バックグラウンドLLM分析ワーカー
- `src/aish/sidecar/notification.py` - 非侵入型通知システム
- `src/aish/sidecar/storage.py` - 分析結果の永続化

**主な機能**
1. **イベントキュー**：コマンド完了イベントをメインフローをブロックせずに投入
2. **スマート分析器**：誤検知をフィルタ（grep、diff、ssh、Ctrl‑C など）
3. **バックグラウンドワーカー**：独立タスクで非同期LLM分析
4. **通知センター**：プロンプト内の軽量ステータス表示（`[AI:2]`）

**ユーザーコマンド**
- `:ai` または `:ai last` - 最新の提案を表示
- `:ai list` - 未確認の提案を一覧表示
- `:ai show <n>` - 指定の提案を表示
- `:ai apply <n>` - 提案を適用（セキュリティ承認フローへ）

**Breaking Changes**
- ❌ `handle_error_detect()` の自動トリガーを削除
- ❌ `handle_command_error()` の自動トリガーを削除
- ❌ `ShellState.CORRECT_PENDING` を非推奨化

**移行ガイド**
- 旧動作：コマンド失敗時にAIが自動で介入
- 新動作：AIはバックグラウンドで分析し、ユーザーが提案を確認
- 互換性：`handle_command_error()` API は手動呼び出し用に維持

**設定**
```yaml
# ~/.config/aish/config.yaml
sidecar:
  enabled: true
  max_queue_size: 100
  worker_threads: 1
```

---

### v0.2.1（第3週）- 安定性
**タイプ**：パッチリリース

**修正内容**
- 🐛 サイドカーワーカーのメモリリークを修正
- 🐛 イベントキューの性能を最適化
- 📊 サイドカー分析メトリクス追加（成功率、レイテンシ）

---

### v0.3.0（第4週）- スマート分析
**タイプ**：マイナーリリース

**強化された知能**
- 🧠 **文脈認識フィルタリング**
  - コマンド履歴の分析（連続失敗 → 優先度上昇）
  - ユーザー行動トラッキング（即時リトライ → 優先度低下）
  - 時間帯調整（深夜 → 優先度低下）

**設定可能な戦略**
```yaml
sidecar:
  analysis_mode: smart  # smart | aggressive | minimal
  notification_style: indicator  # indicator | toast | silent

  # スマートモードのルール
  smart_rules:
    ignore_commands: [grep, diff, test, ssh]
    ignore_exit_codes: [130]  # Ctrl-C
    benign_stderr_patterns:
      - "^Warning:"
      - "^Note:"
```

**新コマンド**
- `:ai clear` - すべての提案をクリア
- `:ai stats` - 分析統計を表示

**改善点**
- 誤検知を95%削減
- コマンド実行オーバーヘッド < 50 ms
- 通知スタイルを設定可能

---

## 🛠️ フェーズ2：コア機能（第5-8週）

### v0.3.1（第5週）- 洗練
**タイプ**：パッチリリース

**修正内容**
- 🐛 スマートフィルタのエッジケースを修正
- 🐛 提案ストレージの性能を最適化

---

### v0.4.0（第6週）- プランモード & ツール
**タイプ**：マイナーリリース

**プランモード**（Claude Codeに着想）
- 🎯 `PlanAgent`：タスク分解の専門家
- 📋 実行前のユーザー承認フロー
- 💾 `.aish/plans/` へのプラン永続化

**使い方**
```bash
aish> ;deploy the application to production
[AIがプランを作成]
┌─ デプロイプラン ─────────────────────────────────────┐
│ 1. テストスイートを実行                               │
│ 2. Dockerイメージをビルド                             │
│ 3. レジストリへプッシュ                               │
│ 4. Kubernetesデプロイを更新                           │
│                                                      │
│ 承認しますか？ [y/N]:                                 │
└───────────────────────────────────────────────────────┘
```

**拡張ツールセット**
- 🔍 `WebSearchTool`：DuckDuckGo 連携
- 🔧 `GitTool`：Git 操作ラッパー（status, diff, commit, push）
- 🧠 `CodeAnalysisTool`：ASTベースのコード解析（tree‑sitter）

**新コマンド**
- `:plan` - プランモードに入る
- `:plan show` - 現在のプランを表示
- `:plan approve` - プランを承認して実行

---

### v0.4.1（第7週）- 仕上げ
**タイプ**：パッチリリース

**修正内容**
- 🐛 プランモードのエッジケースを修正
- 🐛 WebSearch の結果解析を最適化
- 📝 プランモードのドキュメント追加

---

### v0.5.0（第8週）- マルチエージェントシステム
**タイプ**：マイナーリリース

**エージェントエコシステム**
- 🤖 `CodeReviewAgent`：静的解析 + ベストプラクティス
- 🐛 `DebugAgent`：ログ分析 + 原因特定
- 🔍 `ResearchAgent`：Web + ドキュメント検索
- 🎭 `AgentOrchestrator`：エージェントの並列/順次協調

**エージェントアーキテクチャ**
```python
# 例：エージェントを並列実行
aish> ;review this PR and check for security issues

[並列でエージェントを起動]
├─ CodeReviewAgent: コード品質を解析中...
├─ SecurityAgent: 脆弱性をスキャン中...
└─ TestAgent: テストカバレッジを確認中...

[結果を集約して提示]
```

**スマートなコンテキスト管理**
- 📊 優先度ベースのメッセージランキング
- 🗜️ 長い会話の自動要約（小型モデル使用）
- 🧠 セッション横断の知識ベース（オプションのベクトル検索）

**設定**
```yaml
agents:
  enabled: true
  max_parallel: 3
  context_window: 8000
  auto_summarize: true
```

---

## 🎨 フェーズ3：ユーザー体験 & エコシステム（第9-12週）

### v0.5.1（第9週）- 安定性
**タイプ**：パッチリリース

**修正内容**
- 🐛 エージェント並列実行の競合状態を修正
- 🐛 コンテキスト圧縮アルゴリズムを最適化
- 📊 エージェントのパフォーマンス指標を追加

---

### v0.6.0（第10週）- Rich UI & タスク
**タイプ**：マイナーリリース

**Rich UI の強化**
- 🎨 エージェント実行のリアルタイム進捗バー
- 🌳 タスクツリーの可視化
- 🔍 差分プレビュー付きのインタラクティブ確認パネル

**タスク管理システム**（Claude Codeに着想）
- 📋 タスク追跡の内蔵 (`TaskCreate`, `TaskUpdate`, `TaskList`)
- 🔗 タスクの依存関係と優先度
- 💾 タスクの永続化と復元

**使い方**
```bash
aish> :task list
┌─ アクティブタスク ───────────────────────────────────┐
│ [1] ⏳ ユーザー認証を実装                             │
│     ├─ [2] ✅ データベーススキーマを設定               │
│     ├─ [3] 🔄 ログインエンドポイントを作成             │
│     └─ [4] ⏸️  JWTトークン検証を追加                   │
└───────────────────────────────────────────────────────┘

aish> :task show 3
[進捗とブロッカーを含む詳細タスクビュー]
```

**新コマンド**
- `:task create` - 新しいタスクを作成
- `:task list` - すべてのタスクを一覧表示
- `:task show <id>` - タスク詳細を表示
- `:task complete <id>` - タスクを完了としてマーク

---

### v0.6.1（第11週）- 最適化
**タイプ**：パッチリリース

**修正内容**
- 🐛 タスクマネージャのメモリ使用を修正
- 🐛 Rich UI のレンダリング性能を最適化
- 📝 タスク管理ドキュメント追加

---

### v0.7.0（第12週）- Agent SDK & MCP
**タイプ**：マイナーリリース

**Agent SDK**
- 🔌 エージェント開発の標準インターフェース
- 🏗️ エージェントテンプレート生成（`aish create-agent`）
- 🌐 エージェントマーケットプレイス（コミュニティ共有）

**エージェント開発例**
```bash
# 新しいエージェントを作成
aish create-agent --name my-agent --type diagnostic

# 生成された構成
~/.config/aish/agents/my-agent/
├── agent.py          # エージェント実装
├── config.yaml       # エージェント設定
├── README.md         # ドキュメント
└── tests/            # ユニットテスト
```

**MCPプロトコル対応**
- 🔗 Claude Desktop の MCP サーバーと互換
- 🔌 外部サービス向けの内蔵MCPクライアント
- 📡 MCPエコシステムとの双方向通信

**Observability ダッシュボード**（任意）
- 📊 Web UI（FastAPIベース）
- 📈 リアルタイムセッション監視
- 💰 トークン使用統計
- ⚡ エージェント性能分析

**設定**
```yaml
mcp:
  enabled: true
  servers:
    - name: filesystem
      command: npx
      args: [-y, @modelcontextprotocol/server-filesystem, /tmp]
    - name: github
      command: npx
      args: [-y, @modelcontextprotocol/server-github]
      env:
        GITHUB_TOKEN: ${GITHUB_TOKEN}

observability:
  enabled: false  # 任意のWebダッシュボード
  port: 8080
```

---

## 📊 機能比較マトリクス

| 機能 | v0.1.0（現行） | v0.2.0 | v0.4.0 | v0.6.0 | v0.7.0 |
|---------|------------------|--------|--------|--------|--------|
| **非同期AI分析** | ❌ | ✅ | ✅ | ✅ | ✅ |
| **スマートフィルタリング** | ❌ | ⚠️ 基本 | ✅ 高度 | ✅ | ✅ |
| **プランモード** | ❌ | ❌ | ✅ | ✅ | ✅ |
| **マルチエージェント** | ⚠️ 1エージェント | ⚠️ 1エージェント | ⚠️ 1エージェント | ✅ 4+ エージェント | ✅ |
| **タスク管理** | ❌ | ❌ | ❌ | ✅ | ✅ |
| **Agent SDK** | ❌ | ❌ | ❌ | ❌ | ✅ |
| **MCPプロトコル** | ❌ | ❌ | ❌ | ❌ | ✅ |
| **Rich UI** | ⚠️ 基本 | ⚠️ 基本 | ⚠️ 基本 | ✅ | ✅ |

---

## 🎯 競争ポジショニング

### vs Claude Code

| 項目 | AISH v0.7.0 | Claude Code |
|--------|-------------|-------------|
| **オープンソース** | ✅ Apache 2.0 | ❌ プロプライエタリ |
| **ローカルモデル** | ✅ 完全対応 | ❌ 限定的 |
| **マルチプロバイダー** | ✅ LiteLLM | ⚠️ 主にClaude |
| **PTY対応** | ✅ 完全 | ⚠️ 限定的 |
| **Opsフォーカス** | ✅ システム診断 | ⚠️ 開発寄り |
| **プライバシー** | ✅ ローカルファースト | ⚠️ クラウド依存 |
| **コスト** | ✅ 無料 | ❌ サブスクリプション |
| **非同期AI** | ✅ ブロックしない | ⚠️ ブロックする |

### 独自の価値提案

1. **非侵入型AI**：バックグラウンド分析はユーザーワークフローを妨げない
2. **Opsネイティブ**：システム管理とトラブルシューティング向け
3. **プライバシーファースト**：ローカルモデル対応でデータ流出なし
4. **コミュニティ主導**：拡張可能なエージェントエコシステムを備えたオープンソース
5. **エンタープライズ対応**：サンドボックス、監査ログ、細かな権限制御

---

## 🚨 リスク管理

| リスク | 影響 | 緩和策 | ステータス |
|------|--------|------------|--------|
| **非同期の複雑性** | 高 | 徹底的なテスト + フォールバックモード | 第1-2週 |
| **スマートフィルタ精度** | 中 | 設定可能なルール + ユーザーフィードバック | 第3-4週 |
| **ワーカーのリソース使用** | 中 | キュー制限 + 自動スロットリング | 第2-3週 |
| **ユーザー採用** | 低 | 段階的移行 + ドキュメント | 継続中 |
| **エージェント協調** | 中 | タイムアウト制限 + エラー回復 | 第7-8週 |

---

## 📈 成功指標

### 技術KPI
- ✅ コマンド実行レイテンシ < 50 ms（P95）
- ✅ AI分析の誤検知率 < 5 %
- ✅ サイドカーワーカーのメモリ < 50 MB
- ✅ エージェント応答時間 < 2 s（P95）
- ✅ テストカバレッジ > 80 %

### ユーザーKPI
- 📈 日次アクティブユーザーの成長 > 20 % MoM
- ⭐ ユーザー満足度 > 4.5/5
- 🤝 コミュニティSkills > 50
- 🏢 エンタープライズ導入 > 10

### エコシステムKPI
- 🔌 コミュニティエージェント > 20
- 📦 MCP統合 > 5
- 📝 ドキュメント完成度 > 90 %

---

## 🤝 コントリビュート

貢献を歓迎します！優先領域：

### 第1-4週（フェーズ1）
- 🔧 サイドカーアーキテクチャの実装
- 🧪 スマートフィルタリングルールの開発
- 📝 移行ガイドのドキュメント

### 第5-8週（フェーズ2）
- 🤖 新しいエージェント実装
- 🔍 ツール統合（Web検索、コード解析）
- 🧠 コンテキスト管理の最適化

### 第9-12週（フェーズ3）
- 🎨 UI/UX 改善
- 🔌 Agent SDK の開発
- 📊 観測性ダッシュボード

詳細は [CONTRIBUTING.md](CONTRIBUTING.md) を参照してください。

---

## 📚 リソース

- **ドキュメント**：[docs.aishell.ai](https://docs.aishell.ai)
- **GitHub**：[github.com/AI-Shell-Team/aish](https://github.com/AI-Shell-Team/aish)
- **Discord**：[discord.gg/aish](https://discord.gg/aish)

---

## 📝 変更履歴

### 近日公開
- 上記の各リリースセクションを参照

### v0.1.0（現行）
- ✅ 完全なPTY対応
- ✅ マルチモデル対応（LiteLLM）
- ✅ 基本的なセキュリティリスク評価
- ✅ Skillsのホットリロードシステム
- ✅ ReAct診断エージェント
- ✅ セッション永続化（SQLite）
- ✅ 出力オフロード機構
- ✅ i18n対応

---

**最終更新**：2026-03-06
**ロードマップ版**：2.0
**ステータス**：🟢 開発中
