CNB NPC 万界 API 集成
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/self-dev-cnb-npc-wanjia-skill。
技能介绍
解决什么问题
CNB 的 NPC 能力内置 AI 模型,调用按 CNB Credit 计费。如果你已有万界或其他 OpenAI 兼容接口的 Key,想使用 GLM-5.1、DeepSeek 系列这类特定模型,或想按自己的 API 用量付费而非消耗 Credit,就需要一套明确的改造流程。本技能给出的正是这条路:把 NPC 的模型层替换为万界 API,同时保留 CNB 原有的事件触发机制。
技能如何工作
核心思路是将 NPC 容器化,让镜像自己持有调用逻辑:
- 创建 NPC 仓库并编写
Dockerfile、.cnb/npc-agent.js、.cnb.yml三件套,分别负责运行环境、角色脚本与流水线/事件配置。 - API Key 安全注入:支持 CNB 组织 Secrets、Dockerfile
ARG+ENV、.cnb.ymlsettings 三种方式,文档给出明确优先级——CNB 组织 Secrets 最安全,代码硬编码最危险且无法从 git history 抹除。 - 构建并推送后,在仓库 Issue 中评论即可触发 NPC。
进阶能力包括:多角色配置(一个仓库挂多个 NPC,各用不同模型)、白名单访问控制,以及自修复工作流——NPC 可在 work_mode: true 下分析 Issue、修改代码、commit 并 push。
需要注意的边界
文档的踩坑表很实用:.cnb.yml 的 env: 块不会把 Key 传入 image: 容器(CNB 流水线的设计行为);settings.AI_BASE_URL 不受支持,endpoint 需硬编码;YAML 锚点解析有限制;lint 阻塞会导致 build 跑完但镜像未更新。万界 API Key 对 CNB 流水线 IP 有效,换 IP 可能返回 apiKey not found。Key 一旦泄露,唯一可靠路径是轮换 Key、更新 Secrets、重建镜像,并清理或归档旧仓库。
使用场景
- 你有万界 API Key,想在 CNB 组织里搭一个用 DeepSeek 系列模型回答 Issue 的 NPC,替代内置模型
- 团队按量使用万界 API,希望 NPC 不再消耗 CNB Credit,需要改造镜像构建与事件配置
- 需要给 NPC 加白名单,只让指定用户评论 Issue 时才触发自动回复
- NPC 代码出 bug 后,想让它在 Issue 里被 @ 后自修代码、提交并验证修复
适合人员
- 在 CNB 上维护自动化 Issue 机器人的开发者,想接入自有模型并摆脱 Credit 计费
- 持有 OpenAI 兼容 API 额度、希望按量控制 NPC 成本的团队技术负责人
- 需要为多个项目配置不同 NPC 角色、各挂不同模型的全栈工程师
- 关注密钥安全、想把 API Key 从代码迁入 Secrets 并清理泄露历史的研发运维