resources: - path: ~/.ssh/id_ed25519 source: secrets/id_ed25519.age decrypt: age mode: "0600" Write custom resource types in any language that speaks JSON over stdin/stdout. Hook into check , apply , and diff phases. Plugins are discovered via ~/.config/magiccfg/plugins/ .
name: docker-volume version: 1.0.0 handles: - type: docker_volume commands: check: ./check.py apply: ./apply.sh diff: ./diff Resources can now have a when field evaluating simple predicates against system facts (OS, hostname, environment variables, file existence). magiccfg 1.3
Example plugin manifest ( plugins/docker-volume/manifest.yaml ): resources: - path: ~/
magiccfg_1.3.0_checksums.txt signed with maintainer key 0x4D6C3A8F2E9B1C7A . Magiccfg – configuration as intention, not just code. 2026 Codename: “Declarative drift”
~/.config/magiccfg/ ├── config.yaml ├── templates/ │ └── gitconfig.tmpl └── secrets/ └── github-token.age
Release date: April 16, 2026 Codename: “Declarative drift”