ireul¶
Platform infrastructure for the magi ecosystem. Contains the canonical versions, lint rules, MkDocs hook, and stylesheet that all repos in the platform share.
What Ireul provides¶
| Artifact | File | Consumed via |
|---|---|---|
| Tool version pins | versions.yml |
melchior reads at agent build time |
| Python linter config | lint/ruff.toml |
pre-commit remote hook |
| YAML linter config | lint/yamllint.yml |
pre-commit remote hook |
| Editor normalisation | lint/.editorconfig |
copied to each repo root on onboarding |
| MkDocs hook | mkdocs/hooks/config.py |
copied to each repo hooks/ directory |
| Platform stylesheet | mkdocs/stylesheets/platform.css |
served via Cloudflare Pages; injected via DOCS_CSS_URL |
| Pre-commit hook definitions | .pre-commit-hooks.yaml |
.pre-commit-config.yaml in each repo |
| New-repo scaffold | scaffold/new-repo/ |
copied on repo creation |
Distribution model¶
Ireul has no runtime. It is consumed at three points in the platform:
Pre-commit: repos reference Ireul as a remote pre-commit repository. Hooks execute against staged files before every commit.
MkDocs build time: each repo holds a copy of mkdocs/hooks/config.py in its own hooks/ directory. The hook reads environment variables and patches the MkDocs config before the site builds. The platform stylesheet is fetched by URL from Cloudflare Pages; it never needs to be copied.
melchior agent build time: versions.yml is downloaded at the platform version tag and parsed to install pinned tool versions into agent Docker images.
Versioning¶
All repos pin to an Ireul release tag via PLATFORM_VERSION. Updates are deliberate; repos do not upgrade automatically.
Sections¶
- Pre-commit Hooks: adding lint gates to a repo
- MkDocs Hook: configuring docs via environment variables
- Versions: reading and using
versions.yml - Onboarding: setting up a new repo from scaffold
- Cloudflare Pages: deploying docs to Cloudflare Pages
- Contributing: updating platform standards and cutting releases