Skip to content

Releases: robin-bially/DotShelf

DotShelf 0.3.0

Choose a tag to compare

@robin-bially robin-bially released this 27 Sep 14:55

Snapshots collect in one place now, so editing a dotfile no longer buries the folder it lives in.

One hidden folder for every snapshot

  • Each save of an existing file keeps its snapshot in .dotshelf/<file>/<time>.bak beside the target instead of leaving a loose <file>.<time>.<uuid>.bak next to it.
  • The folder carries a .gitignore that ignores its contents, so a dotfile repository stops reporting snapshots as untracked files.
  • Snapshots keep the permissions of the protected file, and the file itself keeps its symlink target, its permissions and its contents.
  • Two saves within the same second still keep two snapshots: a counter replaces the UUID instead of overwriting the earlier one.

Unchanged

  • Back up on save stays in the bottom bar and is on by default.
  • Snapshots still have no in-app browser, cleanup or restore button; the roadmap covers a backup history with retention.

Full Changelog: v0.2.0...v0.3.0

DotShelf 0.2.0 — run scripts, with a real terminal

Choose a tag to compare

@robin-bially robin-bially released this 26 Sep 18:59

DotShelf can run scripts now — the way an IDE does.

Run scripts where you edit them

  • Select a shell script or a docker compose file and press ⌃R or the green play button: the command starts right away, no dialog in the way.
  • Options (command, working directory, name) stay one keystroke away: ⌥⌃R or the menu next to the play button.
  • Every run opens a temporary entry in the sidebar's Terminal section and shows its output in the editor, with stop, rerun, clear and close.
  • Shell scripts and compose files carry their own sidebar icon.

A real terminal

  • Runs happen in a real PTY: colours, line widths, keyboard input, arrows, paste and ⌃C behave like in Terminal.app.
  • A shell that waits at its prompt reads Ready — the spinner only runs while a process actually works.
  • Closing a terminal asks only while a process is still running; stopping escalates SIGINT → SIGTERM → SIGKILL within two seconds.
  • ⌥⌘T or the toolbar button opens a free login shell in the current folder, from every view.

Window

  • Starts centred at a comfortable size and no longer forces 80 % of the screen on every launch. macOS remembers the size and position you pick.

Full Changelog: v0.1.0...v0.2.0

DotShelf 0.1.0

Choose a tag to compare

@robin-bially robin-bially released this 05 Sep 15:43

Your dotfiles, within reach. DotShelf is a small native Mac app for the configuration files you keep coming back to.

Install

brew install --cask localfoundry/tap/dotshelf

Or download DotShelf-0.1.0.zip below, unzip it and move DotShelf.app into Applications.
Requires macOS 14 Sonoma or later. The Universal app supports Apple Silicon and Intel and is Developer-ID signed and notarized by Apple, with a stapled ticket.

In this first preview

  • A customizable sidebar for Claude Code, OpenCode, Zsh and your own configuration files.
  • Native editing with syntax highlighting for JSON, JSONC, YAML and shell, line numbers and search.
  • Live JSON validation and JSON formatting, with confirmation before removing JSONC comments.
  • Save/discard/cancel protection, symlink-aware saves, external-change detection and automatic backups.
  • An English interface, local file storage and no telemetry or network calls.

This is an early preview. JSONC formatting removes comments after confirmation; validation checks syntax, not schemas. Backups currently have no in-app restore browser or automatic cleanup. See the usage guide for details.

The .sha256 asset contains the checksum of the final notarized ZIP. The dotshelf.rb asset is the generated Homebrew cask.

Built by Robin Bially · Distributed through LocalFoundry.