← ClaudeAtlas

sync-env-uplisted

Push this machine's Claude environment (memory, plans, settings, skills) UP to the shared sync folder, updating the unified copy with version + deletion checks. Use when the user types /sync-env-up or says they're done working on this machine and want to sync their environment up / push their changes to the sync folder so another machine can pull them. Always previews changes and confirms before any destructive deletion. Secrets are not pushed unless explicitly enabled.
JonMcMillan/claude-sync-by-skill · ★ 0 · AI & Automation · score 72
Install: claude install-skill JonMcMillan/claude-sync-by-skill
# sync-env-up — push local → sync folder Pushes this machine's environment to the shared sync folder. The engine (`sync_engine.py`) lives in the sibling `sync-envs` skill folder. ## How to run the engine - **Windows:** `py -3 "<claudeSkillsDir>\sync-envs\sync_engine.py" <args>` - **macOS/Linux:** `python3 "<claudeSkillsDir>/sync-envs/sync_engine.py" <args>` `<claudeSkillsDir>` is the user's Claude skills directory (this skill's parent), e.g. `~/.claude/skills`. **Always launch it in the background** (the Bash tool's `run_in_background: true`), for both previews and applies. The sync folder is usually a cloud drive, and when the drive client is unwell the engine blocks in a kernel filesystem read for minutes. A foreground run holds the whole turn hostage, so the user cannot ask you to investigate while it hangs. Backgrounding costs nothing on a fast run and keeps you reachable on a slow one. **The 30-second check (do this every run).** A healthy scan reaches its first output within a few seconds, so if the run has not finished at ~30s, check on it rather than waiting. The engine heartbeats to **stderr** while scanning (`[scan] claude-memory (up): 1840 files`). Read the background output at ~30s and again ~10s later: if the counter is advancing it is healthy, just large; if the last `[scan]` line is identical across both samples (or absent entirely) it is **stalled — raise the alarm**. The last line names the phase it wedged in. The counter only ticks in the per-file loop