Introduction
mtui is an improved, idiomatic Rust successor to openSUSE/mtui — the Maintenance Test Update Installer, SUSE QE’s tool for validating maintenance updates: load a request by RRID, install and test it on reference hosts over SSH in parallel, then approve or reject. It drives the OBS/IBS and Gitea review workflows and openQA/QEM; reports load from and upload to TeReGen’s v2 API.
mtui is memory-safe, async-native, and distributed as two static binaries, while
preserving the data-format and workflow contracts that keep it interoperable with
the SUSE maintenance ecosystem: the RRID grammar, the refhosts.yml schema, the
report document schema, and the remote-lock wire format.
Two surfaces
mtui— the interactive REPL (line editing, tab completion, history). See Invocation for how to launch it and seed a session.mtui-mcp— a Model Context Protocol server whose tools are synthesised from the same command registry as the REPL, so the CLI and the MCP surface never drift. See MCP server.
This book
- Installation — build from source, install the binaries, completions, and man pages.
- Invocation — the
mtuiandmtui-mcpbinary flags and how to start a session. - Configuration — the TOML config file, its resolution order, and every option with its default.
- Command reference — every REPL command and its arguments, generated directly from the command registry.
- Workflow concepts — fan-out across templates, reference-host pool selection, host state, and locking.
- MCP server — running
mtui-mcp, the tool surface, the testreport and job tools, profiles, and the security boundary. - Architecture — the crate layout and the data-format contracts.
- Developer guide — the toolchain, quality gates, the command trait, how to add a command, and testing conventions.
- FAQ.
For contributor conventions and the definition of done, see AGENTS.md, which
lives in the repository root.