# Media Sort Starter: sort your camera roll with a plan you approve

> Point it at a messy folder of photos and videos and get a sorting plan into folders you named, before a single file moves. Duplicates are found by hash, private categories are left alone, you approve the plan by typing its code at your own terminal, files are copied before they are ever moved, every placement is checked byte for byte, and one command undoes the run. Nothing is ever deleted.

- URL: https://paperchasewebb.ai/bots/marketplace/items/media-sort-starter-sort-your-camera-roll-with-an-approved-plan/
- Type: Prompt pack
- Category: Creative and video
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot, Hermes (named in the listing); Plain Markdown files, a small Python checker, and rules for AGENTS.md and CLAUDE.md, Claude Code and Codex notes, Hermes notes and a Grok Bot standing order. The agent files were checked by the checker on Linux; they were not loaded inside each agent for this release
- Price: $14 USD
- Difficulty: Beginner
- Setup time: 10 min
- Time to result: A first plan in about 10 minutes
- Format: Markdown (.md) file, media-sort-starter-sort-your-camera-roll-with-an-approved-plan.md
- Version: 1.0, updated 2026-11-01
- License: Use for yourself, your team or your clients. Do not resell or republish the kit itself.

## What you end up with

A sorted media folder you planned and approved yourself, with duplicates flagged, private files untouched and an undo for every run.

## What you get

- mediasort.py: plan, approve, apply, verify, undo and check-taxonomy, standard library only
- A starter taxonomy with five folders and a private category that is off until you turn it on
- Duplicate detection by SHA-256, with empty or unreadable files set aside for review
- Approval by typed plan code at a real terminal; piped input and edited plans are refused
- Copy first, byte-for-byte verify, move only after a verified copy, and undo that never deletes
- AGENTS.md with eight rules, CLAUDE.md, a Grok Bot standing order, Codex and Hermes notes and a media-sort skill
- 13 tests you can run yourself

## Who it is for

Anyone who wants their photos and videos sorted into their own folders without handing an agent a delete key.

## Tools needed

- Python 3.8 or newer: runs every script; standard library only, no network
- Grok Bot, Claude Code, Codex or Hermes (optional): makes plans and tunes the taxonomy under the AGENTS.md rules; cannot approve a plan or move files without your yes
- You need: Python 3.8 or newer
- You need: A folder of photos and videos that already has a backup

Cost to run: The kit is the only purchase. Runs locally with Python; no uploads, no accounts.

## How it works

1. **Pick a safe folder.** Choose a small folder that already has a backup and unpack the kit next to it. Expected: The kit files and your folder side by side.
2. **Name your folders.** Edit taxonomy.json, then run python3 desk/mediasort.py check-taxonomy taxonomy.json. Expected: taxonomy OK, or a code telling you what to fix.
3. **Plan and read it.** Run plan into a new destination and open the .md plan. Expected: Counts per folder, duplicates, files for review and a plan code. Nothing moved.
4. **Approve, copy, verify.** Type the plan code at your terminal with approve, then run apply and verify. Expected: Every file copied and verified; move only if you ask for it after that.

## Sample prompt: First sort (Grok Bot, Claude Code, Codex, Hermes)

```
Read AGENTS.md. Check taxonomy.json, then make a plan for ~/Downloads into ~/Sorted. Show me the counts per folder and the first 20 files in _review. Do not approve or move anything.
```

Prompt 1 of 3.

## Sample prompt: Tune the taxonomy (Grok Bot, Claude Code, Codex, Hermes)

```
Look at the file names in _review in the latest plan, never private folders. Suggest up to five new words for my existing folders, show me the change to taxonomy.json and wait for my yes.
```

Prompt 2 of 3.

## Free preview of media-sort-starter-sort-your-camera-roll-with-an-approved-plan.md

````markdown
# Media Sort Starter

**Your camera roll, sorted into folders you named. Planned first, approved by you, copied before anything moves, and never deleted.**

Version 1.0, 2026-11-01. By PaperChaseWebb Inc. Works with Grok Bot, Claude Code, Codex and Hermes, or on its own from a terminal.

## The problem

A Downloads folder with a thousand photos and clips is not a storage problem. It is a decision problem: nobody wants to open each file, and nobody wants an agent loose in their media with a delete key. Most "AI sorting" demos skip the part that matters, which is who approves what moves, and how you get it back if the sort was wrong.

## How this kit works

Five steps, each one a command, each one safe to stop after.

1. **Your taxonomy.** You name the folders and the words that send a file there (`taxonomy.json`). First matching rule wins. Private categories exist so private files are recognized and **left alone**: they are off until you turn them on and write why.
2. **Plan (read-only).** The script walks the folder, hashes every photo and video, flags exact duplicates, sends empty or unreadable files to `_needs-review` and anything it cannot place to `_review`. It writes a plan (`.json` plus a readable `.md`) with an 8 character plan code. Nothing moves.
3. **You approve.** You read the plan and type the plan code at your own terminal. The script refuses a code that was piped in, so an agent cannot approve for you. If anyone edits the plan after it was written, the code no l
````

## Test record

- Date: Nov 1, 2026
- What was run: tests/test_mediasort.py (12) and tests/test_mini.py (1) on Linux with Python 3.8, 3.9, 3.11, 3.12 and 3.13; approve on a real pseudo terminal with a piped and a typed code; apply and verify after approval.
- Result: 13 passed, 0 failed on all five versions; piped approval refused with A02, typed code approved, copy and verify clean.
- Not run: A live Grok Bot, Claude Code, Codex or Hermes session. macOS or Windows. Very large libraries.

Copied from this item's dated test notes. What was not run stays in.

## Worth knowing

- Sorting is by file name and folder words you choose, not by looking at the picture. Files it cannot place go to _review.
- Run it on a folder that already has a backup. The kit never deletes, but a backup is still your safety net.
- The approval step assumes your agent cannot type at your terminal. Agent rules guide; they are not a lock.
- The agent files were not loaded inside a live Grok Bot, Claude Code, Codex or Hermes session for this release. Tested on Linux only.
- On 2026-11-01: 13 tests passed on Python 3.8, 3.9, 3.11, 3.12 and 3.13, and approval was checked on a real pseudo terminal (piped code refused, typed code accepted).

## Questions

**Does it look at my photos?** No. It reads file names, folder names and bytes for the duplicate hash. It never uploads anything and opens no network connection.

**Can my agent approve the plan?** No. Approval needs the plan code typed at a real terminal. Piped input is refused, and a plan edited after it was written no longer matches its code.

**What happens to duplicates?** Exact duplicates go to a _duplicates folder in the destination so you can decide. Nothing is deleted.

## How to buy

$14 one time at https://paperchasewebb.ai/bots/marketplace/items/media-sort-starter-sort-your-camera-roll-with-an-approved-plan/. Stripe checkout, then an instant download page; the download link is also in your emailed receipt.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
