Skip to content

Config reference

This page is the lookup material for merlon.config.json. It gives the feature keys’ defaults and the page that documents each key, then the review thresholds, the schema-only fields and the JSON Schema file. Config essentials covers the minimal config and the paths every command resolves from.

Each feature’s spec defines its config keys and what they do. This table gives their defaults, and Config key map links each spec.

Key Default
compile.links.markBroken true
lint.links.enabled true
lint.links.severity "error"
lint.links.config none
lint.links.target none
lint.codeExtensions []
lint.dataExtensions []
lint.paths.severity "off"
lint.paths.searchRoots []
lint.paths.generated []
lint.paths.vocabulary []
backup.enabled false
backup.dir .caches/backups
backup.ext ""
diagnostics.splitFiles false
diagnostics.dir none
diagnostics.errorsFile none
diagnostics.warningsFile none

This table links the page that documents each key:

Key Documented in
compileOrder, guides[].name, guides[].path, outputDir, outputFile, refs.registryFile, compile.outputFile Minimal config and Path layout
compile.scopeRoot Shared glossary
review.* Review thresholds on this page
configVersion, standardVersion, protocolVersion Minimal config
refs.slugAlgorithm Schema-only fields on this page
source, guides[].source, guides[].splitLevel Consumer migration
compile.preambleSection Project layout
banner, sourceTags, compile.includeBanner, compile.sourceTags Source tags and banner
compile.manifest, compile.sectionsHeading Manifest compile order
compile.title Compile API
compile.hooks, compile.hooksConfig Default compile hooks, and the core Compile hooks index for the hook pipeline
compile.stripAnchors stripAnchors
compile.crossGuideLinks Cross-guide link rewriting
compile.links.*, lint.links.enabled, lint.links.severity, lint.codeExtensions, lint.dataExtensions Built-in link validation
lint.paths.* Path resolution in prose
lint.links.config, lint.links.target, lint.markdownlint.*, vale.* Optional linters
scan.* Documentation coverage scan
standaloneGuides Coverage in check
backup.* and the --backup flags Compile output backup
diagnostics.* and --diagnostics-dir, --errors-file, --warnings-file Check gate and Commands reference

merlon review reads optional thresholds from a top-level review object. Each value is a positive integer, and omitted keys keep their defaults.

{
"review": {
"maxIndexEntries": 12,
"maxShardWords": 2500,
"minDuplicateWords": 25
}
}
Field Default Role
review.maxIndexEntries 12 Most shard links one index group lists before index-size fires
review.maxShardWords 2500 Most prose words one shard holds before long-shard fires
review.minDuplicateWords 25 Fewest words a paragraph needs before duplicate-paragraph compares it across shards

merlon review also honors scan.ignore and scan.root, so paths the coverage scan skips stay out of the review. Sprawl review in Commands reference defines each signal.

Field Notes
refs.slugAlgorithm Informational; only github is implemented

merlon.config.schema.json, a file in the Merlon Docs repository that the npm packages leave out, is the JSON Schema for every key. The sample guides’ config is a longer example. Its paths resolve only from the Merlon Docs repository root, so copy single keys from it.