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

# cdf.toml

> Use the cdf.toml file to configure the Cognite Toolkit CLI with settings for the organization directory, environment, plugins, and modules.

**Expected location:** the current working directory (the directory where you run the Cognite Toolkit.)

Use the `cdf.toml` to configure the Cognite Toolkit CLI. The file is created automatically when you run the `cdf modules init` command.

The `cdf.toml` file is written in the [TOML](https://toml.io/en) format and looks similar to this:

```toml theme={"languages":{"custom":["/_languages/kuiper.json","../_languages/kuiper.json"]}}
[cdf]
default_organization_dir = "my_organization"
default_env = "dev"
file_encoding = "utf-8"
file_upload_timeout_seconds = 120

[plugins]
run = true
pull = true
dump = true

[alpha_flags]
require-kind = true
run-workflow = true

[modules]
version = "0.3.14"
```

## The `cdf` section

The `cdf` section contains these keys:

* `default_organization_dir` (string): specifies the default organization directory to use if the `--organization-dir`/`-o` flag isn't specified.
  The key is used by all commands that require the organization directory.
* `default_env` (string): specifies the default environment to use when the `--env`/`-e` flag isn't specified.
  The key is used by all commands that require the environment.
* `file_encoding` (string, available from version `0.5.14`): specifies the encoding used by the Cognite Toolkit when reading configuration files
  from the `/modules` directory. If not specified, the default depends on the operating system, typically `utf-8`
  on Linux and MacOS, and `cp1252` on Windows. We recommend using `utf-8` to avoid issues with special characters and
  ensure compatibility across different platforms.
* `file_upload_timeout_seconds` (float, available from version `0.7.139`): specifies the timeout in seconds for uploading
  function code when running the `cdf upload` command.  To deploy a Cognite Function, the Cognite Toolkit first uploads a
  file with the function code and then references that file in the function configuration. If the upload exceeds the
  specified timeout, the deployment fails. The default value is `120` seconds.

## The `plugins` section

This section turns plugins on or off. See the [Plugins](/cdf/deploy/cdf_toolkit/guides/plugins/index) for more information.

## The `alpha_flags` section

This section enables alpha features. Alpha features are experimental and may change or be removed in future releases.

## The `modules` section

This section specifies the version of the modules found in the [modules/ directory](/cdf/deploy/cdf_toolkit/api/modules_dir). The Cognite Toolkit uses it to ensure that the CLI matches the modules. It's automatically updated when you run the `cdf modules upgrade` command.
