github tylerbutler/repoverlay v0.11.0
v0.11.0 - 2026-03-17

latest release: v0.11.1
12 hours ago

Release Notes

Fixes

Fixed

Write git exclude entries to the common git directory for worktrees

Git reads info/exclude from the shared .git/ directory, not the worktree-specific $GIT_DIR. Overlay files applied in worktree checkouts would show as untracked because exclude entries were written to the wrong location. Now uses git rev-parse --git-path to resolve the correct path.

Command: library

Added

Add in-repo overlay library (repoverlay library)

You can now store overlays directly in your repository at .repoverlay/library/, making them shareable with your team via version control. The new library subcommand group provides full lifecycle management:

  • library list — see what's in the library

  • library import <path-or-name> — add an overlay (accepts filesystem paths or applied overlay names)

  • library export <name> <dest> — copy an overlay out of the library

  • library remove <name> — delete from the library

Library overlays integrate throughout the tool:

  • apply my-overlay resolves from the library first (highest priority)

  • apply my-overlay --from @library targets the library exclusively

  • create --into library creates overlays directly in the library

  • browse includes library overlays alongside configured sources

  • browse works with library-only repos — no external sources required

The library path defaults to .repoverlay/library/ but is configurable via library_path in your repo's repoverlay.ccl config. .gitignore is automatically updated to ensure library contents are tracked by git.

Command: browse

Added

Show last-updated timestamps for applied overlays in browse UI

Applied overlays now display relative timestamps (e.g. '2 days ago') in the browse selection UI instead of a plain 'already applied' label, making it easier to see how recently each overlay was synced.

Auto-detect flat folder layout for local sources

Local directory sources no longer require org/repo/name nesting. Flat directories are auto-detected: a directory with overlay files is treated as a single overlay, and subdirectories are each treated as separate overlays.

Changed

Promote browse as the primary overlay workflow

Updated help text, README, and CLI reference to recommend browse as the primary entry point for interactive use. The apply command remains available for scripting and power users. Improved the error message when no sources are configured.

Command: create

Added

Support glob patterns in --include flag

The --include flag on create now accepts glob patterns (e.g., *.md, .claude/**) in addition to exact file paths. Globs are expanded relative to the source repository root using standard glob syntax.

Fixed

Discover committed config files in source repositories

create now discovers tracked config files (e.g., .envrc, .vscode/, justfile, Cargo.toml, Dockerfile) in addition to AI configs, gitignored, and untracked files. Detection uses an exclusion-based heuristic that filters out source code, documentation, and media rather than trying to allowlist config patterns. Also fixes output path to create overlay at output/<name>/ subdirectory.

Performance

Fix UI hang on large repos during overlay creation

Skip transient tool state directories (worktrees/, todos/) during AI config directory walking, reducing discovered files from ~59K to ~22 on repos with large .claude/ directories. Also fix O(n²) ancestor traversal in the selection UI with a pre-built parent lookup map, and add a progress spinner with Ctrl+C support for git clone/pull operations.

Command: edit

Fixed

Fix edit add failing on directories with "Is a directory" error

The edit add command now correctly handles directories (e.g., .claude/commands) by using recursive directory copy, directory symlinks, and EntryType::Directory in overlay state. Rollback logic also properly restores directories on failure.

Remove git remote requirement for locally-applied overlays

edit add no longer requires a git remote origin when working with overlays applied from local paths. Remote detection is deferred to only when needed for overlay repo auto-commit.

Persist edit exclusions across remove/reapply cycles

Files removed via edit remove now stay removed when an overlay is removed and reapplied. Exclusions are tracked in overlay state and persisted in the external backup so they survive the full lifecycle.

Command: restore

Fixed

Restore broken symlinks without requiring --force

restore no longer errors when an overlay's state exists but its symlinked files have been deleted. Since restore's purpose is to re-create missing files, it now always forces past the "already applied" check.

Command: source

Added

Support local directory sources for overlays

Register directories as overlay sources using source add ./path. Local sources are stored in a per-repo config file (.repoverlay/config.ccl), which is automatically git-excluded. Paths must start with /, ./, or ~ to be recognized as local (otherwise treated as git URL/shorthand). Local sources skip cloning and caching — overlays are read directly from the filesystem. Use source list and source remove to manage both global git sources and repo-local sources.

Command: switch

Added

Add --dry-run support to switch command

The switch command now supports --dry-run to preview what would change without making modifications, consistent with apply, remove, restore, and update.

Command: sync

Fixed

Skip non-syncable overlays gracefully in --all mode

sync --all no longer fails when only locally-applied overlays are present. The overlay repo manager is now lazily initialized, only created when a syncable overlay is encountered. Local and GitHub overlays are skipped with a warning message.

Install repoverlay 0.11.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/tylerbutler/repoverlay/releases/download/v0.11.0/repoverlay-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/tylerbutler/repoverlay/releases/download/v0.11.0/repoverlay-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install tylerbutler/tap/repoverlay

Download repoverlay 0.11.0

File Platform Checksum
repoverlay-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
repoverlay-x86_64-apple-darwin.tar.xz Intel macOS checksum
repoverlay-x86_64-pc-windows-msvc.zip x64 Windows checksum
repoverlay-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
repoverlay-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

Don't miss a new repoverlay release

NewReleases is sending notifications on new releases.