git-sw

Easily switch between multiple Git profiles/configs (TUI + Automated mode)

SKILL.md

GitHub

git-sw 🔄

A CLI tool to switch between multiple Git profiles/configs. Supports both an interactive TUI for humans and a flag-based mode for agents.

Usage (Agent/Automated)

Always use the --no-tui flag when calling this tool from an agent session.

List Profiles

git-sw --no-tui list

Create a Profile

git-sw --no-tui --profile <name> --name "<user-name>" --email "<user-email>" create

# With signing key
git-sw --no-tui --profile <name> --name "<user-name>" --email "<user-email>" --signing-key <key> --key-format <format> create

Switch Profile

# Locally
git-sw --no-tui --profile <name> use

# Globally
git-sw --no-tui --profile <name> -g use

Delete a Profile

git-sw --no-tui --profile <name> --yes delete

Options

  • --no-tui: Required for non-interactive usage.
  • --profile: The name of the profile.
  • --name: Git user name.
  • --email: Git user email.
  • --signing-key: Signing key (GPG key ID, SSH pub path, or X.509 cert).
  • --key-format: Signing key format: openpgp, ssh, or x509.
  • --gpg-program: GPG program path (default: gpg).
  • --yes: Bypasses confirmation prompts.
  • -g: Global mode.