更新时间:2026-05-29 GMT+08:00
分享

子智能体

码道CLI支持项目级个人级两种子智能体。用户可根据具体开发场景与协作需求,选择最适合的子智能体层级进行设置,实现灵活高效的代码管理。

子智能体是主智能体可调用的专项任务助手,也可在消息内@指定,手动触发调用。

配置目录

存在同名的项目级和个人级子智能体时,项目级子智能体优先级高于个人级子智能体

表1 子智能体分类

类型

作用域

说明

项目级

当前项目

仅针对当前项目的子智能体,随代码库分发,存于本地。

存储位置:项目根目录/.codeartsdoer/agents

个人级

当前用户下的所有项目

个人习惯或特定偏好的子智能体,仅对本用户下的所有项目生效。

存储位置:~/.codeartsdoer/agents

“~”表示当前用户的主目录,Windows下等同于“C:\Users\用户名\”,macOS下等同于“/Users/用户名/”

子智能体文件格式

子智能体采用Markdown文件格式编写,文件头部配置YAML Frontmatter元信息,主体承载提示词角色指令。

---
description: Agent desc  # 代理功能描述
mode: subagent           # 固定为子智能体模式
model: provider/model     #如果参照此格式配置模型,将覆盖默认模型
tools:                   # 工具权限配置
  tool1: true           # 允许使用tool1
  tool2: false            # 禁止使用tool2
---

# 提示词
这里是子智能体的系统提示词内容

上述子智能体各参数填写规范如下表所示:

表2 Markdown文件参数说明

参数

是否必选

参数类型

默认值

描述

description

字符串

不涉及

子智能体的描述。

mode

字符串

subagent

设置代理的角色。

  • subagent:只能当作子智能体被调用。
  • primary:只能当主代理,不能被调用。
  • all:既能当主代理,也能被调用。

model

字符串

不涉及

格式为:provider/model

码道CLI支持的全部模型可查看查看所有模型

tools

对象

不涉及

控制代理可使用的工具权限,码道CLI支持的工具如表4,您也可以使用“*”匹配所有工具。

示例:

tools:
  "*":false    #表示禁止所有工具

permission

对象

allow

管理操作审批流程。

  • ask(审批)
  • allow(允许)
  • deny(拒绝)

hidden

布尔值

不涉及

可见性控制。

设为“true”时,从@自动补全菜单中隐藏。适用于仅供编程调用的内部代理

disable

布尔值

不涉及

开关控制。

  • true,禁用该代理
  • false,启用该代理

提示词

字符串

不涉及

子智能体的系统提示词。

表3 tools对象取值说明

参数

说明

true

允许使用该工具

false

禁止使用该工具

表4 码道CLI支持的工具

工具

说明

read

读取文件

write

写入文件

edit

编辑文件

bash

执行命令

glob

文件模式匹配

grep

内容搜索

task

子任务

webfetch

获取网页

question

询问用户

配置示例

本示例以Windows系统下配置个人级子智能体为例。

  1. 进入“~/.codeartsdoer/agents”目录下,创建“test.md”文件,写入如下内容。

    “~”表示当前用户的主目录,Windows下等同于“C:\Users\用户名\”,macOS下等同于“/Users/用户名/”
    ---
    # ========== 必填项 ==========
    description: 代理的功能及使用场景描述(必填,主代理据此判断调用时机)
    mode: subagent            # 枚举值:subagent子智能体 / primary主代理 / all两者通用
    
    # ========== 模型配置 ==========
    model: provider/model-id  # 自定义模型,格式规范:provider/model-id,执行“/models”可查看支持的模型
    
    # ========== 行为控制 ==========
    hidden: false              # true:隐藏@联想菜单,仅程序内部调用
    disable: false             # true:停用当前代理
    
    # ========== 工具权限 ==========
    tools:
      write: false              # 文件写入权限
      edit: false               # 文件编辑权限
      bash: false               # 系统命令执行权限
      read: false               # 文件读取权限
    
    # ========== 操作审批权限 ==========
    permission:
      edit: ask                # ask需审批 / allow直接放行 / deny禁止执行
      bash:
        "*": ask               # 通配兜底规则,优先级最低
        "git status *": allow
        "git log*": allow
        "grep *": allow
    ---
    # 系统提示词(支持多行Markdown格式)
    你是一名资深代码审查专家。请重点关注:
    
    -代码质量与最佳实践
    -潜在Bug和边界情况
    -性能影响
    -安全隐患
    
    提供建设性反馈,不要直接修改代码。

  2. 配置后,进入任意代码项目下,执行如下命令。

    @test 分析代码

    如下图所示,指定自定义子智能体进行代码分析。

    图1 调用test子智能体分析代码

相关文档