My multi-repo workflow used to be a nightmare of detached HEADs
I ended up using Claude, Codex, and Gemini to help architect "GWZ" (Git Workspace Zone). It's a CLI tool that essentially lets you treat a collection of member repositories as a single workspace when you need to, without breaking the underlying Git logic.
Here is how it handles the "multi-repo vs. mono-repo" tension:
gwz status, gwz diff, gwz add, gwz pull, etc. It feels like Git, but it's operating on the workspace level.gwz repo create, gwz sync, and gwz detach.forall command that lets you run a command across all selected member repos simultaneously. This is a massive productivity boost for bulk operations.One technical detail that surprised me was the implementation. While I usually stick to Python or C++, this was built in Rust. The developer (myself) needed a decoupled architecture where the "core" engine is a separate crate from the CLI. This makes the engine embeddable and wire-friendly, rather than just being a terminal script.
A weirdly cool byproduct of using LLMs to help write the documentation and code was the inclusion of a --json / --jsonl output flag. The LLMs "suggested" this because it provides much better context for AI agents reading the output. It’s basically a tool designed to be used by both humans and LLM agents in an AI workflow.
Current Status:
Documentation is available here:
https://owebeeone.github.io/gwz-cli/