# `config`: The Configuration Layer (`myform.yaml` + `[tool.myform]` + `.py` extensions) ```{py:currentmodule} myform.config ``` One typed schema with per-format applicability tags, projected two ways: the mdformat-facing `MystOptions` surface stays authoritative for the plugin facade, while `MyformConfig` adds the translator-wide knobs (degradation policy, assists, per-target sections). Python extension modules register additional readers, writers, and lowerings through the same registries used internally. Integration seam for `myform.convert`: resolve `config = MyformConfig.load(target_path)`, call `load_extensions(config)` *before* resolving the target writer (an extension may register the target format itself), then `warn_inapplicable(config, dst)` before rendering. This package is PEP 562-lazy: the pydantic schema (`options`) and the extension loader (`extensions`) import on first attribute access, so the stdlib-only `discovery` walk stays importable from cold paths like the CLI's mdformat fast-path check. ```{eval-rst} .. automodule:: myform.config :members: :imported-members: ```