Luwu is an early-stage configuration orchestrator for dotfiles, developer tools, and agent configuration.
It is intended to make configuration drift explainable and repairable without pretending that every difference should be overwritten. Luwu explores explicit resource semantics, semantic drift, field ownership, controlled reverse sync, and narrow external providers.
The project is currently a developer-confidence preview, not a general-use
tool. The first vertical slice supports local .j2 templates and source
symlinks: inspect and plan are read-only, and apply requires explicit
confirmation. The implementation is deliberately allowed to grow from
validated experiments rather than from a fully predetermined architecture.
The preview requires Python 3.12+ and uv:
The project fixture lives under tests/fixtures/m1. It is used by the
isolated CLI E2E check and can be copied to a temporary directory for the
manual loop, so apply does not modify fixture data:
uv sync
demo_dir="$(mktemp -d)"
trap 'rm -rf "$demo_dir"' EXIT
cp -a tests/fixtures/m1/. "$demo_dir"/
uv run luwu plan --manifest "$demo_dir/luwu.toml"
uv run luwu apply --manifest "$demo_dir/luwu.toml" --yes
uv run luwu inspect --manifest "$demo_dir/luwu.toml"
Read the current reference for the manifest, CLI, JSON, and safety contract, and implementation status for the verified scope. The reference and status documents are the authority for current capabilities; this page intentionally stays at user-entry-point level.
Run the deterministic test suite with:
uv run --locked python -m unittest discover -s tests -v
- Product direction
- Current command and manifest reference
- Implementation status
- Current internal design
- Development and release workflow
- Delivery roadmap
- Milestone closure records
- Agent and maintainer entry point
Documentation ownership and single-source-of-truth rules are defined in
AGENTS.md.
Luwu is an independent implementation inspired by the concepts and workflow of Dotter. It does not copy or include Dotter's source code.