You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An exhaustive lookup for the mif-docs v0.5.0 plugin: every skill it ships,
every doc-set recipe, and every script in scripts/ with its arguments and exit
behavior. Consult an entry; do not read this end to end.
Genre skills (38)
Each genre ships good-l1.md (L1 floor), good.md (target level), bad.md, and
evals/evals.json.
Skill
Artifact it authors
MIF conceptType
Target level
diataxis-tutorial
Learning-oriented hands-on lesson
procedural
2
diataxis-how-to
Task-oriented recipe
procedural
2
diataxis-reference
Information-oriented lookup of one thing
semantic
3
diataxis-explanation
Understanding-oriented discussion
semantic
3
arc42-arch-doc
arc42 12-section architecture document
semantic
3
c4-model-diagram
C4 model document (Context/Container/Component/Code)
These do not author a finished genre artifact; they supply or check the MIF layer
that every genre rides on, plus the multi-document engine.
Skill
Role
mif-frontmatter
Author MIF Level 1–3 frontmatter for any document, climbing L1→L3 as detail allows.
ears-acceptance-criteria
Turn a requirement or driver into an EARS-notation acceptance criterion.
mif-validate
Deterministically prove a document is MIF-conformant and convert between forms.
mif-corpus
Semantically index and query MIF docs via the optional mif-rs tools; suggestion signal, never a gate.
mif-provenance
Stamp hook-witnessed provenance into frontmatter and verify blocks against the session ledger; witnessed, never asserted.
svg-charts
Generate a standalone .svg chart file (and its <img> embed line) for cases beyond Mermaid's documented range.
mif-to-pdf
Convert a MIF JSON-LD document to PDF, embedding every frontmatter field as PDF metadata (Info dictionary + a custom lossless XMP packet).
doc-set-planner
Plan a subject into a coordinated SET of documents, fan out to genres, reconcile the relationship graph.
Doc-set recipes (4)
doc-set-planner decomposes a broad subject using one of four recipes. Each
recipe names its member genres and the cross-document relationship graph that
planner-check verifies for link-completeness.
Recipe
Decomposes into
diataxis
tutorial + how-to + reference + explanation
ai-spec
AI-ready specification set (feature-spec + ai-architecture-doc + EARS criteria)
0 valid; 1 schema/level/round-trip failure; 2 usage error (no file); 3 schema cache not hydrated locally (environment gap, not a document failure — run npm run hydrate-schema).
0 ontology cached from published URI / ontologies repo / local sibling checkout; 1 unresolved.
validate-ontology.mjs
validate-ontology
0 ontology valid and all entity_type / relationship types resolve; 1 not hydrated or dangling reference.
validate-plugin.mjs
validate-plugin [<plugin-root>]
0plugin.json, marketplace.json, .mcp.json, every SKILL.md frontmatter and its evals/evals.json, and every commands/**/*.md and agents/**/*.md frontmatter valid; 1 any structural violation.
check-exemplars.mjs
check-exemplars
0 every genre's good-l1.md validates at L1 and good.md at its target level; 1 otherwise.
planner-check.mjs
planner-check [<recipe>]
0 recipe(s) decompose to real member skills and the cross-link graph is complete; 1 otherwise.
0 stamped / verify match / status healthy; 1 verify drift (including unwitnessed) or status found no session_start line for this session yet; 2 usage/environment error (unknown verb, no repo and no --ledger, ambiguous session, no session id available); 3 stamp declined (unwitnessed, not conformant, would regress the document's MIF level).
0 node and Rust verdicts agree everywhere outside the expected-disagreement ledger; 1 unexpected disagreement, stale/orphaned ledger entry, or harness fault (missing/unparseable ledger, schema not hydrated, binary cannot run, gutted corpus); 2 usage error (missing binary path, wrong working directory).
Which engine is authoritative
The node engine is authoritative for every gate in this suite (ADR-0004):
mif-validate, the CI validation jobs, and the fail-closed write guard all
run scripts/lib/projection.mjs. The mif-rs Rust engine is compared against
it by the non-required nightly engine-parity workflow; a disagreement is
evidence for an upstream mif-rs issue, never a reason to change a document
the node gates accept.
Argument notes
mif-validate --level defaults to 1. The level overlay layers required
fields on top of the canonical schema: L2 requires namespace, modified,
temporal; L3 additionally requires provenance and temporal.validFrom.
mif-convert emit-markdown schema-checks the JSON-LD input before projecting,
unless --no-check is given. roundtrip reports whether md↔JSON-LD is lossless.
hydrate-schema resolves latest by default and records the resolved version
in schema/VENDOR.lock; offline, mif-validate falls back to the last
hydrated copy and warns.
planner-check with no argument checks every recipe under
skills/doc-set-planner/recipes/.
See also
The skills by purpose reference gives each skill its own
detailed write-up, grouped by the job it does; this catalog is the terse lookup
for genres, recipes, and scripts. The getting-started tutorial walks through
installing and validating a first document; the how-to gives the
validate/author/convert recipe; the explanation
covers why each document is both a human artifact and a machine unit. All three
are linked from this reference's relationships[], which keeps rationale out of
the catalog per Diátaxis.