Skip to content

Add llms.txt support for LLM consumption #647

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

roychri
Copy link

@roychri roychri commented Jan 11, 2025

This is a proposal to support the llms.txt initiative (https://llmstxt.org/) which adds a standardized file for LLMs to consume site information.

This PR adds two files:

  • llms.txt: The actual LLM configuration file
  • changelog-format.txt: A guide for LLMs about the changelog format

This is an initial proposal to gauge interest before investing more time in the implementation. The goal is to make the Keep a Changelog format more accessible to LLMs while maintaining human readability.

Testing:

  • Files are accessible at root level
  • Tested locally using middleman server
  • Confirmed raw file access works as expected

@olivierlacan
Copy link
Owner

Hi @roychri, this is an interesting proposal but we'd have to content with KAC guideline versions and languages. Keep a Changelog is available in many languages through community translations, so we need to be very clear about which version of the guidelines we're referencing.

I don't want to ignore the fact that LLMs are constantly referencing it, but any change we make to separate files that are not specifically the language-versioned like the source Haml files (which like the produced HTML can easily be consumed by LLMs) will require maintenance.

I'm not sure about the changelog-format.txt for similar reasons. Unlike the example CHANGELOG.md from this project, it would have to be kept up-to-date. Potentially in sync with the latest version, or for each new iteration in each language. Or we'd have to punt on language translations, which at this point in the project would be an odd decision.

All this isn't meant to discourage your idea, but I wonder what you think. Thanks again for your thoughts. 😃

@roychri
Copy link
Author

roychri commented Mar 31, 2025

Hi @olivierlacan ,
Thanks for taking the time to consider my PR.

What if we automate this so those files are generated from what is already there and re-generated when things changes?
I am thinking about something that would convert this:
source/en/1.1.0/index.html.haml
to a markdown format to create the file source/changelog-format.txt
This way we do not add something else to maintain.

We could have the main llms.txt reference all languages (always latest version).
But, this is for LLMs, which can talk ANY languages. Not sure it would have value to offer the LLM the same documentation in different languages. It can always read something in English and respond to the user in the user's native language.

If these files were for humans, offering all the languages would make sense. But not for LLMs I think.

Does that make sense and would you prefer something automated?

LMK

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants