mcpbeat

Minutes Cleanup

silverstein/minutes-.opencode-minutes-cleanup

Manage old recordings — find large files, archive old meetings, delete processed originals. Use when the user says "clean up recordings", "how much space are meetings using", "delete old recordings", "archive meetings", "manage meeting storage", or asks about disk space from minutes.

855 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
1405
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/silverstein/minutes --skill minutes-cleanup

The instruction itself

9 sections, as written by the author

/minutes-cleanup

Help the user manage disk space and organize old recordings. Minutes is

transcript-first: markdown notes and structured memory are durable, while raw

audio is a temporary recovery/reprocessing layer unless pinned.

Check current usage

minutes storage
minutes storage --json

Present this to the user before taking any action.

Common cleanup tasks

Preview raw-audio cleanup

After transcription, the original audio files are no longer needed for search or

recap. They only matter if you want to re-transcribe with a better model or

debug recovery. Cleanup is preview-only unless --apply is passed.

# Use the configured retention policy
minutes cleanup

# Try a shorter successful-audio window
minutes cleanup --older-than 14d

# Machine-readable preview for agents
minutes cleanup --json

Delete raw audio candidates

Only apply cleanup after showing the preview and getting explicit confirmation.

minutes cleanup --apply
minutes cleanup --older-than 14d --apply

Archive old meetings

Move meetings older than N days to an archive folder:

mkdir -p ~/meetings/archive

# Find meetings older than 90 days
find ~/meetings -maxdepth 1 -name "*.md" -mtime +90

# Move them (confirm with user first)
find ~/meetings -maxdepth 1 -name "*.md" -mtime +90 -exec mv {} ~/meetings/archive/ \;

Archived meetings won't appear in minutes list or minutes search (which only scans ~/meetings/), but they're still on disk if needed.

Clean up processed voice memos

The watcher moves originals to ~/meetings/memos/processed/ after transcription:

du -sh ~/meetings/memos/processed/ 2>/dev/null

Clean up stale state

# Remove stale PID file
rm -f ~/.minutes/recording.pid

# Clean old logs (keep last 7 days)
find ~/.minutes/logs -name "*.log" -mtime +7 -delete 2>/dev/null

# Remove last-result.json (transient)
rm -f ~/.minutes/last-result.json

Gotchas

  • Never delete .md files without asking — These are the transcripts. They're small and contain the actual value. WAV files are the space hogs.
  • Prefer minutes cleanup over raw find -delete — The CLI understands pinned audio and sidecar stems.
  • Archived meetings are invisible to searchminutes search only walks ~/meetings/ and ~/meetings/memos/. If you need archived meetings searchable, configure QMD to index ~/meetings/archive/ too.
  • Audio deletion is irreversible — If the user might want to re-transcribe with a better model later, suggest pinning important recordings and only deleting old unpinned candidates.
  • Pin exceptions in frontmatter — Add audio_retention: pinned to a meeting to keep its raw audio out of cleanup candidates.
  • Audio is ~10 MB/minute, transcripts are ~1 KB/minute — Deleting audio saves 99%+ of space while keeping all searchable content.
  • iCloud sync caveat — If ~/meetings/ is in an iCloud-synced folder, deleted files go to "Recently Deleted" and still count against storage for 30 days.

How to use it

Copy the folder

Take silverstein/minutes-.opencode-minutes-cleanup from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.