A free, open-source course platform for learning OpenClaw β the self-hosted AI agent framework.
10 modules Β· 33 lessons Β· Quizzes Β· Progress tracking Β· Dark theme Β· Runs in Docker
β Live demo: https://openclaw-academy.fly.dev/
β Patches welcome β see Contributing
Disclaimer: Community educational resource. Not officially affiliated with the OpenClaw project.
git clone https://github.com/reddinft/openclaw-academy.git
cd openclaw-academy
docker compose up -d
open http://localhost:8080That's it. No database setup, no env vars, no build step.
git clone https://github.com/reddinft/openclaw-academy.git
cd openclaw-academy
pip install -r requirements.txt
COURSE_DIR=./course DB_PATH=/tmp/academy.db \
python3 -m uvicorn app.main:app --reload --port 8080
open http://localhost:8080Requires Python 3.11+.
| # | Module | Lessons | Status |
|---|---|---|---|
| 1 | OpenClaw Overview | 3 | β Complete |
| 2 | Gateway Architecture | 4 | β Complete |
| 3 | Channel System | 3 | β Complete |
| 4 | Agent System | 4 | β Complete |
| 5 | Skills & Hooks | 3 | β Complete |
| 6 | Security Model | 3 | β Complete |
| 7 | Configuration Deep Dive | 4 | π§ Stub β help wanted |
| 8 | Extending OpenClaw | 3 | π§ Stub β help wanted |
| 9 | Deployment Patterns | 3 | β Complete |
| 10 | Case Study: Real-World Setup | 3 | π§ Stub β help wanted |
Modules 7, 8, and 10 are stubs. We'd love PRs filling these in.
PRs are very welcome β especially for:
- Filling in stub modules (7, 8, 10) β see
course/module-07-config/,module-08-extending/,module-10-case-study/ - Fixing factual errors as OpenClaw evolves
- Adding "From the Trenches" sidebars β real-world gotchas and incident stories
- New modules β suggest via issue first
- Bug fixes in the platform code
See CONTRIBUTING.md for full guidelines.
Content lives in course/module-XX-name/:
module-02-gateway/
βββ meta.yaml β title, description, lesson order
βββ 01-gateway-daemon.md
βββ 02-websocket-protocol.md
βββ quiz.yaml β questions + answers
See course/module-01-overview/ as the reference example. Content changes take effect immediately in dev mode β no restart needed.
| Layer | Choice |
|---|---|
| Backend | FastAPI + Python 3.12 |
| Frontend | HTMX + Jinja2 (no JS bundle) |
| Styling | Custom CSS, dark theme |
| Code highlighting | highlight.js (CDN) |
| Diagrams | Mermaid.js (CDN) |
| Progress DB | SQLite via aiosqlite |
| Analytics | GoatCounter + server-side middleware |
| Deployment | Docker + Fly.io (Sydney) |
# Install flyctl
curl -fsSL https://fly.io/install.sh | sh
# Authenticate
flyctl auth login
# Create app + persistent volume
flyctl apps create openclaw-academy --org personal
flyctl volumes create academy_data --region syd --size 1 --app openclaw-academy --yes
# Deploy
flyctl deploy --remote-onlyThe included fly.toml targets Sydney (syd) and uses auto_stop_machines = "stop" so the app sleeps when idle β keeping it free tier friendly.
openclaw-academy/
βββ LICENSE β MIT (code)
βββ LICENSE-CONTENT β CC-BY-SA 4.0 (course content)
βββ CONTRIBUTING.md β How to contribute
βββ Dockerfile
βββ docker-compose.yml
βββ fly.toml β Fly.io deployment config
βββ requirements.txt
βββ app/
β βββ main.py β FastAPI routes + /stats page
β βββ database.py β SQLite progress tracking
β βββ content.py β Markdown/YAML loader
β βββ analytics.py β Server-side hit logging + bot detection
β βββ templates/ β Jinja2 HTML templates
β βββ static/ β CSS + JS
βββ course/
βββ outline.md
βββ module-*/
Dual licensed:
- Code (
app/,Dockerfile, etc.): MIT License - Course content (
course/): CC-BY-SA 4.0
Content contributions are accepted under CC-BY-SA 4.0. By submitting a content PR, you agree your contribution will be licensed under those terms.
This platform teaches OpenClaw by Peter Steinberger β MIT License.
Built by Redditech Β· Deployed by an AI agent Β· Sydney, Australia