Rulesync

One unified ruleset, every AI coding tool: automatically generate per-tool configs from a single source of truth.

Stars
★ 1.6k
Last updated
today
License
MIT
Primary language
TypeScript

At a glance

How it runs
CLI
Works with
Universal · cross-platformCodex · Claude Code
Cost
Free, no paid service needed
Setup effort
Low · running in minutes
You'll need
Node.jsnpmShell / CLINetwork accessLocal filesystem
Typical use
A team using both Cursor and Claude Code wants a single ruleset without hand-syncing multiple config files.
Not a fit if
  • Developers using a single AI tool who don't need cross-tool config sync
  • People who want a GUI and won't use a terminal
  • Teams depending on future updates to Roo Code or Continue
Source review
69/100 · Some gaps

What does this agent do, and when should you use it?

Rulesync is a Node.js CLI that automatically generates configuration files for a wide range of AI development tools from unified AI rule files stored under a .rulesync/ directory. It supports selective generation across rules, ignore files, MCP, commands, subagents, skills, hooks, and permissions, and offers comprehensive import/export capabilities. Supported tools include Claude Code, Cursor, GitHub Copilot, Codex CLI, Cline, Kilo Code, OpenCode, Kiro, JetBrains Junie, and dozens more, alongside open standards like AGENTS.md and AgentsSkills. Beyond generation, the convert command transforms configurations directly between tools without writing .rulesync/ files. The project is MIT-licensed and distributed via npm, a Homebrew tap, and a single-binary install script.

rulesync init scaffolds the required directories, sample rule files, and a configuration file; rulesync fetch dyoshikawa/rulesync installs official skills; rulesync generate --targets "*" --features "*" batch-generates per-tool configs (rules, MCP, commands, subagents, skills, hooks, permissions) from the .rulesync/ source. For existing setups, rulesync import --targets claudecode/cursor/copilot pulls in CLAUDE.md, .cursorrules, or .github/copilot-instructions.md into .rulesync/**/*. rulesync convert --from cursor --to copilot,claudecode converts between tools in one shot without writing .rulesync/ files.

  1. A team using both Cursor and Claude Code wants a single ruleset without hand-syncing multiple config files.
  2. A developer migrating from Cursor to GitHub Copilot uses the convert command to turn .cursorrules into Copilot config directly.
  3. An existing repo has scattered configs (CLAUDE.md, copilot-instructions.md) that the import command consolidates into a unified .rulesync/ source.
  4. A platform engineer needs to configure MCP servers, commands, and skills consistently across many AI tools.
  5. An open-source maintainer wants AGENTS.md as the canonical source while generating vendor-specific configs for proprietary tools.

How do you install or deploy this agent?

Install globally via npm: npm install -g rulesync. Or on macOS/Linux via the Homebrew tap (the tap lives inside the repo with no homebrew- prefix, so the two-argument form is required): brew tap dyoshikawa/rulesync https://github.com/dyoshikawa/rulesync && brew install rulesync. A single-binary option is also available: curl -fsSL https://github.com/dyoshikawa/rulesync/releases/latest/download/install.sh | bash.

How do you use this agent?

First run: rulesync init to create directories, sample rules, and config; optionally rulesync fetch dyoshikawa/rulesync to install official skills; then rulesync generate --targets "*" --features "*" to produce all configurations. With existing configs: rulesync import --targets claudecode (from CLAUDE.md), --targets cursor (from .cursorrules), or --targets copilot (from .github/copilot-instructions.md). Direct tool-to-tool conversion: rulesync convert --from cursor --to copilot,claudecode.

What are this agent's strengths and limitations?

Pros
  • Supports dozens of AI coding tools (Cursor, Claude Code, Copilot, Codex CLI, Cline, Kiro, and more) with a per-feature support matrix covering rules, ignore, MCP, commands, subagents, skills, hooks, and permissions.
  • Supports both project-scope and global-scope generation, plus open standards like AGENTS.md and AgentsSkills.
  • Bidirectional capability: import consolidates existing configs, and convert translates between tools without adopting the .rulesync/ workflow.
  • Well-covered distribution: npm, Homebrew tap, and single-binary installer, backed by a dedicated documentation site.
Limitations
  • The npm path requires a Node.js runtime; the Homebrew tap requires the two-argument tap form — the shorthand brew install dyoshikawa/rulesync/rulesync does not work.
  • The ignore feature is deprecated in favor of permissions; existing configs are safe through 14.x but removal may come in a future major release.
  • Several targets carry deprecation caveats: Roo Code is end of life (target zoocode instead), Kiro is split into kiro-cli and kiro-ide, and the legacy kiro target is a deprecated alias.
  • Plugin packaging targets (claudecode-plugin, antigravity-plugin) are excluded from --targets "*" and require explicit --output-roots/--output-root selection.

How does this agent compare with similar options?

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Rulesync This agent 69 · Some gaps CLIFree ★ 1.6k today TypeScript Codex · Claude Code
Agent Toolkit 74 · Some gaps CLIFree ★ 19 1d ago V ChatGPT · Codex · Claude Code
Agentic Plugin Marketplace 66 · Some gaps Agent plugin / skillFree + model costs ★ 42k 1d ago Python Codex · Claude Code
Azure Agent Skills (Microsoft Official Skill Library) 61 · Some gaps Agent plugin / skillFree ★ 791 6d ago — Codex · Claude Code

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
69/ 100 5-point scale 3.5 / 5
This review covers the source as of Sep 10, 2026. The project has shipped 25 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 16/29
Reliability 8/14
Adaptability 14/18
Convention 16/18
Effectiveness 10/13
Verifiability 5/8
Why each dimension lost points
Trust16 / 29 · 2.8/5

