Agent Zero 是一个开源的 AI 智能体框架,托管在 GitHub 上,旨在帮助用户通过自然语言指令完成多样化的电脑任务。它不依赖预设的特定功能,而是通过提示(prompt)驱动,允许用户自定义智能体的行为。Agent Zero 能利用操作系统作为工具,动态生成代码、执行终端命令,并与其他智能体协作完成任务。它的界面直观,输出实时流式显示,日志自动保存为 HTML 文件,方便用户随时查看和干预。框架支持小型语言模型也能高效运行,适合开发者和非开发者使用。用户需在隔离环境(如 Docker 容器)中运行,以确保安全。
功能列表
- 支持自然语言指令,生成和执行代码或终端命令。
- 提供持久化记忆,保存历史任务、代码和解决方案,提升后续任务效率。
- 支持多智能体协作,自动分配子任务给下级智能体,保持上下文清晰。
- 实时流式输出,显示任务执行过程,用户可随时干预。
- 提供 Web 界面,操作直观,支持保存和加载对话记录。
- 允许用户自定义工具,扩展功能以适应特定需求。
- 支持在线搜索,获取外部信息辅助任务完成。
- 提供 Hacking Edition,基于 Kali Linux,适合网络安全任务。
- 通过 Docker 容器运行,确保环境隔离和安全性。
使用帮助
安装流程
Agent Zero 推荐使用 Docker 部署,以确保环境隔离和安全性。以下是详细的安装步骤,适用于 Linux、macOS 和 Windows 系统。
- 安装 Docker
- Linux 用户:安装 Docker Desktop 或 Docker Community Edition(docker-ce)。对于 Docker Desktop,参考官方文档根据 Linux 发行版安装。对于 docker-ce,执行以下命令添加用户到 Docker 组:
sudo usermod -aG docker $USER
安装完成后,重启终端或注销重新登录以应用权限。
- macOS 用户:从 Docker 官网下载 Docker Desktop,拖动到 Applications 文件夹。打开 Docker Desktop,在设置中启用“允许使用默认 Docker 套接字(需要密码)”。
- Windows 用户:从 Docker 官网下载 Docker Desktop 并安装,运行后确保 Docker 服务已启动。
- Linux 用户:安装 Docker Desktop 或 Docker Community Edition(docker-ce)。对于 Docker Desktop,参考官方文档根据 Linux 发行版安装。对于 docker-ce,执行以下命令添加用户到 Docker 组:
- 拉取并运行 Agent Zero 镜像
打开终端,运行以下命令拉取最新镜像并启动容器:docker pull frdel/agent-zero-run docker run -p 50001:80 -v /path/to/your/data:/a0 frdel/agent-zero-run
-p 50001:80
将容器端口 80 映射到本地 50001 端口。-v /path/to/your/data:/a0
将本地数据目录挂载到容器,保存配置和记忆数据。
运行后,访问http://localhost:50001
打开 Web 界面。
- Hacking Edition(可选)
如果需要网络安全功能,使用 Hacking Edition 镜像:docker pull frdel/agent-zero-run:hacking docker run -p 50001:80 -v /path/to/your/data:/a0 frdel/agent-zero-run:hacking
- 更新 Agent Zero
为获取最新功能,定期更新镜像:docker stop agent-zero docker rm agent-zero docker rmi frdel/agent-zero-run docker pull frdel/agent-zero-run docker run -p 50001:80 -v /path/to/your/data:/a0 frdel/agent-zero-run
数据保存在挂载目录,不会因更新丢失。
- 配置环境
在 Web 界面点击“设置”(齿轮图标),调整以下选项:- Prompts Subdirectory:选择
/prompts
下的子目录,定义智能体行为,默认使用default
目录。 - Memory Subdirectory:设置记忆存储路径,分离不同智能体实例。
- Knowledge Subdirectory:指定自定义知识文件路径。
- Model Provider:选择语言模型提供者(如 Ollama)。
- Model Name:选择具体模型(如
llama3.2
)。 - Temperature:调整输出随机性,0 为确定性,高值更具创造性。
- Context Length:设置上下文窗口的最大 token 数。
如果使用 Ollama 运行本地模型,先从 Ollama 官网下载并安装,运行以下命令拉取模型:
ollama pull <model-name>
例如:
ollama pull mistral-large
。 - Prompts Subdirectory:选择
使用主要功能
- 任务执行
在 Web 界面输入自然语言指令,如“编写一个 Python 脚本下载网页内容”。Agent Zero 会分析指令,生成代码并执行。输出实时显示在界面,用户可随时暂停或修改指令。所有输出自动保存为 HTML 文件,位于logs/
目录。 - 多智能体协作
对于复杂任务,Agent Zero 会创建子智能体处理子任务。例如,指令“分析网站流量并生成报告”可能分解为“收集数据”和“生成图表”两个子任务。用户可在界面查看每个智能体的执行过程。 - 自定义工具
用户可通过/prompts
目录创建自定义工具。编辑agent.system.md
文件,定义工具功能和调用方式。例如,添加一个工具执行特定 API 调用,Agent Zero 会根据提示自动调用。 - 记忆功能
Agent Zero 保存历史任务和解决方案到记忆目录。用户可通过 Web 界面加载历史记录,快速复用之前的代码或方案。更改embedding_llm
需清空记忆目录,避免向量数据库冲突。 - 网络安全任务(Hacking Edition)
使用 Hacking Edition 镜像,输入网络安全相关指令,如“扫描目标网络漏洞”。Agent Zero 会基于 Kali Linux 工具生成并执行命令。注意:仅在合法授权环境下使用。
注意事项
- 始终在 Docker 容器中运行 Agent Zero,避免直接操作主机系统,以防意外修改系统配置。
- 保存
.env
文件,包含 API 密钥和设置,避免更新时丢失。 - 检查
requirements.txt
是否有新依赖,更新时运行:pip install -r requirements.txt
应用场景
- 自动化脚本开发
开发者输入“编写脚本批量重命名文件”,Agent Zero 生成并执行代码,实时显示结果,适合快速原型开发。 - 数据分析与报告
用户指令“分析 CSV 文件并生成柱状图”,Agent Zero 处理数据并输出可视化结果,适用于数据科学家。 - 网络安全测试
使用 Hacking Edition,输入“测试服务器端口开放情况”,Agent Zero 执行扫描并生成报告,适合安全工程师。 - 个人任务助理
非技术用户输入“整理日程并发送邮件提醒”,Agent Zero 自动完成任务,适合日常办公。
QA
- Agent Zero 适合非技术用户吗?
是的。Agent Zero 通过自然语言指令操作,无需编程技能。用户只需清晰描述任务,界面直观易用。 - 如何确保运行安全?
使用 Docker 容器隔离运行环境,避免影响主机系统。不要在未隔离环境中运行,以防意外修改文件或配置。 - 可以离线使用吗?
是的。如果使用本地模型(如 Ollama),Agent Zero 可离线运行。但在线搜索功能需联网。 - 如何自定义智能体行为?
编辑/prompts/default/agent.system.md
文件,调整系统提示,定义智能体行为和工具使用方式。