本页你将创建一个最小的 Yao Agent——没有 Hook,没有工具,只有提示词和连接器。完成后你将拥有一个可以正常对话的 Agent。
## 前置条件
- 已安装 Yao 并初始化项目(`yao init`)
- 至少配置了一个 LLM 连接器(如 OpenAI、DeepSeek)
## 第一步:创建 Agent 目录
每个 Agent 都放在项目的 `assistants/` 目录下。为你的 Agent 创建一个目录:
```bash
mkdir -p assistants/my-assistant
```
一个 Agent 只需要两个文件就能运行:`package.yao`(配置)和 `prompts.yml`(系统提示词)。
## 第二步:写 `package.yao`
创建 `assistants/my-assistant/package.yao`:
```json
{
"name": "My Assistant",
"description": "A helpful assistant that answers questions clearly and concisely.",
"connector": "$ENV.DEFAULT_CONNECTOR",
"options": {
"temperature": 0.7,
"max_tokens": 2048
},
"public": true
}
```
**关键字段说明:**
| 字段 | 是否必须 | 说明 |
|------|----------|------|
| `name` | 是 | 显示在 UI 中的名称 |
| `connector` | 是 | 使用哪个 LLM。`$ENV.DEFAULT_CONNECTOR` 从 `.env` 文件读取 |
| `description` | 否 | 显示在 Agent 列表中 |
| `options` | 否 | LLM 参数(temperature、max_tokens 等) |
| `public` | 否 | `true` 表示所有用户可见 |
> **提示:** 如果想使用指定模型而非默认值,设置 `"connector": "openai.gpt-4o"` 或 `connectors/` 目录下定义的任意连接器 ID。
## 第三步:写 `prompts.yml`
创建 `assistants/my-assistant/prompts.yml`:
```yaml
- role: system
content: |
You are a helpful assistant. Answer questions clearly and concisely.
When you don't know something, say so honestly rather than guessing.
```
`prompts.yml` 定义每次对话开始时发送给 LLM 的系统提示词。这里只支持 `system` 角色。
## 第四步:测试 Agent
最快的方式是直接在命令行测试,不需要启动服务器:
```bash
yao agent test -n my-assistant -i "What is the capital of France?"
```
你应该能看到 LLM 的流式输出响应。
**如果服务器已经在开发模式下运行**,Agent 会自动热加载——直接打开 `http://localhost:5099`,在 Agent 列表中找到 **My Assistant** 即可。
如果服务器还没有启动,运行:
```bash
yao start
```
## 你现在有什么
```
assistants/my-assistant/
├── package.yao ← Agent 配置
└── prompts.yml ← 系统提示词
```
就这些。两个文件,一个可运行的 Agent。
## 下一步
这个 Agent 是最简形态——它只是把你的消息加上系统提示词转发给 LLM。下一页你将了解这个执行过程是如何工作的,并理解让 Yao Agent 与众不同的三种模式。
→ **[运行原理](./how-it-works)**