Current release: repoverlay 0.17.1.Release notes

Your agent’s setup,
in every repo.

Bring instructions, skills, and tools to your AI assistant with a reusable profile. New files stay local. Changes to existing tracked files remain visible in git.

Start with one instruction file. Add skills, agents, and MCP servers when you need them.

# First define rust-dev in Quick Start.
$ repoverlay profile apply rust-dev --harness claude
Applied profile rust-dev for claude
$ repoverlay profile status
rust-dev (claude)
$ 
rust-dev appliedmanaged, removable
  • rulesYour first profile: repo-local instructionsCLAUDE.md

A new file is git-excluded. If CLAUDE.md already exists, the profile adds a managed section without hiding your git diff.

One binary, no runtime

Homebrew for macOS or Linux, or build with Cargo.Windows and all install options.

Just need config files?

Use an overlay for a bundle of files, or a profile to combine overlays with agent instructions and plugins. Keep your personal setup available across checkouts, including forks.

How an overlay works, in four steps.

repoverlay places files, excludes new paths from git, and can put them back. Browse a source to see what’s available:

$ repoverlay browse tylerbutler/overlays
  1. Source

    Point at a source

    Name an overlay by owner, repo, and path, or browse a source to see what is available.

    tylerbutler/overlays/claude
  2. Place

    Files land in the working tree

    repoverlay symlinks each file into place, or copies it on Windows and whenever you ask.

    .claude/settings.json
  3. Exclude

    New files stay local

    New paths are added to .git/info/exclude. Existing tracked files remain visible to git.

    .git/info/exclude
  4. Restore

    Restore after cleanup

    State is backed up outside the repo. Restore file overlays from their sources after git clean.

    ~/.local/share/repoverlay/applied/
Already know the overlay?

Skip the browser and apply it directly.

$ repoverlay apply tylerbutler/overlays/claude

The details that make it practical.

Keep control of your checkout.

Remove a profile with its matching harness. Restore file overlays from their sources after cleanup. Inspect changes with git diff before you commit.

  • $ repoverlay profile remove rust-dev --harness claude

    Removes the example profile’s managed instructions. Use the same profile name and harness you applied.

  • $ repoverlay restore

    For file overlays, restore after git clean removes them. Recovery state is stored outside the repo; keep the overlay sources available.

.git/info/exclude
.claude/settings.json.claude/skills/rust/.mcp.json

Added on apply, stripped on remove. Your committed .gitignore is never touched.

Set up your configs once.

Try one instruction file, inspect the result, and remove it when you’re done.