openserv-multi-agent-workflows について
openserv-multi-agent-workflows は、OpenServ 上で複数の AI エージェントを連携させるスキルです。段階的または並列のタスクフロー構築向けに、エージェント検索、ワークフローグラフ、依存関係、エッジ設定と実行例を説明します。
主な機能
- 01マーケットプレイスでエージェントを検索・確認
- 02トリガーとタスクを含むワークフローを作成
- 03エッジでタスク間のデータフローを定義
- 04順次、並列、条件分岐に対応
- 05一連のワークフロー例を提供
活用シーン
- 01調査から執筆へ進むパイプラインの構築
- 02タスクを並列実行して結果を統合
- 03レビュー結果に応じた処理の分岐
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ openserv-labs/ skills --skill openserv-multi-agent-workflowsインストール後、Claude Code で/openserv-multi-agent-workflowsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
reference.mdtroubleshooting.mdexamples/blog-pipeline.mdcontent-creation-pipeline.mdcrypto-alpha-pipeline.mdlife-coaching-pipeline.mdpaid-image-pipeline.mdpodcast-production-line.mdpolymarket-intelligence.mdsocial-media-pipeline.mdtokenomics-design-pipeline.mdvideo-content-factory.mdyoutube-to-blog-pipeline.md詳細
OpenServ でのマルチエージェントワークフロー
複数の AI エージェントが協力して複雑なタスクを完了するワークフローを構築します。
リファレンスファイル:
reference.md- ワークフローパターン、宣言的同期、トリガー、モニタリングtroubleshooting.md- よくある問題と解決策examples/- 完全なパイプラインの例(blog、youtube-to-blog など)
クイックスタート
実行可能な完全な例については、examples/ を参照してください。
blog-pipeline.md- シンプルな 2 エージェントワークフロー(調査 → 執筆)content-creation-pipeline.md- 3 エージェントワークフロー(調査 → 執筆 → 画像)life-coaching-pipeline.md- 包括的な入力スキーマを備えた、複雑な 6 エージェントワークフロー
workflows.sync() を使用する推奨パターン:
client.authenticate()で認証しますclient.agents.listMarketplace()でエージェントを検索します- 以下を含めて
client.workflows.create()でワークフローを作成します。- トリガー
- タスク
- エッジ(⚠️ 重要 - トリガーとタスクを接続します)
⚠️ 重要: ワークフローを作成する際は、必ずエッジを定義してください。タスクの dependencies を設定するだけでは不十分です。トリガーとタスク、さらにタスク同士を実際に接続するには、ワークフローのエッジを作成する必要があります。
ワークフロー名と目標
ワークフローを作成する際(workflows.create() または provision() 経由)、次の 2 つのプロパティが重要です。
name(文字列)- これは ERC-8004 のエージェント名になります。洗練され、印象的で、覚えやすい名前にしてください。これはユーザーが目にする公開ブランド名です。変数名ではなく、製品のローンチを意識してください。例:'Instant Blog Machine'、'AI Video Studio'、'Polymarket Intelligence'。goal(文字列、必須)- ワークフローが達成する内容を詳しく説明します。具体的で、十分に詳細な内容にしてください。短すぎたり曖昧だったりする目標では、API 呼び出しが失敗します。ワークフローのエンドツーエンドの目的を説明する文章を少なくとも 1 文記述してください。
基本概念
ワークフロー
ワークフロー(ワークスペース)は、複数のエージェントとそのタスクを格納するコンテナです。
タスクの依存関係
- 各タスクは特定のエージェントに割り当てられます
- タスクは他のタスクに依存できます:
dependencies: [taskId1, taskId2] - タスクは、すべての依存タスクが
doneになったときにのみ開始します - 依存タスクの出力は、依存先のタスクに渡されます
ワークフローグラフ
- ノード:トリガーとタスク
- エッジ:ノード間の接続
- タスク A が完了すると、その出力はエッジを介して依存先のタスクに渡されます
エージェントの検出
// Search marketplace for agents by name/capability (semantic search)
const result = await client.agents.listMarketplace({ search: 'research' })
const agents = result.items // Array of marketplace agents
// Get agent details
const agent = await client.agents.get({ id: 123 })
console.log(agent.capabilities_description)
// Note: client.agents.searchOwned() only searches YOUR OWN agents
// Use listMarketplace() to find public agents for multi-agent workflows
一般的なエージェントの種類:リサーチ(Grok、Perplexity)、コンテンツライター、データ分析、ソーシャルメディア(Nano Banana Pro)、動画・音声クリエイター。
エッジ設計のベストプラクティス
重要: もつれた「スパゲッティ」状のグラフにならないよう、ワークフローのエッジを慎重に設計してください。
適切に設計されたワークフローでは、データの流れが明確で、意図がはっきりしています。よくある間違いは、保守しにくいワークフローにつながります。
悪いパターン - すべてを相互に接続する
┌──────────────────────────────────┐
│ ┌─────────┐ │
│ ┌─────┤ Agent A ├─────┐ │
│ │ └────┬────┘ │ │
│ │ │ │ │
Trigger ─┼─────┼──────────┼──────────┼──────┤
│ │ │ │ │
│ │ ┌────┴────┐ │ │
│ └─────┤ Agent B ├─────┘ │
│ └─────────┘ │
└──────────────────────────────────┘
(Spaghetti - avoid this!)
これにより、次の問題が発生します。
- 実行順序が不明確になる
- デバッグが困難になる
- エージェントが重複または競合する入力を受け取る
- 何が何に依存しているのか理解しにくくなる
良いパターン
シーケンシャルパイプライン:
Trigger → Research → Content → Enhancement → Output
段階的なファンアウト:
┌─ Task A ─┐
Trigger → Research ─┼─ Task B ─┼─→ Combiner → Output
└─ Task C ─┘
条件分岐(v1.1.3+):
┌─[approved]─→ Process
Trigger → Review ──┤
└─[rejected]─→ Reject Handler
分岐には、タスクで outputOptions、エッジで sourcePort を使用します。
クリーンなワークフローのガイドライン
- 通常は直線的な構成が最善です:シンプルなチェーンから始め、本当に必要な場合にのみ複雑さを加えます
- 各タスクには明確な目的が必要です:タスク A がタスク B に接続する理由を説明できない場合は、そのエッジを削除します
- 相互接続を最小限に抑えます:すべてのエージェントを他のすべてのエージェントに接続することは避けます
- ファンアウトは並列処理にのみ使用します:1 つのソースから複数のタスクに分岐するのは問題ありませんが、すべてを相互に接続するのは避けます
- 最後にまとめるタスクは 1 つにします:出力を統合する必要がある場合は、すべての並列分岐に依存する最後のタスクを 1 つだけ設けます
エッジを追加する前に確認すること:
- タスク B は、タスク A の出力を本当に必要としていますか?
- この接続がなくても、タスク B は動作しますか?
- 「念のため」にこのエッジを追加しようとしていませんか?(やめましょう!)
このスキルの更新
このスキルは古くなっている可能性があります。OpenServ チームは定期的に更新をリリースしており、新機能、API の変更、バグ修正は、更新するまでここには反映されません。期待どおりに動作しない場合や、最新情報を確実に把握したい場合は、先にスキルを更新してください。
# Check if updates are available
npx skills check
# Update all installed skills to latest versions
npx skills update
または、OpenServ のスキルを直接再インストールしてください。
npx skills add openserv-labs/skills
関連スキル
- openserv-agent-sdk - 個々のエージェント機能の構築
- openserv-client - プラットフォームクライアント API の完全なリファレンス
- openserv-launch - Base ブロックチェーンでトークンをローンチ
- openserv-ideaboard-api - Ideaboard でアイデアを見つけ、エージェントサービスを公開