> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comet.rpamis.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 支持的平台

> 查看 Comet 支持的全部 33 个 AI 编码平台、每个平台的项目级和全局安装目录，以及各自支持的 Skill、规则和 hooks 能力。

Comet 会把 Skill、Rules和必要 hooks 安装到目标 AI 编码平台的约定目录。你可以在 `comet init` 里选择一个或多个平台。0.4.0-beta.1 起 Comet 支持 **33 个** AI 编码平台。

## 全部平台一览

下表列出所有平台、平台 id（用于 CLI `--platform <id>`）、项目级 Skill 目录、全局 Skill 目录，以及各自支持的能力。

### 完整能力（Skill + 规则 + hooks）

| 平台                 | 平台 id            | 项目目录        | 全局目录        | 规则格式           | Hooks           | 说明                                                  |
| ------------------ | ---------------- | ----------- | ----------- | -------------- | --------------- | --------------------------------------------------- |
| Claude Code        | `claude`         | `.claude`   | `.claude`   | `md`           | ✅ `claude-code` | 参考平台，支持 PreToolUse hooks                            |
| Codex              | `codex`          | `.agents`   | `.agents`   | `md`           | ✅ `claude-code` | Skill 使用 `.agents/skills`；配置、规则和 hooks 保留在 `.codex` |
| Amazon Q Developer | `amazon-q`       | `.amazonq`  | `.amazonq`  | `md`           | ✅ `claude-code` | 复用 claude-code hook 格式                              |
| Windsurf           | `windsurf`       | `.windsurf` | `.windsurf` | `md`           | ✅ `windsurf`    | 写入 `pre_write_code` hooks                           |
| GitHub Copilot     | `github-copilot` | `.github`   | `.github`   | `copilot`      | ✅ `copilot`     | 用 `.github/instructions/*.instructions.md`          |
| Gemini CLI         | `gemini`         | `.gemini`   | `.gemini`   | 无（GEMINI.md）   | ✅ `gemini`      | 唯一无规则目录但支持 hooks 的平台                                |
| Qwen Code          | `qwen`           | `.qwen`     | `.qwen`     | `md`           | ✅ `qwen`        |                                                     |
| Qoder              | `qoder`          | `.qoder`    | `.qoder`    | `md`           | ✅ `qoder`       | 与 qwen 共享 PreToolUse 处理                             |
| Kiro               | `kiro`           | `.kiro`     | `.kiro`     | `md`（steering） | ✅ `kiro`        | 规则在 `.kiro/steering/`，hook 是独立 `.kiro.hook` 文件      |

### Skill + hooks（无规则）

| 平台             | 平台 id       | 项目目录         | 全局目录         | Hooks         | 说明                                             |
| -------------- | ----------- | ------------ | ------------ | ------------- | ---------------------------------------------- |
| CodeBuddy Code | `codebuddy` | `.codebuddy` | `.codebuddy` | ✅ `codebuddy` | 把 PreToolUse hook 合并到 `settings.json`，保留用户已有配置 |

### Skill + 规则（无 hooks）

| 平台        | 平台 id      | 项目目录        | 全局目录                 | 规则格式  | 说明                                                |
| --------- | ---------- | ----------- | -------------------- | ----- | ------------------------------------------------- |
| Cursor    | `cursor`   | `.cursor`   | `.cursor`            | `mdc` | 唯一使用 Cursor MDC frontmatter 格式的平台                 |
| OpenCode  | `opencode` | `.opencode` | `~/.config/opencode` | `md`  | OpenCode 风格 slash 命令，全局目录与项目不同                    |
| Cline     | `cline`    | `.cline`    | `.cline`             | `md`  | 规则在项目根的 `.clinerules/`，不在 `.cline/` 内             |
| RooCode   | `roocode`  | `.roo`      | `.roo`               | `md`  |                                                   |
| Continue  | `continue` | `.continue` | `.continue`          | `md`  |                                                   |
| Kilo Code | `kilocode` | `.kilocode` | `.kilocode`          | `md`  |                                                   |
| Auggie    | `auggie`   | `.augment`  | `.augment`           | `md`  | Augment CLI                                       |
| Lingma    | `lingma`   | `.lingma`   | `.lingma`            | `md`  |                                                   |
| Trae      | `trae`     | `.trae`     | `.trae`              | `md`  |                                                   |
| Trae CN   | `trae-cn`  | `.trae-cn`  | `.trae-cn`           | `md`  | Trae 国内版，独立目录和 OpenSpec 工具 id                     |
| ZCode     | `zcode`    | `.zcode`    | `.zcode`             | `md`  | 基于 OpenCode，会把 OpenSpec opencode 输出镜像到 `.zcode/`  |
| MimoCode  | `mimocode` | `.mimocode` | `~/.config/mimocode` | `md`  | 基于 OpenCode，OpenCode 风格 slash 命令 + 镜像 OpenSpec 输出 |

