mc-setup 是 Manticore 工作室体系的配置入口技能。其目标不是简单写入配置,而是让每个 mc-* 技能都能解析到完整的工作室配置,让品牌文件夹包含真实内容而非占位符,并如实报告仍缺失的部分。
用途与定位
该技能扮演工作室配置器角色。每次运行要么完成首次配置,要么对已有配置做增量更新。所有 mc-* 技能都依赖 [modules.manticore] 配置段,缺少该段的配置会被视为不可用,因此该技能要求配置完整,避免半写入状态。该阶段最终交付的是可运行性报告,而非简单成功消息。
核心原则
- 幂等:重复运行时,现有值作为默认值提供,只修改创建者希望变更的内容;无变更的重跑不写入任何内容。
- 不覆盖:品牌与格式文件夹中的已有文件不会被覆盖,因为这些文件可能包含创建者的编辑与积累。
- 如实报告:已实现与计划中的能力会明确区分,不会声称计划中的功能已经可用。
- 密钥安全:只检查环境变量是否存在,从不读取、回显或存储密钥值;密钥不写入 TOML、聊天或 .env.example。
- 确认后执行:每次安装、添加 MCP、执行改变系统的命令前均需确认。
启动检查与状态路由
激活时检查三个路径:{project-root}/_bmad/config.toml、{project-root}/_bmad/scripts/resolve_config.py、{project-root}/_bmad/custom/。任一缺失表示项目未完成 BMad 初始化,需先加载引导文档完成初始化。然后通过 resolve_config.py 解析 modules.manticore 的当前状态,并读取 studio-defaults.toml 作为所有默认值的权威来源。根据状态路由:空配置走首次运行全流程;存在但缺少 [render]、[style]、[cta]、[live]、[audio] 任一段视为 0.x 工作室,加载迁移文档;完整配置则作为更新流程,提供分区菜单而非逐项走完。
依赖与平台检测
首先检查 uv 是否可用,缺失时提供官方安装器并等待确认。所有流水线脚本通过 uv 运行。然后运行 check_deps.py 报告缺失项及对应平台的精确安装命令,逐项确认后安装。报告会给出平台结论并指向对应的 stack 文件,后续配置需遵循该文件中的转录通道、torch 索引、编码器阶梯、SVG 光栅化与字体方案。若机器不是 Apple Silicon,会明确说明 parakeet-mlx 参考通道不可用,推荐在同一权重上使用 onnx-asr。
HyperFrames 图形技能
安装 HyperFrames 的 Agent Skills,使代理在 beats 阶段起就了解图形能力。安装命令为 npx skills add heygen-com/hyperframes --all,可重复运行以刷新。若缺少 node 或 npx,会说明图形功能需要它们并推迟,不阻塞配置。
工作室访谈
按 studio-defaults.toml 中的 [defaults] 表逐项询问,以当前值为默认。视频默认值可通过对近期录像运行 ffprobe 自动填充。语速默认值保留,由 voice bible 实测。非默认的访谈标记 cue 记录为 cutplan-flags。cut、packaging、retro 为机械参数而非品味选择,直接按默认写入,其中 silence-floor-db 在创建者提到嘈杂房间时可调整。渲染同意需明确获取:默认渲染优先、预览每次剪辑与 beats 迭代、在第 4 关提供最终版,时间线导出与资产始终同时产出;拒绝则渲染变为按需提供。非 Mac 机器需确认编码器阶梯及 Windows NVIDIA 下 torch cu126 索引约 2.5 到 3 GB。
视频风格
依据 production-bible-spec.md 执行,不自行发明问题顺序。先询问要效仿的创作者,获得许可后研究其链接而非抽象描述风格,并将提炼要点用自己的话回述确认。风格答案同时写入配置键与 bible,二者互不复制。第 5 节仅层级有配置键,下限、多样性配额与卡片上限仅存在于 bible。
音频通道
确认本地优先的 [audio] 默认值。需明确三点:本地 TTS 为固定音色、无克隆,创作者本人声音仍需录制;song-provider 默认为空,因为没有验证过的本地通道,不得承诺计划中的 ACE-Step 通道;引擎工作区首次使用需多 GB 虚拟环境及约 5 GB 模型缓存。可选择现在构建或推迟,已有实验室会复用而非重建。
品牌构建
创建四个路径文件夹,从 assets 填充品牌路径:tokens.json、blacklist.md、craft-checklist.md、production-bible.md 与 voice-bible.md。将 formats 中缺失的模板复制到格式路径。只复制缺失内容,重复运行不覆盖。先询问创建者已有的品牌或声音素材并挖掘,只访谈挖掘无法回答的部分。最终状态应为填充完成而非占位符,幸存占位符需列入待办清单。可提议现在构建 voice bible,需创建者语料,并产出实测语速替换估计值。headshots 文件夹需 3 到 6 张获批照片,覆盖不同表情,按表情重命名并用 index.md 编目;无 headshots 会阻塞缩略图功能,需明确提示。
工具注册
优先使用创建者已订阅的 CLI 工具。询问图像生成、视频生成与外包研究工具,记录为 [[modules.manticore.tools]] 块,包含名称、能力、无头调用命令与首选模型。notes 字段作为持久记忆记录怪癖与局限。经许可进行端到端验证:先版本命令,再每个能力做一次小规模真实调用并确认输出文件存在,结果记录为已验证或未验证。然后将 [assets] 通道设置为已注册且已验证的工具名;无合适答案的通道保持为空,以便 mc-assets 在需要时询问而非默认计费。
编辑器集成
仅 DaVinci Resolve 需要额外配置。若 [editor] name 为 resolve,设置 Resolve 通道:Manticore 通过自身脚本驱动 Resolve Studio 的脚本 API,同时始终导出 fcpxml 时间线。询问使用 Studio 还是免费版;免费版拒绝外部脚本,只能手动导入 fcpxml,记录后继续。Studio 版需说明三个易导致脚本静默卡住的事项:偏好设置中外部脚本设为 Local、首次脚本连接需在 Resolve 内点击允许、未保存项目在保存时会弹出保存对话框阻塞脚本。然后运行 check_resolve.py 检查,退出码 4 表示不可达或非 Studio,需按提示修复后重跑。退出码 0 或 1 时根据打印列表与创建者确认项目预设、渲染预设、响度模式与可选 Fairlight 预设,只提供 Resolve 列出的名称。resolve-title-template 指定 Fusion 标题,默认 Text+,为空则关闭 Fusion 标题。最后可提议 Blackmagic 的 MCP 服务器用于交互式工作,仅在设置后记录 davinci-resolve = true。
密钥与 .env.example
仅对创建者明确选择的有计量通道确认环境变量名并检查是否已设置。若无计量通道则跳过密钥获取。然后按解析配置引用的环境变量生成 .env.example,每行一个变量并附来源说明,头部注释说明真实值不得写入 TOML、聊天或该文件。已有文件需外科手术式更新,绝不触碰真实 .env。
写入与报告
将结果写入 {project-root}/_bmad/custom/config.toml 的 [modules.manticore] 及其子表,外科手术式编辑:按需创建文件,保留其他模块与创建者跳过的段落。个人覆盖可放在 config.user.toml。用 resolve_config.py 验证并展示解析摘要。最终输出可运行性报告,包含:锁定行为(首个项目将发生什么、渲染策略、图形频率层级、CTA 清单、转录通道及本机能否运行、音频通道及工作区是否构建、时间线格式、Resolve 通道状态、HyperFrames 技能是否安装或推迟);通道状态(已实现或计划中,依据 studio-defaults.toml 注释);待办缺口(缺失 headshots、未构建 voice bible、占位符段落、未验证工具、空资产通道);以及测试框架是否具备浏览器自动化,缺失时包装研究能力会降级。最后指向 mc-new 开始首个项目,并建议优先处理待办清单。