← ClaudeAtlas

cleanuplisted

Configure an uninstall script and run it to remove the app, its data, and its caches from the system — the "before a clean install" counterpart to deploy
AnotherSava/claude-code-common · ★ 1 · AI & Automation · score 74
Install: claude install-skill AnotherSava/claude-code-common
See `~/.claude/learnings/shell-environment.md` for the expected bash functions and verification checklist. The `cleanup` skill is the destructive counterpart to `deploy`: it stops the running app, removes the installed bundle from `INSTALL_DIR`, and wipes the app's user-data + cache directories. It reuses `config/deploy.env` (the same file deploy writes) so the user never has to enter the install location twice. If `config/deploy.env` contains a `BACKUP_FILES=` line (comma- or space-separated list of paths *inside* the app-data dir), those files are copied to `<repo>/.cleanup-backups/<timestamp>/` **before** the data wipe — use it for per-project files the user would lose work over (e.g. local prompt history, scratch DBs). The `.cleanup-backups/` directory should be in `.gitignore`. ## Context - Cleanup function in shell rc: !`cat ~/.bashrc ~/.zshrc ~/.bash_profile ~/.zprofile 2>/dev/null | grep -c "cleanup()" || echo 0` - Shell rc target: !`case "$(uname -s)" in Darwin) echo "~/.zshrc" ;; MINGW*|MSYS*|CYGWIN*) echo "~/.bashrc" ;; *) [ -n "$ZSH_VERSION" ] || [ "${SHELL##*/}" = "zsh" ] && echo "~/.zshrc" || echo "~/.bashrc" ;; esac` - Wrapper script exists: !`test -f scripts/cleanup.sh && echo yes || echo no` - Wrapper target: !`grep -oE 'cleanup(-[a-z]+)?\.sh' scripts/cleanup.sh 2>/dev/null | tail -1 || echo none` - Scripts in gitignore: !`grep -cx 'scripts/' .gitignore 2>/dev/null || echo 0` - Deploy env: !`cat config/deploy.env 2>/dev/null || echo MISSING` - Deploy env h