> 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/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/remote-repositories-overview.md).

# Remote Repositories Overview

Cortex XSOAR supports the ability to work with separate repositories for a development environment and main account. This enables you to develop and test all of your content in one location, and when it is ready, you push the content to the main account. In your main account, you pull the content as you would all other content updates, and push content to your tenants using [selective propagation](/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/manage-content.md).

In addition, Cortex XSOAR content updates are only delivered to the development environment. This enables you to determine which updates you want to push to the main account.

{% hint style="info" %}

### Note

Working with remote repositories is Git-based. Any service that supports this protocol can be used, for example, GitHub, GitLab, Bitbucket, etc. In addition, on-premise repositories are also supported.
{% endhint %}

**How it Works**

In the main account, the content appears as a content update, just like any other, and you pull the content from the remote repository into your working branch.

To work with remote repositories, you must have two separate Cortex XSOAR environments on two separate machines. The development environment is used to write the following content:

* Automations
* Playbooks
* Integrations
* Classifiers
* Mappers
* Lists

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><h3>Note</h3><p>Lists created in the development environment and pushed to production cannot be edited in the production environment. Lists created in the production environment can be edited in the production environment.</p></div>
* Content packs

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><h3>Note</h3><p>When pushing a content pack to the remote repository, you should push all of its content, listed in the Local Changes window, for the content pack to work properly.</p></div>
* Incident fields
* Indicator fields
* Evidence fields
* Incident layouts
* Incident types
* Pre-processing rules

  <div data-gb-custom-block data-tag="hint" data-style="info" class="hint hint-info"><h3>Note</h3><p>If you have more than two pre-processing rules in your Local Changes queue, you must push all of those changes to the remote repository.</p></div>
* Indicator types
* Reports
* Dashboards
* Widgets

It is not possible to edit these elements on the main account.

You need to configure the remote repository feature both on your [development machine](/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/configure-a-remote-repository-on-a-development-machine.md) and the [main account](/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/configure-a-remote-repository-on-the-main-account.md). After you develop your content, if you want it to be available as part of a content update for the production environment, you must [push](/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/edit-and-push-content-to-a-remote-repository.md) the changes to the remote repository. If you experience issues, learn how to [troubleshoot remote repositories](/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/troubleshoot-a-remote-repository-configuration.md).


---

# 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/cortex-xsoar-6-multi-tenant-guides/6.13/configure-multi-tenant/remote-repositories-for-multi-tenant-deployments/remote-repositories-overview.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.
