Skip to content

Releases: oxdingzg/mtty

v0.1.8

Choose a tag to compare

@github-actions github-actions released this 05 Oct 06:27
5812209

mtty v0.1.8

简体中文

Fixes

  • Tab titles survive a restart. A tab that was never renamed shows an
    automatic title — the pane's OSC program name, then the current folder, then
    shell N. That title was not stored in the session, so after a restart the
    fresh shell's title replaced it and tabs came back as the running program's
    name instead of the title they had before. The displayed title is now saved
    and restored, so a restart shows the same title; a tab you renamed still keeps
    your chosen name.

Verification

The source snapshot passes the workspace test suite, Clippy, formatting, and
privacy checks on CI, followed by the four-runner packaging and installer
checks (macOS both architectures, Linux AppImage/deb, Windows ZIP/MSI) with
detached minisign signatures. The title precedence is covered by a unit test.
Apple Developer ID notarization and Windows Authenticode signing remain
dependent on owner credentials.

Full changes

v0.1.7

Choose a tag to compare

@github-actions github-actions released this 05 Oct 04:26
0d898ce

mtty v0.1.7

简体中文

Features

  • Right-click pane context menu. Terminal panes now open a context menu on
    right-click, replacing the old copy-or-paste behavior. It offers Copy
    (when there is a selection), Paste, Copy / Paste as (as ANSI
    colours, or paste shell-escaped), Composer, Send to Agent…,
    Select All, Search…, About This Line (the row, column, character
    and text under the pointer), Split Pane and Clear Scrollback. Every
    item reuses the same command as the palette and shortcuts, so nothing behaves
    differently from the keyboard path.
  • Split Left and Split Up. The split menu (and the command palette) adds
    Left and Up to Right and Down; the new pane lands on the near side.

Fixes and integration

  • The Windows PowerShell 5.1 command-history fix is now verified end to end on
    a logged-on Windows desktop (a scripted acceptance that types marked commands
    into a 5.1 pane and reads them back over MTP). See
    WINDOWS-PS51-HISTORY.md.
  • Desktop-only acceptance notes for the IME candidate anchor and inline-image
    session restore are recorded in ACCEPTANCE.md.

Verification

The source snapshot passes the workspace test suite, Clippy, formatting, and
privacy checks on CI, followed by the four-runner packaging and installer
checks (macOS both architectures, Linux AppImage/deb, Windows ZIP/MSI) with
detached minisign signatures. The pane context menu was checked in a real macOS
window. Apple Developer ID notarization and Windows Authenticode signing remain
dependent on owner credentials.

Full changes

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 04 Oct 17:22
b2ff6bf

mtty v0.1.6

简体中文

Features

  • Full kitty keyboard protocol. The terminal now honours all five
    enhancement flags: disambiguate escape codes, event types (including
    release), alternate keys and associated text, plus all keys as
    escape codes. Shift+a is reported as CSI 97:65;2u, Shift+2 as
    CSI 50:64;2u, a Cyrillic ctrl+с still reaches the program as ctrl+c, and
    the bytes a key produced travel as the text sub-field. Read it in
    PRODUCT.md.
  • Inline images keep their layer. Kitty graphics placements now carry their
    z-index, so negative-z images draw behind the text grid while z≥0 images draw
    above it, still clipped to their pane.
  • Images come back with a session. A restored pane brings its inline
    images back with the restored scrollback, anchored to the same text row, when
    the pane returns at the same width. Images larger than the store cap or
    older than the captured rows are dropped, and a Kitty animation returns as a
    still frame.
  • Search inside files and scrollback. Open Quickly (⌘⇧O) now matches text
    inside files in the current directory and inside the active pane's
    scrollback, off the UI thread and bounded by file count, size and time; a
    file hit opens the editor at the line, a scrollback hit scrolls and
    highlights the match.
  • Remote editing follows the remote file. An editor pane over ssh now polls
    the remote file's length and mtime in the background and reloads in place
    when it changes underneath the pane and there are no unsaved edits — the
    same behavior local files already had.
  • Whole folders over FTP. The FTP/FTPS browser uploads and downloads whole
    directories recursively, creating local folders before fetching and remote
    folders before sending.
  • Opt-in SSH reconnect. ssh-auto-reconnect = true connects restored SSH
    tabs on startup instead of waiting for Enter (default off, host-key
    verification unchanged).

