Changelog

New updates and improvements to Zero.

Spaces for every side of your work

You juggle three projects. Each one has its own repos, its own files, its own context. Switching between them means losing your place — wrong bookmarks, wrong folders, wrong headspace. Now each project gets its own space.

Workspaces — a space per project

  • Group everything together — Pin your core repo, design files, landing page, and deployment configs into one workspace. Your other project gets its own set of bookmarks. No overlap, no clutter.
  • Switch between projects instantly — Cmd+1 through Cmd+9. Each space remembers where you left off — your path, your view mode, your navigation history.
  • See which repos need attention — Bookmarked folders with uncommitted changes turn orange in the sidebar. No terminal needed.
  • Create, rename, delete — Click + in the sidebar to start a new space. Right-click to rename or remove it.

Codebase Indexing — a blueprint of your code

Zero indexes your git repos and extracts every function, type, and trait — with their signatures, arguments, and doc comments. The result is a structural map of your entire codebase. Not a text search. A blueprint of what your code actually is.

  • The full picture — Every public function, struct, enum, and trait, extracted with full signatures. It's like an abstract of your project — the architecture revealed at a glance, with the arguments each function takes and the types it returns.
  • Find the definition, not every mention — Type AuthProvider and get the actual type definition, not every file that happens to mention it.
  • Give your AI tools a map — Connect Claude Code, Gemini, Codex, or any MCP-compatible tool. They get structured access to your codebase index — accurate symbol search, project overviews, cross-project queries. Less context wasted, better answers.
  • Search across everything — All your indexed git repos, on your machine or on connected storage. Find where a function is defined across every project you've ever worked on.

Smarter search

Results now feel smarter. Files you open often float to the top. Recent files rank higher. Deeply nested paths drop lower. Trash and system files stay out of the way.

  • Frequency and recency — The files you actually use surface first, not just the closest text match.
  • Filter by size — Looking for the large files eating your disk? Filter by size range to find them instantly.
  • Filter by type — Search across multiple extensions at once — pdf,docx,txt — instead of one at a time.
  • Sort your way — Sort results by relevance, recency, size, or name.

Watch the AI think

Ask a question and watch the reasoning unfold. A collapsible "Thinking" section shows you exactly how the AI works through your question before answering.

  • Thinking mode — See the AI's reasoning process in real-time. Expand or collapse it as you like.
  • Readable responses — Code blocks get syntax highlighting and a copy button. Markdown renders properly — headings, lists, links, all formatted.
  • Latest models — Claude Sonnet 4.6, Opus 4.6, Haiku 4.5, GPT-5, and more. Switch models from the dropdown at the bottom of the chat.

Also in this update

  • Search results now show a Location column so you know which config.yaml is which
  • The toolbar shows your search query instead of the previous folder name

Agent Mode for your entire filesystem

Your files are everywhere — local drives, USBs, external storage. Zero indexes all of them. The built-in AI sits on that index and turns plain language into instant file operations. No find commands, no regex, no Spotlight limitations.

Agent Mode — your entire filesystem, on command

  • Every drive, instantly queryable — HDDs, USBs, external volumes — all indexed. "All MOV files from last March over 1GB" or "every package.json across my projects." Results in seconds, across everything.
  • From query to action — Find the files, then work with them. Batch rename footage, pipe to ffmpeg, collect deliverables into a folder, init a project from files scattered across repos. The AI gives you exactly what you need to act on.
  • Built for people who live in Finder — Organizing a messy Downloads folder. Finding that one screenshot from two weeks ago. Locating every deployment config across a dozen projects. Describe it once, done.
  • Watch it work — Tool call cards show exactly what the AI does — searching, filtering, reading metadata. Nothing hidden.
  • Bring your own key — Anthropic (Claude) and OpenAI. Pick a model in settings, start working.
  • Connect external tools — Zero's local MCP server gives Claude Code, Gemini, Codex, or any MCP-compatible tool direct access to your file index.

Developer Cleanup — reclaim gigabytes you forgot about

Your disk is full. Somewhere in your projects are old node_modules folders, Rust target directories, Python virtualenvs, and Xcode build data you haven't touched in months. Zero finds them all.

  • 36 categories across 8 groups — Node modules, Rust build cache, Python venvs, Go cache, Gradle, Maven, CocoaPods, Next.js, Flutter, Zig, and more. Plus system caches, old downloads, and iOS backups.
  • See the damage — Each group shows total size and item count. Drill in to see individual files sorted by size, largest first.
  • Pick what to clean — Select everything or cherry-pick specific items. Review before you delete.
  • Safe deletion — Everything moves to Trash with Put Back support. Changed your mind? Restore it.

