Skip to content
Select theme

llm.codes

llm.codes - a service that turns script-heavy documentation pages into clean Markdown for AI systems - what it does, how it differs from an llms.txt generator, which sites it accepts and how to self-host it

Author
amantus-ai
Kind
an open-source web service
License
MIT
State
the site works, the code was updated in July 2026
Checked
October 3, 2026

Some documentation sites assemble a page with scripts in the browser. A program that requests such a page with a plain HTTP request gets an empty shell.

Two sides of one problem

The site owner

can fix the cause

  • Serves text in the server-sent HTML
  • Publishes Markdown versions of pages
  • Publishes llms.txt

The documentation reader

works with what exists

  • Cannot change someone else’s site
  • Gets the text through a browser service
  • llm.codes is one such service

If the site is yours, the right move is to serve content without scripts and add Markdown versions: Markdown versions of pages.

  1. Open the service’s site.
  2. Paste the address of a documentation page.
  3. Choose the crawl depth and the page limit.
  4. Get the Markdown: copy or download it.

Settings in the interface:

Setting Values
Crawl depth 0 to 5, 2 by default
Page limit 1 to 2000, 200 by default
Code blocks only drop the text, keep the examples
Filters remove repeats and service lines

Results stay in a cache for up to 30 days: a repeated request for the same page answers at once.

The service does not accept any address, only documentation addresses. The check uses patterns:

  • documentation subdomains: docs.*, developer.*, learn.*;
  • documentation paths: /docs, /guide, /learn;
  • sites of languages and libraries;
  • GitHub Pages.

On top of the patterns there is a short list of exceptions. An address outside the patterns is rejected.

The code is open, and the service can be run independently.

Окно терминала
git clone https://github.com/amantus-ai/llm-codes.git
cd llm-codes
pnpm install
cp .env.local.example .env.local
pnpm run dev

It needs Node.js 24 and pnpm 10. Pages are loaded by one of two providers:

Provider What it needs
Firecrawl, the default a paid FIRECRAWL_API_KEY
Playwright no key; the browser is installed with pnpm exec playwright install chromium
SCRAPE_PROVIDER=playwright

The Redis cache is optional.

  • The service does not create llms.txt. The output is page text, not a site map.
  • Not any site. Only addresses that look like documentation are accepted.
  • There is no public API with keys and terms. The internal endpoint is meant for the service’s own interface.
  • Someone else’s content stays theirs. The rights to documentation text belong to its owner.