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

> ## Agent Instructions
> Pages under /latest/ document the current release. Paths that begin with a version number, for example /10.0/, are frozen snapshots of superseded releases kept for reference only — never present their instructions as current. If the reader's version is unknown, answer from /latest/ and say which version the answer describes.
> xorlab is deployed on-premises, hybrid, or as a cloud service, and integrates with either Microsoft 365 or on-premises mail infrastructure. Configuration steps often differ between these. State which deployment and integration mode an instruction applies to instead of presenting one as universal.
> Distinguish inline mode from monitoring mode when describing anything that acts on email. Monitoring mode observes a copy and cannot block or quarantine; inline mode routes mail through xorlab and can.
> Write the product name as lowercase 'xorlab'. Use the documented component names: xorlab Control Center (XCC), xorlab MTA, xorlab Sandbox (DANA), xorlab Natural Language Understanding (NLU). After the first mention, use the short forms XCC, MTA, Sandbox, and NLU. Do not use DANA as a standalone name for the Sandbox, but keep it where it is a literal string in configuration keys, container names, and hostnames.
> Do not invent configuration keys, rule parameters, list names, log properties, or API fields. If a value is not present in this documentation, say that it is not documented rather than guessing.

# Expert Editor

> Access the Expert Editor, the admin tool that gives full access to every xorlab configuration option.

## Accessing Expert Editor

1. Log in to the XCC web interface with the URL address and credentials provided by xorlab.
2. On the main screen, click the tiles icon next to your account name and click the **Admin** icon in the displayed menu.
3. On the resulting **Admin** page, click the **Expert** tile:

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/selecting-expert-settings.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=f2d97ecec3817bd3a070a95dc53b48b2" alt="Selecting the Expert Editor" width="2480" height="1102" data-path="latest/assets/selecting-expert-settings.png" />

   This opens Expert Editor and you can see the folder tree:

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/expert-editor.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=f8cf3d0eae4b2aca1df762fd0475c806" alt="Expert Editor" width="2740" height="1586" data-path="latest/assets/expert-editor.png" />

## Using Expert Editor

You can expand folders to navigate to the desired file or simply search for a file in the **Search** box. When you click the file, its content is displayed in the right pane, ready for editing.

All the changes you make are automatically saved, so you don’t have to worry about it. But these saved changes will not be deployed (in other words, will not have any effect) until you click the blue **Publish** button, describe your changes in the **Publish Changes** dialog, and confirm with **Publish**. And until then, you can quickly discard your edits and revert to the original file by clicking the good old **UNDO** button.

Throughout this documentation, "click **Publish**" refers to this action. Most files are hot-reloaded within about one minute afterward, but some require a component restart on top of publishing, see [How to Activate the Configuration](/latest/activate-configuration).

### Context menu: file/folder operations

Expert Editor is not limited to editing only. Basic file and folder operations are available in the context menu:

1. Hover the mouse cursor over a folder or file icon. The icon will change to a vertical ellipsis (`…`) or a hamburger:

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/hamburger-icon.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=f50e801754ea35698101366ffb08a1da" alt="Hamburger icon for the context menu" width="300" data-path="latest/assets/hamburger-icon.png" />

2. Click it to display the context menu. In the case of a folder, you can rename, delete, or move it, and add a new file/folder inside of it. In the case of a file, you can just rename, delete, or move it.

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/expert-context-menu.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=c81af2503c63c63ec95739ed6f78b8fb" alt="Context menu for a folder" width="300" data-path="latest/assets/expert-context-menu.png" />

3. If you choose to rename or add a folder/file, a dialog box for entering a name appears. When you’re done, click **Rename** or **Create**, respectively. If you choose to move the file, you will be asked to select the target location in the resulting dialog box. Click to select the parent folder and click **Move**.

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/new-folder-file.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=bd4ef04363168a2787e5451d0d79a33d" alt="New Folder name dialog box" width="2524" height="1178" data-path="latest/assets/new-folder-file.png" />

   <img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/move-file-folder.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=b74d74587daf18418cc735bda08a3b09" alt="Move File dialog box" width="2518" height="1384" data-path="latest/assets/move-file-folder.png" />

### Commenting/uncommenting code

Expert Editor supports a common keyboard shortcut for commenting/uncommenting multiple lines of code. Just select the code to comment out or uncomment and press **Ctrl+/** (**Cmd+/** on macOS).

<Note>
  This shortcut works on lines of code only. It will not work if the selected block includes actual comments.
</Note>

### Information on the .vmx.N notation

When you add the suffix `.vmx.<client_id>` to a config file, that file will only be served to the specific MTA identified via `clientID`. This allows to have different config files per MTA. The suffix is supported for all files inside the `activeguard` and `monitored_mta` folder.

The following example shows different prometheus configuration files per MTA used for monitoring. Both MTAs will be served the file `prometheus.properties`, but MTA1 will receive a file named `prometheus.yml` with the content of `prometheus.yml.vmx.1`, whereas MTA2 will receive a file named `prometheus.yml` with the content of `prometheus.yml.vmx.2`.

<img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/monitoring-mta-templates-exmaple.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=bf4f27ecf8c7adaaabd79c07525d9aaa" alt="" width="400" data-path="latest/assets/monitoring-mta-templates-exmaple.png" />

If you are configuring a setup with more than two MTAs, you can duplicate existing config files in the web interface:

<img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/monitoring-mta-duplication-example1.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=cdd8c382e96a734d654661608cd4deb4" alt="" width="350" data-path="latest/assets/monitoring-mta-duplication-example1.png" />

<img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/monitoring-mta-duplication-example2.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=8adbbdd9a5fc059a48cec0cd72b38dfe" alt="" width="350" data-path="latest/assets/monitoring-mta-duplication-example2.png" />

and in the save dialog, increment the filename, e.g. `prometheus.yml.vmx.3`.

<img src="https://mintcdn.com/xorlab/O_O2TUa6eRBR54aI/latest/assets/monitoring-mta-duplication-example-save-dialog.png?fit=max&auto=format&n=O_O2TUa6eRBR54aI&q=85&s=ad47707026b1ebe4e713ad7cde135935" alt="" width="400" data-path="latest/assets/monitoring-mta-duplication-example-save-dialog.png" />
