Agentsmd Sync banner
shriramkv shriramkv

Agentsmd Sync

Development community

Description

agentsmd-sync propagates a canonical AGENTS.md into the tool files assistants read (CLAUDE.md, Copilot, Cursor, Windsurf, Cline, Gemini) via managed-block markers that keep hand-written content. A check gate fails CI on drift, completing the AGENTS.md quartet.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

agentsmd-sync

Keep the tool-specific instruction files that coding assistants read in sync with a single canonical `AGENTS.md`.

The AGENTS.md standard is widely adopted, but the ecosystem is still fragmented: Cursor reads `.cursorrules`, GitHub Copilot reads `.github/copilot-instructions.md`, Claude reads `CLAUDE.md`, and Windsurf, Cline, and Gemini each want their own file. Teams end up maintaining the same guidance in six places, and the copies drift. `agentsmd-sync` makes `AGENTS.md` the single source of truth, generates the tool-specific equivalents from it, and gives you a `check` gate that fails CI the moment they diverge.

It closes the loop on `agentsmd-resolve`: resolve computes the effective document that applies at a path, and sync propagates that document everywhere else.

Stdlib-only Python 3.9+. No dependencies.

Install

pip install agentsmd-sync
# or run from a checkout
python -m agentsmd_sync --help

Usage

Write the AGENTS.md content into every target file:

agentsmd-sync sync

See the status of each target:

agentsmd-sync list
source: AGENTS.md
  [       ok] CLAUDE.md                          Claude / Claude Code
  [    DRIFT] .github/copilot-instructions.md    GitHub Copilot
  [  missing] .cursorrules                       Cursor

Gate CI so a change to `AGENTS.md` that isn't propagated fails the build:

agentsmd-sync check

`check` exits non-zero when any target's managed content has drifted from the source. Add `--require-all` to also fail on missing or unmanaged targets.

Preview what a sync would change without writing anything:

agentsmd-sync diff

Default targets

Key File Tool
claude CLAUDE.md Claude / Claude Code
copilot .github/copilot-instructions.md GitHub Copilot
cursor .cursorrules Cursor
windsurf .windsurfrules Windsurf
cline .clinerules Cline
gemini `GEMINI.m