IVYXON
記事一覧に戻る
ワークフロー上級🧪 Recipe

Difyのワークフロー自動生成、Claudeに丸投げでいいの?

Claude CodeでDifyワークフローのYAML生成からデプロイ、評価、修正まで自動化する裏技を紹介。

2026年6月1日5分で読めます

Difyのワークフロー開発、手作業でYAML書くの面倒だよね? 挙句、動作確認して修正、また修正……って、このループをClaude Codeにぶん投げちゃえばいいよ。

一番雑な投げ方

Difyワークフローの自動生成からインポート、評価、修正まで、Claude Codeに一気通貫でやらせるなら、まずこんな感じで投げてみて。

DifyワークフローのYAML生成から自動インポート、動作検証、修正ループまで含むパイプラインを構築して。

これだけで、Difyの自動化パイプラインの基本的な構成をClaude Codeが提案してくれるはずだよ。

もうちょい具体的に投げるパターン

もうちょっと具体的に要望を伝えると、さらにドンピシャな提案が返ってくるよ。

モデルを使い分けるパターン

YAML生成には賢いSonnet、評価には速いHaikuを使いたい、なんてときはこう伝えてみて。

DifyワークフローのYAML生成パイプラインを構築して。YAML生成はclaude-sonnet-4-6、動作検証後の評価と修正はclaude-haiku-4-5-20251001を使って。

ユースケースを具体的に伝えるパターン

「特定のデモを作りたいんだけど」ってときは、どんなデモか伝えてみるのが一番。例えば、製造業の異常検知のデモを作りたいなら、こんな感じ。

製造業の「設備ログ異常検知」デモ用のDifyワークフローYAMLを自動生成し、Dify APIでインポート、動作検証、修正ループまで一気通貫でできるPythonスクリプトを書いて。

既存のアーキテクチャを前提にするパターン

うちの環境はFastAPIとかDocker Composeで動いてるんだよね、って場合は、その情報を先に伝えておくと、より整合性の取れたコードが出てくるよ。

FastAPIとPython Orchestrator、Docker ComposeベースでDifyワークフローのYAML生成→自動インポート→評価→修正ループを自動化する仕組みを考えて。Difyは1.13.3のSelf-hosted版を使ってる。

実践例 / 実録

うちでは、営業メンバーがSlackから「こんなデモ作って」ってユースケースを投げたら、Claude CodeがDifyワークフローのYAMLを自動生成して、Difyにインポート、動作検証、修正まで自動でやって、翌朝には動くデモURLが渡せる仕組みを動かしてるんだ。

例えば、「製造業の異常検知、工場内の設備ログから異常を検知するDifyワークフローのデモ作って」って投げたら、Claude Codeはこんな感じで動いたよ。

  1. YAML生成: まず claude-sonnet-4-6 を使って、設備ログの入力、異常検知のロジック(LLMノードやCodeノードを組み合わせたもの)、結果の出力を含むDifyワークフローのYAMLをゴリゴリ生成した。
  2. Dify自動インポート: 生成されたYAMLは、Pythonスクリプト経由でDifyのConsole API(/apps/imports エンドポイント)に自動でPOST。すると、DifyのAppコンソールに新しいワークフローがポンと現れた。
  3. 動作検証: Difyの公式Workflow APIを使って、生成されたワークフローがちゃんと動くか、想定通りの出力をするかをテストした。
  4. 結果評価と修正: ここで claude-haiku-4-5-20251001 の出番。テスト結果と元のユースケースを比較して、ワークフローのどこを直すべきかをフィードバック。例えば、「異常検知の閾値設定が甘い」とか「ログのパースがうまくいってない」みたいな具体的な指示が出てきた。
  5. 修正ループ: そのフィードバックを受けて、Claude CodeはすぐにYAMLを修正。またインポート、テスト、評価を繰り返して、最終的にE2Eでパスするワークフローが完成したんだ。

この一連の流れが自動で回るおかげで、Difyのデモ作成にかかる時間が劇的に減ったよ。特に製造業の帳票OCRとか、ナレッジQ&Aみたいな定番ユースケースは、ほぼノータイムでデモが量産できるようになったのはデカい。

つまずきポイント

この仕組みを作る上で、いくつかハマったところがあるから、みんなも気をつけてね。

Dify Console APIの認証

Difyのワークフローを自動インポートするときに使うConsole API(/apps/imports)は、公式ドキュメントで推奨されてるAPIキー認証じゃなくて、Cookie認証が必要だったんだ。これはちょっとイレギュラーだから、PythonのhttpxとかでHTTPリクエストを組むときは、ブラウザでログインした後のCookieをいい感じに取得して使う必要があるよ。最初はAPIキーで動かなくて焦った。

LLMモデルの使い分け

YAML生成に使うClaude APIのモデルと、Difyワークフロー内のLLMノードで使うモデルは、別々に設定しないといけないよ。うちの環境だと、YAML生成はSonnet、評価はHaiku、だけど、Difyワークフロー内のLLMノードは DIFY_{ENV}_DEFAULT_NODE_MODEL で設定する別のモデル(例: gpt-4ogemini-2.5-flash)を使ってたから、ごっちゃにならないように注意が必要だよ。.env ファイルでしっかり分けて管理しないと、意図しないモデルが動いちゃうからね。