> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 配置

> 调整 difyctl 的安装方式，设置它读取的环境变量，修改超时时长，并查看它保存的文件

> 本文档由 AI 自动翻译。如有任何不准确之处，请参考 [英文原版](/en/cli/reference/configuration.md)。

## 安装选项

运行 [安装命令](/zh/cli/get-started.md#安装) 时设置以下变量：

| 变量 | 说明 | 示例 |
| :- | :- | :- |
| `DIFY_VERSION` | 要安装的 `difyctl` 所对应的 Dify 版本。设为服务器的版本号。 默认为最新的 Dify 版本。 | `1.18.0` |
| `DIFYCTL_PREFIX` | 安装目录，二进制文件会放在 `<prefix>/bin` 下。如果该目录不在 `PATH` 中，将它加入 `PATH`。 macOS 和 Linux 上默认为 `~/.local`，Windows 上默认为 `%LOCALAPPDATA%\difyctl`。 | `$HOME/tools` |
| `GITHUB_TOKEN` 或 `GH_TOKEN` | GitHub 令牌，无需任何权限范围。如果安装程序因触及 GitHub 的请求上限（每小时 60 次，同一 IP 地址下的所有用户共用）而中止，设置此变量。 | |

例如，把 Dify 1.18.0 对应的构建版本安装到 `~/tools/bin`：

```bash macOS / Linux theme={null}
curl -fsSL https://raw.githubusercontent.com/langgenius/dify/main/cli/scripts/install-cli.sh | DIFY_VERSION=1.18.0 DIFYCTL_PREFIX=$HOME/tools sh
```

```powershell Windows theme={null}
# 在当前 PowerShell 会话中持续有效
$env:DIFY_VERSION = "1.18.0"
$env:DIFYCTL_PREFIX = "$HOME\tools"
irm https://raw.githubusercontent.com/langgenius/dify/main/cli/scripts/install.ps1 | iex
```

## 环境变量

在运行 `difyctl` 的 Shell 或任务中设置以下变量：

| 变量 | 说明 |
| :- | :- |
| `DIFY_CONFIG_DIR` | 指定其他配置目录，代替 [默认目录](/zh/cli/manage-sign-in.md#令牌的存储位置)。要 [同时登录多台服务器](/zh/cli/manage-sign-in.md#使用多个服务器或账户)，可用它给每台服务器分配单独的目录。 |
| `DIFY_OUTPUT` | 错误和 `help` 输出的格式，可设为 `json` 或 `text`。不设置时，它们在终端中显示为文本，输出到文件或交给其他程序时则为 JSON。结果一律是 JSON。在脚本中设置 `DIFY_OUTPUT=json`，这样无论脚本在哪里运行，错误都以 JSON 输出。 [`--json`](/zh/cli/reference/results-errors-and-exit-codes#输出去向) 的优先级高于 `DIFY_OUTPUT=text`。 |
| `DIFY_SERVER` | 命令要发往的服务器地址，例如 `https://dify.example.com`。只在同时设置了 `DIFY_TOKEN` 时生效。 |
| `DIFY_TOKEN` | 通过 `difyctl` 登录获得的令牌。与 `DIFY_SERVER` 和 `DIFY_WORKSPACE_ID` 一起设置后，命令会改用这些变量，不再使用你已保存的登录信息。设置了 `DIFY_TOKEN` 时，`login` 和 `logout` 会拒绝运行。 未设置 `DIFY_SERVER` 时，命令会失败并返回 [退出码 2](/zh/cli/reference/results-errors-and-exit-codes.md#退出码)。未设置 `DIFY_WORKSPACE_ID` 时，作用于工作空间的命令会失败。 如何为任务获取令牌并妥善保管，详见 [在 CI 和自动化中使用 `difyctl`](/zh/cli/scripts-and-ci)。 |
| `DIFY_WORKSPACE_ID` | 工作空间 ID，供 `get console_app` 等作用于工作空间的命令使用。在 `difyctl get workspace` 的结果中，它显示为 `id`。设置 `DIFY_TOKEN` 时，务必一并设置它：通过变量登录时，没有已保存的工作空间可用。 `--workspace-id` 的优先级高于此变量，此变量又高于已保存登录信息中的工作空间。 |
| `HTTP_PROXY`、`HTTPS_PROXY`、`NO_PROXY` | 用于转发 `difyctl` 请求的代理：服务器为 `https://` 地址时用 `HTTPS_PROXY`，为 `http://` 地址时用 `HTTP_PROXY`。小写的 `http_proxy` 和 `https_proxy` 同样有效。 要让某台服务器（如内网服务器）绕过代理，将它的主机名写入 `NO_PROXY`（或 `no_proxy`）。 |
| `NO_COLOR` | 设为任意值（如 `1`），即可关闭终端文本的颜色。 |

## 设置

`http.timeout` 决定 `difyctl` 等待服务器开始响应的时长，单位为毫秒，超时后命令即失败。默认值为 `30000`。

如果命令因服务器或网络较慢而超时，或者在发送大文件时超时，就调高此值。它只限制等待服务器首次响应的时间，不限制命令的总耗时。因此，即使应用要运行好几分钟，无论是否使用 `--stream`，都不必调高此值。

例如，要改为 60 秒：

```bash theme={null}
difyctl set config http.timeout 60000
```

要恢复默认值，运行 `difyctl unset config http.timeout`。要查看各项设置以及保存它们的文件，运行 `difyctl get config`。

## difyctl 保存的文件

`difyctl` 在 [配置目录](/zh/cli/manage-sign-in.md#令牌的存储位置) 中保存以下文件：

| 文件 | 内容 |
| :- | :- |
| `login.yml` | 已保存的登录信息：服务器、账户和工作空间，以及令牌的存放位置。 |
| `login-pending.yml` | 用 `login --no-wait` 发起、尚未由 `login --resume` 完成的登录。 |
| `tokens.yml` | 令牌不存入操作系统的凭据存储、改为 [写入文件](/zh/cli/manage-sign-in.md#令牌的存储位置) 时，就保存在这里。 |
| `config.yml` | 你的设置。首次修改某项设置后才会有这个文件。 |
| `catalog/<server>.json` | 已保存的命令列表，你使用过的每台服务器各一份。可放心删除，运行下一条命令时会重新获取。 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.