Skip to content

Releases: vdavid/cmdr

Cmdr v0.34.0

Choose a tag to compare

@github-actions github-actions released this 18 Jul 21:27
1d23bf4
  1. Ask Cmdr: a built-in AI assistant that has access to your files to answer questions (alpha, read-only).
  2. Image index: Find your photos via natural language, by describing the stuff / text (OCR) inside them, fully
    on-device.
  3. Operation log: Review and roll back (undo) any non-destructive file change.

Plus MCP improvements and tons of bug fixes incl. CPU use improvements.

Added

  • Add Ask Cmdr, a built-in AI assistant that answers questions about your files (alpha): saved sessions, cross-thread
    search, file attachments, and visible cost (46f5719e,
    19618827,
    c067693b,
    6a2ec7b9)
  • Find your photos by description, by the text inside them, or by tag, and find visually similar images, all on-device
    (0b6e164b,
    8efd2bf2,
    3a43ff32)
  • Control image indexing under AI › Image search: a depth slider, live progress and ETA, opt-in for other drives, and
    reclaimed disk space when you narrow it (6b56d195,
    bf2ffe5d,
    e293d63f,
    47113476,
    5bb09aab,
    ed1c660f)
  • Review and roll back any file change from the new Operation log (View menu, ⌘⌥L); alpha
    (39282ade,
    4cfde6e5)
  • Compress files into a new zip from the Transfer dialog, with a compression-level slider, a live size estimate, and
    SMB/MTP destinations (cea1631b,
    0dddc0e8,
    50aeda6c)
  • Open password-protected 7z and WinZip-AES encrypted zips (506d07f3)
  • Index local external drives (USB sticks, SD cards, extra disks) so search covers them too
    (53e52e8b,
    03497f8c)
  • Search every indexed volume at once, not just the current drive, and answer "how many" with a count instead of a full
    list (a141cc24,
    4426bffc)
  • Let external AI agents rename, create, tag, favorite, eject, pick trash-vs-delete, drive the operation queue, and read
    indexing status and folder importance over MCP (e59f95af,
    a723a623,
    d8c6dc3c)
  • See what's new after an update in a redesigned popup, and open the full changelog from Cmdr › Changelog…
    (bacc1d9e)

Changed

  • Scan local drives up to 2.8x faster with a bulk-stat walker
    (b2b30ac4,
    d6185b65)
  • Use less CPU and memory while indexing: lower-priority background threads, throttled live writes, and a lighter file
    list (2671c00d,
    846cf21a,
    6032386d)
  • Auto-reconnect an SMB share and resume its index after a disconnect or restart
    (499027b5)

Fixed

  • Keep folder sizes accurate after big deletes and creates; existing drives repair drifted sizes automatically on the
    next launch (3d13ab7d,
    acefb9a6)
  • Show an honest "indexing stopped" badge when a drive's index fails, instead of spinning silently
    (1cc60856)
  • Refresh Google Drive panes live after rename, create, and delete
    (b0ccff5e)
  • Never freeze at launch or stall state reads on a hung network mount
    (cb669ab2)
  • Fix scoped search silently returning nothing for /tmp and /var paths
    (1a448f17)
  • Fix scoped filename search returning no results on a NAS (bdcdb7ab)
  • Match image tag search regardless of case (092696aa)
  • Stop MCP-created or moved files landing in the wrong pane (2125b522)
  • Prompt for SMB credentials instead of falling back to the CLI when a share rejects guest access
    (9cbd0277)

Non-app

  • Split the largest source files into cohesive modules for maintainability
    (0cf01dc0)
  • Add Ask Cmdr and the Operation log to the website features page
    (14c3d230,
    6735cc6d)
  • Bump spin off the yanked 0.9.8 (5eb645bf)

Cmdr v0.33.0

Choose a tag to compare