File Browser — built for how developers work

The file browser now handles the details that matter when you're navigating code projects and real-world file systems.

  • Configurable columns — Show or hide Date Modified, Size, Kind, Permissions, Owner. Right-click any column header to customize. Drag to reorder. Your layout persists.
  • Inline rename — Press R on any file and start typing. Enter to confirm, Escape to cancel. No dialog box.
  • Typeahead navigation — Type a letter to jump to the first matching file. Type it again to cycle through matches. 800ms timeout resets the buffer.
  • Symlink awareness — Symlinks show their target path inline. Broken links turn red so you spot them instantly.
  • Natural sortfile2 comes before file10. Folders sort the way you'd expect, not the way a computer would.

Terminal — run commands without leaving Zero

A full terminal, built in. ANSI colors, mouse support, text selection, scroll history. Your system shell, right inside the app.

Also in this update

  • Pin and unpin sidebar bookmarks as icon tiles
  • Multi-selection shows total count and size in the status bar
  • Eject connected drives directly from the sidebar

Faster and lighter

You have 2.5 million files across your drives. Before this update, keeping them all searchable meant Zero needed serious memory. Now it uses 60% less — same speed, same instant results, a fraction of the footprint.

Performance — millions of files, less memory

Zero's search now stores file metadata in a compact, contiguous layout instead of scattered heap allocations. The result: dramatically lower memory usage at scale, faster startup from compressed snapshots, and no change to how you use it. Search just works better.

  • 60% less memory — 2.5 million files now fit comfortably where they used to strain. If you have large drives or multiple locations indexed, you'll feel the difference.
  • Faster startup — File snapshots are compressed and load in one pass. Your search is ready sooner after launch.
  • No interruptions — When the file watcher detects changes, the old search stays available while a new one builds in the background. No downtime.

Syntax Highlighting — 28 languages in the editor

Open a source file and it renders with proper syntax colors. Rust, Go, Python, TypeScript, Swift, C, Ruby, Java, and 20 more — all highlighted automatically based on file extension.

Also in this update

  • Context menus now show keyboard shortcuts so you can learn them as you go
  • Sidebar opens by default on fresh installs — no hunting for navigation
  • Editor uses Menlo 12px for cleaner code readability

Everything from Cmd+K

You're deep in a project and need to find an image. You could scroll through folders, or you could hit Cmd+K, select "Images," and type a name. Every image on your machine, filtered and ready. Then hit Cmd+K again to create a new folder, toggle the sidebar, or jump to settings — without touching the mouse.

Command Palette — one keystroke for everything

Cmd+K opens a universal search that goes beyond file names. Browse by category, run actions, jump to any view.

  • Drill into any file type — Select Images, Videos, Code, Documents, or any category and search within it. The palette becomes a scoped browser with its own search field and back button.
  • Run actions — New folder, toggle sidebar, toggle split view, open settings, find duplicates, cleanup — all available as palette commands with their keyboard shortcuts shown.
  • Search files, bookmarks, and drives — Type a name and see results across files, pinned bookmarks, connected storage, and applications. Folders sort first.
  • Keyboard shortcut hints — Every action shows its shortcut in a pill badge. Use the palette to discover shortcuts, then use them directly next time.

Themes — Catppuccin and system-follow

Six themes, each available as your light or dark mode theme independently. Set one for daytime, another for night, and let the OS switch for you.

  • Catppuccin Latte, Frappe, Macchiato, Mocha — The full Catppuccin family, from soft pastels to deep contrast.
  • System-follow mode — Zero reads your OS appearance setting and switches automatically. Or lock it to light or dark if you prefer.
  • Independent selectors — Pick Latte for light mode and Mocha for dark. Each mode gets its own theme.

Auto-Updates — Zero keeps itself current

Run zero update or let it check in the background. Every download is verified with SHA512 checksums and swapped atomically — no partial installs, no corruption.

CSV Viewer — open data files inline

Open a .csv or .tsv and see it as a proper table. Columns are sortable, numbers right-align automatically, and Zero figures out the delimiter on its own — commas, semicolons, tabs, or pipes.

