Site Architecture
AvdLee/RocketSimApp
When the user wants to plan, map, or restructure their website's page hierarchy, navigation, URL structure, or internal linking.
macos-storage-management — Use when freeing Mac storage or moving files to SSDs.
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install AtlasOmnia/donna-starter macos-storage-management --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/apple/macos-storage-management .claude/skills/macos-storage-management && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .claude/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-managementType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install AtlasOmnia/donna-starter macos-storage-management --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/apple/macos-storage-management .agents/skills/macos-storage-management && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .agents/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install AtlasOmnia/donna-starter macos-storage-management --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/apple/macos-storage-management .cursor/skills/macos-storage-management && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .cursor/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/AtlasOmnia/donna-starter.git --path skills/apple/macos-storage-management--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install AtlasOmnia/donna-starter macos-storage-management --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/apple/macos-storage-management .gemini/skills/macos-storage-management && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .gemini/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install AtlasOmnia/donna-starter macos-storage-managementInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/apple/macos-storage-management .github/skills/macos-storage-management && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .github/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install AtlasOmnia/donna-starter macos-storage-management --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/AtlasOmnia/donna-starter.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/apple/macos-storage-management .opencode/skills/macos-storage-management && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "macos-storage-management" agent skill from https://github.com/AtlasOmnia/donna-starter/tree/main/skills/apple/macos-storage-management into .opencode/skills/macos-storage-management/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "macos-storage-management", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
macos-storage-managementmacos-storage-management — Use when freeing Mac storage or moving files to SSDs.
macOS Storage Management is an agent skill from AtlasOmnia/donna-starter. macos-storage-management — Use when freeing Mac storage or moving files to SSDs.
Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including scripts (for example `scripts/archive-resident-files.py` and `scripts/cleanup-inactive-caches.py`).
It works with macOS. The repository describes itself as: Donna — a starter Hermes Agent profile: opinionated persona, 73 curated skills, guided first-run orientation, optional Token Router. MIT. The licence is MIT.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a3710bd. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 2 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
dockerFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use docker, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
macOS Storage Management loads about 4.2k tokens when it runs. Until then it costs about 26 tokens; SKILL.md has 2,250 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from AtlasOmnia/donna-starter at commit a3710bd, republished under its MIT licence (© AtlasOmnia). 2,250 words, ~4,174 tokens.
.claude/skills/macos-storage-management/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Safely reclaim local Mac storage without mistaking cloud placeholders for resident data, losing File Provider content, or flattening metadata onto an incompatible external filesystem.
Load this skill when the user asks to free space on a Mac, move Documents/Desktop/Downloads to an external SSD, archive iCloud/File Provider folders, migrate between APFS and ExFAT, or explain conflicting Finder, du, and df storage figures.
/. On modern macOS, use df -h "$HOME" because /System/Volumes/Data carries user data.dataless with zero allocated blocks. Its apparent size is not reclaimable local space until downloaded.df before/after; do not equate logical file size with local blocks released.Treat the Storage Settings number as a classification clue, not a filesystem path. Before recommending cleanup:
diskutil apfs list and df -h "$HOME".$HOME, ~/Library, /private/var, /Library, and hidden application roots with allocated-block measurements./private/var/folders.~/.hermes; directory-only rankings can hide backup multiplication.df -h "$HOME" /Volumes/* and du -sh "$HOME/Documents" (or the requested tree).du -sh.diskutil info for filesystem, read-only state, and free capacity.Check source directory extended attributes and representative files:
ls -ldO@ "$SOURCE"
ls -lO@ "$FILE"
stat -f 'flags=%Sf size=%z blocks=%b fileid=%i' "$FILE"Important signals:
com.apple.file-provider-domain-id on the folder;dataless in file flags;blocks=0 with nonzero logical size;Resource deadlock avoided while a copy/archive tool tries to open cloud-only data.Inventory resident regular files without opening placeholders: use lstat, require regular-file mode, and select st_blocks > 0. Count resident allocated bytes as st_blocks * 512. Separately count zero-block/dataless logical bytes and symlinks.
A direct metadata-preserving copy may be appropriate. Still verify before source removal. For a newly formatted external SSD intended to hold live Git repositories, first run a sustained multi-gigabyte write → sync → destination SHA-256 readback gate; a successful format, mount, SMART result, or diskutil verifyVolume does not prove the USB cable/port/power path is stable under load. Restore cold Git archives through hidden same-volume staging, repair linked-worktree metadata only after verifying the common repository has no writer, and keep source archives intact until Git acceptance passes.
A large application directory is rarely one safe unit. Split candidates into:
Before moving an inactive archive, record its size and modification time, check exact destination-name collisions, and verify no process has an open file beneath the source. A dated name is evidence, not proof of inactivity.
For macOS-heavy archive trees on ExFAT, create one uncompressed PAX tar plus a companion manifest per source. Process sources sequentially so each verified tree is an independent commit point and a later failure cannot compromise earlier or untouched sources.
Treat Git checkouts as macOS-heavy preservation trees, not ordinary portable folders. Before archiving, discover nested repositories/worktrees; record branch and HEAD; require clean status unless the user explicitly approves a dirty-state archive; inspect both exact-path open files and process command lines for incumbent writers, watchers, test runners, or controller scripts; and exclude current canonical checkouts. A dated or final name is not enough by itself.
On ExFAT, archive each bounded source as its own uncompressed PAX tar rather than moving the checkout directly. Verify every intended regular-file hash and symlink target against a source manifest, re-check the complete source identity and Git cleanliness immediately before deletion, then finalize the tar and companion manifest atomically. Report intentionally excluded active or dirty trees at closure.
When the user explicitly wants data moved, preserve that objective. Classify candidates first, but do not substitute deletion or a cloud-only toggle unless moving has a concrete safety or compatibility blocker.
On a critically full Mac, process eligible archives sequentially or in explicit size-limited batches. Copy directly to a destination .partial, hash-verify it, re-check source identity, atomically finalize, persist one manifest record, and only then remove that source file. Do not create a second large staging artifact on the Mac. Use one exact selector for inventory, open-file checks, transfer, and closure so sidecars do not inflate counts or make totals disagree.
Long bounded transfers should run as tracked background work with completion notification. Persist the manifest after every committed file, and reconcile source, destination, manifest, and stale .partial files before resuming after interruption.
Treat /private/tmp as mixed-risk, not automatically disposable. Before selecting completed build trees, check open files, process current-working-directories, and recent modification times. If provenance is uncertain, archive only quiet top-level trees to the SSD with the same fail-closed manifest/hash sequence used for inactive backups.
For rebuildable caches, use an explicit target allowlist and one lsof -Fn snapshot. Skip any target with an open file rather than terminating applications just to reclaim space. Measure cleanup candidates and results using allocated blocks (st_blocks * 512). Never generically clear CloudKit, cloud-provider stores, browser profiles, application databases, Docker disks, or live Hermes state.
Large dependency trees may contain hundreds of thousands of tiny files. Emit entry-count progress during inventory and verification, and expect the job to be metadata-bound even when total bytes are modest. See scripts/cleanup-inactive-caches.py.
Docker Desktop normally concentrates its Mac-side storage in ~/Library/Containers/com.docker.docker/Data/vms/0/data/Docker.raw. Treat this as an app-managed sparse disk:
st_size) with physical allocation (st_blocks * 512). The logical value may be hundreds of GiB without consuming that much Mac storage.docker system df -v, docker compose ls -a, docker ps -a, docker volume ls, and docker buildx du.docker system prune --volumes as a blind shortcut on a machine with unrelated services, and never manually delete Docker.raw unless the user explicitly intends a complete Docker reset.Docker.raw allocated blocks declined, and df -h "$HOME" shows actual reclaimed Mac capacity. Docker deletion is not complete merely because internal objects disappeared.When a user asks whether cloud storage should replace an unstable external SSD, separate three roles before recommending a provider:
For Apple-centric personal data, an existing iCloud Drive quota is a practical archive destination, especially for dated encrypted archives, exports, installers, and documents. Treat Optimize Mac Storage and cloud-only placeholders as expected File Provider behavior, not as proof that a local working copy exists. Apple iCloud Drive deletion propagates across connected devices; retain separate date-stamped snapshots and verify each upload with an independent download/readback before retiring local data. Keep employer/business data in its authorized tenant (for example, the employer's OneDrive) rather than mixing it into a personal iCloud account.
When the source disk is failing under load, first preserve the source and copy critical data to a qualified local destination. Then create a layered layout: healthy local active copy, cloud Git remote for committed source, and dated cloud archive for non-Git data. Qualify the replacement SSD with a sustained multi-gigabyte write, sync, and cryptographic readback before treating it as the active workspace; a SMART pass or successful mount alone does not prove the USB cable, port, enclosure, power, or thermal path is stable.
Use a temporary destination name such as .partial. The operation must follow this order:
Any read, copy, verification, or source-identity failure must preserve the source.
Report the exact destination path, resident files and allocated bytes moved, verification result, source objects removed, cloud placeholders retained, source size before/after, Mac free space before/after, and whether remaining free space is still operationally low.
Start completion answers with Yes or No. Separate completed work from remaining storage risk.
du versus dfdu can show figures that do not explain APFS snapshots, purgeable data, File Provider state, or Data-volume pressure. Use both; df "$HOME" is the closure metric.
Do not size a foreground tool timeout from the byte count and hope it is sufficient; USB speed, filesystem overhead, hashing, and metadata vary. Run long bounded transfers as tracked background work with completion notification. Resume from per-file durable commits, not from process exit status. Before restarting, reconcile any final destination file or .partial with the source and manifest; apparent size alone is not proof of a completed copy — hash-verify the destination against the source before removing anything.
mv across filesystemsA cross-volume mv is copy-then-delete. It can fail halfway and does not solve ExFAT metadata incompatibility. Never use it as the unverified safety mechanism for mixed macOS trees.
unzip -t as full proofCRC validation proves archive readability, not necessarily that every intended resident source was included. Compare the archive entry set and cryptographic hashes against an explicit source manifest.
ditto after placeholder errorsResource deadlock avoided in a File Provider tree is a diagnostic signal, not a reason to keep retrying the same bulk copy. Inspect dataless flags and allocated blocks, remove any failed partial artifact only after a separate verified transfer exists, then use a resident-only strategy.
Dataless placeholders usually consume negligible local data blocks; deleting them may remove cloud originals while reclaiming little space. Leave them untouched unless the user explicitly wants cloud deletion.
scripts/archive-resident-files.py for a generic fail-closed resident-file archiver with SHA-256 destination verification.scripts/cleanup-inactive-caches.py for a dry-run-first cache cleaner that skips targets with open files.scripts/archive-resident-files.pyscripts/cleanup-inactive-caches.py© AtlasOmnia, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files (scripts) in skills/apple/macos-storage-management of AtlasOmnia/donna-starter.
Open the folder on GitHubat commit a3710bd
macOS Storage Management next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| macOS Storage Management this skillAtlasOmnia/donna-starter | 126 | — | ~4.2k | Automated safety check: Pass | MIT | |
| Site ArchitectureAvdLee/RocketSimApp | 805 | 11 repos | ~3.3k | Automated safety check: Pass | Custom licence | |
| Engine Whats Newflutter/flutter | 179k | — | ~978 | Automated safety check: Pass | BSD-3-Clause | |
| macOS Spm App PackagingDimillian/Skills | 4k | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| Openclaw Live Updateropenclaw/openclaw | 392k | — | ~3.7k | Automated safety check: Pass | MIT | |
| Orca iOS Simulator Controlstablyai/orca | 89k | 1 repos | ~584 | Automated safety check: Pass | Apache-2.0 |
AvdLee/RocketSimApp
When the user wants to plan, map, or restructure their website's page hierarchy, navigation, URL structure, or internal linking.
flutter/flutter
Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44).
Dimillian/Skills
Scaffold, build, and package SwiftPM-based macOS apps without an Xcode project.
openclaw/openclaw
Maintain the canonical live OpenClaw main checkout, macOS LaunchAgent-managed Gateway, local macOS app, exact-head main CI, and recurring full release validation.
stablyai/orca
iOS Simulator control from inside Orca, with the live device view in Orca's emulator pane. Use when driving a booted Apple Simulator on macOS: taps, gestures…
tw93/Mole
A catalog of recurring bug shapes in the Mole Mac cleaner, used to review safety-sensitive diffs for deletion safety, unbounded commands, shell traps and weak tests.
AtlasOmnia/donna-starter
marketing-collateral-design — Use when designing, recreating, critiquing, or exporting static marketing collateral such as flyers, social graphics, postcards, brochures, business cards, print ads…
AtlasOmnia/donna-starter
hermes-self-evaluation — Use when the user asks to evaluate, audit, or optimize Hermes itself — analyzing session history, skill library, costs, and architecture to identify improvements, automation…
AtlasOmnia/donna-starter
skill-auditor — Use when auditing, reviewing, or grading Hermes skills for quality.
AtlasOmnia/donna-starter
local-discovery — Find local events, venues, and activities — ad-hoc web discovery when the user asks 'what's happening' or 'what should I do this weekend'.
AtlasOmnia/donna-starter
cross-browser-typography-qa — Diagnose and verify web typography rendering defects across Chromium, WebKit, and native Safari, including clipped glyphs, broken descenders, wrapping, font metrics…
AtlasOmnia/donna-starter
hermes-mnemosyne — Configure, troubleshoot, and operate the Mnemosyne memory provider for Hermes Agent.
Works with
macos-storage-management — Use when freeing Mac storage or moving files to SSDs. macOS Storage Management is an agent skill from AtlasOmnia/donna-starter. macos-storage-management — Use when freeing Mac storage or moving files to SSDs.
macOS Storage Management fits situations like: freeing Mac storage; moving files to SSDs.
Run `npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a claude-code`. Or copy the skill folder (skills/apple/macos-storage-management in AtlasOmnia/donna-starter) into .claude/skills/macos-storage-management in your project. Claude Code loads it when a task matches its description.
Run `npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a codex`. Or copy the skill folder (skills/apple/macos-storage-management in AtlasOmnia/donna-starter) into .agents/skills/macos-storage-management in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add AtlasOmnia/donna-starter --skill macos-storage-management -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/macos-storage-management, .gemini/skills/macos-storage-management, .github/skills/macos-storage-management and .opencode/skills/macos-storage-management in your project.
Going by SKILL.md and its folder, macOS Storage Management needs Python for the scripts in its folder and the command-line tools its instructions call (docker). Our summary lists: Python 3; Docker.
SKILL.md contains no URLs. Its commands use docker, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
macOS Storage Management is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.2k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with macOS Storage Management: Site Architecture (AvdLee/RocketSimApp, 805 stars), Engine Whats New (flutter/flutter, 179k stars), macOS Spm App Packaging (Dimillian/Skills, 4k stars) and Openclaw Live Updater (openclaw/openclaw, 392k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
AtlasOmnia (a GitHub user) maintains it in AtlasOmnia/donna-starter, which has 126 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on September 19, 2026.
Source: AtlasOmnia/donna-starter on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.