Supported Tools and Features
Rulesync supports both generation and import for All of the major AI coding tools:
| Tool | --targets | rules | ignore | mcp | commands | subagents | skills | hooks | permissions | checks |
|---|---|---|---|---|---|---|---|---|---|---|
| AGENTS.md | agentsmd | ✅ | 🎮 | 🎮 | 🎮 | |||||
| AgentsSkills | agentsskills | ✅ 🌏 | ||||||||
| Amp | amp | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |||
| IBM Bob | bob | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |||
| Claude Code | claudecode | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Claude Code plugin | claudecode-plugin | ✅ | ✅ | ✅ | ✅ | ✅ | ||||
| CodeBuddy Code | codebuddy | ✅ 🌏 | ||||||||
| Codex CLI | codexcli | ✅ 🌏 | ✅ 🌏 🔧 | 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| Command Code | commandcode | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| GitHub Copilot | copilot | ✅ 🌏 | ✅ | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | ||
| GitHub Copilot CLI | copilotcli | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |||
| Crush | crush | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |||
| Goose | goose | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | ✅ 🌏 | 🌏 | ||
| Hermes Agent | hermesagent | ✅ | ✅ | 🌏 🔧 | 🌏 | ✅ 🌏 | 🌏 | 🌏 | 🌏 | ✅ |
| Grok CLI | grokcli | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| Cursor | cursor | ✅ | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ |
| deepagents-cli | deepagents | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | |||
| Factory Droid | factorydroid | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | |
| OpenCode | opencode | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| Cline | cline | ✅ 🌏 | ✅ | 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | |
| Kilo Code | kilo | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Kimi Code | kimi-code | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | 🌏 | 🌏 | |||
| Roo Code ⚠️ | roo | ✅ 🌏 | ✅ | ✅ 🔧 | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ | ||
| Zoo Code | zoocode | ✅ 🌏 | ✅ | ✅ 🔧 | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ | ||
| Rovodev (Atlassian) | rovodev | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | ||
| Takt | takt | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| Tabnine CLI ⚠️ | tabnine | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Continue ⚠️ | continue | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | ||
| Snowflake Cortex Code | cortexcode | ✅ | 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||||
| Vibe Code | vibe | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||
| Qwen Code | qwencode | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Meta Muse Code | musecode | ✅ | 🌏 | ✅ 🌏 | ||||||
| Reasonix | reasonix | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Kiro ⚠️ | kiro | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 🔧 | ✅ | ✅ | ✅ | ✅ | ✅ | |
| Kiro CLI | kiro-cli | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | |
| Kiro IDE | kiro-ide | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 🔧 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | |
| Google Antigravity IDE | antigravity-ide | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ | ||
| Google Antigravity CLI | antigravity-cli | ✅ 🌏 | ✅ | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | |
| Google Antigravity plugin | antigravity-plugin | ✅ | ✅ 🔧 | ✅ | ✅ | ✅ | ||||
| JetBrains AI Assistant | aiassistant | ✅ | ✅ | ✅ 🌏 | ✅ | |||||
| JetBrains Junie | junie | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | 🌏 | |
| AugmentCode | augmentcode | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ |
| Devin Desktop | devin | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | |
| Warp | warp | ✅ 🌏 | ✅ | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | |||
| Replit | replit | ✅ | ✅ 🌏 | |||||||
| Pi Coding Agent | pi | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||||
| Zed | zed | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | ||||
| ZCode (Z.ai) | zcode | ✅ 🌏 | ✅ 🌏 | ✅ 🌏 | 🌏 | ✅ 🌏 | 🌏 | |||
| Pool (Poolside) | pool | ✅ 🌏 | ✅ 🌏 🔧 | ✅ 🌏 | ||||||
| DeepSeek Harness | dsh | ✅ 🌏 | ✅ 🌏 |
- ✅: Supports project mode
- 🌏: Supports global mode
- 🎮: Supports simulated commands/subagents/skills (Project mode only)
- 🔧: Supports MCP tool config (
enabledTools/disabledTools) - ⚠️: Deprecated — still supported, but see the note below
Hermes Agent compatibility
The hermesagent target is validated against Hermes Agent v0.21.3 (release v2026.9.14). The supported contract covers project rules, ignore patterns, subagents, and checks, plus global MCP servers, commands, subagents, skills, hooks, and permissions. Generation, --check, and import round-trips are covered for both advertised scopes.
Rulesync honors Hermes profiles through HERMES_HOME. When it is set, its value is the profile root itself: global configuration is read and written directly under $HERMES_HOME (config.yaml, skills/, plugins/, and rulesync/), without appending .hermes. When it is unset, Rulesync follows Hermes's own platform default: ~/.hermes everywhere except Windows, where it is %LOCALAPPDATA%\hermes. Because HERMES_HOME names where Hermes itself reads the profile, it also takes precedence over --output-roots in global scope. Project-scoped paths remain rooted in the project.
Changing which profile root Rulesync resolves strands whatever it generated under the previous one. --delete reconciles only the root resolved for the current run, so files under a root it no longer resolves are invisible to it and must be removed by hand once you are sure Hermes no longer reads them. This applies whenever you set or change HERMES_HOME, and to two upgrades that moved the resolved root on their own: before v16.0.0 global files went to ~/.hermes even when HERMES_HOME was set, and before v16.2.0 they went there on Windows too, rather than to %LOCALAPPDATA%\hermes.
Project plugins are registered by adding their names to $HERMES_HOME/config.yaml, but Rulesync does not persist Hermes's global project-plugin trust gate. Run Hermes from a trusted project root with HERMES_ENABLE_PROJECT_PLUGINS=true for an explicit, session-scoped opt-in. A future Hermes release that changes its loaders, schemas, or plugin API requires a new compatibility validation.
Deprecation notes
- Google Antigravity (
antigravity-ide/antigravity-cli) — Antigravity 2.0 splits into two products: the desktopantigravity-ideand theantigravity-cli(agy). As of Antigravity 2.0 the IDE reads its global MCP config and skills from the shared~/.gemini/config/tree —~/.gemini/config/mcp_config.jsonand~/.gemini/config/skills/, matching the current MCP and Skills docs. Theantigravity-cliglobal MCP config also lives in the shared~/.gemini/config/mcp_config.json, while the CLI keeps its own global skills tree at~/.gemini/antigravity-cli/skills/. Both targets also intentionally share the global rule file~/.gemini/GEMINI.mdand the global hooks file~/.gemini/config/hooks.json— enabling both targets in--globalmode writes those shared files once. For project-scope rules, bothantigravity-ideandantigravity-cliemit the root rule as a plain cross-toolAGENTS.mdat the project root (the Gemini-lineage discovery order isAGENTS.md,CONTEXT.md,GEMINI.md; the IDE has readAGENTS.mdsince v1.20.3) and non-root rules under.agents/rules/(the IDE adds trigger frontmatter to non-root rules; the CLI keeps them as plain markdown). For commands (workflows), both targets share the project.agents/workflows/directory (invoked as/workflow-name); in--globalmode the IDE writes to~/.gemini/antigravity/global_workflows/while the CLI keeps its own~/.gemini/antigravity-cli/global_workflows/tree (mirroring the CLI's global skills tree). - Continue (
continue) — Continue is end of life: Continue joined Cursor on 2026-06-18, the continuedev/continue repository is read-only with a final v2.0.0 VS Code release (2026-06-19) and its last commit on 2026-07-21, and the in-product deprecation banner expired on 2026-09-09. Thecontinuetarget stays supported as a frozen-compatibility target: every adapter was verified against that final source tree, and nothing about the file formats will move again, so existing output keeps working for anyone still running the last release. Do not expect new Continue capabilities to be tracked; new projects should pick an actively maintained tool instead. - Kiro (
kiro) — Kiro ships as two products with diverging config formats: the Kiro IDE reads Markdown subagents (.kiro/agents/*.md) and structured JSON hooks (.kiro/hooks/*.json, format{ "version": "v1", "hooks": [ ... ] }), while the Kiro CLI reads JSON agent-config subagents (.kiro/agents/*.json). A single target cannot emit both subagent shapes faithfully, sokirois split intokiro-cliandkiro-ide. The legacykirotarget is kept as a deprecated alias (its current mixed output is unchanged for backward compatibility). Shared surfaces (steering rules withinclusion,.kiro/settings/mcp.json,.kiro/prompts/commands,.kiro/skills/,.kiroignore, permissions) are identical between the two; they differ only in subagents (.mdvs.json). Hooks are the same for both: a single.kiro/hooks/rulesync.json(whosehooksarray holds every generated hook) in both project (.kiro/hooks/) and global (~/.kiro/hooks/) scope, mapping canonical lifecycle events to Kiro's PascalCase triggers (SessionStart,UserPromptSubmit,PreToolUse,PostToolUse,Stop) and supporting bothagent(prompt) andcommandactions. Kiro CLI 3.0 migrated to that format and no longer reads the embedded agent hooks in.kiro/agents/default.json, which only the deprecatedkiroalias still writes (includingcacheTtl⇄cache_ttl_seconds). Global skills (~/.kiro/skills/), global ignore (~/.kiro/settings/kiroignore), and global Kiro IDE subagents (~/.kiro/agents/) are also supported, as are global Kiro CLI commands (~/.kiro/prompts/) and subagents (~/.kiro/agents/). Kiro's shared MCP file preserves per-serverdisabledTools. - Roo Code (
roo) — Roo Code is end of life: its final release was v3.54.0 (2026-05-15) and the Roo-Code repository is archived, so nothing about the target will move again. New projects should targetzoocodeinstead — Zoo Code is the community continuation named by the Roo shutdown notice, and it continues Roo's release numbering. Therootarget stays supported because Zoo Code still reads the.roo/project tree and~/.rooglobal tree verbatim, so existingroooutput keeps working; what it no longer tracks is anything Zoo Code added after the fork. The two targets write the same files, so enable one per project rather than both — see the Zoo Code note in File formats for the fail-open hazard a--targets roogenerate creates in a shared.roomodes. Permissions are the one exception: the two lineages spell the command allow/deny lists differently (roo-cline.*vszoo-code.*), so both pairs coexist in one.vscode/settings.jsonand neither target touches the other's — see the Roo Code paragraph in File formats. - Tabnine CLI (
tabnine) — The file-based Tabnine CLI this target models is in maintenance mode: as of Tabnine 6.6 (2026-09-15) it is "Tabnine CLI (Legacy)", installed astabnine-legacyonce the new CLI is present, and it receives only critical updates through 2026-12-31, after which Tabnine deprecates it fully. The currenttabninecommand is Tabnine's distribution of OpenCode, configured with standard OpenCode files — so for the new CLI use--targets opencode(AGENTS.md,opencode.json,.opencode/{commands,agents,skills},~/.config/opencode/**); its migration helper (/migrate,/migrate-context) carries MCP servers, skills, agents, commands andTABNINE.mdover. Thetabninetarget stays supported for the legacy CLI (0.35.0) until then; whether it is removed in a later major is decided separately.
