> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/demisto-sdk-development-guide/demisto-sdk-guide/demisto-sdk-usage-and-configuration.md).

# Demisto SDK usage and configuration

### Content path

The Demisto SDK  is designed to work with Cortex content, structured similarly to the [official Cortex content repo](https://github.com/demisto/content). We recommend running Demisto SDK commands from the content directory or any of its subfolders. To run Demisto SDK commands from other folders, you can set the `DEMISTO_SDK_CONTENT_PATH` environment variable.

We recommend running all Demisto SDK commands from a folder with a Git repository, or any of its subfolders. To suppress warnings about running commands outside of a content repository folder, set the `DEMISTO_SDK_IGNORE_CONTENT_WARNING` environment variable. If Git is not installed, or if you try to run Demisto SDK commands on a repository that is not a Git repository, the SDK will exit.

### Logs

Log files are generated and stored automatically by default in the user's home directory:

* **Linux / macOS** `$HOME/.demisto-sdk/logs`
* **Windows** `%USERPROFILE%\.demisto-sdk\logs`

The default directory can be overridden by using the `--log-file-path` flag or the `DEMISTO_SDK_LOG_FILE_PATH` environment variable.

### Use the SDK in private repositories

If you are using a private GitHub repository, some SDK functions require an interaction with Git. To use the SDK, set up your GitHub token. [Generate your token on GitHub](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) and then run: **`export DEMISTO_SDK_GITHUB_TOKEN=<token>`**.

For a private repository and an unconfigured `DEMISTO_SDK_GITHUB_TOKEN` environment variable, files will be fetched from the remote branch of the local repo.

### CLI usage

Run SDK commands from the CLI by following this structure: **`demisto-sdk <command_name> <command_arguments>`**. If you are not sure of the available commands, run **`demisto-sdk -h`** to view a full list of available commands and a short description of each command. To view the list of arguments available for a command and their descriptions, run **`demisto-sdk <command_name> -h`**.

### Run using Docker image

You can run the Demisto SDK using a docker image. For more details, see [Run the Demisto SDK in a Docker container](/demisto-sdk-development-guide/demisto-sdk-guide/demisto-sdk-usage-and-configuration/run-the-demisto-sdk-in-a-docker-container.md).

### Version check

demisto-sdk checks against the GitHub repository releases for a new version every time it runs and issues a warning if you are not using the latest version. If you wish to skip this check you can set the environment variable: `DEMISTO_SDK_SKIP_VERSION_CHECK`. For example: `export DEMISTO_SDK_SKIP_VERSION_CHECK=yes`

### Internet connection

An internet connection is required for the following commands to work properly:

* `pre-commit`
* `format`
* `validate`
* `update-release-notes`

The following commands may only work partially without an internet connection:

* `download` - will fail when using the `-fmt, --run-format` argument
* `generate-test-playbook` - cannot upload the test playbook after the generation

When working offline (or in an air-gapped environment), set the `DEMISTO_SDK_OFFLINE_ENV` environment variable to true: `export DEMISTO_SDK_OFFLINE_ENV=TRUE`. When this variable is set, Demisto SDK features requiring an internet connection will not attempt to run, saving time and avoiding errors.

### License

MIT - See [MIT license](https://github.com/demisto/demisto-sdk/blob/master/LICENSE) for more information.

### XSOAR/XSIAM CI/CD

For information regarding CI/CD, see this [article](https://xsoar.pan.dev/docs/reference/packs/content-management).

### Contributions to Demisto SDK

Contributions are welcome and appreciated. For information see [Contribute to Demisto SDK](/demisto-sdk-development-guide/demisto-sdk-guide/contribute-to-demisto-sdk.md). The contribution guide includes information on how to set up your demisto-sdk dev environment. The development environment is connected to the branch you are currently using in the SDK repository.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/demisto-sdk-development-guide/demisto-sdk-guide/demisto-sdk-usage-and-configuration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
