Skip to content

agentconf

Sync your AI coding agent configs across machines via a git-backed multi-profile system.

Status

v0.3.0 — early release. macOS + Linux only.

Why

AI coding agents store your settings, hooks, MCP servers, skills, subagents, slash commands, plugins, and statusline scripts in per-user config directories — Claude Code under ~/.claude/, Codex CLI under ~/.codex/, Gemini CLI under ~/.gemini/. Set them up on one machine and the other machines lag behind. agentconf mirrors those directories to a private git repo and keeps every machine in sync — automatically, in the background, on every agent session start/stop.

Scope

Agent Config location Status
Claude Code ~/.claude/ + tracked ~/.claude.json keys ✅ Supported
OpenAI Codex CLI ~/.codex/ 🚧 Planned
Gemini CLI ~/.gemini/ 🚧 Planned

The tool was formerly named claude-profile and currently implements the Claude Code integration; Codex CLI and Gemini CLI support reuse the same engine — one private git repo, named profiles, per-agent include/exclude rules, a hard-blocked credentials denylist, and mtime-based conflict resolution.

At a glance

  • 15 commandsinit, sync, status, diff, describe, use, list, adopt, merge, backups, restore, prune, config, install-skill, autosync
  • Auto-sync via hooksSessionStart pulls, Stop pushes, both non-blocking with timeouts and debouncing
  • Multiple profiles — keep personal, work, experimental side-by-side; switch with agentconf use <name>
  • Conflict-safe — mtime-based winner with the loser preserved at profiles/<active>/.conflicts/<path>.<host>.<ts>
  • Backups before every switch — hardlinked snapshots in ~/.agentconf/backups/<profile>/<ts>/, auto-pruned to 10 by default
  • Credentials hard-blocked — built-in denylist no user config can override

Install

npm install -g agentconf

Binary command is agentconf (the scope is just the package name).

Full install + setup → Quickstart

Try it

agentconf init --git git@github.com:you/my-claude.git \
  --profile default --activate
agentconf install-skill
agentconf describe          # see everything in your profile

License

MIT