Also in this update

  • Back and forward now work across every view — editor, data table, duplicates, settings
  • Full Disk Access onboarding asks before touching your filesystem
  • Search becomes available as each location loads, not after all of them finish
  • Pin and unpin sidebar bookmarks as icon tiles

Why I built Zero

My backup drive was failing. I needed to get 250GB off it before it died completely. The USB connection kept dropping — and every time it did, Finder restarted the entire copy from scratch. No resume. No way to pick up where it left off. When it finally failed at 80%, I had no idea which files had actually made it across. Finder doesn't verify. It doesn't checksum. It doesn't even tell you which files succeeded. You're left guessing whether your backup is complete or half-corrupted.

I wrote a copy tool in Rust. Resumable — picks up exactly where it stopped. Checksums every file after transfer. Real-time output: file count, percentage, speed, ETA, and which file is copying right now. Not a vague progress bar.

It got my data out.

Now I had a failing drive full of personal data. Can't throw it out. Microwaving it felt excessive. macOS has a secure erase option — buried in Disk Utility, limited erasure levels, non-resumable. That flaky USB connection dropped mid-erase. Start over. For a drive that's already unreliable, that's useless. So I built resumable secure erase.

The data was safe, but spread across three backup drives with years of overlapping copies. Same photos, same project folders, duplicated everywhere. macOS can't tell you what's duplicated, let alone across drives. I built dedup — finds identical files across any number of drives in seconds.

At this point I had reliable copy, secure erase, and dedup. But every backup was still manual. Plug in a drive, run the sync, remember which folders go where. I wanted something simple: plug in the drive and it syncs. macOS doesn't do this. Time Machine is all-or-nothing and breaks in opaque ways. I built sync profiles with automation triggers.

Then Spotlight. I'd disabled its data sharing with Apple months earlier — the setting that sends your search queries to Apple's servers. At some point it re-enabled itself. I found out by accident. Even with Spotlight fully running and phoning home, it couldn't find my files. Couldn't find installed applications. Basic searches returned nothing. I turned off its network access to stop the sharing — Finder search broke entirely. They're coupled. macOS 26.1 can't search my own filesystem without phoning home. I replaced it. 1.7 million files in 83ms. Fully local. Nothing leaves the machine.

My dev disk was out of space. target/, DerivedData/, node_modules/ — gigabytes of build artifacts from projects I hadn't opened in months. macOS has no way to find them, no way to see how much space they eat in total. I built cleanup — 36 categories of build artifacts, caches, and dead dependencies. See the damage, pick what to reclaim.

Those were the problems I could solve. Some I'm still living with.

I have Dropbox and Box installed for work — two proprietary binaries with full disk access and background processes, just to sync folders. I want to send a file to a friend without routing it through a cloud provider that hands data to governments or trains models on it. Every trace macOS scatters across my system — metadata, caches, .DS_Store files, Spotlight indexes that outlive the files they indexed — hidden and impossible to clean. CleanMyMac, the most popular tool for this, shares your file paths with Google, Facebook, and Microsoft.

I started with a failing USB drive. Each problem led to the next. Nothing that existed solved any of them. 53,000 lines of Rust later, Zero exists.

Pure Rust

Zero started as that CLI copy tool. It became a Rust core with a SwiftUI frontend — that worked. But going pure Rust changed everything.

  • Cross-platform from one codebase — macOS, Linux, Windows. Same code, same privacy guarantees.
  • No serialization bottleneck — The SwiftUI version serialized 100,000+ search results across the Rust–Swift FFI boundary on every query. Pure Rust renders directly from the index.
  • Fewer lines of code — No FFI bindings, no bridge layers, no Swift wrappers. One language, one build system.
  • No unsafe blocks — The FFI boundary required unsafe everywhere. Remove the boundary, remove the unsafe.

What's built

53,000 lines of Rust. 769 tests.

  • Resumable copy — Picks up where it left off. Checksums every file. Real-time progress.
  • Search — 1.7M files in 83ms. Type filters in 0.04ms. Fully local.
  • Deduplication — Identical files across any drive, in seconds.
  • Secure erase — Resumable. Not buried three menus deep.
  • Developer cleanup — 36 categories. See the damage, pick what to clean.

What's coming

P2P encrypted file sharing — direct, no server stores content. Native cloud transfers without vendor apps. Automated sync policies. Privacy footprint scanner. App inventory with signature verification. Encrypted search index — stolen laptop reveals nothing.

One app. Fully local. No network calls unless you make them.