# PyOpenClaw **Python 实现 OpenClaw 核心功能** ## 项目简介 本项目是用 Python 重新实现 OpenClaw 核心功能的学习项目。 OpenClaw 是一个多渠道 AI Gateway,支持多种消息渠道(Discord、Telegram、Slack、飞书等)和多种 LLM 提供商(OpenAI、Anthropic、Google 等)。 ## 核心目标 1. **深入理解 OpenClaw 架构** 2. **掌握 Agent 运行原理** 3. **实践 Python 异步编程** 4. **构建自己的智能体团队** ## 技术栈 - 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 周) - [x] 项目初始化 - [ ] Agent 核心类 - [ ] LLM 客户端 - [ ] 基础工具(read/write/exec) - [ ] 简单会话管理 ### 阶段 2:Gateway 服务(第 4-5 周) - [ ] FastAPI 服务 - [ ] WebSocket 支持 - [ ] 认证系统 - [ ] 会话持久化 ### 阶段 3:工具系统扩展(第 6-7 周) - [ ] 工具注册表 - [ ] 工具策略 - [ ] 更多工具实现 ### 阶段 4:渠道插件(第 8 周起) - [ ] 渠道基类 - [ ] Discord 插件 - [ ] Telegram 插件 - [ ] 其他渠道 ## 快速开始 ```bash # 安装依赖 pip install -r requirements.txt # 运行示例 python examples/simple_agent.py ``` ## 学习资源 - [OpenClaw 官网](https://openclaw.ai) - [OpenClaw GitHub](https://github.com/openclaw/openclaw) - [TypeScript 基础教程](./docs/typescript-tutorial.md) ## 许可证 MIT License --- **创建时间**: 2026-03-16 **作者**: 云下飞 **助手**: 小白 🐶