---
url: /zh/repo/settings-npc.md
description: 介绍如何通过 .cnb/settings.yml 为仓库配置专属 AI 助手（NPC），包括角色定义、知识库引入、提示词设置和知识库按钮定制。
---
配置仓库的 AI 助手角色、知识库和交互按钮，为项目注入智能协作能力。

## 使用场景

* 为仓库配置专属 AI 角色，辅助代码审查、问题解答等
* 引入其他仓库的 AI 配置，实现知识共享
* 定制知识库按钮，让 AI 助手更易被发现和使用
* 通过提示词定义角色的专业领域和沟通风格

## 配置方式

在 `.cnb/settings.yml` 中添加 `npc` 配置：

```yaml title=".cnb/settings.yml"
# NPC 配置
npc:
  # 引入其他仓库 AI 配置
  imports:
    # 引用的仓库列表
    list:
      - cnb/docs
  # 当前仓库的角色列表
  roles:
    - name: 小李
      # slogan
      slogan: code is cheap, show me your prompt
      # 角色描述提示词
      prompt: 你现在是小李，一名前端开发工程师
      # 是否开启思考模式，boolean类型，默认为 true
      enableThinking: false
      # 角色头像信息
      avatar:
        # 头像图片地址
        # 只能用仓库中默认分支的图片，填写相对仓库根目录的路径，如 .cnb/knowledge-base-hover.png
        src: ".cnb/knowledge-base-hover.png"
    - name: 小王
      prompt: |
        你是一名资浅工程师，
        卖萌是你的主营业务，
  # 知识库文档弹窗的默认选中仓库
  defaultRepo: "cnb/docs"
  # 默认角色
  defaultRole: "资浅工程师"
  # 知识库按钮的web界面样式
  button:
    # 按钮名称
    name: "快速问AI"
    # 按钮描述
    description: "点火, 启动 AI!"
    # 只能用仓库中默认分支的图片，填写相对仓库根目录的路径，如 .cnb/knowledge-base-hover.png
    hoverImage: ".cnb/knowledge-base-hover.png"
```

## 参数说明

### 引入配置

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `npc.imports.list` | string\[] | - | 引用其他仓库的 AI 配置，填写仓库路径（如 `cnb/docs`） |

### 角色配置

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `npc.roles[].name` | string | - | 角色名称 |
| `npc.roles[].slogan` | string | - | 角色标语 |
| `npc.roles[].prompt` | string | - | 角色描述提示词，定义角色的专业领域和沟通风格 |
| `npc.roles[].enableThinking` | boolean | true | 是否开启思考模式 |
| `npc.roles[].avatar.src` | string | - | 角色头像图片路径，仅支持仓库默认分支中的图片 |

### 全局配置

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `npc.defaultRepo` | string | - | 知识库文档弹窗的默认选中仓库 |
| `npc.defaultRole` | string | - | 默认角色名称 |

### 知识库按钮配置

| 参数 | 类型 | 默认值 | 说明 |
|------|------|--------|------|
| `npc.button.name` | string | - | 知识库按钮名称 |
| `npc.button.description` | string | - | 知识库按钮描述 |
| `npc.button.hoverImage` | string | - | 鼠标悬浮时显示的图片，仅支持仓库默认分支中的图片 |

:::tip
角色头像和知识库按钮的悬浮图片仅支持使用仓库默认分支中的文件，填写相对仓库根目录的路径即可。
:::