### 仅 Skill（无规则、无 hooks）

| 平台              | 平台 id          | 项目目录         | 全局目录                    | 说明                                                    |
| --------------- | -------------- | ------------ | ----------------------- | ----------------------------------------------------- |
| Kimi Code       | `kimicode`     | `.kimi-code` | `.kimi-code`            | OpenSpec 工具 id 为 `kimi`                               |
| Junie           | `junie`        | `.junie`     | 无全局目录                   |                                                       |
| CoStrict        | `costrict`     | `.cospec`    | 无全局目录                   | 目录名与 id 不同                                            |
| Crush           | `crush`        | `.crush`     | 无全局目录                   |                                                       |
| Factory Droid   | `factory`      | `.factory`   | 无全局目录                   |                                                       |
| iFlow           | `iflow`        | `.iflow`     | 无全局目录                   |                                                       |
| Pi              | `pi`           | `.pi`        | `~/.pi/agent`           | 全局目录是子目录                                              |
| Antigravity     | `antigravity`  | `.agents`    | `~/.gemini/antigravity` | 项目和全局目录完全不同，支持 CodeGraph                              |
| Antigravity 2.0 | `antigravity2` | `.agents`    | `~/.gemini/config`      | 与 Antigravity 共享项目级 `.agents/`，全局走 `~/.gemini/config` |
| Bob Shell       | `bob`          | `.bob`       | 无全局目录                   |                                                       |
| ForgeCode       | `forgecode`    | `.forge`     | 无全局目录                   | 目录名与 id 不同                                            |

<p align="center">
  <img src="https://mintcdn.com/comet-bb5f5294/vM44yjOkcpkEH_kN/assets/platforms-illustrations/01-platform-capability-layers.png?fit=max&auto=format&n=vM44yjOkcpkEH_kN&q=85&s=681d34b9a90358b1cea54fd8d79b2a5d" alt="小鱼把 Claude Code、Codex、Cursor、Windsurf、Gemini CLI、GitHub Copilot 和 OpenCode 等平台卡片放入能力分层手账" width="800" data-path="assets/platforms-illustrations/01-platform-capability-layers.png" />
</p>

<p align="center">平台支持按 Skill、规则和 hooks 逐层增强</p>

## 能力汇总

### 规则格式

Comet 支持三种规则格式：

| 格式        | 使用平台                             |
| --------- | -------------------------------- |
| `md`      | 绝大多数支持规则的平台                      |
| `mdc`     | 仅 Cursor（Cursor MDC frontmatter） |
| `copilot` | 仅 GitHub Copilot                 |

### Hooks 格式

支持 hooks 的 10 个平台使用 8 种 hook 格式：

| Hook 格式       | 写入文件                   | 使用平台                       |
| ------------- | ---------------------- | -------------------------- |
| `claude-code` | `settings.local.json`  | Claude Code、Codex、Amazon Q |
| `qwen`        | `settings.json`        | Qwen Code                  |
| `qoder`       | `settings.json`        | Qoder                      |
| `codebuddy`   | `settings.json`        | CodeBuddy Code             |
| `gemini`      | `settings.json`        | Gemini CLI                 |
| `windsurf`    | `hooks.json`           | Windsurf                   |
| `copilot`     | `hooks/<id>.json`      | GitHub Copilot             |
| `kiro`        | `hooks/<id>.kiro.hook` | Kiro                       |

### OpenCode 系平台

OpenCode、ZCode、MimoCode 都基于 OpenCode 运行时，支持 OpenCode 风格 slash 命令和镜像 OpenSpec 输出：

| 平台       | 镜像行为                                            |
| -------- | ----------------------------------------------- |
| OpenCode | 原生支持                                            |
| ZCode    | 把 `.opencode/{skills,commands}` 迁移镜像到 `.zcode/` |
| MimoCode | 镜像 OpenSpec 输出到 `.mimocode/`                    |

## 特殊安装路径

以下平台的全局安装目录与项目级目录不同：

| 平台              | 项目级目录       | 全局目录                    |
| --------------- | ----------- | ----------------------- |
| Codex Skill     | `.agents`   | `~/.agents`             |
| OpenCode        | `.opencode` | `~/.config/opencode`    |
| MimoCode        | `.mimocode` | `~/.config/mimocode`    |
| Antigravity     | `.agents`   | `~/.gemini/antigravity` |
| Antigravity 2.0 | `.agents`   | `~/.gemini/config`      |
| Pi              | `.pi`       | `~/.pi/agent`           |

其他平台的全局安装使用同名目录（如 Claude Code 全局为 `~/.claude`，CodeBuddy Code 全局为 `~/.codebuddy`）。Junie、CoStrict、Crush、Factory Droid、iFlow、Bob Shell、ForgeCode 不支持全局安装。