Fixes

  • Wide-character copy. Copying a selection that began on the trailing half
    of a CJK character dropped it while the mirror-image drag kept it; both
    directions now keep the character whole, and a wrapped character's leading
    spacer can no longer leak in.
  • PowerShell 5.1 history. Windows PowerShell 5.1 now records command
    history through the same PSConsoleHostReadLine hook as 7.x.
  • Render pacing and glyph atlas. Hidden, minimized and occluded surfaces no
    longer submit GPU work; redraws are coalesced and timer wakes are compacted;
    the previous frame's glyph atlas pins are released every frame so the LRU can
    evict; renderers for closed panes are dropped.

Chores and documentation

  • The repository, its engine crates and the crate directories are now mtty-*.
  • Release notes are English with a Simplified Chinese link; third-party
    terminal references are removed; the roadmap records the real mosh
    verification.

Verification

The source snapshot passes the workspace test suite, Clippy, formatting, and
privacy checks on CI, followed by the four-runner packaging and installer
checks (macOS both architectures, Linux AppImage/deb, Windows ZIP/MSI) with
detached minisign signatures. Apple Developer ID notarization and Windows
Authenticode signing remain dependent on owner credentials.

Full changes

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 04 Oct 09:39

mtty v0.1.5

简体中文

Features

  • Themes and chrome. A selectable mtty preset (navy window and
    chrome, #171b24/#212733/#2b333e) joins Nord (default), Dracula and
    Gruvbox. The file tree gains per-type colored icons (folder, code, doc,
    config, lock, database), and the New SSH Session form is reworked into
    quick-connect, saved-host fields, an Advanced section, and
    Connect / Save & Connect actions. See CONFIG.md.
  • Agent tab markers. The tab marker now distinguishes a running turn from
    idle and waiting: idle is an empty ring, executing is a rotating accent arc
    (animated, so a long turn never looks stalled), and waiting is a ring with a
    solid core apart from the finished disc.
  • Startup update check. mtty checks for a newer release once at launch
    (config update-auto-check, on by default) and shows it in the status line.
    Set update-auto-check = false to make no request until you ask.

Fixes

  • macOS tab dragging. The transparent, full-size title bar made macOS start
    a window drag on any press in the title strip, so dragging a tab chip moved
    the whole window instead of reordering tabs. System drag is now off for the
    window and the app keeps its own region-based dragging.
  • Editor gutter underflow. A windowed large-file view could subtract the
    line number's width from the gutter below zero — a debug build panicked
    inside the draw callback, a release build wrapped to a garbage offset. The
    last cells are clamped instead, counted by character so a fold marker is
    never split.

Chores and documentation

  • A pull-request workflow for the protected main (CI, squash merge,
    conventional titles), with CODEOWNERS, a PR template and a standards check.
  • scripts/session-worktree.sh to isolate parallel sessions in disposable git
    worktrees, documented in AGENTS.md.
  • An app-managed SSH tunnel lifecycle proposal, and refreshed CI performance
    baseline.

Verification

The source snapshot passes the workspace test suite, Clippy, formatting, and
privacy checks on CI, followed by the four-runner packaging and installer
checks (macOS both architectures, Linux AppImage/deb, Windows ZIP/MSI) with
detached minisign signatures. Apple Developer ID notarization and Windows
Authenticode signing remain dependent on owner credentials; Claude ACP still
needs provider authentication for a real prompt.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 04 Oct 00:26

mtty v0.1.4

简体中文

Fixes and improvements

  • Responsive terminal shutdown. Child termination and reaping run off the UI
    thread. Unix shells that ignore SIGHUP are forcefully terminated; Windows
    process-tree termination also runs in the background.
  • Bounded resource diagnostics. A background recorder samples process CPU,
    RSS and render activity every 30 seconds. Resource logs are capped at 64 MiB;
    panic logs are capped at 2 MiB, including backups. Disable sampling with
    MTTY_MONITOR=0. See Troubleshooting.
  • Transactional Windows updates. ZIP updates validate and stage all three
    executables before replacement, retain backups, and roll back failed updates.
    MSI exit codes are checked. ZIP extraction uses .NET Unicode paths, including
    on English Windows systems. See ADR 0043.
  • Agent editing and ACP. Deleted proposal rows remain visible for review
    without entering copied or saved text. Whole-file proposals preserve unchanged
    context. ACP adds authentication, session loading and terminal callbacks;
    client file writes require review and saving, and commands require permission.
    Output and process counts are bounded.
  • Clipboard and transports. Clipboard image forwarding supports Windows and
    X11 PNG encoding and text-paste cleanup; Wayland uses the existing data device.
    Serial reads retry idle timeouts and interruptions, and closing a pane stops
    its idle byte-pipe reader.
  • Documentation and third-party licence notices refreshed.

Verification

The source snapshot passed 531 macOS workspace tests, Clippy, formatting,
privacy checks and 14 release performance tests on a remote build host. Three
native Windows ConPTY tests passed. The release pipeline additionally checks
both macOS architectures, Linux AppImage/deb and Windows ZIP/MSI packaging,
installer contents and detached minisign signatures.

Further platform acceptance evidence and limits are recorded in
ACCEPTANCE.md. Apple Developer ID notarization and Windows
Authenticode signing remain dependent on owner credentials; detached minisign
signatures are provided separately. Claude ACP still needs provider authentication
for a real prompt.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 03 Oct 15:33

mtty v0.1.3

简体中文

  • The bundled font is now the default. mtty ships JetBrains Mono but the
    font system fell back to Courier New, which lacks box-drawing U+2503 (┃,
    the left border miao draws on messages) and the tool marker U+23BF (⎿).
    On Windows the missing ┃ showed as a stray z on every message line.
    JetBrains Mono is now the monospace default, and ⎿ stands in as └.

Verification runs on GitHub Actions: full workspace CI and performance gates,
followed by four-runner packaging and installer checks.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 03 Oct 15:04

mtty v0.1.2

简体中文

  • Chinese IME punctuation on macOS. Typing . with the built-in Pinyin
    input method inserted the full-width 。 (and a visual gap) instead of .:
    winit dropped the IME's direct commit and sent the keyboard layout's own
    character, and mtty's IME reply path never saw the real one. mtty now carries
    a patched winit that keeps the IME's committed string, so 1.0.0 types as
    1.0.0. Regular (non-IME) input is unchanged. Upstream: winit #3925.

Verification runs on GitHub Actions: full workspace CI and performance gates,
followed by four-runner packaging and installer checks.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 03 Oct 13:53

mtty v0.1.1

简体中文

  • The Resume picker shows when a session was last seen. Every reported
    session now carries a timestamp, and Resume Agent Session… shows a relative
    age (5m ago, 2h ago, …) next to each one.
  • Adjustable quota warning. agent-quota-warn in config.toml (default
    80, clamped to 0–100) sets the percentage at which the Agent tab marks an
    agent-reported quota.

Verification runs on GitHub Actions: full workspace CI and performance gates,
followed by four-runner packaging and installer checks.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 13:26

mtty v0.1.0

简体中文

  • Resume an agent session. Resume Agent Session… lists the sessions
    agents have reported (agent, session id, directory, most recent first) and
    relaunches the chosen one in the directory it ran in. mtty-cli and MTP
    gain agent.sessions and agent.resume (new agent.resume capability);
    the agent hook now reports its working directory.
  • Agent quota at a glance. When an agent reports its usage, the Agent tab
    shows one compact line (used/limit, the window, and a ⚠ past 80%); mtty
    never calls a model or account API. mtty-cli state --quota FILE|- forwards
    a JSON quota with a state report.

Verification runs on GitHub Actions: full workspace CI and performance gates,
followed by four-runner packaging and installer checks.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.

v0.0.25

Choose a tag to compare

@github-actions github-actions released this 03 Oct 12:02

mtty v0.0.25

简体中文

  • Windows text is no longer garbled. Each pane's console now runs on a
    UTF-8 code page (cmd, PowerShell and Git Bash), so a program that writes
    UTF-8 bytes instead of going through WriteConsoleW — Bun and the native
    TUI renderers, such as the one behind miao — no longer shows CJK as mojibake.
  • Open Externally. A new command (and View-menu item) hands the active
    editor's file to the system's default application; a terminal pane falls back
    to its own directory.
  • Jump-to-line highlight. Go to Line, Go to Symbol, Jump to Selection and
    MTP app.edit/app.view flash the line they land on.
  • More of the kitty keyboard protocol. Event types (including release) and
    "report all keys as escape codes" are honoured on top of disambiguation.

Verification runs on GitHub Actions: full workspace CI and performance gates,
followed by four-runner packaging and installer checks.

Full changes


Free code signing provided by SignPath.io, certificate by SignPath Foundation.