Cross-CLI Sync

MUR syncs your patterns to multiple AI tools simultaneously, so all your assistants share the same knowledge.

How Sync Works

When you run mur sync, MUR writes your patterns into each tool's native configuration format:

  • Claude Code — Updates .claude/settings.json or project CLAUDE.md
  • Gemini CLI — Updates Gemini's instruction files
  • Cursor/Windsurf/Continue — Updates rules files
  • Codex/Aider — Updates instruction files

Each tool gets only the patterns relevant to it, formatted in its preferred way.

What gets written

mur sync only writes instruction files that already exist in the repo (AGENTS.md, .cursorrules, .windsurfrules) — it never creates one. It also only writes skills that belong there:

  • Skills scoped to another project or to a fleet are left out (the same scope filter hook injection applies).
  • Skills with zero relevance to the project are left out, however often they're used elsewhere.

If nothing qualifies, the file is left untouched. An existing MUR block is not removed, so a repo that picked up unrelated skills from an older MUR keeps them until you delete the block by hand.

--project widens the match from the directory name to also include the detected language and the git remote's repo name.

Hook Integration

For real-time injection (not just static sync), MUR supports native hooks on 8 tools:

ToolHook Support
Claude Code✅ UserPromptSubmit, PostToolUse, Stop
Auggie✅ PreToolUse, PostToolUse, Stop
Gemini CLI / Antigravity✅ BeforeAgent, AfterTool, SessionEnd
Copilot CLI✅ sessionStart, userPromptSubmitted, postToolUse, sessionEnd
OpenClaw✅ session.start, session.end
Cursor✅ beforeSubmitPrompt, beforeShellExecution, stop
OpenCode✅ session.created, tool.execute.after, session.updated
Amp✅ PreToolUse, PostToolUse, Stop

With hooks, MUR injects patterns dynamically based on the current query context, rather than dumping all patterns statically.

Running Sync

# Sync to all enabled tools
mur sync

# Quiet mode (suppress output)
mur sync --quiet

# Project-aware: also match on detected language and git remote repo name
mur sync --project

Configuration

Enable/disable tools in ~/.mur/config.yaml:

tools:
  claude:
    enabled: true
  gemini:
    enabled: true

See Also