Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .claude/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
Type 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.
skills CLI
$ npx skills add get-bb/bb --skill storage-retention -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .agents/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
skills CLI
$ npx skills add get-bb/bb --skill storage-retention -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .cursor/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add get-bb/bb --skill storage-retention -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .gemini/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
GitHub CLI
$ gh skill install get-bb/bb storage-retention
Installs 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).
skills CLI
$ npx skills add get-bb/bb --skill storage-retention -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .github/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
skills CLI
$ npx skills add get-bb/bb --skill storage-retention -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "storage-retention" agent skill from https://github.com/get-bb/bb/tree/main/plugins/storage-retention/skills/storage-retention into .opencode/skills/storage-retention/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "storage-retention", 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.
Facts
Skill name
storage-retention
GitHub stars
4.2k
Token cost
~3.1k tokens
SKILL.md length
1,548 words
Files
1
Skills in repo
34
Repo updated
First seen
Licence
MIT
At a glance
Inspect machine storage, clean up files, and configure automatic thread archive or deletion.
Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
What it does
Storage Retention is an agent skill from get-bb/bb. Inspect machine storage, clean up files, and configure automatic thread archive or deletion.
Its SKILL.md is about 3.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: The agent IDE that builds itself. The licence is MIT.
Example prompts
“/storage-retention”
What it can do on your machine
Read from SKILL.md and the folder at commit 53c1e87. It shows what the files ask for, not the result of running them.
Tool permissions
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.
Runs code
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
Network
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Storage Retention loads about 3.1k tokens when it runs. Until then it costs about 28 tokens; SKILL.md has 1,548 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~28
When it runs· the whole SKILL.md, loaded when a task matches
~3.1k
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.
Safety
Auto-check passed
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); files beside SKILL.md are not scanned.
Download SKILL.mdSave it as .claude/skills/storage-retention/SKILL.md (or your agent's skills folder).
name
storage-retention
description
Inspect machine storage, clean up files, and configure automatic thread archive or deletion.
Storage & retention
Enable bb plugin enable storage-retention. Both policies default to Never.
Open the plugin's sidebar panel for machine reports and retention settings.
All settings in the panel save immediately when changed.
All commands return JSON. Use the owning server's normal SDK/plugin RPC transport.
Without --save, retention thresholds only preview affected thread counts.
Days must be whole numbers from 1 to 3650, or never. Unspecified settings
preserve their saved values. Saved policies apply across all projects. The
hourly run processes up to 50 trees per action and skips groups with pinned
members. Archiving can remove worktrees including uncommitted changes. Deleting
removes history and thread storage. Preview first and save only when authorized.
Delete thread storage on archive defaults to off. Set --delete-storage-on-archive
to true or false, or use the switch in the retention panel, which saves immediately.
It applies to future manual and automatic archives, including each cascaded child,
while the plugin is enabled; it does not clear previously archived threads.
Conversations and uploaded attachments are kept. Pinned threads are skipped.
Cleanup waits for stopped threads and online persistent machines. Pending cleanup
survives reloads and retries every minute; unarchiving or deleting cancels it, and
turning the setting off discards pending work on the next cleanup pass. Failures
are logged and retried. Threads without an environment need a completed scan to
identify their storage machine, just like clear-thread.
Delete development data when its checkout is removed defaults to off and is
independent of archive cleanup. Set --delete-dev-data-on-checkout-removal to
true or false, or use its switch in the retention panel, which saves immediately. When enabled, the
plugin scans online persistent machines hourly and removes missing-checkout
~/.bb-dev entries after successful scans, including manual scans. Existing
missing-checkout data is eligible too; retention previews count threads, not
these folders. The host rechecks checkout absence before removal, stops servers
working inside missing checkouts, and preserves entries whose source exists or
cannot be identified. An environment-removal event re-measures only that machine's ~/.bb-dev, after any running scan or cleanup there finishes. Startup,
machine reconnect, and hourly scans recover missed events from filesystem state.
Offline/busy machines and failed cleanup retry on later
hourly scans. Disabling the setting prevents cleanup after subsequent scans.
Scans run in the background; rerun usage to read completion, progress, or failure.
--rescan without --machine scans every online machine that is not already busy.
A completed report includes disk (total and free bytes of the volume holding thread storage).
Reports include projectWorktrees: counts of distinct managed worktree paths per project on the selected machine, including zero-count projects with a local source there; destroyed and removed environments are excluded, and cleanupPendingCount is a subset of the worktree count. Counts reflect current environment records, not filesystem measurements.
Scans also measure ~/.bb-dev on that machine. developerStorage is null when absent; otherwise it contains the path, total allocated bytes, and immediate folder/file sizes. Each entry includes sourcePath, sourcePathState (exists, missing, or unknown), and threads linked through host environment paths or a managed checkout’s thread ID. Matches cover threads known to this BB instance, including archived and hidden threads. Sources are recovered from saved launch metadata or hash-verified known/conventional checkout paths; unresolved sources remain null. Missing checkouts are cleanup candidates, not proof their development data is disposable. The UI offers missing-checkout, other-instance and unidentified-source filters. The developer section initially shows the five largest entries, grouped into linked threads, other development instances and unidentified sources, each group with its own Show N more control inside the card. Paths are hidden from rows and available through the three-dot menu’s Copy source checkout path and Copy dev data path actions. When developerStorage is present, the machine list totals thread and development storage with a per-kind split, and the machine page's first card adds a BB development row (instance count and size) to its category table under one total; the entry list stays in its own section.
Remove-dev-instances (page: Remove instances in the Clean up section) removes ~/.bb-dev entries the last scan marked missing. --instance NAME (page: the trash button on any development row, which removes immediately; different rows can run at once) removes only that entry, whatever its checkout state, and fails if the last scan did not list it. An entry counts as running when its daemon lock (daemon.lock.lock) was refreshed in the last 15 seconds; scans report this as running. RPC removeDevInstances({hostId, names, stopRunning}) with stopRunning: false leaves a running entry whose checkout still exists in place and lists it in running (the page then asks "Stop and remove?"); with stopRunning: true, as the CLI does, it sends SIGTERM to the launcher PID recorded in that instance's bb-app-runtime.json (SIGKILL after 15 seconds) and removes it. Processes in an existing checkout are otherwise left alone. The machine re-checks each source at removal time and skips entries whose checkout exists again or cannot be resolved. Before removal it stops every process whose working directory is inside a removed checkout (SIGTERM, then SIGKILL after 2 seconds), because servers keep running after their checkout is deleted. Process stopping is not available on Windows. A symlinked ~/.bb-dev entry is removed as a link; the folder it points to is kept. It returns removedCount, removedBytes, skippedCount and stoppedProcessCount, and also deletes leftover .bb-trash-* folders in ~/.bb-dev.
The largest-thread list initially shows five rows; Show N more reveals the remaining ranked threads in the report (up to 20), and Show fewer collapses it.
Reads never start scans. Remove-orphans requires a completed scan and only removes
storage the plugin identifies as orphaned from current SDK thread rows. Clear-large-files deletes
individual files of 10 MB or more from the thread storage of archived threads found in the last scan,
keeping smaller files and skipping pinned and running threads; reports show the matching totals as
archivedLargeFiles. Without --machine it covers every online machine with a completed scan.
The page uses startClearLargeFiles({hostId}) to start background cleanup and
returns immediately; pass null for all scanned online machines. Read
largeFileCleanup in usage/host reports for running, completed (file and byte
totals), or failed status. The synchronous CLI command and clearLargeFiles RPC
still wait for completion. Duplicate bulk jobs and overlapping scans are rejected.
Conversation history is never affected. The Storage page suggests it once archived threads hold 1 GB
or more of large files.
Clear-archived-files removes whole storage folders, including small files, from archived, stopped, unpinned threads found in the last scan on the selected machine. Conversations and uploaded attachments are kept.
The page starts this with startClearArchivedFiles({hostId}), which returns immediately. Read archivedFileCleanup in usage/host reports for running, completed, or failed status with cleared thread and byte totals. Progress is reported after each batch; failed jobs can be retried for the remaining files. The CLI and clearArchivedFiles RPC still wait for completion. Cleanup is exclusive per machine; opening a confirmation does not block other actions.
Clear-thread, clear-archived-files and remove-orphans first stop processes whose working directory is inside each removed thread folder, matching worktree removal, so dev servers started there don't outlive their files.
Clear-thread requires a stopped thread and an online machine. When the thread no longer has an environment, a completed scan must identify its storage on exactly one machine. Different threads can clear concurrently; duplicate clears for one thread are rejected. Scans and bulk cleanup remain exclusive per machine. Reports are cached
snapshots; rescan to see external filesystem changes.
Show full SKILL.md (333 more words)Show less
Plugin RPC methods: state(null), preview({archiveAfterDays, deleteAfterDays, deleteStorageOnArchive, deleteDevDataOnCheckoutRemoval}),
and configure({archiveAfterDays, deleteAfterDays, deleteStorageOnArchive, deleteDevDataOnCheckoutRemoval}); use null for Never and booleans for storage cleanup (both default to false for older policies). Storage
RPC methods are hosts(null), host({hostId}), scanHost({hostId}),
removeOrphans({hostId}), retryWorktreeCleanup({hostId}), and
clearThread({threadId}), clearArchivedFiles({hostId}) and removeDevInstances({hostId, names: null}) for every missing instance or removeDevInstances({hostId, names, stopRunning}) for chosen ones. The plugin owns its host worker and scan database.
Cross-plugin protection is deferred. Pin automation target threads to keep them.
Disabling the plugin stops scheduled retention and removes its storage actions. Core's idle orphan sweep remains independent.
The page uses app toasts for setting saves, cleanup results, and action failures. Running scans and cleanup progress stay beside their controls. Completed cleanup messages are not retained inline or replayed on page open. Initial loading failures retain an inline retry action. Settings and unrelated machines remain usable during cleanup; report refreshes do not extend action locks.
bb storage cleanup --machine HOST_ID --kind orphans|development|worktrees --yes starts a background job and returns immediately. RPC: startCleanup({hostId, kind}). Read maintenance in usage/host reports for running, completed or failed status. Retry failures with the same command; remaining candidates are re-read. The page uses this for bulk orphan removal, missing-checkout development data and worktree retries. Existing synchronous commands remain available.
Automatic archive cleanup and archived-file bulk eligibility respect the core 30-second undo grace, using the shared core grace constant. Undo/rearchive, pins and live status are rechecked before cleanup; bulk jobs re-read eligibility before each batch. Grace expiry is a time boundary, not an indication that environment teardown completed.
Action toasts appear immediately when work is requested. They use a short action title and a subtitle identifying the machine, thread, setting, or development-data folder. The same toast updates with completion or failure; identifiers and byte totals belong in the subtitle. Development-data deletion reads “Deleting development data” followed by “Development data deleted” when finished.
Background maintenance reports preserve kind in running, completed, and failed states so action-specific notification titles do not depend on observing the running update.
Storage Retention 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.
Configure SSL/TLS break-and-inspect on next-generation firewalls and forward proxies to decrypt, inspect, and re-encrypt HTTPS traffic for malware and exfiltration detection, including deploying…
Configures Hardware Security Modules for cryptographic key storage using the PKCS11 standard interface, covering key generation, signing, encryption, and key management on physical HSMs and SoftHSM2…
Produce documented data cleaning scripts that log every transformation with N before/after each step, generate a CONSORT-style exclusion flow diagram, create decision log entries for every…
Create or edit BB color themes and inspect them in the Theme Preview panel.
4.2k GitHub stars~1.2k tokensUpdated today
Auto-check passed
Questions about Storage Retention
What does Storage Retention do?
Inspect machine storage, clean up files, and configure automatic thread archive or deletion. Storage Retention is an agent skill from get-bb/bb. Inspect machine storage, clean up files, and configure automatic thread archive or deletion.
How do I install Storage Retention in Claude Code?
Run `npx skills add get-bb/bb --skill storage-retention -a claude-code`. Or copy the skill folder (plugins/storage-retention/skills/storage-retention in get-bb/bb) into .claude/skills/storage-retention in your project. Claude Code loads it when a task matches its description.
How do I install Storage Retention in Codex?
Run `npx skills add get-bb/bb --skill storage-retention -a codex`. Or copy the skill folder (plugins/storage-retention/skills/storage-retention in get-bb/bb) into .agents/skills/storage-retention in your project. Codex loads it when a task matches its description.
Can I use Storage Retention in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add get-bb/bb --skill storage-retention -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/storage-retention, .gemini/skills/storage-retention, .github/skills/storage-retention and .opencode/skills/storage-retention in your project.
What does Storage Retention need to run?
SKILL.md names no scripts, command-line tools or credentials: Storage Retention is instructions for the agent only.
Does Storage Retention access the network?
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Is Storage Retention safe to install?
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. Review the folder before installing.
What licence does Storage Retention use?
Storage Retention is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Storage Retention use?
About 3.1k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Storage Retention?
Skills that share tags, products or a category with Storage Retention: Performing Ssl Tls Inspection Configuration (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Configuring Hsm For Key Storage (mukul975/Anthropic-Cybersecurity-Skills, 34k stars), Object Storage (sickn33/agentic-awesome-skills, 47k stars) and Configure Channel (openclaw/openclaw, 392k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Storage Retention?
get-bb (a GitHub organization) maintains it in get-bb/bb, which has 4,166 GitHub stars. The repository holds 34 skills in this directory. The repository was last updated on October 8, 2026.
Source: get-bb/bb on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.