一个用于 Claude Code 的 Skill,让 AI 助手能够通过自然语言与 CNB(Cloud Native Build,云原生构建)平台交互。
Skill 是 Claude Code 的扩展机制,通过自然语言指导 AI 如何使用特定工具和 API。这个 CNB Skill 让 Claude Code 能够:
将此仓库克隆到你的 Claude Code skills 目录:
# 克隆仓库
git clone https://cnb.cool/znb/cnb-skill.git ~/.claude/skills/cnb-skill
# 或通过符号链接
ln -s /path/to/cnb-skill ~/.claude/skills/cnb-skill
创建 .env 文件(推荐):
cd ~/.claude/skills/cnb-skill/scripts
cp .env.example .env
# 编辑 .env 文件,填入你的 CNB_TOKEN
或使用环境变量:
export CNB_TOKEN=your_cnb_access_token
获取 Token: 访问 CNB 平台设置 创建访问令牌。
cd scripts
python3 cnb-mcp.py list-tools
如果看到工具列表,说明安装成功!
在 Claude Code 中,你可以直接用自然语言与 CNB 交互:
用户: 列出我的所有仓库 Claude: [调用 cnb_list_repositories 工具] 找到 5 个仓库: 1. demo/web-app (main, 2 小时前更新) 2. demo/backend (master, 1 天前更新) ...
用户: 触发 demo-app 主分支的构建 Claude: [调用 cnb_startBuild 工具] 已触发构建 #123 - 仓库: demo/web-app - 分支: main - 状态: 运行中 - 日志: https://cnb.cool/...
用户: 如何配置 webhook? Claude: [调用 cnb_queryKnowledgeBase 工具] 根据 CNB 文档《Webhook 配置》: 1. 进入项目设置 > 集成 > Webhook 2. 点击新增,选择触发事件... 参考: https://docs.cnb.cool/zh/plugin/...
cnb_list_repositories)cnb_get_repository)cnb_create_repository)cnb_list_groups, cnb_create_group)cnb_list_issues, cnb_create_issue, cnb_update_issue)cnb_list_pulls, cnb_create_pull, cnb_merge_pull)cnb_startBuild)cnb_getBuildStatus)cnb_getBuildLogs)cnb_stopBuild)cnb_list_workspaces)cnb_delete_workspace)cnb_queryKnowledgeBase)cnb_getKnowledgeBaseInfo)cnb-skill/ ├── SKILL.md # Skill 定义文件(核心) ├── scripts/ │ ├── cnb-mcp.py # MCP HTTP API 调用脚本 │ ├── .env.example # 配置示例 │ └── README.md # 脚本使用说明 └── README.md # 本文件
用户输入 (自然语言) ↓ Claude Code 加载 SKILL.md ↓ AI 理解意图并选择工具 ↓ 调用 execute_bash 执行 cnb-mcp.py ↓ Python 脚本调用 CNB MCP HTTP API ↓ 返回结果给 AI ↓ AI 格式化并展示给用户
这是 Skill 的核心定义文件,包含:
Python 脚本,负责调用 CNB 官方 MCP HTTP API:
.env 文件和环境变量配置list-tools 和 call 命令# 查询知识库
python3 scripts/cnb-mcp.py call cnb_queryKnowledgeBase query="CI/CD配置"
# 获取仓库信息
python3 scripts/cnb-mcp.py call cnb_get_repository repo="demo-app"
# 触发流水线(带变量)
python3 scripts/cnb-mcp.py call cnb_startBuild \
repo="demo-app" \
branch="main" \
variables='{"ENV":"production"}'
这个 Skill 可以集成到任何支持 Claude Code Skill 机制的项目中:
SKILL.md 作为系统提示词.env 文件.env 已在 .gitignore 中,不会被提交.env.example 分享配置示例.env 文件是否存在且格式正确export CNB_TOKEN=your_tokencurl https://mcp.cnb.coolpython3 scripts/cnb-mcp.py list-tools 查看可用工具SKILL.md 中的参数说明欢迎贡献!你可以:
参见 LICENSE 文件。