github tylerbutler/repoverlay v0.12.0
v0.12.0 - 2026-03-27

6 hours ago

Release Notes

Command: apply

Added

Add overlay composition via extends and includes

Overlays can now inherit files from other library overlays using two new repoverlay.ccl sections. Multi-level chains are supported with cycle detection.

extends inherits all files from a parent overlay. The child's own files take precedence on conflict, making this ideal for creating specialized variants of a base overlay:


extends =
  overlay = base-config

Use case: a claude-config-strict overlay that extends claude-config and overrides just the CLAUDE.md file while inheriting everything else.

includes cherry-picks specific files from other overlays, useful when you only need a few shared files without full inheritance:


includes =
  overlay = shared-dotfiles
  files =
    .editorconfig
    .prettierrc

Use case: multiple overlays that each need the same .editorconfig from a shared dotfiles overlay, without duplicating the file.

Both features are restricted to library overlays.

Command: create

Fixed

Fall back to tracked config files when using create --yes

When --yes is used and no AI config files are found, create now falls back to tracked config files (.envrc, .gitignore, .vscode/settings.json, etc.) instead of bailing. The auto-select priority is: AI configs first, tracked configs second, then error with a helpful message.

Command: edit

Fixed

Allow edit add without git remote origin

edit add with a short-form overlay name (e.g., my-overlay) no longer requires a git remote origin. Previously, the command called detect_target_repo() to resolve org/repo for an error message hint, but this is unnecessary for the actual operation. Now uses the same inline name extraction as edit remove and edit --interactive.

Directory exclusions now persist across remove/reapply cycles

Directories removed via edit remove no longer reappear when the overlay is removed and reapplied. The ExcludedFile struct now tracks whether an exclusion is for a file or directory, and directory exclusions match descendant paths. Also fixes trailing-slash handling (.vscode/ is now treated the same as .vscode) and makes external state backup failures a hard error to ensure exclusions are always persisted.

Install repoverlay 0.12.0

Install prebuilt binaries via shell script

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

Install prebuilt binaries via powershell script

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

Install prebuilt binaries via Homebrew

brew install tylerbutler/tap/repoverlay

Download repoverlay 0.12.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.