2026-08-26 17:28:21 +08:00
|
|
|
|
# 路径配置(运行时优先)
|
|
|
|
|
|
|
|
|
|
|
|
> 本文件是**产出路径的唯一权威配置**,运行时优先于标准库 `references/创作流程规范.md` 五、产出路径规范。
|
|
|
|
|
|
> 只要本文件存在(含默认配置),AI 执行创作流程前必须先读本文件;如有「用户自定义路径」记录,一律以用户指定为准,标准库默认路径自动失效。
|
|
|
|
|
|
|
|
|
|
|
|
## 一、默认路径(用户未自定义时生效)
|
|
|
|
|
|
|
2026-09-10 18:28:42 +08:00
|
|
|
|
**先判断运行环境(两环境判定 · 仓库特征判定,v3),再按运行系统解析桌面路径:**
|
2026-08-26 17:28:21 +08:00
|
|
|
|
|
|
|
|
|
|
| 运行环境 | 判断依据 | 默认产出根目录 |
|
|
|
|
|
|
|:---|:---|:---|
|
2026-09-10 18:28:42 +08:00
|
|
|
|
| 开发机 | 技能**处于源技能 git 检出内**(`git -C {技能目录} rev-parse --show-toplevel` 能返回仓库根) | 用户桌面 `MCNSkill项目/`(`{账号名}/脚本{编号}/` 直挂,无技能文件夹层) |
|
|
|
|
|
|
| 用户环境 | 技能**不在任何 git 检出内**(技能装在用户机器上,路径不限,如 `~/.workbuddy/skills/…`) | 用户桌面 `MCNSkill项目/`(与开发机同构) |
|
2026-08-26 17:28:21 +08:00
|
|
|
|
|
|
|
|
|
|
桌面路径按运行系统自动解析:
|
|
|
|
|
|
|
|
|
|
|
|
| 系统 | 桌面路径 |
|
|
|
|
|
|
|:---|:---|
|
|
|
|
|
|
| Windows | `C:\Users\{用户名}\Desktop\` |
|
|
|
|
|
|
| macOS | `~/Desktop/`(即 `/Users/{用户名}/Desktop/`) |
|
|
|
|
|
|
|
|
|
|
|
|
**AI 执行规则:**
|
2026-09-10 18:28:42 +08:00
|
|
|
|
1. 先做两环境判定(**仓库特征判定**):
|
|
|
|
|
|
- 判断技能是否处于**源技能 git 检出内**——执行 `git -C "{技能目录}" rev-parse --show-toplevel`,返回仓库根即 **① 开发机**;命令失败(或返回 NOT_IN_REPO)即 **② 用户环境**。无 git 环境时兜底:从技能目录向上逐级查找,任一级存在 `.git` 目录/文件即开发机,查到盘符根仍未命中即用户环境
|
|
|
|
|
|
- 开发机与用户环境产出**同构** → 桌面 `MCNSkill项目/{账号名}/脚本{编号}/`
|
|
|
|
|
|
- ⚠️ 禁止按 `.dsh` 路径段或 `D:\dshworkspace` 做任何分支判断(该部署环境已不存在)
|
2026-08-26 17:28:21 +08:00
|
|
|
|
2. 再判断当前运行系统(Windows / macOS),拼接桌面路径
|
|
|
|
|
|
3. 目录不存在则自动创建
|
|
|
|
|
|
4. 产出结构:`{产出根目录}/{账号名}/脚本{编号}/…`(内部文件结构不变,仅根目录可变)
|
|
|
|
|
|
|
|
|
|
|
|
## 二、用户自定义路径(最高优先级)
|
|
|
|
|
|
|
|
|
|
|
|
**如果用户明确要求修改产出位置,一律以用户指定为准,不要沿用默认桌面路径,也不要自作主张改回桌面。**
|
|
|
|
|
|
|
|
|
|
|
|
出现自定义需求时,在此追加记录(保留用户原话,便于追溯):
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
> 用户指定:{用户原话}
|
|
|
|
|
|
> 解析后路径:{绝对路径}
|
|
|
|
|
|
> 记录时间:{日期}
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
**示例:**
|
|
|
|
|
|
|
|
|
|
|
|
> 用户指定:产出放到 D 盘我的文件夹里
|
|
|
|
|
|
> 解析后路径:`D:\我的素材\MCN产出\`
|
|
|
|
|
|
> 记录时间:2026-08-13
|
|
|
|
|
|
|
|
|
|
|
|
记录后,AI 每次执行创作流程都以「解析后路径」为产出根目录;用户再次修改时直接更新本记录即可(旧记录保留,标注新记录生效)。
|
|
|
|
|
|
|
|
|
|
|
|
## 三、解析规则(优先级从高到低)
|
|
|
|
|
|
|
|
|
|
|
|
1. 本文件「用户自定义路径」记录 → 用自定义路径(最新一条生效)
|
2026-09-10 18:28:42 +08:00
|
|
|
|
2. 本文件默认路径 → 按两环境判定确定产出根目录(在源技能 git 检出内 = 开发机 → 桌面 `MCNSkill项目/`;不在任何 git 检出内 = 用户环境 → 桌面 `MCNSkill项目/`。**两者同构**),再按系统拼接桌面路径
|
2026-08-26 17:28:21 +08:00
|
|
|
|
3. 路径含 `~` 时自动展开为用户主目录
|
|
|
|
|
|
4. 路径含 `{用户名}` 时替换为当前系统用户名
|
|
|
|
|
|
5. 目录不存在时自动创建
|
|
|
|
|
|
|
|
|
|
|
|
## 变更记录
|
|
|
|
|
|
|
|
|
|
|
|
- 2026-08-26:新增运行环境判断——技能不在 `.dsh` 路径下(本地/源技能环境)时,默认产出根目录改为用户桌面 `MCNSkill项目/脚本创作/`(统一项目文件夹中的本技能对应文件夹);dsh 部署环境维持桌面 `MCNSkillCase/` 不变(用户指定:"技能的输出不在dsh路径下时,默认放在桌面 MCNSkill项目下对应文件夹中")。
|
|
|
|
|
|
- 2026-08-26(修订):dsh 部署环境默认产出根目录由桌面 `MCNSkillCase/` 改为桌面 `DSHSkill项目/`(用户指定:"在 dsh环境下 生成的文件放到 桌面DSHSkill项目 文件夹下");产出结构 `{账号名}/脚本{编号}/` 不变。
|
|
|
|
|
|
- 2026-08-26(再修订):dsh 部署环境改为**优先操作** `D:\dshworkspace\创作任务\`(主工作区「创作任务」目录,与 .dsh 部署副本既有自定义路径记录一致;用户指定:"dsh 中优先操作 D:\dshworkspace\创作任务\");主工作区不存在时兜底桌面 `DSHSkill项目/`。产出结构不变。
|
|
|
|
|
|
- 2026-08-26(三环境重构):环境判定由两级改为**三环境两步判定**(①本机无 `D:\AgentSkill`=用户环境;②有且技能路径含 `.dsh`=dsh 部署环境;③有且不含 `.dsh`=开发机);`DSHSkill项目/` 根目录**整体废弃**(用户确认),原"dsh 异机兜底 DSHSkill项目/"场景并入用户环境 → 桌面 `MCNSkill项目/脚本创作/`;dsh 部署环境产出 `D:\dshworkspace\创作任务\` 不变。产出结构不变。
|
|
|
|
|
|
- 2026-08-26(层级精简):开发机与用户环境产出根目录由 `MCNSkill项目/脚本创作/` 改为 `MCNSkill项目/`——去掉技能文件夹层,`{账号名}/脚本{编号}/` 直挂(用户指定:"不论1还是3,都是 桌面\MCNSkill项目\{账号名}\{脚本名}\对应文件");dsh 部署环境不变。
|
2026-09-10 18:28:42 +08:00
|
|
|
|
- 2026-09-10(判定锚点重构 v2 · 仓库特征判定):环境判定锚点由「本机是否存在 `D:\AgentSkill`」改为**仓库特征判定**——第一步查技能路径是否含 `.dsh`(含 = dsh 部署环境),第二步用 `git -C {技能目录} rev-parse --show-toplevel` 判断技能是否处于源技能 git 检出内(在 = 开发机,不在 = 用户环境;无 git 时兜底为向上逐级查找 `.git`)。产出根目录三环境结果**完全不变**,仅判定依据改变。**根因**:仓库本地路径由 `D:\AgentSkill\mcn-video-script` 迁移至 `D:\AI技能\mcn-short-video`,写死盘符锚点失效 → 开发机被误判为「用户环境」;改为仓库特征判定后,仓库搬移到任何盘符/目录名均自动正确判定。(用户确认:"改为仓库特征判定")
|
|
|
|
|
|
- 2026-09-10(环境模型精简 v3 · 三环境 → 两环境):**dsh 部署环境整体废弃**(用户确认:"第一步 技能路径含 .dsh 路径段 ② dsh 部署环境 没有这个环境了")。实测依据:`~/.dsh/skills/` 不存在、`~/.dsh/mcn-plugin.db` 不存在、`~/.dsh` 下仅剩 `profiles/`、`D:\dshworkspace` 整个目录不存在。故删除 `.dsh` 判定分支与 `D:\dshworkspace\创作任务\` 产出路径,环境判定简化为**一步判定**(是否处于源技能 git 检出内)。剩余两环境(开发机 / 用户环境)产出根目录**本就同构**(桌面 `MCNSkill项目/`),故产出结果完全不变。
|