Documentation
¶
Overview ¶
Command docsgen renders the skill-derived guide pages of the documentation site, so those pages are never a second copy of the docs that can drift from the first.
Its one source is the agent skill compiled into the binary (internal/skill/assets) — the prose an AI reads before driving fft, and the best usage documentation the repo has. Its files map one-to-one onto guide pages, and every page docsgen writes says so in its front matter:
source: internal/skill/assets/references/recipes.md
That key is the whole ownership contract. A page carrying one is generated: edit the skill asset, not the page. A page without one — install, auth, the setup guides — is hand-written and docsgen never touches it. The sweep at the end of a run deletes generated pages this run did not write, so renaming a skillPages entry drops its orphan instead of leaving one behind that the no-drift gate cannot see.
Everything it writes is committed, and CI re-runs it and fails on a diff — the same no-drift contract make generate has.
go run ./tools/docsgen -skill internal/skill/assets -out docs/guide