Skip to main content

このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。

サインインの更新#

サインインの有効期間は 14 日間です(セルフホストのサーバーでは OAUTH_TTL_DAYS で変更できます)。difyctl を使っても延長されません。期限が切れると、サインインし直すまで、サインインを使うすべてのコマンドが auth_expired(終了コード 4)で失敗します。期限は セッション一覧 の expires_at で確認できます。

Info

セルフホストのサーバーでは、ACCESS_TOKEN_EXPIRE_MINUTES と REFRESH_TOKEN_EXPIRE_DAYS を変更しても、difyctl のサインインの有効期間は変わりません。

更新するには、もう一度 login を実行します。login はまずサインアウトし、それから新しいサインインを開始します。新しいサインインに失敗した場合は、成功するまでサインアウトした状態が続きます。

複数のサーバーやアカウントの利用#

1 つの 設定フォルダ に保持できるサインインは 1 つで、新しくサインインすると置き換わります。サーバーを切り替えるには、新しい --server を指定して login を実行します。アカウントを切り替えるには、login を実行し、切り替え先のアカウントで Dify にサインインしたブラウザで承認します。

複数のサーバーやアカウントに同時にサインインしておくには、DIFY_CONFIG_DIR でサインインごとに別のフォルダを指定します。そのサインインを使うコマンドでは、毎回この変数を設定してください:

なお、1 台のマシンから同じサーバーに同じアカウントでサインインする場合、2 つのフォルダに別々のサインインは保持できません。一方のフォルダでサインインすると、もう一方のセッションは終了します。

ワークスペースの切り替え Cloud #

別のワークスペースで作業するには、ワークスペースの一覧からその id を確認し、切り替えます:

切り替えが適用されるのは、この difyctl のサインインだけです。ブラウザで開いている Dify のワークスペースは変わりません。difyctl の現在のワークスペースは、difyctl describe workspace で確認できます。

Note

次の 2 つの場合は、切り替えが上書きされます:

  • サインインし直すと、difyctl はそのサインインを承認したワークスペースに戻ります。
  • DIFY_WORKSPACE_ID が設定されている場合、difyctl はそのワークスペースで動作し、use workspace は失敗します。切り替えるには、この変数の設定を解除してください。

切り替えずに 1 つのコマンドだけを別のワークスペースで実行するには、--workspace-id を追加します:

--app-id を受け取るコマンドは、所属するすべてのワークスペースからアプリを探すため、--workspace-id は不要です。ただし、check console_app dsl と import console_app dsl は例外です。別のワークスペースのアプリには、--workspace-id でそのワークスペースを指定してください。

トークンの保存場所#

difyctl は、トークンを OS のキーチェーンにサービス名 difyctl で保存します。macOS では Keychain、Windows では Credential Manager、Linux では Secret Service です。

次の場合は、代わりに設定フォルダ内の tokens.yml にトークンを書き込みます:

  • --no-keyring を付けてサインインした場合
  • デスクトップのセッションバスがない Linux を使っている場合(DBUS_SESSION_BUS_ADDRESS が未設定)
  • サインイン時にキーチェーンを使用できない場合
Note

tokens.yml は、コンテナイメージ、共有するバックアップ、バージョン管理に含めないでください。

設定フォルダの場所は次のとおりです:

  • macOS:~/.config/difyctl
  • Linux:$XDG_CONFIG_HOME/difyctl。XDG_CONFIG_HOME が未設定の場合は ~/.config/difyctl
  • Windows:%APPDATA%\difyctl

別のフォルダを使うには、DIFY_CONFIG_DIR を設定します。

サインアウト#

Tip

アカウントを切り替える場合は、そのまま login を実行します。login はまず現在のアカウントからサインアウトします。

マシンを使い終えたら、logout を実行します:

logout はサーバー上のセッションを終了し、このマシンからトークンとサインイン情報を削除します。サーバーに接続できない場合も、このマシン上の情報は削除されます。ただし、サーバー上のセッションは、期限が切れるか自分で 終了する まで有効なままです。

セッションの確認と終了#

どこでサインインしているかを確認するには、セッションを一覧表示します:

各セッションには、id、マシンのホスト名を示す device_label、有効期限を示す expires_at が表示されます。

もう手元にないマシンなど、別のマシンのセッションを終了するには、ID を指定して削除します。使用中のマシンのセッションを誤って終了しないよう、device_label で対象を選んでください。

現在使用中のセッションを終了するには、代わりに logout を実行します。ID を指定して削除すると、保存済みのサインイン情報が残ったままになり、次のコマンドが auth_expired で失敗します。