llms.txt and llms-full.txt
The docs site generates three machine-readable digests at build time
via the starlight-llms-txt
plugin. All three follow the llmstxt.org
proposal.
The three URLs
| URL | Format | Use for |
|---|---|---|
/llms.txt | Manifest of pages + short descriptions | Agent picks which pages to fetch on demand |
/llms-full.txt | All EN docs concatenated as markdown | One-shot ingestion of the whole corpus |
/llms-small.txt | Filtered subset (core concepts only) | Small-context models (≤ 32k) |
When to use which
Pull llms-full.txt into the model’s prompt or system prompt at
the start of the session. Works for Opus, GPT-5, Gemini 2.5 — any
model with ≥ 128k context.
curl -s https://docs.namidb.com/llms-full.txt > namidb-context.md# Then feed namidb-context.md into your prompt / system messagePull llms.txt to get the page manifest, then have the agent
fetch individual .md URLs on demand (every page also serves raw
markdown at the same URL with .md appended).
curl -s https://docs.namidb.com/llms.txt# Inspect the page list, then for any page e.g.:curl -s https://docs.namidb.com/en/cypher/write-queries.mdUse llms-small.txt when the model has ≤ 32k context. It keeps
the conceptual core (the bucket, snapshots, namespaces, Cypher
subset, SDKs) and drops the deep RFCs and operational reference.
curl -s https://docs.namidb.com/llms-small.txt | wc -w# roughly ~12k wordsWhat’s in llms-full.txt
The English locale, organized by section:
- Get started (5 pages)
- Concepts (6 pages)
- Cypher reference (5 pages)
- SDK reference (4 pages: Python, Rust, CLI, HTTP)
- Operations (12 pages: config, URI grammar, 6 storage backends, self-host, observability, backup, tuning)
- Cloud (3 pages)
- Internals (RFCs) (17 RFCs)
- Community (4 pages)
- Changelog
The Spanish locale is excluded from the LLM digest by design — having both locales in one corpus just dilutes the signal for agents that don’t speak Spanish anyway. The Spanish HTML site stays fully browsable.
Provider-specific ingestion notes
Claude Code
If you’re using Claude Code in a repo that touches NamiDB, install
the Claude Code skill instead — it’s
a tighter, in-context summary tuned for IDE workflows. Use
llms-full.txt only when the skill isn’t installed or you’re working
with a different LLM front-end.
Anthropic API directly
import anthropic, urllib.request
namidb_context = urllib.request.urlopen( "https://docs.namidb.com/llms-full.txt").read().decode()
client = anthropic.Anthropic()resp = client.messages.create( model="claude-opus-4-7", max_tokens=2048, system=[ { "type": "text", "text": namidb_context, "cache_control": {"type": "ephemeral"}, } ], messages=[{"role": "user", "content": "Write a Cypher query that …"}],)The cache_control block enables prompt caching so subsequent calls
in the same session don’t re-pay the ingestion cost.
Cursor / Cody / Continue
Most editor-embedded agents support a “rules” or “context” file. See
Cursor, Codex, AGENTS.md for
drop-in templates that reference llms-full.txt.
Codex (OpenAI)
from openai import OpenAIimport urllib.request
namidb_context = urllib.request.urlopen( "https://docs.namidb.com/llms-full.txt").read().decode()
client = OpenAI()resp = client.responses.create( model="gpt-5", instructions=f"You have full NamiDB documentation in context:\n\n{namidb_context}", input="Write a Cypher query that …",)How it’s built
import starlightLlmsTxt from 'starlight-llms-txt';
starlight({ plugins: [ starlightLlmsTxt({ projectName: 'NamiDB', description: 'Cloud-native graph database…', exclude: ['es/**'], customSets: [ { label: 'Cypher reference', paths: ['en/cypher/**'] }, // … ], }), ],})Re-runs on every pnpm build and on every Vercel push. Always
matches the live site.
See also
- Overview — why we ship all this
- Claude Code skill — the recommended path for Claude Code users
- llmstxt.org — the canonical spec