YaoApp/yao

✨ Build AI agents and web apps — with a single binary.

What it solves

Yaoは、AIエージェントとWebアプリケーション構築のための統一されたランタイムを提供します。データベースモデル、REST APIs、Web UI、およびAIエージェントフレームワークを単一の実行可能なバイナリにまとめることで、開発プロセスを簡化化し、Node.jsやPythonのような複雑な環境構築の必要性を排除します。

How it works

Yaoは、制御されたパイプラインとして動作し、すべてのリクエストは "Create Hooks"(前処理)および "Next Hooks"(後処理)を通過します。これにより、開発者はAIの挙動に対して厳格な境界と制約を定義できます。以下の3つの実行モードをサポートしています:

  • LLM Mode: OpenAIやAnthropicなどのプロバイダーのモデルを使用して、対話型タスクを実行します。
  • CLI Agent Mode: VNCデスクトップサポートを備えた隔離されたコンテナ内でCLI runner(Claude Codeなど)を実行し、コンピュータ操作タスクを実行します。
  • Pure Hook Mode: AIを使用せず、TypeScriptコードを使用して決定論的なロジックとルーティングを行います。

Who it’s for

決定論的なロジック、LLMベースの推論、および隔離された環境での実行(サンドボックス)を必要とする、AI駆動型アプリケーションやエージェントを構築する開発者。

Highlights

  • Single Binary Runtime: TypeScript用の内蔵V8 engine、データモデル、およびサーバーサイドレンダリングされたUIページを含みます。
  • nAgent Framework: ネイティブMCPサポート、マルチエージェント委譲システム、および4つの異なるスコープ(request, session, user, team)を持つメモリAPIを提供します。
  • Integrated Search: Vector Search、Knowledge Graphs、およびGraphRAGを内蔵サポートしています。
  • Skills Ecosystem: SKILL.md ファイルを介して、CLIエージェントが再利用可能な機能パッケージを使用することを可能にします。