Configuration
Learn about all available configuration options for the LLMify plugin.
Control Panel
You can manage configuration settings through the Control Panel by visiting Settings > LLMify.
Settings
You can define a multi-environment aware config in /config/llmify.php. Settings defined in the config file override control panel settings.
Config file settings will overwrite the settings from the control panel.
isEnabled
Master toggle for Markdown creation. When disabled, no Markdown will be generated or served.
return [
'*' => [
'isEnabled' => true, // default
],
];
autoServeMarkdown
Automatically serve Markdown instead of HTML when the request contains an Accept: text/markdown header.
return [
'*' => [
'autoServeMarkdown' => true, // default
],
];
enableBotDetection
Detect known AI bots (GPTBot, ClaudeBot, ChatGPT-User, etc.) by their user agent and automatically serve Markdown to them. See Auto-Serve Markdown for the full list of detected bots.
return [
'*' => [
'enableBotDetection' => true, // default
],
];
additionalBotUserAgents
Add custom bot user agents to detect in addition to the built-in list.
return [
'*' => [
'additionalBotUserAgents' => [
['userAgent' => 'MyCustomBot'],
['userAgent' => 'AnotherBot'],
],
],
];
autoInjectDiscoveryTag
Inject a <link rel="alternate" type="text/markdown"> discovery tag into the HTML head for every page that has Markdown available.
return [
'*' => [
'autoInjectDiscoveryTag' => true, // default
],
];
isRealUrlLlm
Whether to use real page URLs or Markdown URLs in the llms.txt file. Recommended to enable together with autoServeMarkdown.
return [
'*' => [
'isRealUrlLlm' => false, // default
],
];
markdownUrlPrefix
URL prefix for individual Markdown pages (e.g. https://example.com/raw/about.md). Leave empty to use {url}.md URLs directly.
return [
'*' => [
'markdownUrlPrefix' => 'raw', // default
],
];
excludeClasses
CSS classes that should be excluded from the Markdown generation. Elements with these classes will be stripped before conversion.
return [
'*' => [
'excludeClasses' => [
['classes' => 'exclude-llmify'], // default
],
],
];
markdownConfig
Configuration passed to the HTML-to-Markdown converter. See the library docs for all available options.
return [
'*' => [
'markdownConfig' => [
'strip_tags' => true,
'header_style' => 'atx',
'remove_nodes' => 'img picture style form button input select option svg script nav noscript video audio source',
], // default
],
];
concurrentRequests
Maximum number of concurrent HTTP requests when batch generating Markdown. Valid range: 1–100.
return [
'*' => [
'concurrentRequests' => 3, // default
],
];
requestTimeout
Maximum number of seconds each request can take during batch generation.
return [
'*' => [
'requestTimeout' => 100, // default
],
];
frontMatterInFullTxt
Whether front matter should be included for each page in llms-full.txt.
return [
'*' => [
'frontMatterInFullTxt' => false, // default
],
];
Multi-Environment Example
A complete example showing environment-specific configuration:
<?php
// config/llmify.php
return [
'*' => [
'isEnabled' => true,
'autoServeMarkdown' => true,
'enableBotDetection' => true,
'autoInjectDiscoveryTag' => true,
'isRealUrlLlm' => true,
'markdownUrlPrefix' => 'raw',
'concurrentRequests' => 5,
'requestTimeout' => 120,
],
'dev' => [
'isEnabled' => false,
],
'production' => [
'concurrentRequests' => 10,
],
];