Self Dev Cnb Npc Create

SKILL开发
开发 未标注权限 许可证不明确
安装这个技能

CNB 自定义 NPC 创建全流程。基于现有 NPC 仓库 fork 改造,接入自有大模型 API(如 GLM-5.1),配置密钥仓库,部署到目标组织。适用于需要创建私有 NPC(代码审查、专属客服等)的场景。触发词:"创建NPC"、"造NPC"、"私有NPC"、"自定义NPC"、"fork NPC"。

一句话选型结论

按资料字段整理

Self Dev Cnb Npc Create是开发类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类开发 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_f12a44b7/self-dev-cnb-npc-create
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

开发
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_f12a44b7仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791622254
正文体量10.9 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
写代码与改 bug

按需求补代码、定位并修掉报错。

读仓库与生成改动

让模型读懂项目结构,再给出可落地的改动。

跑测试与排查故障

按现象排查问题,补测试用例并复跑。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在开发场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
Self Dev Cnb Npc Create当前 未标注权限 未标注 未标注 未标注 有
技能审查员 浏览器控制 ClawHub 市场 877.9 万 OpenClaw 有
Vercel React 最佳实践 浏览器控制 GitHub 仓库 849.1 万 Codex、Claude、Cursor 有
GitHub 代码协作 联网访问 ClawHub 市场 763.3 万 OpenClaw 有
网页设计指南 联网访问 GitHub 仓库 668.6 万 Codex、Claude、Cursor 有
本体论 只读 ClawHub 市场 663.7 万 OpenClaw 有

SKILL.md 全文

10.9 KB
模型实际读到的说明书原文,来自技能仓库

CNB 自定义 NPC 创建工作流

> v1.0 · 2026-04-24 · 基于「灵鉴」PR审查NPC实战复盘
> 参考架构:CNB 官方 NPC 工程师方案二(issue #959)

一、工作流总览

需求确认 → Fork参考NPC → 改造配置 → 创建密钥仓库 → 推送代码 → 转移到目标组织 → 关联密钥仓库 → 测试验证 → 上线

二、前置条件

条件 说明
CNB Token 需有仓库创建、Issue 评论权限
自有大模型 API API URL + API Key(如智谱 GLM-5.1)
目标组织 NPC 最终归属的组织(如 cnbmm)
参考 NPC 仓库 可 fork 的已有 NPC 仓库(如 tencent/cloud/cloudbase/community)

三、详细步骤

Step 1: 需求确认

确认清单:
1. NPC 功能定位?(代码审查/技术客服/文档助手/通用)
2. 接入什么大模型?(GLM-5.1 / GPT-4 / DeepSeek 等)
3. NPC 名字和口号?
4. 部署到哪个组织?
5. 是否需要专属头像?

提示词模板:

确认 NPC 创建需求:
- 功能定位:[代码审查/技术客服/文档助手/通用]
- 大模型:[GLM-5.1/GPT-4/DeepSeek/其他]
- API 端点:[URL]
- NPC 名称:[名称]
- 部署组织:[组织名]
- 参考NPC:[fork来源仓库]

Step 2: Fork 参考 NPC 仓库

⚠️ API 不支持 fork 操作(errcode 9),必须用 git clone。

# 克隆参考 NPC 仓库
git clone https://{username}:{CNB_TOKEN}@cnb.cool/{参考NPC仓库路径}.git /tmp/{npc-name}
cd /tmp/{npc-name}
git checkout -b main  # 确保分支名是 main

创建新的 NPC 仓库(API):

curl -s -X POST \
  -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  -H "Content-Type: application/json" \
  "${CNB_API_ENDPOINT}/{username}/-/repos" \
  -d '{
    "name": "{npc-name}",
    "description": "{NPC描述}",
    "visibility": "private"
  }'

推送到新仓库:

cd /tmp/{npc-name}
git remote remove origin
git remote add origin https://{username}:{CNB_TOKEN}@cnb.cool/{username}/{npc-name}.git
git push -u origin main

Step 3: 改造 NPC 配置

3.1 角色配置 .cnb/settings.yml

npc:
  roles:
    - name: {NPC名称}
      slogan: "{一句话口号}"
      prompt: |
        你是{角色定位},负责{具体职责}。
        你的任务:
        1. {任务1}
        2. {任务2}
        3. {任务3}
        回复要求:
        - 使用 Markdown 格式回复
        - 语气专业、友好
        - 控制在 {字数} 字以内
      avatar:
        src: ".cnb/avatar.svg"

