Claudebase sync-push

Use when the user wants to back up, save, or push their current Claude Code config to GitHub.

install
source · Clone the upstream repo
git clone https://github.com/rohithzr/claudebase
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/rohithzr/claudebase "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/sync-push" ~/.claude/skills/rohithzr-claudebase-sync-push && rm -rf "$T"
manifest: skills/sync-push/SKILL.md
source content

Config Sync Push

Push your current local Claude Code configuration to the GitHub backup repo.

What gets pushed

All syncable files from the current project and global config:

  • .mcp.json
    ,
    .claude/settings.json
  • .claude/agents/
    ,
    .claude/commands/
    ,
    .claude/skills/
  • .claude/hooks/
    (scripts, config, sounds)
  • .claude/rules/
    ,
    .claude/agent-memory/
  • .auto-memory/
    (memory files)
  • ~/.claude/settings.json
    (global settings, opt-in via
    --include-global
    )

Files that are never pushed:

CLAUDE.md
(version-controlled with project),
settings.local.json
,
hooks-config.local.json
, conversations, sessions.

Instructions

Parse user arguments and run the push script:

bash "${CLAUDE_PLUGIN_ROOT}/scripts/sync-push.sh" [OPTIONS]

Options:

  • --profile NAME
    — Push to a specific profile (default: active profile)
  • --force
    — Skip multi-machine safety check and secret warnings
  • --dry-run
    — Show what would be pushed without actually pushing
  • --include-global
    — Also push
    ~/.claude/settings.json
    (global settings are opt-in)

Multi-machine warning

If the script warns about another machine having pushed more recently, advise the user to pull first (

/sync-pull
) or use
--force
if they're sure.

Secret detection

If the script warns about potential secrets, tell the user which files were flagged and suggest reviewing them before using

--force
.

User Arguments

$ARGUMENTS