# CNB Skills

CNB 平台技能集合，基于开放的 Agent Skills 生态，不仅支持 CodeBuddy，也支持 Claude Code、Codex、Cursor、Gemini CLI、OpenCode、Qwen Code、Windsurf 等多种 Agent，通过 `npx skills` 一键安装。

## 安装方式

### 安装到指定 Agent

使用 `--agent` 指定目标 Agent；不指定时，`skills` 会自动检测本机已安装的 Agent 并提示选择。

```bash
# 安装到 CodeBuddy
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent codebuddy -y

# 安装到 Claude Code
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent claude-code -y

# 安装到 Codex
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent codex -y

# 同时安装到多个 Agent
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent codebuddy --agent claude-code --agent cursor -y

# 安装到所有支持的 Agent
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent '*' -y
```

常用 Agent 参数示例：

| Agent | `--agent` |
| --- | --- |
| CodeBuddy | `codebuddy` |
| Claude Code | `claude-code` |
| Codex | `codex` |
| Cursor | `cursor` |
| Gemini CLI | `gemini-cli` |
| OpenCode | `opencode` |
| Qwen Code | `qwen-code` |
| Windsurf | `windsurf` |

### 只安装指定的 Skill

```bash
# 查看仓库中可安装的 Skill
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --list

# 安装指定 Skill 到 CodeBuddy
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --skill cnb-api --agent codebuddy -y

# 安装指定 Skill 到 Claude Code
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --skill cnb-api --agent claude-code -y
```

### 安装 cnb-cli

使用 skills 需先安装 cnb-cli，支持以下方式：

```bash
# 一键安装最新版（macOS / Linux）
curl -fsSL https://cnb.cool/cnb/skills/cnb-skill/-/git/raw/main/install.sh | sh

# 一键安装指定版本（macOS / Linux）
curl -fsSL https://cnb.cool/cnb/skills/cnb-skill/-/git/raw/main/install.sh | sh -s 1.5.3
```

```powershell
# 一键安装最新版（Windows PowerShell）
irm https://cnb.cool/cnb/skills/cnb-skill/-/git/raw/main/install.ps1 | iex

# 一键安装指定版本（Windows PowerShell）
$v="1.5.3"; irm https://cnb.cool/cnb/skills/cnb-skill/-/git/raw/main/install.ps1 | iex
```

```bash
# npm 安装
npm install @cnbcool/cnb-cli -g
```

也可前往 [Releases](https://cnb.cool/cnb/skills/cnb-skill/-/releases) 手动下载（最新版直链：`https://cnb.cool/cnb/skills/cnb-skill/-/releases/latest/download/<filename>`）。

## AI 安装提示词

将以下内容发送给 CodeBuddy、Claude Code、Codex、Cursor、Gemini CLI 等智能体即可自动安装；按需把 `--agent codebuddy` 替换为目标 Agent（如 `claude-code`、`codex`、`cursor`、`gemini-cli`、`opencode`、`qwen-code`、`windsurf`），或使用 `--agent '*'` 安装到所有支持的 Agent。

```
npm install @cnbcool/cnb-cli -g
npm install skills -g
npx skills add https://cnb.cool/cnb/skills/cnb-skill.git --agent codebuddy -y --copy
```

## 环境变量

- `CNB_TOKEN`：访问凭证（必须）
- `CNB_API_ENDPOINT`：API 端点，如 `https://api.cnb.cool`（必须）
- `CNB_BRANCH`：默认分支（选填）

## cnb git-credential 使用说明

`cnb git-credential` 可作为 Git Credential Helper，为 `git clone`、`git pull`、`git push`、Git LFS 等 HTTPS 操作自动提供 CNB 访问凭据。

### 1. 登录 CNB

```bash
cnb login
```

登录成功后，凭据会保存到 `~/.cnb/token`。后续 Git 操作会自动读取该凭据；若 token 过期且存在 `refresh_token`，会自动刷新。

### 2. 配置 Git Credential Helper

推荐只为 CNB 域名配置 helper，避免影响其他 Git 站点：

```bash
git config --global credential.https://cnb.cool.helper ""
git config --global credential.https://cnb.cool.helper "!cnb git-credential"
git config --global credential.https://cnb.cool.useHttpPath true
```

也可以直接在 `~/.gitconfig` 中加入：

```ini
[credential "https://cnb.cool"]
  helper =
  helper = "!cnb git-credential"
  useHttpPath = true
```

> **注意**：第一行空的 `helper =` 用于清除全局 `[credential]` 段继承的 helper（如 Git Credential Manager），确保只使用 cnb 的 credential helper。如果你没有配置其他全局 credential helper，可以省略这一行。

### 3. 使用 HTTPS 地址操作仓库

```bash
git clone https://cnb.cool/<org>/<repo>.git
cd <repo>
git pull
git push
```

说明：

- `cnb git-credential` 仅供 Git 内部调用；通常无需手动执行。
- 凭据来源优先级：CodeBuddy 环境 token、`CNB_TOKEN` 环境变量、`~/.cnb/token` 登录凭据。
- 如需取消配置，可执行：`git config --global --unset credential.https://cnb.cool.helper`。