---
name: laohu-archive
description: 用户明确要求建立作品项目或目录、保存文件或归档收录时，确定保存位置并创建或复用作品目录；项目内默认归入 works，项目外先承接或确认位置，同一作品持续复用路径。不因创作、命名或选择方向自动接入，不代替专业创作。
---

开始本入口前，解析当前 `SKILL.md` 所在真实目录为 `{SKILL_DIR}`，读取 `{SKILL_DIR}/../../../docs/runtime.md`；本轮已加载则复用。该文件提供跨项目的路径、授权、交接和保存约定，读完回到本入口执行。

# 作品收录与目录管理

让一个作品从第一份草稿到后续制作始终有一个明确的位置。交付是可用的作品目录和返回给创作负责人的路径，不是另一份需求分析或创作方案。

`{SKILL_DIR}` 是当前加载的 `SKILL.md` 所在真实目录；`{PROJECT_ROOT}` 是它的 `../../..`，核对其中存在 `AGENTS.md` 和 `.agents/skills/`。`{WORK_DIR}` 是本次确认的作品目录。命令占位符先替换为实际路径并正确引用，不能靠终端当前目录决定作品存放位置。

## 何时进入

- 先按共同运行约定的“作品目录的共同接入”判断明确的目录、保存或收录授权；条件未满足时不进入本能力，创作负责人在聊天中交付可审查内容。
- 已满足该条件：承接本次文件操作范围，按下节核对名称、位置和归属；不因调用归档而扩大成保存全部草稿。
- 同一作品的后续保存仍在已有明确授权范围内时，沿用 `{WORK_DIR}`；不因换了 Skill 重新建目录，也不把已有目录当成新一轮写入授权。
- 用户主动要求收录已有作品：先确认这些文件是否属于同一作品，再规划归入哪个已有或新目录。
- 单纯讨论、创作或修改内容，以及调用链检查，不创建作品目录、不保存作品；无须用户额外声明“不要保存”。项目规则、通用知识、Skill 代码不作为作品收录。

## 先承接作品，不重问需求

从当前任务取得：作品名称、独立作品类别、已有作品路径、调用负责人，以及这次是新建还是继续。名称与方向已确认就沿用，不再次询问。

作品名称是识别这个项目的名称；它可以与歌曲名相同，但不必等于封面文字、文章传播标题或某个文件的名称。已有目录也不因封面大字或发布标题变化而自动改名。

缺少作品名称时，先查上游是否已确认；确实未定则返回“待命名”及已有方向，由创作负责人继续命名讨论。需要辅助时由负责人核验并建议使用标题能力，不由本能力再调用标题或灵感能力，以免互相等待。用户认可的工作名也可使用，不要求最终传播标题提前定稿；不得自造“未命名作品”目录。

## 1. 先确定保存位置，再复用目录

先从宿主工作项目、用户指定路径和任务状态确认当前是否在 `{PROJECT_ROOT}` 对应的老胡项目中工作。Skill 通过全局链接加载不代表当前任务在老胡项目内；同名 `AGENTS.md`、`works/` 或临时切换终端目录不能证明归属。

- 已有本作品确认的 `{WORK_DIR}`，或者用户明确指定本次保存位置：直接沿用。用户给的是父目录时，结合已确认作品名提出实际作品路径；不明确是父目录还是最终目录且会影响归属时只澄清这一点。
- 确认在老胡项目内，且没有另行指定位置：默认 `{PROJECT_ROOT}/works/{分类}/{作品名称}/`，按下节分类，不为默认位置重复询问。
- 在项目外或工作环境不明，且位置尚未确定：首次落盘前告知，提出可定位的推荐路径并询问。当前项目路径可靠且有既定组织规则时优先据此建议；也可建议老胡仓库 `works/` 下的适用位置，或接受用户自定目录。建议不是已经接受的默认值，确认前不创建、复制或保存。
- 同一作品已经确认的位置持续有效；切换 Skill、换媒介和恢复任务不重问。用户后来指定新位置时更新相关交接，但不自动迁移旧文件，也不把一次选择写成所有项目的永久偏好。

项目外可这样说明（替换成实际路径，不能原样发送占位符）：“这次是在老胡项目外使用技能，保存位置还未确定。建议放到当前项目的 `{建议作品路径}`，方便与本项目材料一起管理；也可以放到老胡仓库的 `{老胡作品路径}`。你希望用哪一处，或另指定位置？”若只有一处有依据，给一处建议即可；不为了列选项虚构当前项目路径。


已有 `{WORK_DIR}` 时检查它是已确认的实际路径且对应当前作品；本项目默认归档核对分类，用户指定的外部目录不强套本项目分类，也不要求含有 `AGENTS.md` 或 `.agents/skills/`。属于同一个作品，就继续使用，不重新按当前工具分类。

例如，一首歌已经在 `works/music/晚风来信/`，它的歌词、不同编曲方案、歌曲封面、音频和宣传视频都留在这里。只有用户明确开始独立作品，才另选类别与名称；“换一张封面”通常仍是原作品的修改，不自动变成新的封面项目。

