# 自定义Agent

DevKit AI支持在config.yaml文件中填写Agent名称和功能，来自定义子Agent。

#### 操作步骤

1. 使用SSH远程登录工具，登录DevKit AI的安装节点。
2. 进入DevKit AI基础包解压后目录。

```
cd DevKit-AI-
x.x.x
-Linux-Kunpeng
```


3. 打开config.yaml文件新增子agent，以新增文件内容总结子agent为例。

```
vi config/config.yaml
```


4. 按“i”进入编辑模式，新增如下内容。

```
subagents:
- name: 文件内容总结
description: 可以通过读取文件内容并进行总结。
system_prompt: 文件内容总结工具。通过读取目标文件内容，对文本进行解析，精准提炼核心观点和关键信息，为您生成简洁明了的内容摘要，大幅度提升信息获取与处理效率。
skills:
- "summary"
inherit_skills: true
interrupt_on: #中断配置，参考主agent的配置。如果不需要中断，可以不配置该参数。
enable: true
# 工具配置
tools:
# 工具名称（如 execute, write_file 等）
"execute":
# 支持的操作决策列表：approve（批准）/ edit（编辑参数后执行）/ reject（拒绝）
allowed_decisions:
- approve
- reject
- edit
# 中断描述信息
description: "请确认是否执行该命令"
```


**表1 subagents参数说明**

| 参数 | 参数 | 参数说明 |
| --- | --- | --- |
| name | name | Agent名称，当主agent的task工具触发agent执行时，会显示在CLI的启动界面。 |
| description | description | Agent功能描述，task工具基于name和描述信息决定执行哪个子agent，务必清晰定义，内容无歧义。 |
| system\_prompt | system\_prompt | agent的上下文提示信息。 |
| skills | skills | 子agent可用的工具列表。 |
| inherit\_skills | inherit\_skills | 是否继承主agent的技能： true：继承。 false：不继承。 |
| interrupt\_on | enable | 子agent中断配置，请参见主agent的中断配置，建议与主agent中断配置保持一致。如果不需要中断，可以不配置该参数。 |


**表2 tools参数说明**

| 参数 | 参数 | 参数选项 | 参数说明 |
| --- | --- | --- | --- |
| 工具名称 | allowed\_decisions | approve/reject/edit | 支持的操作决策列表：approve（批准）/edit（编辑参数后执行）/reject（拒绝）。 |
| 工具名称 | description | \- | 中断描述信息。 |


5. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
6. 执行命令行工具。

```
./devkitai
```


  返回信息如下：

```
[新会话ID] 20260818_022247_1021
>>>
```


7. 询问工具支持的能力。

```
>>> 你有什么子agent
```


  返回信息如下，可以看到新增的工具：

```
DevKit AI:
[主Agent] > 你好！我有以下两种子 agent（subagent）：
1. **general-purpose（通用型）**
- 用途：研究复杂问题、搜索文件和内容、执行多步骤任务
- 能力：拥有与主 agent 相同的所有工具访问权限
- 适用场景：当需要搜索关键词或文件但不确定能否一次找到时，或需要独立完成复杂多步骤任务时使用
2. **文件内容总结**
- 用途：读取文件内容并进行总结
- 适用场景：当需要对文件内容进行概括提炼时使用
这些子 agent 是短暂存在的，它们会在任务完成后自动结束并返回结果。我可以并行启动多个子 agent 来同时处理独立的任务，提高效率。
请问有什么我可以帮助你的吗？
```
