# System Overview

*最終更新: 2026-05-06*

> **TL;DR**: AI農業先生方式（AI Ojiichan Method）のシステム全体構成。LINE で写真送信 → Make.com ワークフロー → Dify Cloud で投稿文生成 → 投稿前安全フィルタ → X API 投稿、というパイプライン。並行して GAS でエンゲージメント数値を毎日収集 → 週次で異常値抽出 → LLM 戦略マネージャーが次週の投稿トピックを生成。ユーザー作業は 1 日 1〜2 分（写真撮影 + LINE 送信のみ）。

AI農業先生方式（AI Ojiichan Method）の全体構成（概念レベル）。各レイヤーの責務と連携を示す。

具体的なスクリプト名・スケジュール・モジュール ID・キャラクター設定ファイル等は **競合再現性回避のため非公開**。本記事は概念フローのみ。

## 全体像（概念フロー）

```
[人間]
   │ (1〜2分/日)
   ▼ 写真 + テキスト送信
[メッセージング API]
   │
   ▼
[ワークフローエンジン]
   ├─ ルーティング（投稿種別の判定）
   ├─ 画像と文脈を LLM に渡す
   ├─ 投稿前安全チェック（正規表現 + LLM 二重）
   └─ 投稿実行 + ユーザーへの返答
        │
        ▼
[LLM レイヤー]
   ├─ 写真診断（キャラ口調で投稿文生成）
   ├─ 対話分類（受信メンションのトリアージ・将来用）
   └─ 戦略マネージャー（週次の craft 提案 + 分析）
        │
        ▼
[X (Twitter) API]
   │
   ▼
[投稿]

並行して:

[データ収集レイヤー]
   ├─ 投稿エンゲージメントの日次記録
   ├─ フォロワー推移の日次記録
   ├─ 異常値の週次抽出（通常投稿 + リプ別軸）
   └─ 投稿種別×エンゲージメントの週次集計

   ↓
[学習レイヤー]
   ├─ 異常値 JSON → Markdown 同期
   ├─ 過去N週分を LLM 戦略マネージャーに渡す
   └─ 戦略出力 → TODO 化

   ↓
[人間が次週の投稿に反映]
```

## 各レイヤーの責務

### 入力レイヤー

ユーザー作業は写真撮影 + 文脈の送信のみ（1〜2分/日）。

### ワークフローレイヤー

- 画像のアップロードと文脈付けの中継
- 投稿テキストの生成依頼
- 安全フィルタ（正規表現ブロック + LLM 側プロンプトでの二重チェック）
- 投稿実行・返答送信

### LLM レイヤー

- **写真診断**: 観察 + キャラ口調の投稿文生成
- **対話分類**: 受信メンションのトリアージ
- **戦略マネージャー**: 週次の craft 提案 + 分析（[/docs/learning-loop.md](/docs/learning-loop.md)）

### データ収集レイヤー

エンゲージメント・フォロワー推移・異常値・週次集計を自動収集。クラウド表計算ツールに蓄積。

### 学習レイヤー

データを Markdown に同期させて LLM に読ませ、次週のトピック提案を生成する（具体実装は [/docs/learning-loop.md](/docs/learning-loop.md) も非公開化済み）。

### 出力レイヤー

X API で自動投稿。従量課金の使用上限管理あり。

## 安全制約

| ルール | 強制方法 |
|---|---|
| 農薬の具体的濃度・希釈倍率を含めない | ワークフロー側の正規表現ブロック + LLM プロンプト |
| 病気の確定診断をしない（曖昧表現必須）| LLM プロンプト + 投稿前 hook |
| キャラ口調から逸脱しない | LLM プロンプト + キャラ設定ファイル |
| 政治・宗教・差別表現を含めない | LLM プロンプト + ワークフロー側フィルタ |
| API キーを平文出力しない | local hook + gitignore |

## 関連記事

- [/docs/learning-loop.md](/docs/learning-loop.md) — 学習ループの詳細
- [/docs/craft-axes.md](/docs/craft-axes.md) — craft 軸の体系
- [/docs/principles.md](/docs/principles.md) — 設計原則
