nix-dendritic

Restructure multi-host Nix configurations into feature-centric modules with flake-parts.

2|1|Updated Mar 8, 2026
One-click install
npx skills add https://github.com/mattstruble/skills --skill nix-dendritic
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: nix-dendritic
Source: https://github.com/mattstruble/skills/tree/main/nix-dendritic
Command: npx skills add https://github.com/mattstruble/skills --skill nix-dendritic

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Dendritic standardizes multi-host Nix configurations by applying a feature-centric pattern that structures config around reusable features across NixOS, Darwin, and Home Manager. It is designed for multi-host or cross-platform setups and is not intended for general Nix questions; see the nix skill for those.

Core Features & Use Cases

  • Feature-centric modules using flake.modules.<class>.<aspect> to express capabilities
  • import-tree auto-loads all module files, enabling scalable feature sharing without manual imports
  • PerSystem outputs and inheritance patterns allow a layered system-default to system-desktop hierarchy across NixOS, Darwin, and Home Manager

Quick Start

Scaffold a new dendritic config using the scaffolding templates and start adding feature modules under modules/.

Frequently Asked Questions about nix-dendritic

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure multi-host Nix configurations to share features across NixOS and Darwin?▼

Multi-host Nix configurations can share features across NixOS, Darwin, and Home Manager by applying the Dendritic pattern. This feature-centric approach modularizes capabilities using flake-parts module classes and aspects, composing hosts by importing shared modules rather than aggregating hosts.

What is the best way to organize a cross-platform Nix flake for scalability?▼

The best way to organize a cross-platform Nix flake for scalability is using a feature-centric structure. The Dendritic pattern uses import-tree to auto-load module files, enabling scalable feature sharing without manual imports and discouraging host-centric file organization.

Can I use flake-parts with Home Manager and NixOS modules in a shared configuration?▼

Yes, you can use flake-parts with Home Manager and NixOS modules in a shared configuration. The Dendritic pattern uses flake.modules.<class>.<aspect> to express capabilities, allowing perSystem outputs and layered inheritance patterns across NixOS, Darwin, and Home Manager.

How do I auto-load Nix module files without manual imports in a flake?▼

You can auto-load Nix module files without manual imports by using the import-tree tool within the Dendritic pattern. This mechanism automatically loads all module files under the modules/ directory, enabling scalable feature sharing across your multi-host Nix configuration.

When should I not use a feature-centric Nix configuration pattern?▼

You should not use a feature-centric Nix configuration pattern like Dendritic for general Nix questions or single-host setups. It is specifically designed for multi-host or cross-platform environments and standardizes configurations by expressing capabilities as reusable features.

Does the Dendritic pattern support layered system hierarchies for desktop and server hosts?▼

Yes, the Dendritic pattern supports layered system hierarchies for desktop and server hosts. It uses perSystem outputs and inheritance patterns to establish a layered system-default to system-desktop hierarchy across NixOS, Darwin, and Home Manager.