Observed since 21 Oct, 10:15 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Generate AI coding assistant config files from a single source. 12 tools, 1 command.
Write once. AI everywhere.
Generate config files for 12 AI coding assistants from a single source of truth.
Every AI coding tool uses a different config file:
| Tool | Config File |
|---|---|
| Claude Code | CLAUDE.md + .claude/rules/ |
| Codex CLI / Amp / OpenCode / Warp | AGENTS.md |
| Gemini CLI | GEMINI.md |
| Cursor | .cursor/rules/*.mdc |
| GitHub Copilot | .github/copilot-instructions.md |
| Windsurf | .windsurf/rules/ |
| Cline / Roo Code | .clinerules/ |
| Aider | CONVENTIONS.md |
| Kiro | .kiro/steering/ |
| Amazon Q | .amazonq/rules/ |
| Goose | .goosehints |
| Trae AI | .trae/rules/ |
| Zed | .rules |
Change a rule? Update 13 files. Or let config-sync do it.
pip install aiconfigsync
Or with pipx (recommended for CLI tools):
pipx install aiconfigsync
Or clone and install locally:
git clone https://github.com/nadalpiantini/config-sync.git
cd config-sync
pip install -e .
config-sync /path/to/your/repo
config-sync /path/to/your/repo --tools codex,gemini,cursor
config-sync /path/to/your/repo --dry-run
Already have a CLAUDE.md? Split it into .claude/rules/ (the canonical source):
config-sync /path/to/your/repo --init
config-sync --list-tools
┌─────────────────────┐
│ .claude/rules/ │ ← your single source of truth
└─────────┬───────────┘
│ config-sync
┌─────┼─────────────────────────┐
▼ ▼ ▼ ▼ ▼ ▼
AGENTS GEMINI CURSOR COPILOT WINDSURF CLINE
.md .md /rules .md /rules /rules
▼
AIDER KIRO AMAZON-Q GOOSE TRAE ZED
.md /steer /rules hints /rules .rules
.claude/rules/*.md — the most expressive format (frontmatter, glob patterns, conditional loading)<!-- Generated by config-sync --> headersAuto-detects which tools are already configured in your repo and reports them:
$ config-sync ./my-project
Source: 2,847 chars
Detected: cursor, copilot, codex
Generating: codex, gemini, cursor, copilot, windsurf, cline, aider, kiro, amazonq, goose, trae, zed
+ AGENTS.md (2,937 chars)
+ GEMINI.md (2,937 chars)
+ .cursor/rules/config-sync.mdc (2,933 chars)
...
Each tool gets properly formatted output:
globs: ** and alwaysApply: true| Tool | Output File | Format |
|---|---|---|
| Codex / Amp / OpenCode / Warp | AGENTS.md | Markdown |
| Gemini CLI | GEMINI.md | Markdown |
| Cursor | .cursor/rules/config-sync.mdc | MDC |
| GitHub Copilot | .github/copilot-instructions.md | Markdown |
| Windsurf | .windsurf/rules/config-sync.md | Markdown |
| Cline / Roo Code | .clinerules/config-sync.md | Markdown |
| Aider | CONVENTIONS.md | Condensed bullets |
| Kiro (AWS) | .kiro/steering/config-sync.md | Markdown |
| Amazon Q | .amazonq/rules/config-sync.md | Markdown |
| Goose (Block) | .goosehints | Plain text |
| Trae AI | .trae/rules/config-sync.md | Markdown |
| Zed | .rules | Markdown |
Write once in the richest format. Compile to every target.
.claude/rules/ is your source code. The generated configs are compiled output. Edit the source, re-run config-sync, commit all files together.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.1.0 | 19 Apr 2026 | 0 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 10:15 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:626cf36e30b49b001985a5087aed6b220a2600aa4580e0ce1284505639212b0c