恢复对话时先看已给路径和来源文件，再在相关分类中查找候选；不能只凭同名断定是同一作品。多个候选无法区分、类别归属不明或无法确认是否属于已有作品时，执行 `{PROJECT_ROOT}/docs/runtime.md` 的“关键决定不靠猜测”：列出候选实际路径与区别，有依据时推荐一处并说明原因，询问归入哪件作品或是否另建。返回“待确认归属”，确认前不创建、复制、移动或使用 `--reuse`。目录归属问题由本能力就地澄清，不交回创作入口重复访谈；确认后把决定和路径一起传回。

用户要新作品但名称已被占用时先解决命名；可提出可用名称供选择，不静默合并，也不自动加序号。缺少创作名称仍按前文交回命名讨论，不把猜测的标题变成目录名。

## 2. 使用本项目 works 时选择固定分类

读取 [作品分类](references/categories.json)。其中列出可用分类和常见负责人，是分类的唯一来源；分类按独立作品最终归属选择，不按扩展名，也不机械按当前调用 Skill 选择。

歌词与编曲共用 `music`。为歌曲做封面时仍归歌曲目录；独立封面项目才放 `cover`。灵感、选题、标题和对标分析服务已有作品时跟随原目录；只有它们本身是用户要独立保存的成果集合，才使用各自分类。

诊断附着于被诊断作品；进化结果进入 Skill 或知识库；项目更新不产生作品类别。新能力出现时先判断能否放进已有分类，不自动增加一级目录；确有独立归属缺口，再向用户提出分类调整。

分类目录使用英文标识，作品子目录使用用户确认的名称。名称不能包含路径分隔符、控制字符、系统保留名称或上级目录跳转。不能静默删除字符或改成另一个名称；需要调整时给出可用名称并确认。

## 3. 创建或复用目录，立即返回

使用 [目录工具](scripts/workspace.py)。确认任务在老胡项目内并采用默认位置时，从该项目工作目录先预览路径：

```bash
python3 "{SKILL_DIR}/scripts/workspace.py" --category music --name "{已确认作品名}"
```

路径与任务一致、创建已获明确的目录或保存请求授权时，加 `--write` 创建。只有已经确认是继续同一作品时加 `--reuse`；目录存在不等于获准混入另一作品。默认项目根目录由脚本位置定位，隔离测试才传 `--root`。脚本对仓库外的默认调用报错；不能临时切换到安装仓库来绕过位置确认。

项目外已明确位置，或用户在项目内另行指定位置时，使用精确的作品路径（不追加分类或作品名）：

```bash
python3 "{SKILL_DIR}/scripts/workspace.py" --work-dir "{WORK_DIR}" --location-confirmed
```

位置已由用户指定或接受，才可传 `--location-confirmed`，它不是 Agent 代替用户作决定的开关。预览核对后加 `--write`，同一作品复用再加 `--reuse`。

工具只创建目标路径必要的父目录与作品目录，不创建空的歌词、编曲、图片、视频子目录或模板文件。它不会覆盖文件、迁移旧目录或改名。符号链接、路径碰撞和无写权限导致失败时明确返回，不换一个磁盘或目录继续写。

无法运行脚本时，读取同一分类文件，使用宿主文件工具完成同样的路径、重名和链接检查，再创建必要目录。不能确认位置和已有内容时停止写入。

将下面状态交回调用负责人，随后返回其原流程，不占据创作主导权：

```text
作品名称：已确认名称
分类：固定分类标识
作品目录：实际绝对路径
状态：新建 / 复用 / 待命名 / 待确认位置 / 待确认归属 / 失败
返回：原调用负责人及其下一步
```

这是内部交接所需信息，不要求对用户输出整张表；但必须执行 `{PROJECT_ROOT}/docs/runtime.md` 的“文件变化必须在聊天中告知”：创建成功后，先在当前聊天明确说“已创建作品目录：实际绝对路径”，说明它用于保存哪个作品，再交回创作负责人。复用时说“继续使用作品目录”，不能只在内部传递路径。后续能力必须接收作品目录，不自行根据终端路径或工具名生成另一处输出位置。

## 4. 收录后续文件

文字、图片、音频、视频、提示词和制作文件均写入 `{WORK_DIR}`。小作品默认直接存放，如 `lyrics.md`、`arrangement.md`；确有多个独立方案或工具格式要求时再按职责区分文件或子目录，不预建空架构，也不生成 `_最终版` 等平行主稿。

不同编曲风格可以按真实差异命名，如 `arrangement-acoustic.md` 与 `arrangement-electronic.md`；同一个方案的修订更新原主文件，覆盖重要已有内容前保留可恢复依据。已有用户文件、原始素材和未确认结果不能因同名被覆盖。

用户要求收录外部文件时，先列明来源、目标和重名处理；默认保留源文件，实际需要的文件才复制。明确要求移动或目录改名时，先检查依赖与引用，说明受影响路径，再按授权执行。不能把作品整理扩成整盘搬迁或公共知识库收录。

## 完成条件

目录实际存在且位置正确；同名归属已经确认；未覆盖原文件；用户已在聊天中获知实际位置，路径已交回负责人。整理已有文件还要核对目标内容完整，并告知实际收录了哪些文件及保存位置。创建目录不代表歌词已写完、媒体已生成或作品已经发布；本仓库 `works/` 继续遵守已有忽略规则；外部目录遵守所在项目规则，不宣称天然已被 Git 忽略，也不自动修改外部忽略配置或提交文件。
