# 创建智能体

`POST` `/api/agent/create`

创建一个新的智能体实例，可指定名称、描述、灵魂设定、身份定义和禁用的内置技能。身份定义支持Markdown，不传或传空白内容时使用系统默认身份。

## 请求参数

### 请求头参数

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| X-Principal-Id | integer | 否 | 身份主体ID（Long类型）。通过API访问时必须传递以标识操作主体；通过页面访问时无需传递。可通过「身份主体」模块的创建接口获取。 |

### 请求体（JSON）

| 参数名 | 类型 | 必填 | 说明 |
|--------|------|------|------|
| agentName | string | 是 | 智能体名称 |
| agentSoul | string | 否 | 灵魂设定，不传则使用默认人设 |
| disabledBuiltinSkills | array | 否 | 禁用的内置技能名称列表。null 或不传表示不禁用任何技能（全部启用），指定列表表示禁用指定技能 |
| agentDescription | string | 否 | 智能体描述，不超过512个字符 |
| defaultModelName | string | 否 | 默认模型名称，不传则使用系统默认模型 |
| avatarFileName | string | 否 | 头像文件名，通过 AIGC 生成头像接口获取的 fileName，不传则使用默认头像 |
| agentIdentity | string | 否 | 智能体身份定义，用于描述角色、职责和专业背景，支持Markdown；不传或传空白内容则使用系统默认身份 |

## 响应

### 200

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | AgentCreateResponse | 响应数据 |
|     agentId | integer | - |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

### 400

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | object | 响应数据 |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

### 500

| 参数名 | 类型 | 说明 |
|--------|------|------|
| httpStatusCode | integer | HTTP状态码 |
| message | string | 响应消息 |
| data | object | 响应数据 |
| success | boolean | 是否成功 |
| requestId | string | 上游请求ID，用于跨系统链路追踪排查问题 |
| errCode | string | 上游错误码，前端可据此做特殊UI处理 |

