diff --git a/AGENT.md b/AGENT.md index fed4973..2c1521c 100644 --- a/AGENT.md +++ b/AGENT.md @@ -13,8 +13,11 @@ Use this file as the single source of truth for how to work on Mole. - Comments must be English, concise, and intent-focused. - Use comments for safety boundaries, non-obvious logic, or flow context. - Entry scripts start with ~3 short lines describing purpose/behavior. +- Shell code must use shell-only helpers (no Python). +- Go code must use Go-only helpers (no Python). - Do not remove installer flags `--prefix`/`--config` (update flow depends on them). - Do not commit or submit code changes unless explicitly requested. +- You may use `gh` to access GitHub information when needed. ## Architecture diff --git a/lib/clean/system.sh b/lib/clean/system.sh index 0fa4fe4..e6c55eb 100644 --- a/lib/clean/system.sh +++ b/lib/clean/system.sh @@ -280,7 +280,8 @@ clean_local_snapshots() { if [[ "$DRY_RUN" != "true" ]]; then if [[ ! -t 0 ]]; then - echo -e " ${YELLOW}!${NC} Local snapshots found, skipping non-interactive mode" + echo -e " ${YELLOW}!${NC} ${#snapshots[@]} local snapshot(s) found, skipping non-interactive mode" + echo -e " ${YELLOW}${ICON_WARNING}${NC} ${GRAY}Tip: Snapshots may cause Disk Utility to show different 'Available' values${NC}" return 0 fi echo -e " ${YELLOW}!${NC} Time Machine local snapshots found" diff --git a/lib/core/base.sh b/lib/core/base.sh index 5bfbfbf..05413bd 100644 --- a/lib/core/base.sh +++ b/lib/core/base.sh @@ -171,7 +171,12 @@ detect_architecture() { # Get free disk space on root volume # Returns: human-readable string (e.g., "100G") get_free_space() { - command df -h / | awk 'NR==2 {print $4}' + local target="/" + if [[ -d "/System/Volumes/Data" ]]; then + target="/System/Volumes/Data" + fi + + df -h "$target" | awk 'NR==2 {print $4}' } # Get Darwin kernel major version (e.g., 24 for 24.2.0)