AI-powered LLMs.txt generation module for Magento 2 and Mage-OS stores. Automatically creates optimized llms.txt files using OpenAI to help AI systems understand your store content.
LLMs.txt is a proposed standard (similar to robots.txt) that helps AI systems like ChatGPT, Claude, and others better understand your website by providing a concise, structured summary of your most important content.
Learn more: llmstxt.org
- π€ AI-Powered Generation - Uses OpenAI to intelligently curate your store content
- β‘ One-Click Generation - Click a button, review, and publish
- βοΈ Fully Editable - Edit AI-generated content or write your own
- πͺ Multi-Store Support - Different content per store view
- π Token Counter - Ensures content stays under recommended limits
- π― Standards Compliant - Follows llmstxt.org specification
composer require mage-os/module-llm-txt
bin/magento module:enable MageOS_LlmTxt
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento cache:flush-
Navigate to: Stores β Configuration β AI β LLMs.txt
-
General Settings
- Enable the module
- Enter your OpenAI API key (get one here)
- Select AI model (GPT-4o Mini recommended for speed and cost)
-
AI-Powered Generation
- Set site name
- Add site description
- Specify up to 10 categories that best represent your store
- Specify up to 10 products that best represent your store
- Specify up to 10 CMS pages that best represent your store
- Click "Generate with AI"
-
Review & Edit
- AI generates curated content from your store data
- Review the generated markdown
- Edit as needed
- Save configuration
-
Verify
- Visit
https://yourdomain.com/llms.txt - Content is served as plain text
- Visit
When you click "Generate with AI":
- Data Collection - Gathers top categories, sample products, and key CMS pages
- AI Analysis - Sends data to OpenAI with optimized prompt
- Content Generation - AI creates concise, well-structured llms.txt
- Review - You can edit the generated content before publishing
# Your Store Name
> Your one-stop shop for quality products and exceptional service
## Shop by Category
- [Electronics](https://example.com/electronics.html): Explore cutting-edge tech and gadgets
- [Clothing](https://example.com/clothing.html): Fashion for every style and occasion
## Featured Products
- [Premium Headphones](https://example.com/headphones.html): Studio-quality sound
- [Organic Cotton T-Shirt](https://example.com/t-shirt.html): Sustainable fashion
## Customer Resources
- [About Us](https://example.com/about): Our story and mission
- [Contact](https://example.com/contact): Get in touch with our teamDon't want to use AI? No problem:
- Enable "Use Manual Content" checkbox
- Write your own llms.txt in markdown format
- Save
- PHP 8.1, 8.2, or 8.3
- Magento 2.4.x / Mage-OS 1.x
- OpenAI API key (for AI generation feature)
- Guzzle HTTP client (included with Magento)
OpenAI API usage is minimal:
- ~$0.001 per generation with GPT-5 Mini
- ~$0.010 per generation with GPT-5.4
- ~$0.001 per generation with GPT-4o Mini
- ~$0.005 per generation with GPT-4o
You only pay when clicking "Generate with AI".
- Custom Router - Intercepts
/llms.txtrequests at sort order 22, only when module is enabled - Custom Page Layout - Minimal layout with empty root container; renders plain text without Magento header/footer
- Store Data Collector - Collects configured categories, products, and CMS pages with meta descriptions using store emulation
- Prompt Builder - Formats collected store data into a structured OpenAI prompt with llms.txt specification constraints
- LLMs.txt Generator - Orchestrates generation: collect β build prompt β call API β append additional content
- OpenAI Client - Sends requests to
https://api.openai.com/v1/responsesvia Guzzle
Unit tests included:
vendor/bin/phpunit app/code/MageOS/LlmTxt/Test/UnitCoverage:
- Config model
- Generator model
- StoreDataCollector
- OpenAI Client
- Router
- Block rendering
MIT License - see LICENSE file for details
Contributions welcome! Please:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request
- Issues: GitHub Issues
- Discussions: GitHub Discussions