yao: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか
yao: とは何なのか、どのような問題を解決し、なぜ注目を集めているのか
解決する問題
Yaoは、AIエージェントとWebアプリケーションを構築するための統一されたランタイムを提供します。データベースモデル、REST API、Web UI、AIエージェントフレームワークなど、必要なものすべてを単一の実行可能バイナリにまとめることで、開発プロセスを簡素化し、Node.jsやPythonのような複雑な環境構築の必要性を排除します。
仕組み
Yaoは、すべてのリクエストが「Create Hooks」(前処理)と「Next Hooks」(後処理)を通過する制御されたパイプラインとして動作します。これにより、開発者はAIの動作に対して厳格な境界と制約を定義できます。以下の3つの実行モードをサポートしています:
- LLM Mode: 会話タスクのためにOpenAIやAnthropicなどのプロバイダーのモデルを使用します。
- CLI Agent Mode: コンピュータ操作タスクのために、VNCデスクトップサポートを備えた隔離されたコンテナ内でCLIランナー(Claude Codeなど)を実行します。
- Pure Hook Mode: AIを使用せず、決定論的なロジックとルーティングのためにTypeScriptコードを使用します。
対象者
決定論的なロジック、LLMベースの推論、および隔離された環境での実行(サンドボックス化)の組み合わせを必要とする、AI搭載アプリケーションやエージェントを構築する開発者。
ハイライト
- Single Binary Runtime: TypeScript用の組み込みV8エンジン、データモデル、およびサーバーサイドレンダリングされたUIページを含みます。
- Agent Framework: ネイティブなMCPサポート、マルチエージェント委譲システム、および4つの異なるスコープ(request, session, user, team)を持つメモリAPIを特徴としています。
- Integrated Search: Vector Search、Knowledge Graphs、およびGraphRAGの組み込みサポート。
- Skills Ecosystem: CLIエージェント向けに
SKILL.mdファイルを通じて再利用可能な機能パックを使用することを可能にします。
Sources
- undefinedYaoApp/yao