## ADDED Requirements ### Requirement: 系统必须支持 Claude Code 平台 工具必须内置 Claude Code 平台的目录结构和命名规则。 #### Scenario: Skill 安装路径 - **WHEN** 安装 skill 到 Claude Code - **THEN** 目标路径为 `/.claude/skills//` #### Scenario: Command 安装路径 - **WHEN** 安装 command 到 Claude Code - **THEN** 目标路径为 `/.claude/commands//` #### Scenario: 保持源目录结构 - **WHEN** 复制文件到 Claude Code - **THEN** 系统保持源仓库的目录结构不变 --- ### Requirement: 系统必须支持 OpenCode 平台 工具必须内置 OpenCode 平台的目录结构和命名规则。 #### Scenario: Skill 全局安装路径 - **WHEN** 全局安装 skill 到 OpenCode - **THEN** 目标路径为 `~/.config/opencode/skills//` #### Scenario: Skill 项目级安装路径 - **WHEN** 项目级安装 skill 到 OpenCode - **THEN** 目标路径为 `./.opencode/skills//` #### Scenario: Command 全局安装路径 - **WHEN** 全局安装 command 到 OpenCode - **THEN** 目标路径为 `~/.config/opencode/commands/` #### Scenario: Command 项目级安装路径 - **WHEN** 项目级安装 command 到 OpenCode - **THEN** 目标路径为 `./.opencode/commands/` #### Scenario: Skill 保持结构 - **WHEN** 复制 skill 到 OpenCode - **THEN** 系统保持源目录结构 #### Scenario: Command 扁平化 - **WHEN** 复制 command 到 OpenCode - **THEN** 系统将文件重命名为 `-.md` 并放置在 commands/ 目录下 --- ### Requirement: 系统必须根据作用域确定基础路径 工具必须根据全局/项目作用域计算正确的基础路径。 #### Scenario: 全局作用域 - **WHEN** 用户指定 `--global` 参数 - **THEN** 基础路径为用户主目录(`~` 或 `$HOME`) #### Scenario: 项目作用域 - **WHEN** 用户未指定 `--global` 参数 - **THEN** 基础路径为当前工作目录 --- ### Requirement: 系统必须生成文件映射表 适配器必须生成源文件到目标文件的完整映射表,供事务性安装使用。 #### Scenario: Skill 文件映射 - **WHEN** 适配 skill 文件 - **THEN** 系统返回源路径到目标路径的 map(包括所有子目录和文件) #### Scenario: Command 文件映射(Claude) - **WHEN** 适配 command 到 Claude Code - **THEN** 系统返回 `commands//.md` → `/.claude/commands//.md` 的映射 #### Scenario: Command 文件映射(OpenCode) - **WHEN** 适配 command 到 OpenCode - **THEN** 系统返回 `commands//.md` → `/commands/-.md` 的映射(全局时 base 为 `~/.config/opencode`,项目级时为 `./.opencode`) --- ### Requirement: 系统必须处理不支持的平台 工具必须拒绝处理未实现的平台。 #### Scenario: 不支持的平台参数 - **WHEN** 用户指定未实现的平台(如 `--platform cursor`) - **THEN** 系统报错"unsupported platform: cursor"