Skip to main content

Your AI co-teacher. Generate lessons, games, slides, and assessments from your terminal. Learns your teaching voice, aligns to your state standards, and works with any LLM provider.

Project description

Claw-ED

An open-source CLI agent that generates lesson plans, assessments, slideshows, and games in a teacher's own voice. Feed it your files, talk to it in the terminal or on Telegram.

PyPI Python MIT Downloads

pip install clawed
clawed

What it does

You point it at a folder of your old lessons. It reads them, figures out how you teach, and generates new ones that match your style. Teacher DOCX, student DOCX, slides PPTX — all at once.

$ clawed

  🍎 Hey Mr. Maccarello! What are we working on today?

❯ Make me a lesson on the causes of the French Revolution for 10th grade

  Searching your materials...
  Found 3 docs on this topic.
  Generating lesson package...

  ✓ French_Revolution_teacher.docx
  ✓ French_Revolution_student.docx
  ✓ French_Revolution_slides.pptx

It also runs as a Telegram bot. Same brain, same files, same memory. Ask it to make something from your phone and the files show up in chat.


Features

  • CLI agent with 47+ tools (lesson gen, assessments, games, simulations, animations, differentiation)
  • Uses your own images — extracts maps, cartoons, diagrams from your PPTX files and puts them in generated slides
  • Animated educational videos (timelines, concept maps, cause-effect diagrams) via Manim
  • Ingests PDF, DOCX, PPTX, TXT, MD — extracts teaching style, images, and curriculum structure
  • Semantic search over your curriculum (ONNX MiniLM embeddings, FTS5, embedding-based image matching)
  • Karpathy-style wiki — compiles your files into organized markdown articles
  • Self-distillation — learns from your ratings and edits, updates its own soul.md
  • Web search (DuckDuckGo + Playwright), Google Drive integration
  • 50-state standards alignment (NY Regents, TX STAAR, CA CAASPP, etc.)
  • Telegram bot with file delivery, interactive /models selector, shared session memory
  • Works with Ollama, Anthropic, OpenAI, Google, OpenRouter — interactive model switching
  • Scheduled tasks (morning prep, gap detection, wiki maintenance)
  • Self-equipping — can install Python packages (--user scope) and create YAML tool templates when it needs a capability it doesn't have
  • DOCX, PPTX, PDF, HTML, MP4 export
  • MCP server for Claude Code / VS Code integration
  • MIT licensed, no telemetry, no accounts

Trust model

Claw-ED is a local-first tool designed for a teacher's own machine. It reads your files, calls LLM APIs you configure, and writes to ~/.eduagent/. The web API (if you run clawed serve) requires a bearer token and binds to localhost by default. Self-equipping installs packages in --user scope only. The Telegram bot runs as a background process on your machine. Nothing is sent anywhere except the LLM provider you choose.


Commands

clawed                                    # chat with Ed
clawed ingest ~/Documents/Lessons/        # teach it your style
clawed lesson "Topic" -g 8 -s "US History"  # daily lesson
clawed unit "Topic" -g 9 -w 3            # 3-week unit
clawed assess "Topic" --type crq          # CRQ, DBQ, quiz, rubric
clawed game create "Topic" -g 8           # HTML learning game
clawed simulate create "Topic"            # interactive simulation
clawed differentiate -l lesson.json       # IEP/504/ELL mods
clawed kb compile                         # compile curriculum wiki
clawed kb query "question"                # search your wiki
clawed kb lint                            # wiki health check
clawed bot                                # start Telegram bot
clawed drive auth                         # connect Google Drive
clawed schedule list                      # scheduled tasks
clawed setup                              # re-run setup
clawed mcp-server                         # MCP for Claude Code

How the voice learning works

It reads your files and extracts patterns:

  • Lesson structure (I Do / We Do / You Do, stations, seminars)
  • Assessment format (CRQ, DBQ, exit ticket style, Do Now format)
  • Writing frameworks (TEA, RACE, CER)
  • Scaffolding (sentence starters, graphic organizers, word banks)
  • Source preferences, grouping strategies, classroom personality

Stored in ~/.eduagent/workspace/soul.md. You can read it, edit it, or let it evolve.


Setup

pip install clawed
clawed

It walks you through picking a provider and an API key.

Recommended: Ollama Pro ($20/mo) — unlimited access to good models, easiest setup. For best output quality, use an Anthropic or OpenAI API key (pay per use). OpenRouter lets you pick from any model. Google Gemini has a free tier. Local Ollama runs fully offline for free.


Dev setup

git clone https://github.com/SirhanMacx/Claw-ED.git
cd Claw-ED
pip install -e ".[dev]"
pytest tests/

PRs welcome. Built by a teacher in New York. If you're a teacher, a developer, or just curious — jump in.


MIT License

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clawed-4.7.2026.10.tar.gz (611.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clawed-4.7.2026.10-py3-none-any.whl (17.8 MB view details)

Uploaded Python 3

File details

Details for the file clawed-4.7.2026.10.tar.gz.

File metadata

  • Download URL: clawed-4.7.2026.10.tar.gz
  • Upload date:
  • Size: 611.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for clawed-4.7.2026.10.tar.gz
Algorithm Hash digest
SHA256 41e64bd0889324600707475af04ecb0dd47cdbd4a142fb92131b22de6a6a0fd4
MD5 0632edb6f431d7ca4f7e55bf87a36135
BLAKE2b-256 6171329b55baee03335744a75b15a95edf85e225905ca01d10ba6b8de34e6342

See more details on using hashes here.

File details

Details for the file clawed-4.7.2026.10-py3-none-any.whl.

File metadata

  • Download URL: clawed-4.7.2026.10-py3-none-any.whl
  • Upload date:
  • Size: 17.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for clawed-4.7.2026.10-py3-none-any.whl
Algorithm Hash digest
SHA256 f0abf7cde4d6a44bd2b90e9a19f954d20e0043c76861a154c3f1de0b2e4b1c1f
MD5 f7455275b5cc7a7895791a3d4eb71004
BLAKE2b-256 69a84fd4f09bb97ccf5bede5448d42d4c1474b8f1e87b7a2681a9ad36588b734

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page