<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl" -->

---
title: neurosnap/zmx: Session persistence for terminal processes
description: zmx is a lightweight session persistence tool for terminal processes that allows attaching and detaching from shell sessions without killing them. Unlike tmux,...
canonical: https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: neurosnap/zmx: Session persistence for terminal processes | daily.dev
og:description: zmx is a lightweight session persistence tool for terminal processes that allows attaching and detaching from shell sessions without killing them. Unlike tmux,...
og:url: https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl
og:image: https://api.daily.dev/og/posts/368nSP8RL.png
og:image:alt: neurosnap/zmx: Session persistence for terminal processes
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# neurosnap/zmx: Session persistence for terminal processes

**[Lobsters](https://daily.dev/sources/lobsters)** · 7 min read · 5 upvotes · 0 comments

## Summary

zmx is a lightweight session persistence tool for terminal processes that allows attaching and detaching from shell sessions without killing them. Unlike tmux, it focuses solely on session persistence and delegates window management to the OS, enabling native terminal features like scrollback and copy-paste. Built with Zig, it works on Mac and Linux, supports multiple simultaneous clients, and integrates seamlessly with SSH workflows using ControlMaster for instant reconnections. The tool uses libghostty-vt to restore terminal state when reattaching, and stores sessions as Unix socket files in /tmp/zmx.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://github.com/neurosnap/zmx>

## Similar posts on daily.dev

- [A Terminal Workspace](https://daily.dev/posts/a-terminal-workspace-dl6ikn0y4) · Atomic Spin · 0 upvotes · 0 comments
- [Herdr vs tmux vs Zellij](https://daily.dev/posts/herdr-vs-tmux-vs-zellij-e6vrzrfp1) · Flavio Copes · 7 upvotes · 0 comments
- [Looking Beyond Tmux and Screen: 8 Terminal Multiplexers Worth Trying](https://daily.dev/posts/looking-beyond-tmux-and-screen-8-terminal-multiplexers-worth-trying-3v9aibk3d) · It's Foss · 0 upvotes · 0 comments
- [I treat my terminal less like a shell and more like a dashboard for everything I have running](https://daily.dev/posts/i-treat-my-terminal-less-like-a-shell-and-more-like-a-dashboard-for-everything-i-have-running-g9yxguc2v) · XDA Developers · 22 upvotes · 1 comments

---

Tags: [#ssh](https://daily.dev/tags/ssh), [#bash](https://daily.dev/tags/bash), [#zig](https://daily.dev/tags/zig)

[View this post on daily.dev](https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"neurosnap/zmx: Session persistence for terminal processes","url":"https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl"},"datePublished":"2025-12-02T22:51:00.677Z","dateModified":"2025-12-02T22:51:21.000Z","description":"zmx is a lightweight session persistence tool for terminal processes that allows attaching and detaching from shell sessions without killing them. Unlike tmux,...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/6bfbe8b10870b9cd19cb296747ec9ade?_a=AQAEulh","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/6bfbe8b10870b9cd19cb296747ec9ade?_a=AQAEulh","isAccessibleForFree":true,"articleSection":"Lobsters","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Lobsters","logo":"https://media.daily.dev/image/upload/s--tl8v_Fku--/f_auto,t_logo/v1698841318/logos/lobste.jpg","url":"https://daily.dev/sources/lobsters"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/neurosnap-zmx-session-persistence-for-terminal-processes-368nsp8rl","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":5},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"ssh,bash,zig","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Lobsters","item":"https://daily.dev/sources/lobsters"},{"@type":"ListItem","position":3,"name":"neurosnap/zmx: Session persistence for terminal processes"}]}
```

