Skip to main content
If you’ve been using coding agents for a while, your machine probably already has skills scattered across .claude/skills, .cursor/skills, .github/skills, plus MCP servers in two or three JSON files. The fastest path to a useful gaal.yaml is to ask gaal to inventory what’s there and import it.

1. Audit what’s on disk

gaal audit writes nothing. It scans:
  • Project-relative skill directories (.claude/skills, .cursor/skills, .github/skills, .agents/skills, …).
  • Global skill directories (~/.claude/skills, ~/.cursor/skills, ~/.agents/skills, …).
  • Per-agent package-manager paths (~/.cursor/extensions, ~/.claude/plugins/cache, …).
  • Every agent’s MCP config file.

2. Choose a scope

Decide whether the imported config should live with this project or follow you across projects:
  • Project (./gaal.yaml), gets committed into the repo. Best for codebase-specific skills and project-tied MCP servers.
  • Global (~/.config/gaal/config.yaml), applies in every workspace. Best for personal helper skills and shared MCP servers like filesystem.
You can mix: keep your personal stuff in the user file and per-project stuff in the workspace file. They merge cleanly. See Scopes.

3. Run the wizard

Everything is preselected. Press Enter to accept, or Space to toggle individual entries.

4. Skip the wizard (CI / scripts)

--empty and --import-all are mutually exclusive. One is required when stdin is not a TTY.

5. Preview before syncing

Always run a dry-run first:
Exit codes: 0 = no changes pending, 1 = changes pending, 2 = error.

6. Sync for real

7. Commit and ship

On every other machine you own, clone the repo, cd in, and run gaal sync. You’re set up.

Sharing across machines

gaal init

gaal audit

Dry-run