The cwp manual
shipped 1.0.0cwp is Controlled WordPress — a command-line tool that moves a WordPress
site between a local DDEV container and its host, and guards every write that
goes upward.
It is middleware. DDEV runs the local container, WP-CLI talks to WordPress, and
your host moves the files; cwp decides what may move, in which direction, and
what has to be true before and after. It reimplements none of them.
What this manual is
Every page carries a status badge, and the badge is the point. A documentation
page is a promise about software, and the characteristic one is not an invention
— it is a sentence that was true when it was written. shipped 1.0.0 says the
thing exists in the released binary; planned, deferred and not built say
exactly what they say.
Pages are written against the released v1.0 surface. Where a command’s flags or arguments are listed, they are read from the CLI’s own manifest rather than typed, and where terminal output is shown, it was captured from the real binary rather than written by hand.
Where to go
- Start here — what cwp is and is not, what it needs, how to install it, and a quickstart that ends in a working local copy of a production site.
- Concepts — the two-layer config, the asymmetric data flow, reproducibility, the safety model, the output contract, and the two seams.
- Commands — every command, its arguments and its flags, read from the CLI’s own manifest rather than written by hand.
- The design documents describe how cwp is built: the five layers, the seven-step spine, the two seams, and the invariant catalogue with the test that holds each rule.
The guides and the troubleshooting pages are still being moved here from the
repository’s README.md. Until a section arrives, README.md is the complete
document.