このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。
コマンドの検索
作業内容を短い言葉でhelp に伝えると、一致するコマンドが一覧表示されます。たとえば、アプリを公開するコマンドを探すには、次のように実行します:
difyctl help を引数なしで実行します。get や run など、コマンドの先頭に来る語が一覧表示されます。そのうちの 1 つを付けて実行すると、その語で始まるコマンドがすべて表示されます:
help を実行し、受け取るフィールド(渡す値)を確認します:
--help または -h を付けても確認できます。
コマンドの実行
フラグによる値の指定
必要なフィールドごとに、対応するフラグに続けて値を指定します。コマンドのヘルプには、各フラグの型、既定値、必須かどうかが表示されます。たとえば、run console_app workflow のヘルプの一部は次のとおりです:
difyctl get console_app の一覧にあるアプリ ID を次のように指定します:
-
boolean型のフィールドでは、フラグだけを指定すると true、=falseを付けると false になります。たとえば、run console_app chatの--auto-generate-name=falseのように指定します。 -
string[]などのリスト型のフィールドでは、値ごとにフラグを繰り返し指定します。たとえば、install pluginの--identifiers a --identifiers bのように指定します。 -
型が
json、object、mapのフィールドでは、JSON テキストをフラグの値として渡します。たとえば、上のヘルプにある--inputsの場合は次のようになります:
--inputs @inputs.json のように、@ に続けてファイルのパスを指定します。stdin から読み込むには、--inputs @- と指定します。
string 型のフィールドでは、@ を付けてもファイルは読み込まれないので注意してください。--yaml-content @app.yml と指定すると、ファイルの内容ではなく、@app.yml という文字列がそのまま送信されます。ファイルの内容を送るには、--yaml-content "$(cat app.yml)" のようにシェルでファイルを読み込みます。
JSON によるリクエストの一括指定
リクエストをスクリプトで組み立てる場合や、ファイルに保存しておく場合は、すべてのフィールドを 1 つの JSON オブジェクトにまとめて--input で渡します。--input は単数形で、上で説明した --inputs フィールドとは別のものです。
各フィールドは名前で記述します。名前は、フラグから -- を除き、ハイフンをアンダースコアに置き換えたものです(--app-id ではなく app_id):
--input でも、--input @request.json のようにファイルから、または --input @- で stdin から読み込めます。
フラグは、--input 内の同じフィールドより優先されます。そのため、リクエストをファイルに保存しておき、実行ごとに 1 つの値だけを変えられます。request.json の内容が {"mode": "workflow", "limit": 50, "page": 1} の場合、次のコマンドは Workflow アプリの一覧の 2 ページ目を表示します:
ヒントの活用
結果によってはhints が含まれます。これはサーバーが次に実行するよう提案するコマンドで、サーバーが把握している値はあらかじめ入力されています。ヒントが次に行いたい操作と一致する場合は、自分でコマンドを組み立てずに、そのヒントを実行します。
たとえば、difyctl run console_app chat でチャットアプリが応答すると、結果には次のヒントが含まれます:
op のドットをスペースに置き換えてコマンドにし、input を --input に渡します。その際、各 null を自分の値に置き換えます。このヒントの場合は、difyctl run console_app chat を実行し、会話で次に送るメッセージを query に指定します: