# Media Organizer

> 根据项目约定将媒体文件目录组织成结构化分类形式，便于归档管理

- Skill: `cafe3310/media-organizer` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add cafe3310/media-organizer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cafe3310/media-organizer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: Apache-2.0
- Author: cafe3310 (https://skillmd.com/u/cafe3310)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/cafe3310/media-organizer

---


# 媒体文件整理工作流

本 Skill 指导将一个包含杂乱媒体文件的目录整理成本项目内的标准化结构。此工作流强调与用户协作，以确保最终的组织方式符合用户需求。

## 步骤 1: 确定源目录

1.  请用户提供包含待整理媒体文件的目录的绝对或相对路径。
2.  确认用户提供的路径有效且可访问。如果无效，请通知用户并请求正确的路径。

## 步骤 2: 提出整理计划

1.  使用 `ls -R <source_directory>` 命令列出源目录中的文件，以了解其内容。
2.  **澄清文件内容**:
    - 对于文件名含义不明确，无法直接判断其内容或归类的文件，主动询问用户以获取准确信息。
    - 如果文件名中包含数字，应向用户确认其含义，例如是“版本号”(`_v...`)还是“示例编号”(`_no...`)。
3.  根据文件名和类型，提出一组子分类。默认分类如下：
    - `community-content`: 用于存放来自外部来源的内容（如 YouTube 评测、文章等）。
    - `internal-demos`: 用于存放内部团队创建的演示和用例。
    - `generated-examples`: 用于存放由模型自动生成的内容。
    - `assets`: 用于存放辅助性材料（如 Logo、封面、倒计时视频等）。
4.  根据项目的 `GEMINI.md` 文件提出文件命名规范。默认为：`{YYYYMMDD}_{分类}_{描述}_{编号}.{后缀}`。
    - **重要**: `{YYYYMMDD}` 必须使用文件的**最后修改时间** (`stat` 命令) 确定，而不是文件名中自带的日期。
5.  生成一个完整的文件迁移计划，将每个旧文件路径映射到一个建议的新文件路径。以清晰的格式（如 Markdown 表格或列表）呈现给用户。
6.  **暂停并请求用户确认。** 请用户审查建议的分类、命名规范和完整的迁移计划。在获得用户明确批准之前，不要继续。允许用户对计划提出修改意见。

## 步骤 3: 执行迁移

一旦用户批准计划：

1.  创建新的子分类目录（例如，使用 `mkdir -p ...`）。
2.  为已批准计划中的每个项目运行 `mv` 命令，执行文件迁移。最安全的方式是逐个或按小的逻辑批次执行。
3.  所有文件移动完毕后，清理源目录。这可能包括删除已变为空的子目录和任何系统垃圾文件（如 `.DS_Store`）。在执行 `rm -rf` 之前，请与用户确认此清理操作。

## 步骤 4: 生成文档

1.  为每个创建的新分类目录生成一个 `README.md` 文件。
2.  使用位于 `skills/media-organizer/assets/readme.md.template` 的模板来创建内容。
3.  `README.md` 应简要描述该分类，并可以包含指向几个关键文件的链接作为示例。
4.  更新父目录的 `README.md` 以反映新的、有组织的结构，使新内容易于发现。

## 步骤 5: 最终审查

1.  通知用户整理、清理和文档化过程已完成。
2.  使用 `ls` 命令显示新的目录结构。
3.  询问用户是否对结果满意。

