サービス通信、ディスカバリー、トラフィック管理を実現するRPC・マイクロサービスフレームワーク、Apache DubboのJava実装。
conductor-oss/conductor
マイクロサービス、AIエージェント、適応型ワークフローグラフをオーケストレーションする、複数言語のワーカーに対応したオープンソースの耐障害性実行エンジン。
- スター
- 32,355
- フォーク
- 1,036
- 未解決の Issue
- 274
- 最終コミット
- 17 時間前
これは何?
Conductorは、実行の各ステップを永続化するワークフローエンジンです。そのため、クラッシュ、再起動、ネットワーク障害が発生してもワークフローを継続できます。オーケストレーションはバージョン管理された機械可読なグラフとして保持され、任意の言語で記述されたワーカーがビジネスロジックや副作用を担います。組み込みの制御フローでは、SWITCHによる分岐、DO_WHILEループ、FORK_JOINによる並列処理、サブワークフロー、実行時に解決される動的タスクを利用できます。
AIワークロード向けには、ネイティブなLLMタスク、MCPツールの検索と呼び出し、人による承認ステップ、RAG向けのベクトルワークフローを提供します。実行は一時停止、再開、再起動、再実行、終了でき、組み込みUIでは各タスクの入力、出力、リトライ履歴を確認できます。Netflixで開発され、現在はConductor OSSとしてメンテナンスされており、Java、Python、JavaScript、Go、C#などのSDKが用意されています。
サーバーはJava 21以降で動作し、Dockerを使ってセルフホストできます。複数の永続化バックエンド(Redis、Postgres、MySQL)と検索バックエンド(Elasticsearch、OpenSearch)を設定で選択できます。
主な機能
- 01すべてのタスクを永続化し、クラッシュ、再起動、ネットワーク障害の後もワークフローを再開できます。
- 02SWITCH、DO_WHILE、FORK_JOIN、サブワークフローに対応した宣言的なJSONワークフロー定義。
- 03AIエージェント向けのネイティブなLLMタスク、MCPツール呼び出し、人による承認ステップ。
- 04Java、Python、Go、JavaScript、C#、Ruby、Rustでワーカーを記述できます。
- 05UIまたはAPIから実行を一時停止、再開、再起動、再実行、終了できます。
- 06Redis、Postgres、Elasticsearchなどを含む、設定可能な永続化・検索バックエンド。
ユースケース
- 人による承認を待つために数日かかることもある、長時間実行される業務プロセスのオーケストレーション。
- リトライ、タイムアウト、補償処理を用いて、多数のマイクロサービス間の呼び出しを調整する。
- LLM呼び出しやツール実行を繰り返し、その履歴を確認できるAIエージェントを構築する。
- ベクトル検索とLLMタスクを耐障害性のあるワークフローとして組み合わせたRAGパイプラインを実行する。
クイックスタート
- 1
npm で Conductor CLI をインストールする
npm install -g @conductor-oss/conductor-cli - 2
Conductor サーバーを起動する(UI は localhost:8080)
conductor server start
使う前に知っておきたいこと
- CLI の実行前に Java 21 以降と Node.js をインストールする必要があります。
- デフォルトのバックエンドを実行するには、本番環境で Redis や Elasticsearch などの永続化ストアと検索ストアを設定する必要があります。
トピック
よくある質問
- conductor とは?
- マイクロサービス、AIエージェント、適応型ワークフローグラフをオーケストレーションする、複数言語のワーカーに対応したオープンソースの耐障害性実行エンジン。 Conductorは、実行の各ステップを永続化するワークフローエンジンです。そのため、クラッシュ、再起動、ネットワーク障害が発生してもワークフローを継続できます。オーケストレーションはバージョン管理された機械可読なグラフとして保持され、任意の言語で記述されたワーカーがビジネスロジックや副作用を担います。組み込みの制御フローでは、SWITCHによる分岐、DO_WHILEループ、FORK_JOINによる並列処理、サブワークフロー、実行時に解決される動的タスクを利用できます。
- conductor は無料で使えますか?ライセンスは?
- conductor は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- conductor は今もメンテナンスされていますか?
- 活発にメンテナンス中。conductor の最終コミットは 2026年10月20日 です。
- conductor は何に使えますか?
- 人による承認を待つために数日かかることもある、長時間実行される業務プロセスのオーケストレーション。 リトライ、タイムアウト、補償処理を用いて、多数のマイクロサービス間の呼び出しを調整する。 LLM呼び出しやツール実行を繰り返し、その履歴を確認できるAIエージェントを構築する。 ベクトル検索とLLMタスクを耐障害性のあるワークフローとして組み合わせたRAGパイプラインを実行する。
- conductor のインストール方法は?
- npm で Conductor CLI をインストールする: npm install -g @conductor-oss/conductor-cli Conductor サーバーを起動する(UI は localhost:8080): conductor server start
- conductor はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/conductor-oss/conductor
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
A Java rule and component orchestration engine that defines business flows in a DSL, with hot rule refresh and AI Agent nodes.
バックグラウンドタスク、AIエージェント、永続ワークフローをオーケストレーションするエンジン。Python、TypeScript、Go、RubyのSDKを備え、永続化レイヤーにPostgresを採用。
C#、Java、JavaScript、Python、Rust、TypeScriptの実践例を通じてModel Context Protocol(MCP)を学べる、無料のオープンソース入門カリキュラム。
TypeScriptまたはJavaScriptで、効率的かつスケーラブルなサーバーサイドアプリケーションを構築するための、進化型Node.jsフレームワークです。
Annotation-driven Java admin framework: annotate a JPA entity with @Erupt and get a generated admin UI, RBAC, audit logs and REST APIs at runtime.