Skip to content

sync

Sync development environment and configurations.

Usage

multi sync [--install-set NAME] [SUBCOMMAND]

Description

The sync command ensures your workspace is up to date by cloning/updating repositories and merging configurations. Running sync without a subcommand performs a full sync.

Full Sync

multi sync

A full sync performs all of the following:

  1. Initializes root git repository if missing
  2. Creates README.md if missing
  3. Clones any missing repositories (standard mode only)
  4. Merges VS Code configurations (settings, launch, tasks, extensions)
  5. Generates agent instruction files when agentInstructions.enabled is true
  6. Syncs GitHub Actions workflows to root .github/workflows (monorepo mode only)

Install Sets

Use --install-set NAME or --set NAME to sync only repos whose repos[].installSets contains that name. This is useful for public installer workflows where a root workspace should clone and generate config only for public/runtime repos while private development repos remain excluded.

Repos without installSets are included in every selected set for backward compatibility. Running multi sync with no install set preserves the existing behavior and includes every repo.

Subcommands

Subcommand Description
sync vscode Merge VS Code configuration files
sync agents Generate AGENTS.md and CLAUDE.md from AGENTS.parts/*.md
sync github Sync root GitHub Actions workflows for monorepo workspaces

Examples

# Full sync (recommended)
multi sync

# Public/runtime subset
multi sync --install-set default

# Equivalent shorter form
multi sync --set default

# Only sync VS Code configurations
multi sync vscode

# Only sync VS Code settings for the selected subset
multi sync --set default vscode settings

# Only sync VS Code settings
multi sync vscode settings

# Only sync generated agent instruction files
multi sync agents

# Only sync root GitHub Actions workflow files (monorepo mode)
multi sync github

Notes

  • The VS Code extension can automatically run multi sync when relevant files change
  • Sync operations are idempotent - running them multiple times is safe
  • Use --verbose to see detailed output during sync
  • Use --install-set / --set before the subcommand name when filtering a partial sync, for example multi sync --set default agents
  • multi sync github is available only when monoRepo is true
  • Recommended automation path: create/edit multi.json and run multi sync