mtty
mtty is an AI-native terminal and editor for local and remote work, written in
Rust. It stands on three pillars: a GPU-rendered terminal with remote operations
(host library, SFTP, port forwarding, jump hosts, snippets), an editor (a
built-in viewer and editor today, a native editor pane in progress), and an
agent workspace that shows what each AI coding agent is doing and queues work
for it. Underneath are UI-free engines: mtty-core owns the path from the
PTY to the screen, and mtty-editor is the editing core.
The application ships as mtty, alongside the mtty-cli control client
(both were called miaotty up to v0.0.5, and an existing ~/.config/miaotty is
copied on first start); the source lives in the
mtty repository.
Where to start
Section titled “Where to start”| Install | Packages for macOS, Linux and Windows, building from source, and the URL schemes it registers |
| Windows download warnings | Shared SmartScreen steps and differences between mtty and miao signatures |
| Configuration | config.toml — every key, themes, colors, language servers, ACP agents, shell integration |
| Keyboard shortcuts | The window, the terminal and the editor pane |
The mtty-cli control plane |
Drive a running host from a script or another program |
| View rules | Pane titles, icons and badges, from views.json |
| Troubleshooting | Build failures, config paths, shell integration, connecting mtty-cli |
| Security | What counts as a vulnerability here — the control plane, tokens and private keys — and how to report one |
Getting it
Section titled “Getting it”Pre-release packages are published on
GitHub Releases: a zip
containing mtty.app for macOS, .deb/AppImage/tar for Linux, and MSI/zip for
Windows. Each package has a minisign .sig signature, and the public key is
published with the release.
git clone https://github.com/oxdingzg/mtty.gitcd mttycargo run --release -p mtty-appInstall has the requirements and the per-platform detail.
How it is built
Section titled “How it is built”The repository is a workspace of engines, with the application as their first consumer rather than their owner:
| Crate | What it owns |
|---|---|
mtty-widget |
The winit + wgpu host: the render loop, and the egui chrome composited in the same frame |
mtty-render |
The wgpu + glyphon glyph grid, the quad and image pipelines |
mtty-core |
The PTY, VT parsing, the grid and scrollback, selection, search, OSC and input encoding |
mtty-editor is the editing core, and graphics, config, mtp and ui
sit alongside. The core carries no windowing or GPU code, so it can be embedded
in something else.
Where the rest of it lives
Section titled “Where the rest of it lives”The internal engineering records stay in the repository and are deliberately not published here: