syncai
Health Gecti
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 10 GitHub stars
Code Gecti
- Code scan — Scanned 4 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
This utility keeps AI-assistant guidelines, rules, and ignore files in sync across multiple development agents (such as Cursor, GitHub Copilot, and Claude Code) by watching for file changes and propagating them to corresponding locations.
Security Assessment
The tool operates primarily as a local file system watcher and copier. Based on the code scan of 4 files, no dangerous patterns, hardcoded secrets, or risky permission requests were found. The primary function is reading and writing local configuration files verbatim. The README mentions a `-self-update` flag, which inherently requires making network requests to fetch new versions, but this is standard behavior for a standalone CLI tool. Overall risk is rated as Low.
Quality Assessment
The project is licensed under the permissive MIT license and is actively maintained, with its last push occurring today. It has a clearly defined purpose and straightforward documentation. However, community trust is currently very low; with only 10 GitHub stars, the tool has not yet been widely adopted or heavily scrutinized by a large user base.
Verdict
Safe to use, though it is a young project with limited community validation.
Sync AI rules and guidelines, and ignore files between agents
SyncAI is a lightweight and cross-platform utility that keeps AI-assistant guidelines, rules and ignored files in sync across multiple
agents:
- Cursor
- GitHub Copilot
- Claude Code
- OpenAI Codex
It watches the files you specify in a JSON configuration and propagates every change to the corresponding locations for
the other agents.
Supported sync types
SyncAI supports four kinds of synced items in agent configurations:
context — a single file with general AI guidelines or assistant context (for example
AGENTS.mdorCLAUDE.md). Configure withcontext.path. The file is copied verbatim to the target location.rules — a pattern that matches multiple rule files (for example Cursor rules or Copilot instructions). Configure with
rules.pattern. If the pattern contains a*wildcard, the wildcard is replaced with the source file's base name when copying.ignore — a single file with instructions telling the assistant what to ignore (for example
.copilotignore). Configure withignore.path. The file is copied verbatim.skills — a directory pattern matching skill folders (for example
.claude/skills/*). Each match is treated as a whole skill: every file inside the directory (including nested subfolders, scripts, data, etc.) is mirrored to the equivalent location at every other agent that has askillspattern. The*wildcard captures the skill's folder name and is substituted into the target pattern. Skill files are copied verbatim. Deletions are propagated and now-empty target directories are cleaned up automatically down to the configured base directory, which is preserved.
These sections can be used together for each agent to keep context, rule files, ignore files, and skill folders in sync across different assistants.
Quick start
- Download a suitable binary from the GitHub Releases.
- Copy syncai.json to your project and adjust the configuration for your agents.
- Launch the binary in the project dir
./syncai.
Configuration
Launching with arguments
- Use
./syncai -config {path_to_syncai.json}to start SyncAI with your custom configuration file. - Use
./syncai -workdir {path_to_working_directory}to specify a different working directory. - Use
./syncai -no-watchto sync your files only once, without watching for changes (useful for CI). - Use
./syncai -self-updateto update SyncAI to the latest version.
Configuration File
The default configuration is a simple JSON map (for more details check syncai.json):
{
"config": {
// sync interval in seconds
"interval": 5,
// working directory (optional, default is current directory)
"workdir": ""
},
"agents": [
{
// agent name
"name": "<AGENT_NAME>",
// optional "rules" section
// GitHub Copilot calls it "instructions", Cursor "rules"
"rules": {
"pattern": ".<AGENT>/rules/*.md"
},
// optional "context" section
"context": {
"path": "/path/to/your/guidelines.md"
},
// optional "ignore" section
"ignore": {
"path": "/path/to/your/ignorefile"
},
// optional "skills" section: directory pattern matching skill folders.
// The `*` is captured as the skill folder name and substituted on the
// other agents. Every file inside the matched directory (recursively)
// is mirrored.
"skills": {
"pattern": ".<AGENT>/skills/*"
}
}
]
}
How it works
- SyncAI loads the configuration file and builds a watch-list of directories and files derived from all sections.
- It periodically scans those files for new or updated modification times.
- When a rule file changes, its contents are copied to every other agent’s rule directory.
The copying logic is intentionally simple and conservative:
- The filename is preserved exactly, unless the target pattern contains a
*wildcard—in that case, the wildcard is
replaced with the source file’s base name. - Destination directories are created as needed.
How to build
To build SyncAI manually, follow the next steps:
cd syncai
make build
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi