Right now the agent resolution order is:
~/.multiclaude/repos/<repo>/agents/ (local per-repo)
<repo>/.multiclaude/agents/ (checked-in per-repo)
There's no global layer. If you maintain a personal set of customized agents (e.g. a pr-shepherd that notifies you instead of merging, a tuned worker prompt), you have to either re-apply them to every repo on init or maintain per-repo symlinks from a dotfiles manager.
Proposal
Add ~/.multiclaude/agents/ as a new global base layer in the resolution order:
~/.multiclaude/agents/ ← global defaults (new)
~/.multiclaude/repos/<repo>/agents/ ← per-repo local overrides
<repo>/.multiclaude/agents/ ← checked-in team overrides
Same merge semantics as today: each layer appends to / overrides the layer below. A per-repo definition wins over the global one; a checked-in repo definition wins over the per-repo local one.
Why this matters
Makes dotfiles-based multiclaude configuration actually ergonomic. You symlink ~/.multiclaude/agents/ to your dotfiles once, and every new repo you init picks up your standard agents automatically — no post-init ceremony required.
Implementation
Small change to internal/agents/Reader — add a third globalAgentsDir field populated from ~/.multiclaude/agents/, read it first in ReadAllDefinitions, then layer local and repo on top.
Right now the agent resolution order is:
~/.multiclaude/repos/<repo>/agents/(local per-repo)<repo>/.multiclaude/agents/(checked-in per-repo)There's no global layer. If you maintain a personal set of customized agents (e.g. a
pr-shepherdthat notifies you instead of merging, a tunedworkerprompt), you have to either re-apply them to every repo on init or maintain per-repo symlinks from a dotfiles manager.Proposal
Add
~/.multiclaude/agents/as a new global base layer in the resolution order:Same merge semantics as today: each layer appends to / overrides the layer below. A per-repo definition wins over the global one; a checked-in repo definition wins over the per-repo local one.
Why this matters
Makes dotfiles-based multiclaude configuration actually ergonomic. You symlink
~/.multiclaude/agents/to your dotfiles once, and every new repo you init picks up your standard agents automatically — no post-init ceremony required.Implementation
Small change to
internal/agents/Reader— add a thirdglobalAgentsDirfield populated from~/.multiclaude/agents/, read it first inReadAllDefinitions, then layer local and repo on top.