llms.txt
What is llms.txt?
llms.txt is an emerging convention that provides a machine-readable index of a project's documentation. It lets Large Language Models (and any tool that works with them) instantly understand a project's purpose, structure, and capabilities โ without crawling dozens of files.
OMNISKILL generates two files:
| File | Purpose | Size |
|---|---|---|
llms.txt |
Concise index โ skill names, agent roles, pipeline chains, bundle contents | ~10โ15 KB |
llms-full.txt |
Complete dump โ every SKILL.md, AGENT.md, SYNAPSE.md, pipeline YAML, bundle YAML, and docs page | ~500 KB โ 3 MB |
What OMNISKILL's llms.txt Contains
Concise Index (llms.txt)
- Header โ framework name, version, repository URL, docs URL, license
- Skills โ all 83 skills with one-line descriptions (from
manifest.yamlorSKILL.md) - Agents โ all 10 agents with roles and descriptions
- Synapses โ cognitive enhancement modules with type and description
- Pipelines โ multi-agent workflows with trigger phrases and step chains
- Bundles โ domain kits with descriptions and skill lists
- Documentation โ links to all docs pages
- Installation โ quick-start instructions
- Links โ repository, docs site, link to
llms-full.txt
Full Dump (llms-full.txt)
Contains the complete text content of every component file in the framework:
README.md(verbatim)omniskill.yaml(the registry)- Every
SKILL.mdfor all registered skills - Every
AGENT.mdfor all registered agents - Every
SYNAPSE.mdfor all registered synapses - Every pipeline YAML file
- Every
bundle.yamlfile - Every documentation
.mdpage
Each section is preceded by a separator (---), an H2 heading, and a > Source: line showing the file path.
How to Generate
CLI Command (recommended)
# Generate both files (default)
omniskill generate llms-txt
# Generate only the concise index
omniskill generate llms-txt --concise
# Generate only the full dump
omniskill generate llms-txt --full
# Write to a custom directory
omniskill generate llms-txt --output ./dist/
# JSON output (for scripting)
omniskill --json generate llms-txt
# Verbose output (shows each component being processed)
omniskill --verbose generate llms-txt
Standalone Script
Works without the omniskill package installed โ only requires Python 3.10+ and PyYAML:
# Generate both files
python scripts/generate-llms-txt.py
# Concise only
python scripts/generate-llms-txt.py --concise
# Full only
python scripts/generate-llms-txt.py --full
# Custom output directory
python scripts/generate-llms-txt.py --output ./dist/
Where It's Deployed
When you push to the master branch, GitHub Actions automatically:
- Sets up Python 3.12
- Installs PyYAML
- Runs
python scripts/generate-llms-txt.py - Deploys both files to the docs site
After deployment, the files are available at:
https://sufficientdaikon.github.io/omniskill/llms.txthttps://sufficientdaikon.github.io/omniskill/llms-full.txt
Validation
You can check whether your local llms.txt files are up to date:
# Via CLI
omniskill validate --check-llms-txt
# Via standalone script
python scripts/validate.py --check-llms-txt
The validator regenerates the files in memory and compares them to the on-disk versions. It reports:
- โ Up to date โ files match
- โ Stale โ files differ from what would be generated now
- โ Not found โ files don't exist yet
The staleness check is warning-only โ it never causes validation failures (exit code 2).