@github-actions github-actions released this 09 Jul 07:53
95f73d8
  1. Cmdr now handles archives: browse .zip, .tar, .tar.gz, and .7z files like folders, edit them in place, even
    ones stored on a phone or SMB share. 2. Can now paste text or images straight into new files with ⌘V. 3. Search now
    ranks your most interesting files first.

Added

Changed

  • Rank your more interesting files higher in search results (1a998e47)
  • Extract large folders from compressed .tar and solid .7z archives much faster
    (be11894e)

Fixed

  • Fix a moved or deleted file lingering in the source pane on MTP devices until manual refresh
    (bd8dc8de)
  • Keep the inline rename box on the right file when the folder reorders underneath it
    (5e5ee92d)
  • Stop a background folder load in one pane from clearing the other pane's messages
    (d22ab4c9)
  • Say "not supported" instead of "damaged archive" when a .7z uses encryption Cmdr can't read
    (b7ae624e)

Non-app

  • Upgrade the website to Astro 7 for even more Rust! (81d0f575)
  • Consume smb2 0.12.0 from crates.io, dropping the local FileReader patch
    (481d6834)

Cmdr v0.32.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 05:25
b2cd030

Design tweaks: colors, icons, dropdown design, and text alignment. Detect and display file systems, disallow copying
4GB+ files to FAT32 volumes.

Added

  • Block copying or moving a file too large for the destination drive
    (f177b604,
    e0450ca8)
  • Show each real volume's filesystem (APFS, exFAT, FAT32, ext4, etc.) in the volume picker
    (c34d10de)

Changed

  • Redesign every modal dialog to the macOS layout: left-aligned titles and text, right-aligned buttons, labeled Action
    and Route rows, folder and file icons, and tooltips on the scan status icons
    (95191e2e,
    b19ccb45)
  • Make the Copy/Move destination box forgiving: accept ~ and ~/…, show the home folder in full, and create a missing
    destination folder on confirm on every drive (b19ccb45)
  • Replace UI emoji with themeable Lucide icons across dialogs, menus, settings, and the network browser for sharper
    contrast in light and dark (ffd03c90,
    5baba851,
    48f3561f)
  • Redesign the Select dropdown as a native macOS pop-up button with a frosted-glass menu that opens over the trigger
    (643f4200)
  • Brighten dark-mode secondary text and the selection red for clearer readability
    (bbe29581)

Fixed

  • Fix the Homebrew install silently failing for new users on Homebrew 6 (now runs the required tap-trust step), and stop
    onboarding text showing literal > and & (dbceea71)

Non-app

  • Enforce an APCA Lc-45 contrast floor alongside WCAG 2.2 AA, clearing the last low-contrast spots so every text pair
    passes both (f6ccc188,
    e28b9a0e,
    cf33ac82)
  • Add the full Tailwind v4 OKLCH color scale as reusable design tokens
    (3a2809b2)
  • Upgrade the Node toolchain to 26 and relax the dependency cooldown to 3 days
    (4c5ef483,
    714caeae)

Cmdr v0.31.0

Choose a tag to compare

@github-actions github-actions released this 30 Jun 00:27
e6e49fc

See/set macOS Finder colored tags. Nicer Drive indexing UI, live folder sizes during scans, plus network and phone scans
finish several times faster than before.

Added

Changed

  • Show folder sizes growing live during a network drive or phone scan, not only on the local disk
    (5a86abaf,
    ee9ee757)
  • Speed up network and phone drive scans by listing directories concurrently, dropping long scans from minutes to
    seconds (a003f004,
    6518b565)

