wex — one command line for a whole infrastructure
The command-line toolkit everything here runs on: apps and their Docker services, the shape of every project, package publishing, servers, DNS, and AI agents at work on the code — 275 commands, written since 2017.
wex started in July 2017 as a handful of bash scripts to start Docker environments, and grew with every project: 255 scripts in 2018, more than 700 by 2022. In 2023 it was rewritten in Python, from a core that implements no command itself: everything comes from fourteen addons published on PyPI, backed by a suite of some twenty-five libraries.
Today one line drives an app and its services — one Docker container per service, every environment from local to production —, keeps each project in the shape it declares, bumps and publishes whole package suites, manages databases, monitoring, GitLab, n8n, Ollama or Matrix, syncs DNS across four registrars, and puts AI agents to work on the codebase with the knowledge, journal and tools each app carries. Nearly 7,000 commits on the tool alone, some 160,000 lines of Python around it.