Self-maintaining sections

June 20, 2026 · View on GitHub

Some sections should never be hand-edited. mdsmith marks them with directives and rebuilds the body on mdsmith fix.

<?toc?> rebuilds a heading table of contents. <?catalog?> generates an index — a list, a table, or any row template — from the front matter of files matching a glob. <?include?> splices in another file.

A <?catalog?> directive matches at most 10,000 files. When the glob resolves more than that limit, mdsmith emits a diagnostic and leaves the generated section unchanged rather than consuming unbounded memory.

Generated blocks fight Git merges. mdsmith merge-driver install registers a driver for them. It re-runs the directive and resolves the conflict for you.

See the generating-content guide for directive syntax and options. The progressive disclosure guide turns the same catalogs into an agent-ready docs index.