Inspiration
I've been bothered for years by the lack of a great two-pane file manager for macOS. Over the past 6 months, I built one in Rust. Then Build Week gave me a good opportunity to add a natural language bulk-rename feature, even using image content data!
What it does
Cmdr is a keyboard-first two-pane file manager for macOS. Browse, copy, move, delete, zip and unzip, across local drives, SMB shares and Android phones. It indexes your whole drive so search is instant, and it logs every operation so you can roll back any non-destructive actions. It also has an AI agent living inside (can be powered by GPT-5.6 or even a local model), doing stuff using a built-in MCP server.
On Build Week: added natural-language bulk rename. Cmdr keeps an index of all files, ranks them by importance, and it also OCRs+deep parses the content of the images it (and the user) deems important (a 100% local, private process!). Then in the chat, you can now ask GPT-5.6 to rename the images based on their content. You get a review dialog with every proposed rename, can approve/reject them so it's safe, and the whole batch gets done as one undoable operation.
How we built it
Cmdr is 6 months old, so it predates the hackathon. I scoped my submission to one feature: the bulk rename, designed and built with Codex on GPT-5.6-Terra (high) and Sol (low) in a single +5,500 LoC session on 2026-07-20, shipped as PR #39 (https://github.com/vdavid/cmdr/pull/39). Now merged and released as v0.35.0.
I gave Codex the feature shape. Codex planned it, spawned its own reviewer agents to improve the plan, then built it overnight with more subagents. I reviewed the result, asked for improvements and minor features, Codex improved it further.
Challenges we ran into
I'd never want Cmdr's built-in agent to change files directly, and all the MCP tools so far have been read-only. So this needed a new tier in the tool boundary: the agent can propose write ops now.
Then also, batch rename is a graph problem: it was tricky to get it right with all the potential clashing renames and case-only renames on a case-insensitive filesystem, without ever silently overwriting a file.
Accomplishments that we're proud of
The feature works end to end, and is acually helpful when powered by a good enough model like GPT-5.6 Terra. It's safe because every rename needs human confirmation, and even after that, the operation is conveniently reversible.
Mere generally, also very proud of the full drive indexing that no comparable app has, the on-device image understanding that does its thing very fast, with nothing leaving your machine, and the MCP server that gives the agent control over the entire app.
What we learned
A lot about file systems and macOS internals! Plus that GPT-5.6 Sol is actually a pretty powerful companion!
What's next for Cmdr
Public launch! 🚀
Built With
- go
- rust
- svelte
- typescript
Log in or sign up for Devpost to join the conversation.