> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/on-premises/support/getting-help.md).

# Getting help

### The Doctor

The Overleaf Toolkit comes with a handy `doctor` script to help with debugging. Run `bin/doctor` and the script will print information about your host environment, your configuration, and the dependencies the Toolkit needs. This output can also help the Overleaf support team diagnose issues for Server Pro installations.

{% hint style="info" %}
Users of the Overleaf Pro can [open an issue on GitHub](https://github.com/ayaka-notes/overleaf/issues).

it is a good idea to include the output of the `bin/doctor` script in your message.
{% endhint %}

### Consulting with the Doctor <a href="#consulting-with-the-doctor" id="consulting-with-the-doctor"></a>

Run the doctor script:

{% code title="Run doctor" %}

```bash
bin/doctor
```

{% endcode %}

You will see output similar to the example below.

<details>

<summary>Example full output</summary>

```
====== Overleaf Doctor ======
- Host Information
    - Linux
    - Output of 'lsb_release -a':
            No LSB modules are available.
            Distributor ID:	Ubuntu
            Description:	Ubuntu 22.04.5 LTS
            Release:	22.04
            Codename:	jammy
- Dependencies
    - bash
        - status: present
        - version info: 5.1.16(1)-release
    - docker
        - status: present
        - version info: Docker version 28.0.4, build b8034c0
    - docker compose
        - status: present
        - version info: Docker Compose version v2.34.0
    - realpath
        - status: present
        - version info: realpath (GNU coreutils) 8.32
    - perl
        - status: present
        - version info: 5.034000
    - awk
        - status: present
        - version info: mawk 1.3.4 20200120
- Docker Daemon
    - status: up
====== Configuration ======
- config/version
    - status: present
    - version: 5.4.0
- config/overleaf.rc
    - status: present
    - values
        - OVERLEAF_DATA_PATH: data/overleaf
        - OVERLEAF_LOG_PATH: data/overleaf/logs
        - SERVER_PRO: true
        - SIBLING_CONTAINERS_ENABLED: true
            - logged in to quay.io: true
        - MONGO_ENABLED: true
        - REDIS_ENABLED: true
- config/variables.env
    - status: present
    - values
        - OVERLEAF_FILESTORE_BACKEND: fs
        - OVERLEAF_HISTORY_BACKEND: fs

====== Warnings ======
- None, all good
====== End ======
```

</details>

### Host Information

The `Host Information` section contains information about the machine running the Toolkit (for example, Linux distribution and release).

<details>

<summary>Example Host Information output</summary>

```
- Host Information
    - Linux
    - Output of 'lsb_release -a':
            No LSB modules are available.
            Distributor ID:	Ubuntu
            Description:	Ubuntu 22.04.5 LTS
            Release:	22.04
            Codename:	jammy
```

</details>

### Dependencies

The `Dependencies` section lists tools required for the Toolkit to work. If a tool is present it will be listed as `status: present` with version info. If missing it will be listed as `status: MISSING!` and a warning will be added to the bottom of the `doctor` output.

<details>

<summary>Example Dependency output (present)</summary>

```
- docker
    - status: present
    - version info: Docker version 28.0.4, build b8034c0
```

</details>

<details>

<summary>Example Dependency output (missing)</summary>

```
- docker
    - status: MISSING!
```

</details>

If any dependencies are missing, the Toolkit will almost certainly not work.

### Configuration

The `Configuration` section contains information about files in the `config/` directory. For `config/overleaf.rc`, the doctor prints some key values. Missing files will be listed as `status: MISSING!` and a warning will be added to the bottom of the `doctor` output.

<details>

<summary>Example Configuration output</summary>

```
====== Configuration ======
- config/version
    - status: present
    - version: 5.4.0
- config/overleaf.rc
    - status: present
    - values
        - OVERLEAF_DATA_PATH: /tmp/overleaf
        - SERVER_PRO: false
        - MONGO_ENABLED: false
        - REDIS_ENABLED: true
- config/variables.env
    - status: MISSING!
```

</details>

Notes from the example above:

* `OVERLEAF_DATA_PATH` set to `/tmp/overleaf` may not be a safe location for important data.
* `MONGO_ENABLED: false` means the Toolkit will not provision its own MongoDB; ensure `MONGO_URL` points to an externally managed MongoDB if needed.
* `config/variables.env` is missing in the example.

### Warnings

The `Warnings` section summarizes problems discovered by the doctor script. If there are no problems, this section will indicate that.

<details>

<summary>Example Warnings output</summary>

```
====== Warnings ======
- configuration file variables.env not found
- rc file, OVERLEAF_DATA_PATH not set
====== End =======
```

</details>


---

# 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://ayakaleaf-pro.ayaka.space/on-premises/support/getting-help.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.
