arch-fitness-functions

Installation
SKILL.md

One-line summary

Encode architectural intent as automated checks that run on every change. If the architecture says "the domain layer doesn't depend on Spring", a fitness function fails the build when it does.

When to use this skill

  • An architecture decision matters and needs to stay true over time (dependency direction, layer boundaries, no cyclic dependencies, performance budgets).
  • Teams are large enough that informal "we agreed not to do X" doesn't hold across all PRs.
  • Migration projects (arch-strangler-fig) where you want to enforce that new code lives in the new shape and not the legacy.
  • Any architectural decision where you'd otherwise rely on code review to catch drift.

When NOT to use this skill

  • Tiny project, single developer, no scaling problem.
  • The architectural property is genuinely subjective and not automatable (taste, aesthetics, naming style on edge cases).
  • Over-policing — every architectural rule has a cost; only enforce what you would block a PR over.

Core content

Installs
16
GitHub Stars
1
First Seen
Jul 13, 2026
arch-fitness-functions — yonatankarp/software-design-skills