yunxiafei 97fb0a47ed 初始化项目:PyOpenClaw 核心框架
- 项目结构搭建
- Agent 核心类实现
- LLM 客户端(OpenAI)
- 工具系统框架
- 配置管理
- 简单示例

版本: v0.1.0
2026-03-16 21:07:31 +08:00

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 周)

  • 项目初始化
  • Agent 核心类
  • LLM 客户端
  • 基础工具read/write/exec
  • 简单会话管理

阶段 2Gateway 服务(第 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
Python implementation of OpenClaw core functionality
Readme 38 KiB
Languages
Python 100%