Add the starlight-llms-txt plugin so the docs build emits llms.txt, llms-full.txt, and llms-small.txt alongside the regular pages, making the manual queryable by MCP-compatible agents without depending on a third-party indexing service. Also bump js-yaml, nanoid, and sharp in docs/site to clear three high-severity advisories (quadratic YAML omap parsing, a zero-size nanoid loop, and inherited libvips CVEs) flagged by npm audit while touching the same lockfile.
fish-config docs site
Starlight site for the fish-config manual.
Generated, not authored
Everything under src/content/docs/ is generated — do not edit it
directly, changes will be overwritten. The sources are:
docs/manual/**— prose for every section except the functions referencefunctions/*.fishcomment headers — the functions reference (Section 5)
Regenerate from the repo root:
python3 docs/build-manual.py --site
docs/verify-manual.py validates both sources before you build; run it
first if you've touched a header or a manual page.
llms.txt
The starlight-llms-txt
plugin emits llms.txt, llms-full.txt, and llms-small.txt alongside the
built pages — no configuration needed, it just walks the generated content.
Development
cd docs/site
npm install
npm run dev
Deploy
Built and deployed to Cloudflare Pages by the Gitea Actions workflow on
every push to main — there's no manual deploy step.