- 项目结构搭建 - Agent 核心类实现 - LLM 客户端(OpenAI) - 工具系统框架 - 配置管理 - 简单示例 版本: v0.1.0
PyOpenClaw
Python 实现 OpenClaw 核心功能
项目简介
本项目是用 Python 重新实现 OpenClaw 核心功能的学习项目。
OpenClaw 是一个多渠道 AI Gateway,支持多种消息渠道(Discord、Telegram、Slack、飞书等)和多种 LLM 提供商(OpenAI、Anthropic、Google 等)。
核心目标
- 深入理解 OpenClaw 架构
- 掌握 Agent 运行原理
- 实践 Python 异步编程
- 构建自己的智能体团队
技术栈
- Python 3.11+
- FastAPI - HTTP 框架
- asyncio - 异步运行时
- Pydantic - 数据验证
- OpenAI SDK - LLM 调用
- Docker SDK - 沙箱执行
项目结构
pyopenclaw/
├── pyopenclaw/
│ ├── __init__.py
│ ├── core/ # 核心层
│ │ ├── __init__.py
│ │ ├── agent.py # Agent 核心类
│ │ ├── llm_client.py # LLM 客户端
│ │ ├── tool_registry.py # 工具注册表
│ │ ├── session.py # 会话管理
│ │ └── memory.py # 记忆系统
│ │
│ ├── tools/ # 工具实现
│ │ ├── __init__.py
│ │ ├── base.py # 工具基类
│ │ ├── file_tools.py # 文件工具
│ │ ├── exec_tools.py # 执行工具
│ │ └── web_tools.py # 网络工具
│ │
│ ├── gateway/ # Gateway 服务
│ │ ├── __init__.py
│ │ ├── server.py # HTTP 服务
│ │ ├── auth.py # 认证
│ │ └── middleware.py # 中间件
│ │
│ └── config/ # 配置管理
│ ├── __init__.py
│ └── settings.py # 配置类
│
├── tests/ # 测试
├── docs/ # 文档
├── pyproject.toml # 项目配置
├── requirements.txt # 依赖
└── README.md # 本文件
开发进度
阶段 1:核心 Agent(第 1-3 周)
- 项目初始化
- Agent 核心类
- LLM 客户端
- 基础工具(read/write/exec)
- 简单会话管理
阶段 2:Gateway 服务(第 4-5 周)
- FastAPI 服务
- WebSocket 支持
- 认证系统
- 会话持久化
阶段 3:工具系统扩展(第 6-7 周)
- 工具注册表
- 工具策略
- 更多工具实现
阶段 4:渠道插件(第 8 周起)
- 渠道基类
- Discord 插件
- Telegram 插件
- 其他渠道
快速开始
# 安装依赖
pip install -r requirements.txt
# 运行示例
python examples/simple_agent.py
学习资源
许可证
MIT License
创建时间: 2026-03-16
作者: 云下飞
助手: 小白 🐶
Description
Languages
Python
100%