logo
0
0
WeChat Login
Administrator<admin@example.com>
feat: init CNB templates with NPC, Skills and Knowledge Base

CNB 知识库 + NPC + Skills 模板

这是一个开箱即用的 CNB (Cloud Native Build) 模板,包含知识库、NPC 角色和常用 Skills。

📁 文件结构

cnb-templates/ ├── .cnb.yml # 流水线配置(知识库构建 + NPC 触发) ├── .cnb/ │ └── settings.yml # NPC 角色配置 ├── .codebuddy/skills/ │ ├── code-review/ # 代码审查 Skill │ │ └── SKILL.md │ ├── git-helper/ # Git 助手 Skill │ │ └── SKILL.md │ ├── bug-analyzer/ # Bug 分析 Skill │ │ └── SKILL.md │ └── api-designer/ # API 设计 Skill │ └── SKILL.md ├── docs/ # 知识库文档目录 │ └── getting-started.md └── README.md # 本文件

🚀 快速开始

1. 创建 CNB 仓库

  1. 登录 CNB
  2. 点击「创建仓库」
  3. 选择「导入已有仓库」或创建空仓库

2. 上传模板文件

# 克隆你的 CNB 仓库 git clone https://cnb.cool/your-username/your-repo.git cd your-repo # 复制模板文件 cp -r /path/to/cnb-templates/* . # 提交并推送 git add . git commit -m "feat: init with CNB templates" git push origin main

3. 配置知识库

推送代码后,CNB 会自动运行 .cnb.yml 中的流水线,构建知识库。

4. 使用 NPC

在 Issue 或 PR 中 @NPC 角色:

  • @代码助手 - 回答编程问题
  • @docs助手 - 回答文档问题
  • @code-reviewer - 代码审查
  • @bug修复助手 - Bug 分析
  • @架构顾问 - 架构设计建议

📚 功能说明

1. 知识库 (Knowledge Base)

自动构建:推送 Markdown 文件后自动构建知识库

查询方式

  • 在仓库页面的 AI 对话框中提问
  • 通过 API 调用:POST /{slug}/-/knowledge/base/query

配置项(在 .cnb.yml 中):

knowledge:update: include: "**/*.md" # 包含的文件 exclude: ["node_modules/**"] # 排除的文件 chunkSize: 1500 # 分块大小 chunkOverlap: 100 # 重叠大小 issueSyncEnabled: true # 同步 Issue

2. NPC 角色

预置角色

角色用途触发方式
代码助手编程问答、代码解释@代码助手
docs助手文档相关问答@docs助手
code-reviewer自动代码审查PR 创建/更新时自动触发
bug修复助手Bug 分析和修复@bug修复助手
架构顾问架构设计建议@架构顾问

自定义角色

.cnb/settings.yml 中添加:

npc: roles: - name: 我的助手 avatar: src: https://example.com/avatar.png prompt: | 你是...(角色设定)

3. Skills

预置 Skills

Skill用途使用方式
code-review代码审查NPC 自动使用
git-helperGit 操作指导提问 Git 相关问题
bug-analyzerBug 分析描述 Bug 现象
api-designerAPI 设计描述 API 需求

添加新 Skill

  1. .codebuddy/skills/ 下创建目录
  2. 添加 SKILL.md 文件
  3. 描述 Skill 的用途、场景和使用方法

📝 使用示例

示例1:代码审查

在 PR 中评论:

@code-reviewer 请审查这个 PR 的代码质量

示例2:Bug 分析

在 Issue 中创建:

标题:登录功能偶尔失效 描述: 用户反馈登录后页面白屏,控制台报错... @bug修复助手 请分析这个问题

示例3:知识库问答

在仓库页面的 AI 对话框中:

这个项目如何配置环境?

示例4:API 设计

在 Issue 中:

@架构顾问 请帮我设计一个用户管理的 API 需求: - 用户注册/登录 - 用户信息管理 - 权限控制

⚙️ 高级配置

启用"替我上班"模式

.cnb/settings.yml 中:

npc: advanced: autoWork: true # NPC 获得读写权限

导入外部知识库

npc: imports: list: - owner/other-repo # 导入其他仓库的知识库

自定义触发条件

.cnb.yml 中:

我的助手: issue.comment@npc: # Issue 评论触发 pull_request.open@npc: # PR 创建触发 push: # 代码推送触发

🔧 故障排除

知识库构建失败

  1. 检查 .cnb.yml 语法
  2. 查看流水线日志
  3. 确认文件路径正确

NPC 无响应

  1. 检查 .cnb/settings.yml 格式
  2. 确认角色名称匹配
  3. 查看流水线运行状态

Skill 未生效

  1. 确认 SKILL.md 文件存在
  2. 检查文件格式是否正确
  3. 重新构建知识库

📖 相关链接

🤝 贡献

欢迎提交 Issue 和 PR 来改进这个模板!

📄 License

MIT