Fixed

  • Fix the indexing progress counter freezing mid-scan, making a healthy scan look stuck
    (7568931c)
  • Fix one drive's scan lighting the size-updating hourglass on folders of every drive
    (d4105d98)
  • Fix a failed local scan sticking on a spinner instead of offering a rescan
    (61c66a0c)
  • Fix a network first scan stalling for hours on NAS snapshot folders
    (bb64ad38)
  • Fix a reindex wedging on a large set of changes (12e98e52,
    e4e13ed9)
  • Fix folder size totals double-counting hardlinked files during a rescan
    (ca4151e6)
  • Fix search, Go to path, and AI navigation sometimes opening a path on the wrong drive
    (3024839e,
    b029c435,
    ab44a722,
    f6e93c23)
  • Stop the file index wasting disk space after a version upgrade
    (1536d307)
  • Fix the file viewer failing to load lines when a file's line count is still unknown
    (83ad3ceb)

Non-app

Cmdr v0.30.0

Choose a tag to compare

@github-actions github-actions released this 28 Jun 17:11
9c7a7af

See folder sizes while indexing is going, browse your phone while a copy/move/delete is going, and get better
mouse-driven navigation. Network drive rescans are also faster now.

Added

  • MTP: Browse a phone while a transfer runs (06d1874d,
    4a01ad7f,
    f002606d,
    edc89aa2)
  • Navigate pane history with mouse's back/forward side buttons
    (fcf34143)
  • Click breadcrumb segments to jump to any ancestor folder, double-click empty pane spce to go to parent
    (dcc5b2e7)
  • Explain why a phone's folders add up to less than its used space
    (caedb655)

Changed

  • Show folder sizes while indexing: ≥lower-bound when partially scanned, also unknown and stale
    (494849a9,
    d9dbf076,
    c4b20c96,
    fdadfc8f,
    9f318e74)
  • Speed up SMB and MTP rescans: update in place and keep last-known sizes visible while scanning
    (a6a2f586)
  • Stop showing indexing notif and free space for DMGs, and show the read-only lock for read-only mounts
    (889859c4,
    1ea48634)

Fixed

  • Fix progress bars for cross-volume folder copy and move (38c405ec)
  • Fix a UI freeze when starting a manual rescan (880688c9)
  • Fix enabling or rescanning an SMB share or MTP device indexing nothing
    (d4527575,
    a8007894)
  • Show the indexing indicator for SMB and MTP drives, not just the local disk
    (ef6005d4)
  • Keep an honest stale index when a drive disconnects mid-scan instead of marking it complete
    (4d66beb0)
  • Rebuild falsely-complete network indexes from earlier builds on upgrade, no manual action
    (3109ab69)
  • Detect and explain Linux MTP permission denials from missing udev rules
    (51eee35d)

Security

  • Patch quinn-proto (remote memory exhaustion) and memmap2 advisories
    (584aa27f)

Non-app

Cmdr v0.29.0

Choose a tag to compare

@github-actions github-actions released this 21 Jun 23:12
8a21050

Four big features: 1. Operations (copy, move, and delete) got pause/resume. 2. Operations can be queued. 3. Drive
indexing extended to all volume types incl. SMB shares and MTP devices. 4. Cmdr is now localized into nine languages.

Added

  • Translate Cmdr into nine languages: German, Spanish, French, Hungarian, Dutch, Brazilian Portuguese, Swedish,
    Vietnamese, and Simplified Chinese (5af98fea,
    43b7f4c2,
    042c7b01,
    a34ef72f)
  • Pause/resume any operation (eeef1e2f)
  • Add a Queue window for ops, with pause/resume/cancel plus multi-select
    (c06b485d,
    e279945b,
    49c7b126)
  • Add Pause/Resume and Queue (F2) controls to transfer progress dialog
    (07dd837c)
  • Index SMB shares and MTP devices so folder sizes and search work, with scanning/fresh/stale statuses
    (384bffe2,
    7b084cdf,
    049e9f49,
    e4cdbb8f,
    386e9c13,
    fbacdbd0)
  • Add a per-drive index status badge and menu in the volume switcher
    (a36e7033,
    eaa2eea0)
  • Add drive-indexing controls in Settings, a "index this drive?" prompt, and a one-time "drive stale" notice
    (bcd433ae,
    0dddb45c)
  • Show a live file count while a drive index scans, instead of a frozen label
    (eca50e21)
  • Add ⌘↓ to open the item under the cursor, ⌘⌫ to move it to the trash, and ⇧- to deselect files
    (54e8bdeb)

