## 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"