1
0
Files
Skill/openspec/changes/archive/2026-02-25-build-skillmgr-cli/specs/platform-adaptation/spec.md

3.0 KiB
Raw Blame History

ADDED Requirements

Requirement: 系统必须支持 Claude Code 平台

工具必须内置 Claude Code 平台的目录结构和命名规则。

Scenario: Skill 安装路径

  • WHEN 安装 skill 到 Claude Code
  • THEN 目标路径为 <base>/.claude/skills/<skill-name>/

Scenario: Command 安装路径

  • WHEN 安装 command 到 Claude Code
  • THEN 目标路径为 <base>/.claude/commands/<command-group>/

Scenario: 保持源目录结构

  • WHEN 复制文件到 Claude Code
  • THEN 系统保持源仓库的目录结构不变

Requirement: 系统必须支持 OpenCode 平台

工具必须内置 OpenCode 平台的目录结构和命名规则。

Scenario: Skill 全局安装路径

  • WHEN 全局安装 skill 到 OpenCode
  • THEN 目标路径为 ~/.config/opencode/skills/<skill-name>/

Scenario: Skill 项目级安装路径

  • WHEN 项目级安装 skill 到 OpenCode
  • THEN 目标路径为 ./.opencode/skills/<skill-name>/

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 系统将文件重命名为 <group>-<action>.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/<group>/<action>.md<base>/.claude/commands/<group>/<action>.md 的映射

Scenario: Command 文件映射OpenCode

  • WHEN 适配 command 到 OpenCode
  • THEN 系统返回 commands/<group>/<action>.md<base>/commands/<group>-<action>.md 的映射(全局时 base 为 ~/.config/opencode,项目级时为 ./.opencode

Requirement: 系统必须处理不支持的平台

工具必须拒绝处理未实现的平台。

Scenario: 不支持的平台参数

  • WHEN 用户指定未实现的平台(如 --platform cursor
  • THEN 系统报错"unsupported platform: cursor"