Changed

  • Keep MTP devices responsive during a background index scan: navigation, copy, and delete no longer stall behind it
    (0fa3faf9)
  • Refresh only the affected folder on MTP changes, instead of every open pane on the device
    (7a08831a)
  • Honor macOS Reduce transparency app-wide: every translucent surface goes opaque when the setting is on
    (298bdede)
  • Go back to the SMB host list with ⌘↑ in the share list, matching Backspace
    (1115440a)

Fixed

  • Fix the error reporter crashing on log lines with accented characters or emoji
    (72a800ee)

Non-app

  • Speed up releases by reusing a persistent cargo build dirs and mise cache across architectures and releases
    (bc2b3779)
  • Build the translation methodology: per-lang style guides, glossaries, and a reference-pile across 139 languages
    (45b6a7dd,
    0759d720,
    ece168ea,
    fbddd165)

Cmdr v0.28.0

Choose a tag to compare

@github-actions github-actions released this 18 Jun 23:49
455723a

The file viewer now renders images and PDFs inline, local and custom AI endpoints like Ollama and LM Studio work, and
counts and file sizes follow your Mac's region. The volume selector also gets a frosted-glass look.

Added

  • Show images and PDFs inline in the file viewer, with a Text/Image/PDF mode switch and a view-as-text fallback
    (ccfb536c,
    c03c0715,
    e46cc1be)
  • Give the file viewer its own working menu bar on macOS: File, Edit, and View (with Word wrap) when it's focused
    (60b7b568)

Changed

  • Give the volume selector a frosted-glass material and honor macOS Reduce transparency across the app
    (a10d7def)
  • Keep the volume selector open while ejecting, and make its row menu native
    (84fe8c66)
  • Major Settings revamp: Group Settings pages into cards and make Advanced settings findable from the main search
    (3f9168ce,
    43fb5ad1,
    027a89ed)
  • Format counts and file sizes by your Mac's region instead of always US formatting
    (0324047b,
    83906c5a)
  • Show real macOS default icons while the icon cache loads, replacing the emoji placeholders
    (8ea3a54a,
    7272df9d,
    9b41bcc3)

Fixed

  • Fix local and custom AI endpoints (Ollama, LM Studio): the model picker now selects, and keyless endpoints register as
    configured (e8389003)
  • MTP: Heal a stale destination folder on MTP upload and retry instead of failing the copy
    (010d8b45)
  • File viewer: Scroll search matches into view, and enable cut and paste in the search box
    (0496700a)
  • Show the running app version in copied diagnostic info, not a stale hardcoded one
    (32bce781)
  • Harden the backend against silent crashes and unsafe-code mistakes, and clear out dead code
    (d1e4f76f,
    6d2acfb0,
    ab34d853)
  • Update the MTP library to 0.20.0 for transaction-ID self-heal and stale-handle recovery
    (7fedfadc)

Non-app

  • Lay the full groundwork for translating Cmdr into other languages (English-only for now): a message catalog of ~2,070
    strings, region-aware number and date formatting, tooling that finds clipped text and screenshots every screen for
    translators, and a Language picker (56acb6c1,
    17e05af8,
    2b085afc,
    375600ce,
    8af5a0bb,
    a3a9ef3c)
  • Move all error wording to the frontend so it's ready to translate, with the logic staying in Rust
    (1e918e06,
    77a851b8)
  • Cut the docs that load into every AI coding session by two-thirds, and add checks to keep them lean
    (b84ca26a,
    1ce6e7bb,
    3dad7e03)
  • Route every in-app icon and spinner through shared components, and split several oversized files into focused ones
    (94b6218a,
    751e9bc4,
    d3c50a87)
  • Keep automated test runs from disturbing the developer's real apps, data, and keychain
    (28b6bcaf,
    2476aba4,
    3a56d765)

Cmdr v0.27.0

Choose a tag to compare

@github-actions github-actions released this 14 Jun 07:46
5f8383b

You can now add/rename/reorder/remove Favorite folders in the Volume selector, hide the bottom F5/F6/F8 bar, and can set
Full mode to display filenames+extensions in one column. Also added Help > Keyboard shortcuts, a What's new popup that
shows up after Cmdr updates, and improved the Full Disk Access part of the onboarding.

Added

  • Show a What's new popup after Cmdr updates, with the changelog since the version you last saw and an opt-out in
    Settings (4e5ccbba,
    cc222919,
    04f75ddb,
    9ca6c524)
  • Curate your favorites in the volume switcher: add (command palette, Go menu, or right-click a folder), rename, reorder
    by drag or ⌥↑/⌥↓, and remove (c660d6f4,
    685fcac5,
    335331ef,
    608b8c81,
    d3db386f,
    9dc2e968,
    e3acd2a4)
  • Add a Help > Keyboard shortcuts window: a scannable reference of every command's shortcuts, live-synced to your
    customizations (3bcbc285)
  • Add a setting to show full filenames in the Name column instead of splitting off the extension
    (27060493)
  • Add a setting to hide the bottom function key bar (950a213c)

Changed

  • Onboarding now detects Full Disk Access the instant you grant it, and gets Cmdr into the macOS 13+ Full Disk Access
    list (dbf4d70b,
    19e992dc)
  • The AI cloud model picker now loads its list on open and keeps it when you reopen
    (f8aa514d)
  • In Search and Select, ⌥←/⌥→ now move by word in the query field instead of navigating folders
    (dd8573b2)
  • Search now remembers your query when you open a single result, not only "Open in pane"
    (5eae2139)

Fixed

  • Fix dragging a file from Cmdr into a browser upload field doing nothing
    (7c338b51)
  • Fix the file viewer misreading some binaries as UTF-16, which slowed the open by about a second
    (8f069f28)
  • Fix the downloads jump re-opening a folder already shown in the other pane
    (9eee5395)
  • Fix Search abbreviating paths that fit the column (3e558c7f)
  • Fix a rare drive-indexer race that could lose a folder's size
    (439d7fcb)
  • Stop local AI logging an error when you turn it off while it's still starting
    (1c8363b4)

Non-app

  • Add a KV-backed ?r= short-code system so tracking links expand to UTM params without a website deploy
    (f2b2c465,
    7a532406)
  • Fix silently-broken Umami and PostHog injection (website analytics had stopped loading), and add a check guarding the
    regression (9cb620e8,
    36d85974)
  • Add a per-day acquisition funnel with first-touch channel attribution to the analytics dashboard
    (8cae7906,
    a1dd804e,
    a011de50)
  • Split the analytics dashboard into Acquisition, Product, and Link codes pages
    (83eb55be)
  • Converge the app's dropdowns onto two reusable Ark primitives for a consistent macOS-native look
    (d282fdba,
    6ac9016e,
    a705696d,
    69130e27,
    5f355670)
  • Add a docs-reachable check keeping every doc linked from the repo root, and connect the orphaned docs
    (69e91dbe,
    185afddb,
    74ef31ee,
    36b7075b)
  • Quiet the drive indexer's UNIQUE-conflict warning to fire only when two writers are racing the database
    (ba5a538c)
  • Ban two-column tables in agent-facing docs and convert all 130 existing ones, with a check enforcing it
    (a909679b)

Cmdr v0.26.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 14:05
b98c69a

This release sharpens the Search and Select dialogs: a Files or Folders filter, folders matched by size, an AI strip
that shows what the agent did, and your last query waiting for you on reopen. File-list dates and sizes now line up into
clean columns, and you can install Cmdr from Homebrew.

