compose-agents
SequentialAgent、ParallelAgent、LoopAgentを使用して、マルチエージェントシステムを構築できます。エージェントパイプライン、並列ワークフロー、反復ループの構築時に利用します。
description の原文を見る
Compose multi-agent systems with SequentialAgent, ParallelAgent, and LoopAgent. Use when building agent pipelines, parallel workflows, or iterative loops.
SKILL.md 本文
マルチエージェントシステムの構成
エージェントを組み合わせるための3つのオーケストレーション基本要素。
SequentialAgent — エージェントを順序通りに実行
各エージェントの最終回答が次のエージェントの入力になります。
from orxhestra import SequentialAgent, LlmAgent
researcher = LlmAgent(name="researcher", model=model, instructions="Research the topic.")
writer = LlmAgent(name="writer", model=model, instructions="Write an article from the research.")
pipeline = SequentialAgent(
name="pipeline",
agents=[researcher, writer],
)
async for event in pipeline.astream("AI trends 2025"):
if event.is_final_response():
print(event.text)
ParallelAgent — エージェントを同時に実行
すべてのエージェントが同時に実行されます。各エージェントはブランチ分離を持つ派生コンテキストを取得します。
from orxhestra import ParallelAgent, LlmAgent
analyst_a = LlmAgent(name="market", model=model, instructions="Analyze market trends.")
analyst_b = LlmAgent(name="tech", model=model, instructions="Analyze tech trends.")
parallel = ParallelAgent(
name="analysis",
agents=[analyst_a, analyst_b],
)
LoopAgent — 完了まで繰り返す
escalate=True(exit_loop_tool経由)またはmax_iterationsに達するまでサブエージェントを繰り返します。
from orxhestra import LoopAgent, LlmAgent
from orxhestra.tools import exit_loop_tool
writer = LlmAgent(name="writer", model=model, instructions="Write a draft.")
reviewer = LlmAgent(
name="reviewer",
model=model,
instructions="Review the draft. Call exit_loop if approved.",
tools=[exit_loop_tool],
)
loop = LoopAgent(
name="review_loop",
agents=[writer, reviewer],
max_iterations=5,
)
カスタム停止条件
def quality_check(ctx, last_event):
score = ctx.state.get("quality_score", 0)
return score >= 8 # stop if quality is high
loop = LoopAgent(
name="quality_loop",
agents=[writer, reviewer],
should_continue=quality_check, # return True to continue
max_iterations=10,
)
パターンの組み合わせ
# Research in parallel, then write sequentially, then review in a loop
research = ParallelAgent(name="research", agents=[market_analyst, tech_analyst])
write = LlmAgent(name="writer", model=model, instructions="Synthesize research into article.")
review_loop = LoopAgent(name="review", agents=[editor, fact_checker], max_iterations=3)
full_pipeline = SequentialAgent(
name="content_pipeline",
agents=[research, write, review_loop],
)
トランスファールーティング — エージェントハンドオフ
from orxhestra import LlmAgent
from orxhestra.tools import make_transfer_tool
sales = LlmAgent(name="sales", model=model, description="Handles orders.", instructions="...")
support = LlmAgent(name="support", model=model, description="Technical help.", instructions="...")
triage = LlmAgent(
name="triage",
model=model,
instructions="Route the user to the right specialist.",
tools=[make_transfer_tool([sales, support])],
)
triage.register_sub_agent(sales)
triage.register_sub_agent(support)
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- NicolaiLassen
- ライセンス
- Apache-2.0
- 最終更新
- 2026/5/10
Source: https://github.com/NicolaiLassen/orxhestra / ライセンス: Apache-2.0
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。