← all repositories
HKUDS/DeepTutor

A tutoring stack that actually remembers what you forgot

DeepTutor rebuilds the learning UI around agents that persist, research, and adapt instead of just chatting.

24.6k stars Python AgentsDomain Apps
DeepTutor
Velocity · 7d
+152
★ / day
Trend
steady
star history

What it does DeepTutor is a full-stack tutoring platform—Next.js frontend, Python backend—that wraps LLMs in an agent-native architecture. It chats, writes alongside you, generates quizzes, visualizes concepts, and compiles “living books” from sessions. A separate “TutorBot” mode runs persistent autonomous tutors with their own memory and tool sandboxes. Multi-user deployments with per-user workspaces and auth are supported.

The interesting bit The project treats memory as infrastructure, not decoration. It implements a three-layer memory system (L1/L2/L3) with a dedicated workbench, and every chat capability was rebuilt on a single agentic engine rather than bolting agents onto a chat app. The ~200k-line v1.0 rewrite replaced litellm with native SDKs and externalized prompts so the system isn’t secretly hardcoded to one provider’s quirks.

Key highlights

  • Agent-native, not agent-washed: Tools + Capabilities plugin model, CLI & SDK, restart-safe turn runtime
  • Persistent autonomous tutors: TutorBot with HTTP/SSE API, tool sandbox, per-user resource isolation
  • RAG rebuilt on LlamaIndex: Versioned KB indexes, re-index workflow, embedding auto-discovery, multiple adapter support (NVIDIA NIM, Gemini, local)
  • Multi-modal attachments: PDF/DOCX/XLSX/PPTX, text/code/SVG, with file-preview drawer and attachment-aware pipelines
  • Self-hosted friendly: Docker support, local LLM guidance (LM Studio, llama.cpp, Lemonade), multi-user auth routes

Caveats

  • The release cadence is aggressive—v1.4.2 dropped within a week of v1.4.0, suggesting rapid iteration but also potential churn
  • Some features like “Auto Mode” and reasoning-effort normalization are new enough that their edge cases are still being hardened
  • Windows/GBK encoding issues and IME input bugs have needed explicit fixes, so cross-platform polish is ongoing

Verdict Worth a look if you’re building educational software and want an open reference for how to structure agent memory, RAG, and multi-tenancy in one stack. Probably overkill if you just need a chat wrapper with a quiz button.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.