Also, if you use Claude Code, it reads a gitignored CLAUDE.local.md next to CLAUDE.md, so you don't need a second repo. For worktrees, import one file from your home directory: @~/.claude/my-project-instructions.md
The hardest part is keeping the information true in all of these prompts as the project evolves. We built Substrate for that: one memory outside of any agent that Claude Code, Codex and Cursor read, where every fact keeps its source.
Also, if you use Claude Code, it reads a gitignored CLAUDE.local.md next to CLAUDE.md, so you don't need a second repo. For worktrees, import one file from your home directory: @~/.claude/my-project-instructions.md
The hardest part is keeping the information true in all of these prompts as the project evolves. We built Substrate for that: one memory outside of any agent that Claude Code, Codex and Cursor read, where every fact keeps its source.
Do your agent files drift between tools? https://trysubstrate.co/l/a3hn
I use Claude Code. If you gitignore CLAUDE.local.md, you won't have versioning/history for that file (which you will have if you use git-dupe).
git-dupe also supports linked worktrees.
Fair point, a gitignored file has no version history. git-dupe gives you that, and worktree support.
Substrate, for example, keeps the history of edits to every fact, and the source of it.