Prompt 设计原则:
- 明确角色身份和专业领域
- 列出具体任务清单(编号)
- 定义回复格式要求
- 设置字数控制
- 如需引用知识库,加上参考链接

3.2 自定义 Skill .codebuddy/skills/my-llm/SKILL.md

这是核心!NPC Agent 框架会按 Skill 指令调自定义大模型。

---
name: my-llm
description: 调用自有大模型 API 生成回复
allowed-tools: Bash
---

# 调用自有大模型

当需要回复用户时,执行以下步骤:

## 步骤 1:获取相关信息(如 PR diff)
\```bash
curl -s -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  "$CNB_API_ENDPOINT/$CNB_REPO_SLUG/-/pulls/$CNB_EVENT_ISSUE_NUMBER"
\```

## 步骤 2:拼接 Prompt
将获取的信息整合为 system prompt + user prompt。

## 步骤 3:调用大模型 API
\```bash
curl -s ${YOUR_LLM_API_URL}/chat/completions \
  -H "Authorization: Bearer ${YOUR_LLM_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "glm-5.1",
    "messages": [
      {"role": "system", "content": "你是{角色},{能力描述}"},
      {"role": "user", "content": "{用户问题/PR信息}"}
    ],
    "temperature": 0.3,
    "max_tokens": 4096
  }' | jq -r '.choices[0].message.content'
\```

## 步骤 4:发表评论
\```bash
cnb issues comment --body "回复内容"
\```

Skill 设计要点:
- allowed-tools: Bash — 必须声明,否则无法执行 curl
- 用环境变量引用 API Key(${YOUR_LLM_API_KEY}),不硬编码
- CNB 环境变量自动注入:$CNB_TOKEN、$CNB_REPO_SLUG、$CNB_EVENT_ISSUE_NUMBER
- 根据 NPC 功能调整步骤(PR审查需获取diff,客服需知识库检索等)

3.3 流水线配置 .cnb.yml

# NPC 触发配置(使用 npc:go 模式)
.npc: &npc
  - env:
      YOUR_LLM_API_URL: ((your-llm-api-url))
      YOUR_LLM_API_KEY: ((your-llm-api-key))
      YOUR_MODEL_NAME: ((your-model-name))
    stages:
      - name: npc go
        type: npc:go

# 事件绑定
$:
  pull_request.comment@npc: *npc
  issue.comment@npc: *npc

关键:
- 必须用 npc:go,让平台 NPC Agent 框架调度,它会读取 Skill 指令执行
- 环境变量用 ((变量名)) 引用密钥仓库的文件
- 事件类型按需选择:
- pull_request.comment@npc — PR 评论触发
- issue.comment@npc — Issue 评论触发
- pull_request.open — PR 创建触发
- issue.open — Issue 创建触发

3.4 专属头像 .cnb/avatar.svg

SVG 格式,建议 120×120,辨识度要高。
放到 .cnb/avatar.svg,settings.yml 中引用 src: ".cnb/avatar.svg"。

Step 4: 创建密钥仓库

密钥仓库是独立仓库,文件名=变量名,文件内容=值。

# 创建密钥仓库
curl -s -X POST \
  -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  -H "Content-Type: application/json" \
  "${CNB_API_ENDPOINT}/{username}/-/repos" \
  -d '{
    "name": "{npc-name}-secrets",
    "description": "{NPC名称} 密钥仓库",
    "visibility": "private"
  }'

# 创建密钥文件
mkdir -p /tmp/{npc-name}-secrets && cd /tmp/{npc-name}-secrets
git init && git checkout -b main
echo -n "{API_URL}" > your-llm-api-url
echo -n "{API_KEY}" > your-llm-api-key
echo -n "{MODEL_NAME}" > your-model-name
git add -A && git commit -m "init: NPC 密钥配置"
git push -u origin main

Step 5: 提交推送所有变更

cd /tmp/{npc-name}
# 清理不需要的原仓库文件(如企微通知、stale bot 等)
rm -rf {不需要的目录}
git add -A
git commit -m "feat: {NPC名称} - 基于参考NPC改造,接入{模型名}"
git push

Step 6: 转移到目标组织

⚠️ API 不支持转移(errcode 9 管理规则限制),必须网页操作。

提供链接给用户:
- NPC 仓库:https://cnb.cool/{username}/{npc-name}/-/settings → 转移到目标组织
- 密钥仓库:https://cnb.cool/{username}/{npc-name}-secrets/-/settings → 转移到目标组织

转移后路径变为:{目标组织}/{npc-name} 和 {目标组织}/{npc-name}-secrets

Step 7: 关联密钥仓库

⚠️ 只能网页操作,API 无此接口。

在 NPC 仓库设置页面 → 找到密钥仓库配置 → 填入 {目标组织}/{npc-name}-secrets

Step 8: 测试验证

# 在 NPC 仓库创建测试 Issue
curl -s -X POST \
  -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  -H "Content-Type: application/json" \
  "${CNB_API_ENDPOINT}/{org}/{npc-name}/-/issues" \
  -d '{
    "title": "测试 NPC 触发",
    "body": "@{org}/{npc-name}({NPC名称}) 测试一下"
  }'

# @ NPC 触发
curl -s -X POST \
  -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  -H "Content-Type: application/json" \
  "${CNB_API_ENDPOINT}/{org}/{npc-name}/-/issues/{number}/comments" \
  -d '{
    "body": "@{org}/{npc-name}({NPC名称}) 请回复一下"
  }'

等待 15-20 秒后检查:

# 查评论
curl -s -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  "${CNB_API_ENDPOINT}/{org}/{npc-name}/-/issues/{number}/comments"

# 查流水线
curl -s -H "Accept: application/vnd.cnb.api+json" \
  -H "Authorization: Bearer $CNB_TOKEN" \
  "${CNB_API_ENDPOINT}/{org}/{npc-name}/-/build/logs"

成功标志: NPC 评论出现(is_npc: true)

Step 9: 在目标仓库引入 NPC

在需要使用该 NPC 的仓库中,编辑 .cnb/settings.yml:

npc:
  imports:
    list:
      - repo: {org}/{npc-name}

推送后,该仓库的 PR/Issue 中就可以 @{org}/{npc-name}({NPC名称}) 触发了。

四、踩坑记录

# 坑 解法
1 API 不支持 fork 用 git clone + git push 到新仓库
2 API 不支持转移仓库(errcode 9) 必须网页操作
3 密钥仓库是独立仓库,不是页面表单 每个密钥=一个文件(文件名=变量名,内容=值)
4 密钥仓库关联只能网页操作 提供链接给用户手动操作
5 用自建 Docker + 脚本绕过 npc:go ❌ 错误思路。应该用 npc:go + Skill
6 API Key 直接写在 .cnb.yml ❌ 安全问题。用 ((变量名)) 引用密钥仓库
7 智谱 API URL 要用 coding 专用端点 https://open.bigmodel.cn/api/coding/paas/v4(非通用 /api/paas/v4)
8 流水线 success 但 NPC 不回复 检查密钥仓库是否正确关联
9 私有仓库 Token 无法访问 提示 errcode 7 "secret repo does not support token"

五、不同场景的 Skill 变体

PR 代码审查 NPC

Skill 步骤:获取 PR diff → 拼接审查 prompt → 调大模型 → 发审查评论

技术客服 NPC

Skill 步骤:知识库检索(如有)→ 拼接回答 prompt → 调大模型 → 发回复

文档助手 NPC

Skill 步骤:获取文档内容 → 分析质量 → 调大模型生成建议 → 发评论

六、实战提示词速查

创建 NPC 一句话

基于 {参考NPC仓库} fork 创建私有 NPC,名称「{名称}」,接入 {模型名},部署到 {组织}

测试 NPC

在 {org}/{npc-name} 创建 Issue 并 @NPC 测试触发,15秒后查评论和流水线状态

引入 NPC 到目标仓库

在 {目标仓库} 的 .cnb/settings.yml 中添加 npc.imports 引用 {org}/{npc-name}

七、与 cnb-npc-dispatch 的关系

工作流 用途
cnb-npc-create(本 Skill) 创建自定义 NPC(造 NPC)
cnb-npc-dispatch 给已有 NPC 派发任务(用 NPC)

两者互补:先用本 Skill 造 NPC,再用 dispatch Skill 派活。

常见问题

5 问
答案由本站依据条目字段整理
Self Dev Cnb Npc Create怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_f12a44b7/self-dev-cnb-npc-create。安装方式为未标注。装完刷新技能列表或重开客户端。

Self Dev Cnb Npc Create支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

Self Dev Cnb Npc Create权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

Self Dev Cnb Npc Create收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

Self Dev Cnb Npc Create用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。