跳到主要内容

Agent

Agent 是 OpenCode 的智能代理系统,它通过定义角色规则来约束和引导 AI 的行为,让 AI 更精准地完成特定任务。

什么是 Agent

Agent = 角色 + 规则

  • 角色:定义 AI 是谁(如:代码专家、文案顾问、数据分析师)
  • 规则:定义 AI 如何行动(如:使用什么工具、遵循什么规范、输出什么格式)

简单理解:

Agent 就像是给 AI 设定一个"人设"和"行为准则",让 AI 能够按照设定的方式工作。

示例:

# 角色:告诉 AI 它是谁
role: "你是一位资深的代码审查专家"

# 规则:告诉 AI 它该怎么做
rules:
- "代码必须遵循 Google 风格指南"
- "每个函数必须有详细的注释"
- "复杂度不能超过 10"
- "必须使用有意义的变量名"

Agent 的核心构成

1. 角色(Role)

角色定义了 Agent 的身份和专长领域。

示例角色:

role: |
你是一位资深的前端开发工程师,专精于:
• React 和 Vue 框架
• 响应式设计和移动端适配
• 性能优化和用户体验

你总是关注:
• 代码的可维护性
• 用户的交互体验
• 页面的加载速度

2. 规则(Rules)

规则约束了 Agent 的行为方式。

规则类型:

rules:
# 输出规则
output_rules:
- "使用中文回复"
- "代码片段使用 markdown 格式"
- "每条建议不超过 3 句话"

# 行为规则
behavior_rules:
- "先分析问题,再提供解决方案"
- "每次只解决一个主要问题"
- "提供 2-3 个可选方案"

# 工具使用规则
tool_rules:
- "读取文件前先确认文件存在"
- "写入文件前先询问用户确认"

3. 工具(Tools)

工具是 Agent 可以调用的能力。

tools:
- "file.read" # 读取文件
- "file.write" # 写入文件
- "bash.execute" # 执行命令
- "web.search" # 搜索网络

内置 Agent

General(通用)

角色: 通用的 AI 助手

规则:

  • 友好、专业的语气
  • 提供准确、有用的回答
  • 不确定时主动说明

适用场景:

  • 日常对话和问答
  • 需要灵活适应的任务

Explore(代码探索)

角色: 代码库探索专家

规则:

  • 快速定位文件和代码
  • 简洁、清晰地说明代码结构
  • 优先提供关键信息

适用场景:

  • 理解新项目
  • 查找代码位置
  • 分析项目结构

Code-reviewer(代码审查)

角色: 严格的代码审查专家

规则:

  • 遵循最佳实践
  • 指出潜在问题
  • 提供具体的改进建议

适用场景:

  • 代码质量审查
  • 安全性检查
  • 性能优化建议

Security-auditor(安全审计)

角色: 安全漏洞猎人

规则:

  • 专注安全相关检查
  • 识别常见安全漏洞
  • 提供修复建议

适用场景:

  • 安全审计
  • 漏洞扫描
  • 合规性检查

Agent 的优势

1. 精准性

通过明确的角色和规则,让 AI 更精准地完成任务。

2. 一致性

规则保证了 Agent 的行为始终一致。

3. 可控性

可以通过调整规则来控制 Agent 的行为方式。

4. 专业化

每个 Agent 专注于特定领域,提供更专业的服务。


如何创建自定义 Agent

步骤 1:定义角色

role: |
你是一位小红书文案专家,专精于:
• 热门话题挖掘
• 吸引眼球标题创作
• 表情符号和标签运用
• 互动引导文案撰写

步骤 2:设置规则

rules:
- "文案长度控制在 300-500 字"
- "使用 3-5 个表情符号"
- "添加 5-10 个相关标签"
- "开头要有吸引人的钩子"
- "结尾引导用户互动"

步骤 3:配置工具

tools:
- "web.search" # 搜索热门话题
- "file.write" # 保存文案

完整示例

agent:
name: "小红书文案专家"
role: |
你是一位资深的小红书文案策划,专精于创作高互动率的笔记。

rules:
output_rules:
- "使用热情、活泼的语气"
- "文案包含 3-5 个表情符号"
- "添加 5-10 个热门标签"
- "结尾引导用户点赞和评论"

tools:
- "web.search"
- "file.write"

Agent vs 技能(Skills)

特性AgentSkills
定义角色 + 规则预训练的专业能力
灵活性高度可定制固定的功能集
用途约束 AI 行为扩展 AI 能力
示例代码审查专家发送邮件技能

区别:

  • Agent:定义"如何做"——通过角色和规则约束 AI 的行为方式
  • Skills:定义"能做什么"——提供预训练的专业能力

下一步