← Reddit

We built a free CLI to keep CLAUDE.md, slash commands, MCP servers, and skills in sync across machines

Reddit · gquizal · June 9, 2026
A three-person team created gaal, a free open-source CLI tool that synchronizes configuration files across multiple coding agents and machines by reading a single declarative YAML file from a git repository. Running gaal sync writes configurations to the native filenames and locations expected by each agent, eliminating manual duplication of rules files, slash commands, MCP servers, and skills across tools and machines. The tool supports 21 different coding agents and requires no account or server to operate.

Detailed Analysis

A small three-person development team has released gaal, a free, open-source command-line interface tool designed to solve a specific but increasingly common problem in AI-assisted software development: the fragmentation of configuration files across multiple coding agents and multiple machines. The tool, licensed under AGPL-3.0 and requiring no account or remote server to operate, uses a single declarative YAML file stored in a git repository as a source of truth. When a developer runs `git pull && gaal sync`, the tool automatically writes the correct configuration content to the locations each agent expects — so a single rules file becomes `CLAUDE.md` for Claude Code, `AGENTS.md` for OpenAI Codex, and `.cursorrules` for Cursor, all from the same source. The tool currently supports 21 coding agents and handles not only content routing but also slash commands, settings files, hooks, MCP server entries, and skill packages.

The core problem gaal addresses reflects a structural tension in the current multi-agent development landscape. Developers who work across several AI coding tools — a pattern that has become common as Claude Code, Cursor, Windsurf, Cline, and others have each gained distinct user bases — face what the team describes as a configuration multiplication problem: the same project instructions must exist in different filenames and formats for each agent, and that entire set must be replicated across every machine the developer uses. The MCP (Model Context Protocol) server configuration problem is particularly acute, as entries live in a shared `~/.claude.json` file that can be inadvertently overwritten. Gaal's approach to this is a non-destructive upsert pattern that merges new MCP entries without clobbering existing hand-added configurations — a design decision that emerged directly from a team member losing a manually configured server list.

The tool's design philosophy reveals something meaningful about how Claude Code specifically has influenced developer workflows. The team explicitly credits Claude Code as the daily driver that shaped gaal's architecture, with CLAUDE.md drift across machines described as the most acute pain point. This positions CLAUDE.md not merely as a documentation file but as an active, frequently modified operational artifact — one that developers iterate on continuously and need to keep consistent. The fact that a team built an entire synchronization tool around this problem suggests that CLAUDE.md-style instruction files have become central enough to Claude Code workflows that their management constitutes real developer overhead.

Gaal enters a space with acknowledged competition from tools like chezmoi, skills-sync, agent-dotfiles, and rule-porter, but the team argues their differentiation lies in unified handling of repositories, skills, MCPs, and content within a single file, combined with a three-scope model (system, user, and workspace levels, where workspace takes precedence). This hierarchy prevents a shared baseline configuration from overriding project-specific rules — a meaningful distinction for developers who maintain both personal defaults and per-project customizations. The broader trend this reflects is the emergence of a new category of developer tooling specifically designed for AI agent workflow management, a category that barely existed two years ago and is now generating multiple competing open-source projects.

The release also highlights a deeper shift in how professional developers interact with AI coding assistants. The assumption embedded in gaal's design — that a developer might routinely use three or more distinct AI agents on the same project across multiple machines — would have seemed implausible in early 2024 but now represents a recognizable workflow pattern. As these agents have matured and differentiated, developers are treating them less like interchangeable chatbots and more like specialized tools with distinct configuration surfaces, dependency trees, and operational contexts. Infrastructure tooling that manages this complexity, of which gaal is one example, is a direct consequence of that maturation.

Read original article →