Added

  • Add a Files or Folders filter to Search and Select, matching folders by their recursive size
    (600b23ca)
  • Add an AI strip to Search and Select that shows the pattern and filters the agent set, with a spinner while it
    translates (2328f469)
  • Install and upgrade Cmdr from Homebrew with brew tap vdavid/tap && brew install --cask cmdr
    (65729ee8,
    6490cb16)
  • Add a Discord community link to the About window and website footer
    (f65050b5)

Changed

  • Search and Select now remember your mode, text, and filters, and show your last results the moment you reopen
    (a5c60359,
    df819509)
  • Keep your typed text when switching filename, regex, and AI modes, and land the cursor on the first file after a
    Select (8c90428e)
  • Line up the Modified and Size columns with tabular figures, and default to ISO 8601 dates
    (b84d6877)
  • Enlarge the Search and Select dialog text a step and clear it to AA contrast
    (9effb0e5)

Fixed

  • Fix Select doing nothing when you set only a size or date filter and leave the name empty
    (89204c28)
  • Fix the size filter ignoring a 0 bound, and add a one-click = comparator
    (0071a009)
  • Fix an AI search keeping a stale size or date filter from the previous run
    (69ca52e5)
  • Fix the onboarding AI step's provider list overflowing the options below it, and two stale provider links
    (44c905c1)
  • Fix commercial purchases not issuing a license (5e053ee6)

Non-app

  • Dashboard download count now means new installs, with a new-vs-update chart
    (7ff2b6f3)
  • Add a feedback and error-report section to the private dashboard
    (e449b007)
  • Add a /feedback-and-error-digest-from-app command for agents
    (77b49d09)
  • Cap each dashboard data source at 20s so one hung upstream can't 524 the page
    (8b2909a0)
  • Capture real app screenshots and add a tracked brand/ asset home
    (1b38da54,
    8fa73633)
  • Promote the Search and Select chip and popover primitives to lib/ui
    (14abab0d)
  • Quiet noisy dev-run logs (812e0bb5)
  • Fail the website build if a sandbox Paddle token would ship to production
    (7d227942)
  • Show a Discord invite modal after a website download (46829c22)
  • Use david@getcmdr.com as the public contact address (a667f7ce)
  • Clone target/ to skip the full Rust rebuild on a fresh worktree
    (a2cbfce2)

Cmdr v0.25.0

Choose a tag to compare

@github-actions github-actions released this 10 Jun 22:50
876e440

Cmdr is now an open beta: stability badges, a Send feedback channel, and anonymous usage stats you can opt out of. SMB
sign-in got smoother, and keyboard shortcut customization got a deep round of fixes.

Added

  • Mark Cmdr as an open beta in onboarding and the About window, with a personal intro from David
    (7ce2c5e4,
    b2b27d8f)
  • Add a Send feedback dialog (Help menu, command palette); notes go straight to David
    (79c4a6c9,
    6bdb188a)
  • Add stability badges (ALPHA, BETA) in the app and a feature status page on the website
    (219549db)
  • Add anonymous beta usage analytics (daily-active count, PII-free feature events), disclosed during onboarding, opt-out
    under Settings > Updates & privacy (d1c481f0,
    c328bb13,
    b2b27d8f)
  • Group crash and error reports per install, with an optional reply-to email so David can follow up
    (71da738c)
  • Add a progress bar, percent, and ETA to drive indexing, now a calm hourglass with details on hover
    (bc824f18,
    6defbf74,
    b03387e2,
    f8694ce8)
  • Add a low-disk-space warning (in-app toast or macOS notification), configurable under Settings > Behavior
    (15ad9cf9)
  • Drag files from your phone or NAS straight to Finder or the Desktop, with a toast tracking the download
    (c97a032f,
    9e54719d)
  • Teach the go-to-latest shortcuts (⌘J in-app, ⌃⌥⌘J from anywhere) in the downloads toast, now collapsible
    (1da0b835,
    9ab2cf4f,
    15fc9395)
  • Shortcut hints across the app (F-key bar, toasts, onboarding) now follow your custom bindings live
    (123e76b7,
    e756a379,
    18acf50f)
  • Click any shortcut hint to jump to its row in Settings (b38f6cf8)
  • Offer Finder's saved SMB password on "Connect directly", so a Finder-known share connects without retyping
    (2ccb45de,
    3b07b0f2)
  • Prompt for a fresh sign-in when a NAS password changes, instead of a misleading "unreachable" banner
    (7c654e70)
  • Add drag auto-scroll near a pane's top or bottom edge (6d1ca01b)
  • Prepare brew install --cask cmdr for installing Cmdr via Homebrew
    (9348f888)