<Note>
  Codex 的 Skill 发现根与配置根不同：项目和全局 Skill 使用 <code>.agents/skills</code>，Codex 专属配置、规则、hooks 和插件缓存仍位于 <code>.codex</code>。0.4.0-beta.4 的 update/uninstall 会迁移 Comet 管理的旧 <code>.codex/skills</code> 安装，并保留其他 Skill 和共享目录。0.4.0-beta.5 起，Codex 的阶段守卫 hook 改写到受支持的 <code>.codex/hooks.json</code>。
</Note>

<Note>
  Antigravity 和 Antigravity 2.0 共享项目级的 <code>.agents/</code> Skill 目录，所以 <code>comet init</code> 自动检测时会同时选中两者。如果你只想给其中一个安装，可在交互式安装流程（不加 <code>--yes</code>）里手动取消勾选另一个。
</Note>

<Tip>
  `comet init` 会自动检测项目里已存在的平台配置目录并预选。你也可以用 `--yes` 跳过交互，自动安装到所有检测到的平台。
</Tip>

## 项目级还是全局

| 安装范围    | 适合场景             | 特点              |
| ------- | ---------------- | --------------- |
| project | 团队项目、仓库约定、需要提交配置 | 配置写入当前项目，便于协作   |
| global  | 个人默认环境、多个项目共享    | 配置写入用户目录，切项目更省事 |

<Tip>
  如果你不确定，先用项目级安装。它最容易让团队成员看到同一套 Comet 行为。
</Tip>

## 安装模式：复制 vs 符号链接

`comet init` 和 `comet update` 在选择平台后，会询问**安装模式**（install mode）。0.4.0-beta.1 起新增了符号链接（symlink）模式：

| 模式                | 行为                                                                | 适合                          |
| ----------------- | ----------------------------------------------------------------- | --------------------------- |
| **Copy**（复制，默认）   | 把每个平台的 Skill、规则和脚本**独立复制**一份到目标目录                                 | 传统方式、需要平台间互相隔离、跨设备同步（提交到仓库） |
| **Symlink**（符号链接） | 在目标平台的现有 `skills/` 目录内链接 Comet 管理的 Skill，共享 `.comet/skills/` 中央存储 | 多平台开发、节省磁盘空间、想一次更新所有平台      |

### Symlink 模式的工作方式

选择 Symlink 后，Comet 不再为每个平台复制一份 Comet Skill，而是在各平台已有的 `skills/` 目录中为 Comet Skill 创建指向项目中央 `.comet/skills/` 的符号链接：

```text theme={null}
.comet/skills/          ← 中央存储（唯一一份）
├── comet-open/
├── comet-design/
└── ...
.claude/skills/comet-*  →  .comet/skills/comet-*   （Comet 创建的符号链接）
.cursor/skills/comet-*  →  .comet/skills/comet-*   （Comet 创建的符号链接）
.agents/skills/comet-*  →  .comet/skills/comet-*   （Comet 创建的符号链接）
```

运行 `comet update` 时只需更新中央存储，所有平台立即生效。终端摘要会显示 `symlink created` 或 `symlink creation failed`。

<Warning>
  符号链接依赖文件系统支持。某些 Windows 配置或同步工具（如部分云盘）可能不正确处理符号链接。如果遇到问题，回退到 <strong>Copy</strong> 模式即可。
</Warning>

<Note>
  如果目标平台已有自己的 <code>skills/</code> 目录，Comet 会保留目录和其中的本地/第三方 Skill，只创建或刷新 Comet 管理的链接。
</Note>

<Note>
  选择哪种模式不影响 Comet 的行为，只影响文件如何落到磁盘。提交到仓库时，Copy 模式会产生真实文件；Symlink 模式产生的是符号链接（通常需要团队成员各自 <code>comet init</code>）。
</Note>

## 通用 skills 注册表平台

有些 AI 编码平台使用通用 `skills` CLI 注册表，而不是平台专属目录约定。对这些平台（包括 OpenClaw、Hermes 等），直接用通用命令安装 Comet skill 包：

```bash theme={null}
npx skills add rpamis/comet
```

这条命令从通用 skills 注册表拉取 Comet skill 包并安装到平台期望的位置，不需要全局 Comet 安装。它和 `comet init` 可以并存，互不冲突。

## hooks 和可执行能力

部分平台支持 hooks。Comet 会非破坏性合并自己管理的 hook 配置，保留用户已有配置。

如果文件中已经有插件、hook 或其他用户设置，Comet 会保留这些内容；如果 JSON 无法解析，安装会明确失败，并保持原文件不变。

## 安装后验证（非必须）

```bash theme={null}
comet doctor
```

如果平台目录、Skill 文件、脚本或 hooks 缺失，`doctor` 会给出诊断。需要更新时运行：

```bash theme={null}
comet update
```
