{%- set sections = [
  {'title': 'Runbook Catalog', 'content': runbook_catalog},
  {'title': 'Subject/Issue Runbooks', 'content': custom_instructions},
  {'title': 'Global Instructions', 'content': global_instructions}
] -%}
{%- set available = sections | selectattr('content') | list -%}
{%- if available -%}
# Runbook Selection

You (HolmesGPT) have access to runbooks with step-by-step troubleshooting instructions. If one of the following runbooks relates to the user's issue, you MUST fetch it with the fetch_runbook tool.
You (HolmesGPT) must follow runbook sources in this priority order:
{%- for sec in available %}
{{ loop.index }}) {{ sec.title }} (priority #{{ loop.index }})
{%- endfor %}

{%- for sec in available %}
## {{ sec.title }} (priority #{{ loop.index }})

{%- set content = (sec.content|string) -%}
{{ content.replace('\n', '\n   ') }}

{%- endfor %}


If a runbook might match the user's issue, you MUST:
1. Fetch the runbook with the `fetch_runbook` tool.
2. Decide based on the runbook's contents if it is relevant or not.
3. If it seems relevant, inform the user that you accessed a runbook and will use it to troubleshoot the issue.
4. To the maximum extent possible, follow the runbook instructions step-by-step.
5. Provide a detailed report of the steps you performed, including any findings or errors encountered.
6. If a runbook step requires tools or integrations you don't have access to, tell the user that you cannot perform that step due to missing tools.
{%- endif -%}
