# プロダクトビジョン

最終更新: 2026-02-16

## 1. Vision Statement

Yagra は、YAML 定義から LangGraph の StateGraph を動的に構築する
Declarative LangGraph Builder を中核に、
非エンジニアも参加できる Workflow Studio 体験（WebUI 可視化・編集）へ拡張する。
さらに、コーディングエージェントがワークフローを自動生成・検証できる AI-Native な基盤を提供し、
将来的にはプロンプト自動最適化との統合を見据える。
ロジックと構成を分離したまま、チーム全体の改善サイクルを高速化する。

## 2. 対象ユーザー

- LangGraph を使う LLM アプリケーション開発者
- プロンプトやフロー改善に関わる PM / ドメインエキスパート
- ワークフロー改善に参加する非エンジニア（業務担当者・オペレーター）
- コーディングエージェント（Codex, Claude Code, Gemini 等）を活用してワークフローを自動生成する開発者

## 3. 解決する課題

- LangGraph のフロー構造やプロンプト設定が Python コードと密結合し、改善のたびに実装コストが高い。
- 処理順序や条件分岐の調整をエンジニアしか行えず、PDCA サイクルが遅くなる。
- YAML を直接編集する運用は、非エンジニアにとって認知負荷と誤編集リスクが高い。
- ワークフロー定義の自動生成に必要なスキーマ情報が機械可読な形で提供されておらず、コーディングエージェントが正確なワークフローを生成できない。

## 4. 提供価値

- Schema-Driven: Pydantic スキーマで YAML 記述ミスを早期検知する。
- Registry Pattern: YAML 上の文字列定義と Python 関数を疎結合に接続する。
- Zero-Boilerplate: グラフ構築コードを毎回書かず、YAML 差し替えで異なるワークフローを実行できる。
- Visual-First: まず WebUI でワークフローを可視化し、構造理解とレビューを容易にする。
- Safe Editing: 次段階で WebUI 上の編集機能を提供し、非エンジニアでも prompt/model/遷移条件を調整できる。
- Usability-First: 編集可能な状態で止めず、情報設計・視認性・操作導線を継続改善して「迷わず使える」体験へ引き上げる。
- AI-Ready Schema: JSON Schema を公開し、コーディングエージェントが正確なワークフロー YAML を生成できる基盤を提供する。
- Validate Feedback Loop: 構造化されたバリデーション結果を返し、エージェントが自律的にエラー修正ループを回せる。
- Template Library: 典型パターン（分岐・ループ・RAG 等）のテンプレートを提供し、エージェントおよび開発者の生成精度と立ち上がり速度を向上させる。

## 5. 成功状態

- 開発チームが Python コード変更なしで、YAML 更新のみでフロー構成変更を反映できる。
- 主要な設定ミス（ノード参照不整合、必須パラメータ欠落）を実行前に検出できる。
- 非エンジニアが WebUI 上でフローを理解・レビューできる（可視化フェーズ）。
- 非エンジニアが WebUI 上で prompt/model/接続を調整し、PoC を短サイクルで回せる（編集フェーズ）。
- 非エンジニアが WebUI 上で主要操作（ノード追加・接続変更・保存）を補助なしで完了できる（UX 高度化フェーズ）。
- コーディングエージェントが JSON Schema を参照して有効なワークフロー YAML を生成できる（AI-Native フェーズ）。
- 生成された YAML を `yagra validate` で検証し、エラーがあれば構造化フィードバックで修正ループを回せる（AI-Native フェーズ）。

## 6. 将来展望

- プロンプト自動最適化（DSPy, Agent Lightning 等）との統合を視野に入れる。Yagra の `prompt_ref` による プロンプト分離構造は、外部オプティマイザーとの統合に適した設計であり、Optimizer Port のインターフェース設計を将来課題とする。
- 「AI がワークフローを生成し、AI がプロンプトを最適化し、人間がレビュー・承認する」サイクルを YAML + Git ベースで実現することを長期目標とする。

## 7. Vision の再設定ルール

- LangGraph 以外の実行基盤への主軸変更を判断した時点で見直す。
- エンジニア外ユーザーの改善サイクル時間が短縮しない場合は仮説を再評価する。
- WebUI 可視化・編集を導入しても PoC 速度が改善しない場合は、提供価値の優先順位を再定義する。
- WebUI が「機能的には編集可能」でも、初見ユーザーの操作完了率が上がらない場合は UX 要件を再定義する。
- AI-Native 機能（JSON Schema 公開・validate CLI）を導入しても、コーディングエージェントの生成精度が実用水準に達しない場合は、提供手段を再評価する。

## 8. 関連ドキュメント

- ユーザー到達状態ゴール: `docs/product/goals.md`
- 到達ステップと実装項目: `docs/product/milestones.md`
