mq-dir v0.1.0: launch notes
First public release of mq-dir — what's in it, what isn't, and the design decisions behind both.
This is the first build of mq-dir we're comfortable handing strangers. Here's what's in it, what isn't, and why the line is where it is.
What's in v0.1.0
Quad-pane file browsing. Up to 4 fully independent panes (1, 2H, 2V, 4). Each pane has its own folder, sort, scroll, and history. Switch with ⌘1–4 to focus, ⌘⌥1–4 to change layout. The off-screen panes preserve state so you can go 1 → 4 → 1 without losing your place.
Per-pane Safari-style tabs. Each pane has its own tab strip. ⌘T new, ⌘W close, ⌘⇧T reopen, drag to reorder. Right-click for Close Other / Duplicate. The last tab is a safety placeholder — closing it brings you to a default folder, not nothing.
Per-tab tree view. VS Code-style file tree, toggled per tab. Lazy child loading keeps it fast. ⌘-click a folder in the tree opens it as a new tab in the same pane.
Inline preview. Quick Look for images, video, audio, PDF, office docs. Markdown files render with full GFM (tables, code blocks, task lists) via MarkdownUI. Toggled per tab.
Projects. Named workspace snapshots. Save your current layout + pane tabs + focus as "Linear bug bash" or "agent dev." Click to switch; the outgoing project's state auto-saves.
cmux integration. When you have cmux installed, a CMUX section appears in the sidebar showing your active sessions. Click a row to open its working directory in the focused pane. ⌘-click for a new tab.
Full state persistence. Every aspect of your window state — panes, tabs, layout, sort, scroll, focus — survives force-quit, schema upgrades, and macOS migrations. The persistence layer hand-rolls every Codable struct so old saves still work.
Native, no Electron. SwiftUI + AppKit, system theme tokens, SF Symbols, traffic-light controls. Roughly 5.3 MB on disk; ~80 MB resident memory at idle.
What's deliberately out of scope
We made tradeoffs. The notable absentees:
- Cloud sync. No iCloud, Dropbox, S3, SFTP. mq-dir is local-first by design. If your workflow needs remote, Forklift remains excellent.
- Plugins. No plugin API in v0. We need to live with the architecture for another year before deciding what plugin shape makes sense.
- AI features. No AI inside mq-dir itself. We assume you run AI tools alongside (Claude Code, Cursor) — mq-dir's job is to make navigating the outputs of those tools sane.
- iPad/iOS port. No.
- Telemetry. Zero. No analytics, no crash reporting, no update-check fingerprint beyond version + macOS version. We don't know how many of you exist or what you do; we want to keep it that way.
This is the v1 release plan, not v0. We expect 0.2, 0.3, etc. to address the gaps users actually feel — driven by GitHub Issues, not by a roadmap we made up.
The three opinions that shaped the codebase
1. State is the product
A file manager that resets on every relaunch isn't a tool — it's an obstacle. We spent more engineering time on the persistence layer than on any visible feature. Every Codable struct has a hand-rolled init(from:) with decodeIfPresent for forward-compat. Every schema bump has a migration test. App termination triggers a synchronous flush so the runloop teardown doesn't lose your last edit.
If a single user's workspace silently corrupts, we consider that a P0 bug.
2. Parallel work is the default
The shape of work in 2026 isn't "open one folder, do one thing." It's three projects, two AI agents, an artifact stream, and a research pane — simultaneously. Every architectural decision in mq-dir asks: does this support 4 panes as well as 1?
The answer shows up in small places: the sidebar is shared across panes (one click from any pane), ⌘1–4 is reserved for pane focus (we don't use those keys for anything else), the preview is per-tab not per-window.
3. Native is non-negotiable
We could have shipped this as Electron in 6 weeks. We chose 6 months in SwiftUI + AppKit instead. The cost was real. The benefit:
- Cold launch under 200 ms.
- Memory footprint that doesn't scare you.
- Behaves like a Mac app — Reduce Motion, VoiceOver, traffic-lights, system theme.
- No Chromium update cycle.
Native is the moat against future-mq-dir-from-an-Electron-shop. We intend to hold it.
Known issues in v0.1.0
For honesty:
- Bookmark staleness on TimeMachine restore. If you restore your home folder from a backup, all bookmarks need to be re-resolved. We log this and show "unavailable" tabs gracefully, but the user has to manually re-pick the folder. Improving in 0.1.1.
- Search is local-only. Recursive search in a pane works (⌘⇧F). Global cross-pane search doesn't exist yet.
- No batch rename. Roadmap.
- Markdown preview lacks Mermaid/KaTeX. Plain MarkdownUI for now.
- No remote folders. As stated, this is by design — but we know it's a gap for some users.
How to get it
brew install --cask mq-dir
Or download the DMG from GitHub releases. On first launch, macOS will quarantine the unsigned alpha builds — xattr -d com.apple.quarantine /Applications/mq-dir.app clears it.
Source: github.com/h5nam/mq-dir. MIT-licensed, DCO-signed commits, PRs welcome.
What's next
The 0.1.x line will be bug fixes, polish, and small UX wins. The 0.2 milestone has three themes:
- Search — global, cross-pane, indexed.
- Batch operations — rename, tag, mass-move with preview.
- Plugin scaffolding — exploratory; no commitment yet.
Star the repo if you want updates. File issues if anything in 0.1.0 doesn't behave. Feedback in the early weeks shapes what 0.2 looks like.
Thanks for trying it.
A native quad-pane macOS file manager — free, no telemetry.
v0.1.0-beta.11 · Universal Binary · 5.3 MB · macOS 14.0+
Download for MacFrequently asked questions
References
- [1]
- [2]
Ready to try mq-dir?
A native quad-pane file manager built for AI multi-tasking on macOS. Free, MIT licensed, zero telemetry.
Related posts
The road to v0.2.0: search, batch ops, and a careful step toward plugins
v0.1 shipped. Here's what we're working on for v0.2 — and why we're deliberately not shipping AI features inside the app, despite the obvious temptation.
v0.1.0-alpha.12 recap: smaller polish, bigger trust
alpha.12 is the build that put 'native' through the polish grinder — icon glass rim trimmed, tab close hit-target widened, schema rev'd safely. None of these matter individually. All of them matter together.