Evidence shows the tool reads/writes config only within the project (.rulesync/, per-tool dirs); plugin targets are explicitly excluded from --targets "*", showing least-privilege awareness (2). The `prepare` script runs `pnpm generate` at install time, writing files without documented confirmation (1, deducted). Data flow (import/generate/convert paths) is clearly described (2); secretlint runs in CI (2); dependencies are exact-pinned, but no lockfile/audit evidence shown (2). The curl|bash single-binary install executes a remote script with no checksum or signature in the README (1, deducted). No rollback/undo of generated files is documented (1, deducted). Author identity is consistent across LICENSE and package. (2).

Reliability8 / 14 · 2.9/5

The README/package. tool-feature tables are script-generated and diff-verified (check:supported-tools), giving good self-consistency (2); exact-pinned dependencies and explicit engines (2); however, no concrete evidence of error messages or failure handling appears in the provided files, hence 1.

Adaptability14 / 18 · 3.9/5

Audience and scenario (unifying rules across many AI coding tools) are very clearly defined (3); capability boundaries are delimited by the support matrix and deprecation notes (2); triggers are explicit CLI commands with distinct init/import/generate/convert responsibilities (2); three install channels with platform-specific notes (2).

Convention16 / 18 · 4.4/5

README is well structured; support tables are auto-generated and checked against docs (3); install notes cover three channels including a brew-tap pitfall (3); naming is stable with deprecated aliases keeping behavior (3); Quick Start exists but no in-repo example files were provided (2); deprecation and known-limitation notes (ignore deprecation, Roo EOL, Kiro split) are exceptionally thorough (3); full MIT LICENSE (3); version mismatch between package (16.x) and the unfilled SECURITY.md template (5.1.x/4.0.x), and no CHANGELOG in evidence (2, deducted); maintenance signals (funding badge, automation) but no explicit maintenance commitment (2).

Effectiveness10 / 13 · 3.8/5

Outputs are standard per-tool config files with protections like excluding plugin dirs from wildcards (2); marginal value is clear: eliminates duplicate rule maintenance across tools (3); cost/benefit is reasonable overall, though the auto-generating prepare hook and remote-script install add integration cost (2).

Verifiability5 / 8 · 3.1/5

Support matrices are script-generated and diff-verifiable, making claims traceable (2); badges corroborate with npm/GitHub metadata, but static review cannot execute verification (2); facts and inference are largely separated, with explicit ⚠️ deprecation markers (2).

Risks and how to mitigate them
  • The recommended `curl -fsSL ... | bash` install executes a remote script with no checksum or signature; prefer npm/Homebrew or audit install.sh first.
  • SECURITY.md is an unfilled GitHub template whose supported-version table (5.1.x/4.0.x) contradicts the actual 16.x versioning; the actual vulnerability reporting channel is unverifiable.
  • The `prepare` hook auto-runs a generate command and writes files during dependency install; be aware before adopting.
  • No CHANGELOG or lockfile appears in the evidence; audit the supply chain yourself.
  • Publisher identity is unverified (unknown, not suspicious); apply normal open-source due diligence.
Evidence confidence: Low Reviewed Sep 10, 2026 Reviewed revision fbd86e031740 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. v41.0.0
    Release notes excerpt
    Breaking Changes - OpenCode: the opencode target now writes for OpenCode 2.x, and a new opencodev1 target keeps the previous OpenCode 1.x output. OpenCode 2.x restructured nearly every key Rulesync writes: permissions become the ordered permissions array, MCP servers move under mcp.servers, command subtask becomes subagent, subagent frontmatter is V2-only, and hooks are a { id, setup(ctx) } plugin. Projects still on OpenCode 1.x must switch to the opencodev1 target and rename their opencode sections and override keys to opencodev1. (#3614) …
    View on GitHub ↗
  2. v40.2.0
    Release notes excerpt
    What's Changed - feat(opencode): opt-in V2 mcp.servers output via the configShape option by @dyoshikawa in https://github.com/dyoshikawa/rulesync/pull/3604 - Set targets.opencode.mcp.configShape: "v2" to write OpenCode V2's mcp.servers.<name> shape (disabled, timeout objects, snake_case oauth) and keep a V2 file stable across import and generate. The default stays "v1", so existing output is unchanged. - feat(hooks): pass tool input to OpenCode preToolUse hooks and let them deny the call by @dyoshikawa in https://github.com/dyoshikawa/rulesync/pull/3605 …
    View on GitHub ↗
  3. v40.1.0
    Release notes excerpt
    What's Changed The MCP server (rulesync mcp) now covers the whole CLI (#3591). - feat(mcp): accept the remaining CLI options in generate, import and convert by @dyoshikawa in https://github.com/dyoshikawa/rulesync/pull/3595 - generate gains dryRun, check (returns upToDate and a plan instead of exiting), retireTargets, outputRoots, inputRoots, inputRoot and configPath; import accepts targets and outputRoot. …
    View on GitHub ↗
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents