You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
llms-full.txt is 1.6 MB+ — a complete dump of all documentation across 14+ packages. For agents working on a single DSL (the common case), this is context dilution: loading OWL/SHACL internals when working on a control-systems problem wastes tokens and increases hallucination risk.
Generate per-package segmented files alongside the existing full dump.
Proposed artifacts
File
Contents
Approximate size
site/llms.txt
Index (exists)
~10 KB
site/llms-full.txt
Everything (exists)
~1.6 MB
site/llms-framework.txt
Framework reference + architecture
~100 KB
site/llms-stockflow.txt
Stock-flow DSL guide + reference
~60 KB
site/llms-control.txt
Control DSL guide + reference
~60 KB
site/llms-business.txt
Business DSL guide + reference
~80 KB
site/llms-software.txt
Software DSL guide + reference
~80 KB
site/llms-games.txt
Games DSL guide + reference
~80 KB
site/llms-sim.txt
Simulation (discrete + continuous) + analysis
~80 KB
Each segmented file includes:
The framework overview prelude (shared — every segment needs the composition algebra basics)
Only the sections from mkdocs.yml nav relevant to that package
Option A: mkdocs-llmstxt plugin sections filter
Check if the llmstxt plugin supports multiple output files or section filters. If so, configure in mkdocs.yml directly.
Option B: Post-build script
A Python script in scripts/ that reads site/llms-full.txt, splits by heading markers (which correspond to package sections), and writes per-package files. Wire into mkdocs build as a post-build hook or Makefile target.
Option C: Multiple llmstxt plugin instances
If the plugin supports it, declare one instance per package with different section lists. Likely not supported — check docs.
Acceptance criteria
At least the 7 segmented files listed above are generated during mkdocs build
Each segmented file includes the shared framework prelude
site/llms.txt index links to all segmented files (not just full)
Generation is automated (part of build, not manual)
No hand-maintained files — all derived from MkDocs source
Summary
llms-full.txtis 1.6 MB+ — a complete dump of all documentation across 14+ packages. For agents working on a single DSL (the common case), this is context dilution: loading OWL/SHACL internals when working on a control-systems problem wastes tokens and increases hallucination risk.Generate per-package segmented files alongside the existing full dump.
Proposed artifacts
site/llms.txtsite/llms-full.txtsite/llms-framework.txtsite/llms-stockflow.txtsite/llms-control.txtsite/llms-business.txtsite/llms-software.txtsite/llms-games.txtsite/llms-sim.txtEach segmented file includes:
mkdocs.ymlnav relevant to that packageImplementation options
Option A: mkdocs-llmstxt plugin sections filter
Check if the
llmstxtplugin supports multiple output files or section filters. If so, configure inmkdocs.ymldirectly.Option B: Post-build script
A Python script in
scripts/that readssite/llms-full.txt, splits by heading markers (which correspond to package sections), and writes per-package files. Wire intomkdocs buildas a post-build hook or Makefile target.Option C: Multiple llmstxt plugin instances
If the plugin supports it, declare one instance per package with different section lists. Likely not supported — check docs.
Acceptance criteria
mkdocs buildsite/llms.txtindex links to all segmented files (not just full)Dependencies