Metadata-Version: 2.4
Name: clawed
Version: 4.8.2026.17
Summary: 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-URL: Homepage, https://sirhanmacx.github.io/Claw-ED
Project-URL: Documentation, https://github.com/SirhanMacx/Claw-ED#readme
Project-URL: Repository, https://github.com/SirhanMacx/Claw-ED
Project-URL: Bug Tracker, https://github.com/SirhanMacx/Claw-ED/issues
Project-URL: Changelog, https://github.com/SirhanMacx/Claw-ED/blob/main/CHANGELOG.md
Project-URL: PyPI, https://pypi.org/project/clawed/
Author: Jon Maccarello & Claw-ED contributors
License-Expression: MIT
License-File: LICENSE
Keywords: ai,ai-for-teachers,animation,claw-ed,clawed,curriculum,edtech,education,educational-videos,hermes-agent,k12,lesson-plan-generator,lesson-planner,lesson-planning,lesson-plans,manim,open-source-education,pedagogy,teacher-tools,teachers,teaching,teaching-assistant
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Education
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Education
Classifier: Topic :: Education :: Computer Aided Instruction (CAI)
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Requires-Dist: anthropic<1.0,>=0.39.0
Requires-Dist: apscheduler<4.0,>=3.10.0
Requires-Dist: fastapi<1.0,>=0.110.0
Requires-Dist: gtts>=2.5.0
Requires-Dist: httpx<1.0,>=0.25.0
Requires-Dist: jinja2<4.0,>=3.1.0
Requires-Dist: json-repair<1.0,>=0.30.0
Requires-Dist: lxml>=4.9.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: openai<2.0,>=1.50.0
Requires-Dist: pydantic<3.0,>=2.0.0
Requires-Dist: pymupdf<2.0,>=1.23.0
Requires-Dist: python-docx>=1.0.0
Requires-Dist: python-multipart>=0.0.6
Requires-Dist: python-pptx>=0.6.21
Requires-Dist: pyyaml<7.0,>=6.0
Requires-Dist: reportlab>=4.0.0
Requires-Dist: rich<14.0,>=13.0.0
Requires-Dist: sse-starlette>=1.6.0
Requires-Dist: typer<1.0,>=0.9.0
Requires-Dist: uvicorn[standard]>=0.27.0
Provides-Extra: all
Requires-Dist: faster-whisper>=0.10.0; extra == 'all'
Requires-Dist: keyring>=24.0.0; extra == 'all'
Requires-Dist: onnxruntime>=1.16.0; extra == 'all'
Requires-Dist: qrcode[pil]>=7.0; extra == 'all'
Requires-Dist: textual>=0.56.0; extra == 'all'
Requires-Dist: uvicorn[standard]>=0.27.0; extra == 'all'
Provides-Extra: animations
Requires-Dist: manim>=0.18.0; extra == 'animations'
Requires-Dist: pyav>=12.0; extra == 'animations'
Provides-Extra: browser
Requires-Dist: playwright>=1.40.0; extra == 'browser'
Provides-Extra: dev
Requires-Dist: apscheduler<4.0,>=3.10.0; extra == 'dev'
Requires-Dist: faster-whisper>=0.10.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Provides-Extra: formats
Requires-Dist: striprtf>=0.0.26; extra == 'formats'
Requires-Dist: xlrd>=2.0.0; extra == 'formats'
Provides-Extra: google
Requires-Dist: google-api-python-client>=2.0.0; extra == 'google'
Requires-Dist: google-auth-oauthlib>=1.0.0; extra == 'google'
Provides-Extra: keyring
Requires-Dist: keyring>=24.0.0; extra == 'keyring'
Provides-Extra: memory
Requires-Dist: onnxruntime>=1.16.0; extra == 'memory'
Provides-Extra: pdf
Requires-Dist: weasyprint>=60.0; extra == 'pdf'
Provides-Extra: qr
Requires-Dist: qrcode[pil]>=7.0; extra == 'qr'
Provides-Extra: tui
Requires-Dist: textual>=0.56.0; extra == 'tui'
Provides-Extra: voice
Requires-Dist: faster-whisper>=0.10.0; extra == 'voice'
Description-Content-Type: text/markdown

# Claw-ED

> Built by a teacher who was tired of spending weekends writing lessons.

An open-source CLI agent that generates complete lesson bundles — plans, handouts, slides, differentiated versions, games, and more — in your teaching voice. Feed it your files. It learns how you teach. Then it does the work for you.

<p align="center">
  <a href="https://pypi.org/project/clawed/"><img src="https://img.shields.io/pypi/v/clawed?color=blue" alt="PyPI"></a>
  <a href="https://pypi.org/project/clawed/"><img src="https://img.shields.io/pypi/pyversions/clawed" alt="Python"></a>
  <a href="https://github.com/SirhanMacx/Claw-ED/actions/workflows/ci.yml"><img src="https://github.com/SirhanMacx/Claw-ED/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
  <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-green" alt="MIT"></a>
  <a href="https://pepy.tech/project/clawed"><img src="https://static.pepy.tech/badge/clawed" alt="Downloads"></a>
  <a href="https://github.com/SirhanMacx/Claw-ED/stargazers"><img src="https://img.shields.io/github/stars/SirhanMacx/Claw-ED?style=social" alt="Stars"></a>
</p>

```bash
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](https://www.manim.community/)
- 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](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) — compiles your files into organized markdown articles
- [Self-distillation](https://arxiv.org/abs/2604.01193) — 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

### What makes this different

Other AI tools generate one thing at a time. Claw-ED generates **everything at once** — lesson plan, handout, slides, differentiated versions, a review game, a learning journey, and a research report. One request, 9 files, in your voice.

Other tools don't know how you teach. Claw-ED **reads your actual files** — your old lessons, your PPTX slides, your assessments — and learns your vocabulary, scaffolding patterns, and teaching style. The output sounds like you wrote it.

Other tools run in the cloud. Claw-ED runs **on your machine**. Your files, your students, your lessons — none of it leaves your computer.

### 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

```bash
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

```bash
pip install clawed
clawed
```

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

**Recommended:** [Ollama Pro](https://ollama.com/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

```bash
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.

- [Getting Started](docs/GETTING_STARTED.md) — 5-minute setup guide
- [FAQ](docs/FAQ.md) — common questions
- [Issues](https://github.com/SirhanMacx/Claw-ED/issues)
- [Discussions](https://github.com/SirhanMacx/Claw-ED/discussions)
- [Security](SECURITY.md) — privacy and data handling

---

MIT License