Changed

  • Reuse a saved SMB password instead of re-prompting on every connect
    (d12f8d3d,
    7c654e70)

Fixed

  • Fix connecting to a password-protected NAS dead-ending in macOS's cryptic "error code -6600"; Cmdr now shows its own
    login form right where you are (0e1bc77d)
  • Picking an already-mounted share now goes straight there, even under a different name (Bonjour vs IP)
    (0e1bc77d)
  • Fix the wrong-password message and a stale connection dot after an SMB sign-in fails
    (5846d351)
  • Fix cloud AI for Groq, OpenRouter, DeepSeek, and Mistral (they were routed to the wrong API)
    (08aa31e1)
  • AI search applies its translation again and reports failures (out of quota, bad key, timeout) instead of silently
    doing nothing (11f59ea1)
  • Move a stranded plaintext AI key from settings.json into the OS secret store
    (c9d45e09)
  • Fix copying or moving an empty folder silently doing nothing, and across drives deleting the source
    (5053ea0b)
  • Fix the file viewer cutting off the file after about 60 lines with word wrap on
    (0655dc0b)
  • Fix dialogs leaking focus into the background and locking out the keyboard after two Tabs
    (f2e04973)
  • Closing Search or Select files with Esc no longer kills pane keyboard navigation
    (040d424e)
  • Fix ⌘A doing nothing in the Settings and viewer windows (d99fafc1)
  • Fix drag-out from a phone or network pane dropping a junk .textClipping file or pasting a meaningless path
    (6e8ac5ae)
  • Fix index rename failing when the destination name is already taken
    (dea07427)
  • Harden shortcut capture: bare keys don't fire mid-typing, and macOS-owned combos (⌘Space, ⌃↑) warn instead of saving
    silently (a412e599,
    92c5ad4b,
    2b7abf3f)
  • Fix custom shortcut rebinds and removals not sticking, not reaching other windows, or missing conflict detection
    (6c21fd1b,
    da570566,
    2247dac1,
    a1dae889,
    add4db81)
  • The command palette and the Keyboard shortcuts editor now show your real bindings and list every command
    (87df2ed9,
    73766c9e,
    762b3951,
    396097ff)
  • Focus the textarea when the feedback or error report dialog opens
    (6f295fc6)
  • Show "/" instead of a raw storage id (like "65537") in the tab title at a phone or camera storage root
    (582cfbaf)

Non-app

  • Rewrite the website around one honest feature list (a bento grid by capability), in a product-first voice
    (272d177e,
    e975bd0c,
    6ccb8aeb)
  • Cut the landing page from ~2.3 MB to ~0.4 MB and remove render-blocking CSS
    (5fc6729a,
    fbacb4e9)
  • Replace stringly-typed backend event emits with a typed event bus across volumes, write ops, indexing, MTP, network,
    git, and AI (f2d3febf,
    57e9c87d,
    5f510bd2)
  • Split colocated docs into CLAUDE.md and DETAILS.md) across ~30 areas, add claude-md-length check
    (9bf1a653,
    bb26f2df)