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 48+ tools (lesson gen, assessments, games, simulations, animations, curriculum maps, differentiation)
  • Uses your own images — extracts maps, cartoons, diagrams from your PPTX files and puts them in generated slides (58K+ images from real curriculum)
  • Writes like you — AI-ism removal strips "delve", "utilize", "leverage" and 70+ other LLM tells so output reads like a teacher wrote it
  • Interactive curriculum map — visualize how your topics, standards, and vocabulary connect
  • 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.8.2026.5.tar.gz (619.9 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.8.2026.5-py3-none-any.whl (17.8 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for clawed-4.8.2026.5.tar.gz
Algorithm Hash digest
SHA256 1c534ce7eb6eb1b3f81b77a70b8e98b0d675edf3d9a527cb00ddb6d7b2fc599c
MD5 7b09523d45de39438d46c4482acf7235
BLAKE2b-256 4b32a26a9bed0754586a80351540da7dc4329d155809ad047097dd62df83b799

See more details on using hashes here.

File details

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

File metadata

  • Download URL: clawed-4.8.2026.5-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.8.2026.5-py3-none-any.whl
Algorithm Hash digest
SHA256 96daac721a5c53f82e6265b935eb26e503c56b34aa1c0b2b95d2539b1b2d69f9
MD5 5f82ba809c74212acbd4dab5dcd0be81
BLAKE2b-256 92ef66d75ee93d58290534ee94ca29827a3f6305a10c1250e9d1ec2ae99d0eba

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