Communitygithub.com

datallmhub/agentflow4j

Javaで状態を持つマルチエージェントワークフローを構築 — グラフ、リトライ、永続化を備えて

agentflow4j とは?

このスキルは、Java開発者が状態を持つマルチエージェントワークフローを簡単に構築できるようにするためのものです。有向グラフを用いてエージェント間の依存関係や実行順序を定義し、組み込みのリトライ機構と永続化機能により、耐障害性と再開可能性を実現します。主にJavaアプリケーションでの利用を想定しており、エージェントの状態管理やエラーハンドリングを簡素化することで、複雑なマルチエージェントシステムの開発を効率化します。ワークフローはプログラム的に定義でき、実行コンテキストの保存と復元が可能です。

対応~Claude Code~Codex CLI~Cursor
npx skills add datallmhub/agentflow4j

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

agentflow4j は何をしますか?

Javaで状態を持つマルチエージェントワークフローを構築 — グラフ、リトライ、永続化を備えて

このスキルを使用すると、Javaでマルチエージェントワークフローを定義し、実行できます。グラフ構造を使用してエージェント間の依存関係と順序をモデル化し、リトライポリシーと永続化を組み込むことで、耐障害性と再開可能性を実現します。

機能

  • グラフベースのワークフロー: エージェントを有向グラフのノードとして定義し、エッジで依存関係と実行順序を指定します。
  • リトライ機構: エージェントの実行失敗時に自動的にリトライするポリシーを設定できます。
  • 状態の永続化: ワークフローの進行状況(各エージェントの状態、コンテキストデータなど)を保存し、再開できます。
  • Javaネイティブ: Javaの型安全性とパフォーマンスを活用し、既存のJavaコードベースとシームレスに統合します。

クイックスタート

以下は、agentflow4j を使用した基本的な例です。

// ワークフロー定義の例
AgentFlow workflow = AgentFlow.builder()
    .addAgent("AgentA", new MyAgent())
    .addAgent("AgentB", new MyAgent())
    .addEdge("AgentA", "AgentB") // AgentA が完了したら AgentB を実行
    .withRetryPolicy(RetryPolicy.fixedDelay(3, Duration.ofSeconds(2)))
    .withPersistence(new FileSystemPersistence("./workflow-state"))
    .build();

// ワークフローの実行
workflow.execute();

システム要件

  • Java 11 以降
  • Maven または Gradle プロジェクト

インストール

Maven を使用する場合:

<dependency>
    <groupId>com.datallmhub</groupId>
    <artifactId>agentflow4j</artifactId>
    <version>1.0.0</version>
</dependency>

Gradle を使用する場合:

implementation 'com.datallmhub:agentflow4j:1.0.0'

エージェントの定義

Agent インターフェースを実装してカスタムエージェントを作成します。

public class MyAgent implements Agent {
    @Override
    public AgentResult execute(AgentContext context) {
        // エージェントのロジックをここに記述
        return AgentResult.success("Agent completed successfully");
    }
}

ライセンス

MIT

関連スキル