---
title: "Installation"
manual: "LLMs.txt & Markdown for AI"
version: "main"
permalink: "https://docs.typo3.org/permalink/woit/si-llms-txt:installation@main"
source: "Installation/Index.rst"
rendered: "2026-10-16T12:46:27+00:00"
---

<a id="installation-composer"></a>

# Installation {#installation}

> [!IMPORTANT]
> The extension supports **Composer mode only**. It depends on
> [league/html-to-markdown](https://github.com/thephpleague/html-to-markdown),
> which is installed by Composer. Installations without Composer (classic
> mode) are not supported: `llms.txt` would work, the Markdown
> conversion of pages would fail.

## Install the package {#install-the-package}

**In the project root**

```bash
composer require woit/si-llms-txt
vendor/bin/typo3 extension:setup
vendor/bin/typo3 cache:flush
```

The package is available on
[Packagist](https://packagist.org/packages/woit/si-llms-txt).
`extension:setup` adds the page fields and the cache tables
`cache_sillmstxt` and `cache_sillmstxt_tags`.

## Add the site set {#installation-site-set}

The extension only works for sites that depend on its site set. Add it in
**Site Management > Sites**, tab **General**, field
**Sets for this Site**, or directly in the site configuration:

**config/sites/\<identifier>/config.yaml**

```yaml
dependencies:
  - woit/si-llms-txt
```

## Remove a static llms.txt {#installation-static-file}

A file `public/llms.txt` is delivered by the web server before TYPO3 is
called and hides the generated one. Delete it, and make sure no deployment
script creates it again.

## Check the installation {#installation-check}

```bash
curl https://example.org/llms.txt
curl https://example.org/de/llms.txt
curl https://example.org/de/<page-slug>.md
```

All three return status 200. The HTML of a page contains
`<link rel="alternate" type="text/markdown" …>`.
