A small, native Mac app for the config files you keep coming back to.
Keep them in one sidebar. Make an edit. Get back to work.
Get started · Features · Roadmap · Feedback
Built by Robin Bially · Part of LocalFoundry
The actual DotShelf interface, in English, with example configuration files. Click for the full-size screenshot.
Your shell settings live in one hidden folder. Your AI tools keep their configs in another. You know the change you want to make; finding the file is the tedious part.
DotShelf gives those files a permanent home in a sidebar. Open your Claude Code
settings, tweak an OpenCode config or update .zshrc in a focused native editor.
Add any other file you return to often, and give it an icon and color of its own.
Everything stays on your Mac. No account, network calls or telemetry. Built with SwiftUI and AppKit, with no third-party runtime dependencies.
| What you get | |
|---|---|
| A shelf for your configs | Built-in entries for Claude Code, OpenCode and Zsh. Add your own files, including hidden ones, and collapse the sidebar into an icon rail. |
| Comfortable editing | Syntax highlighting for JSON, JSONC, YAML and shell, plus line numbers, search and adjustable text size. |
| Instant JSON feedback | Live syntax validation for JSON and JSONC. Format JSON in a click; formatting JSONC asks before removing comments. |
| Control over your edits | Save explicitly with ⌘S. Save, discard or cancel when leaving unsaved changes. Failed saves keep your buffer intact. |
| Careful file handling | Preserve symlinks and existing permissions. Detect external changes before saving. Create new files with owner-only permissions. |
| Backups by default | Each save of an existing file creates a separate backup beside its target. |
English is the default interface language. See the usage guide for keyboard shortcuts, default file locations and current limitations.
Requires macOS 14 Sonoma or later. The Universal app runs on Apple Silicon and Intel Macs, is signed with Developer ID and notarized by Apple.
brew install --cask localfoundry/tap/dotshelfHomebrew downloads the verified release from this repository through the
LocalFoundry tap.
To update later, run brew update && brew upgrade --cask dotshelf.
Unzip the download, drag DotShelf.app into Applications, and open it. See the release notes for changes and the SHA-256 checksum.
Early preview: DotShelf is ready to try, with more improvements planned. See the current limitations and share feedback through Issues.
- Pick a file from the sidebar, or use + to add an existing one.
- Make your change. JSON validation updates as you type.
- Press ⌘S. Backups are enabled by default.
Build from source
Requires Xcode 26.3 or newer. Select your full Xcode installation as the active developer directory, then run:
git clone https://github.com/RobinBially/DotShelf.git
cd DotShelf
./build-app.sh
open ~/Applications/DotShelf.appThe build script installs a locally signed app in ~/Applications.
See build options for a different destination or a Universal build.
The next useful additions are backup history with restore, a diff for external changes, TOML support and Quick Open with ⌘P. The roadmap explains the ideas and their status.
Have a config workflow DotShelf could make easier? Open an issue with your use case. Bug reports and focused pull requests are welcome.
SwiftUI provides the app and sidebar; AppKit powers the text editor. English strings live in localization resources. Regression tests cover JSON parsing, file safety, unsaved changes, lifecycle handling and localization.
swift test
python3 scripts/check-localization.pyTests require full Xcode. GitHub Actions runs the tests and builds an app artifact. A separate manual workflow prepares a signed, notarized draft release once Apple credentials are configured.
Contributor guide · Build & release guide · Release review
No open-source license has been selected yet.
