Skip to content

ArchLinterNet

ArchLinterNet is a YAML-first architecture linter for .NET repositories.

It lets teams define architecture boundaries once in a repository policy file and run those rules from the CLI, tests, or CI. The goal is practical architecture governance: strict gates for rules that must pass today, audit diagnostics for migration work, and readable output for both humans and automation.

Product documentation only

This site is the public product documentation for ArchLinterNet. It is the only documentation intended for GitHub Pages publication and NuGet.org documentation links.

Internal project documentation such as backlog governance, OpenSpec archives, implementation planning, and repository-agent instructions remains in GitHub Markdown files outside this published site.

Core workflow

architecture/dependencies.arch.yml
        ↓
ArchLinterNet validation
        ↓
strict gate or audit report
        ↓
CI result, JSON artifact, or test failure

Start here

Author policies

Contract families

ArchLinterNet supports strict and audit variants for dependency, ordered layer, allow-only, cycle, acyclic sibling, independence, protected surface, external dependency, method-body, Unity .asmdef, and layer-template contracts.

See the Contracts section for the full reference.

AI-assisted policy authoring

The AI section documents how AI coding agents and human reviewers should inspect repositories, author safe YAML, avoid unsupported fields, and review generated policies before opening a PR.

What ArchLinterNet is not

ArchLinterNet is not a runtime analyzer, security analyzer, semantic data-flow engine, ownership system, or enterprise architecture dashboard. It is intentionally focused on executable static architecture contracts that can run locally and in CI.